chore(game-server): merge main (emulator fixes: contracts, shop, fortuna, friends, admin, presence) #16

Merged
neckfire merged 35 commits from main into game-server 2026-07-16 08:25:21 +00:00
Showing only changes of commit c70f674431 - Show all commits
+15 -6
View File
@@ -53,13 +53,22 @@ ProspectServerSwitcher --set https://mon-serveur:8443 # URL libre
## Certificat ## Certificat
L'outil récupère le certificat **en direct depuis le serveur** ciblé (il lit `backend.txt`
et se connecte en TLS), puis le rend fiable :
- **Windows** : import automatique dans *Autorités de certification racines de confiance* - **Windows** : import automatique dans *Autorités de certification racines de confiance*
(utilisateur courant). (utilisateur courant), via le magasin `X509Store`.
- **Linux/Proton** : le certificat doit être approuvé **dans le préfixe Wine** du jeu. - **Linux/Proton** : import **automatique dans le préfixe Wine** du jeu. Comme `wine certutil`
L'outil détecte le préfixe Proton de l'app `868270` et affiche la commande prête : est cassé sous Proton, l'outil écrit directement le *blob* sérialisé du certificat
``` (propriété SHA1 `id=3` + certificat encodé `id=0x20`) dans le magasin `Root` du préfixe via
WINEPREFIX="…/compatdata/868270/pfx" wine certutil -addstore -f Root "certificate.crt" `wine reg import`. Il :
``` 1. détecte le binaire `wine` de Proton (`…/common/Proton*/files/bin/wine`),
2. liste les préfixes `compatdata/*/pfx` (le plus récemment utilisé en premier),
3. importe dans le préfixe choisi (⚠️ **le jeu doit être fermé**), mémorisé ensuite.
> ⚠️ Le client tourne souvent comme **raccourci non-Steam** → son préfixe n'est **pas**
> `compatdata/868270` mais un appid généré (ex. `3883998305`). D'où la sélection explicite
> du préfixe plutôt qu'une déduction sur l'appid du jeu.
## Lancement ## Lancement