Jump to content
Toggle menu
  • 3 articles
  • 22 files
  • 3 users
  • 2.5K edits
Shroudforge
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Profils bêta automatiques du jeu

From Shroudforge
Revision as of 01:34, 7 November 2026 by Bonsaibauer (talk | contribs) (Importing a new version from external source)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)


Automatic beta game profiles



La détection bêta facultative compare une nouvelle version du jeu à une version prise en charge qui a été enregistrée. Elle ne crée un profil bêta complet que lorsque les éléments nécessaires sont disponibles. Les profils de jeu standard correspondants restent prioritaires.

Préparer une mise à jour du jeu

Le module est activé par défaut et peut être désactivé. Un réglage désactivé explicitement enregistré le reste. L’interrupteur se trouve dans Settings → General → Game profile, à côté du sélecteur de profil.

  1. Vérifiez que Dynamic game profile creation (Beta) est activé. Activez-le si nécessaire.
  2. Redémarrez complètement le jeu ou le serveur dédié tant qu’un profil standard correspondant est encore disponible.
  3. ShroudForge vérifie l’exécutable actuel exact et l’enregistre dans le cache comme base de comparaison. Vous n’avez pas besoin de télécharger un ancien exécutable.
  4. Après une mise à jour ultérieure du jeu, le nouveau processus lance automatiquement la comparaison et utilise la base enregistrée.

Le client et le serveur dédié conservent des bases distinctes. Le client ne peut pas remplacer la base du serveur. Si le module est activé pour la première fois après une mise à jour et qu’aucune base correspondante n’a été enregistrée, il est impossible de reconstituer la version précédente.

Que se passe-t-il au démarrage du jeu ?

L’analyse s’exécute au démarrage du jeu. Celui-ci attend le résultat avant de poursuivre son démarrage. Aucun monde n’a besoin d’être chargé pour cette étape.

ShroudForge recherche d’abord un profil standard correspondant exactement à l’exécutable en cours. S’il en existe un, la sélection automatique l’utilise. Lorsque la détection est activée, l’exécutable pris en charge est également conservé dans le cache pour les prochaines mises à jour.

Si aucun profil standard correspondant n’existe, le module vérifie la base standard appropriée la plus récente pour la même cible de processus et le même format KFC. L’exécutable précédemment mis en cache doit correspondre exactement à cette base. La comparaison examine le code, les références, les types enregistrés et les contrats de structure requis à partir des images de comparaison. Les adresses cibles doivent être établies à partir de la nouvelle image.

Le résultat conserve l’intégralité du contrat du profil précédent, y compris ses indicateurs de fonctionnalités. Des éléments non résolus ou contradictoires empêchent la publication du profil bêta complet. Le diagnostic en indique la raison. Attendre plus longtemps ou entrer dans un monde ne résout pas l’absence d’éléments statiques.

Stockage et sélection

Les profils standard et générés partagent le répertoire de profils configuré. Les chemins par défaut sont :

Contenu Emplacement
Profils client shroudforge/runtime/profiles/enshrouded/client/
Profils serveur shroudforge/runtime/profiles/enshrouded/server/
Images de comparaison et éléments enregistrés shroudforge/cache/game-profile-discovery/

Les profils générés commencent par beta_. La sélection Automatic peut utiliser un profil bêta correspondant et entièrement vérifié si aucun profil standard correspondant n’est disponible. Le sélecteur affiche les profils disponibles. L’ajout ultérieur d’un profil standard correspondant le rend prioritaire.

Toute modification de l’interrupteur ou de la sélection du profil nécessite le redémarrage complet du jeu ou du serveur concerné. Rouvrir la fenêtre Modloader ne redémarre pas le runtime.

Distinguer la détection, les profils et un monde en cours d’exécution

Le message bleu Dynamic profile search in progress indique qu’une recherche de profil est en cours. Workflow and help ouvre ce guide. Si la recherche se termine sans profil correspondant, le problème apparaît en rouge. Le message orange Experimental game profile active désigne le profil bêta réellement sélectionné. Les erreurs réelles du runtime continuent d’être affichées comme des erreurs.

Les vérifications structurelles de l’exécutable ne nécessitent pas de monde chargé. Les opérations sur un monde nécessitent également leurs contextes actifs, leurs enregistrements et les vérifications de sécurité du runtime. Un profil généré ne prouve pas que des commandes du jeu ont été exécutées ni qu’elles ont produit des effets visibles. Les vérifications fonctionnelles doivent aussi tester séparément le client et le serveur.

Si aucun profil n’est généré, consultez la raison indiquée et les détails techniques. L’absence d’une base enregistrée, un profil source inadapté ou des éléments non résolus sur le code et la disposition nécessitent les données pertinentes ou une analyse supplémentaire. Un profil standard correspondant ou une mise à jour appropriée de ShroudForge peut apporter la prise en charge requise.

Journalisation détaillée

Debug Console affiche les messages de détection du journal principal sous la source game-profile-discovery. Pour afficher chaque comparaison et chaque champ de rebase, définissez Settings → General → Logging → Minimum level sur Diagnostic. Advanced affiche des résumés supplémentaires.

La bannière runtime rouge et l’entrée de journal [compatibility-check] check=runtime proviennent de la même vérification du runtime. L’actualisation existante de l’interface consigne le changement d’état avant d’envoyer le même état à Modloader. Debug Console applique son réglage de fenêtres contextuelles existant aux lignes d’avertissement et d’erreur de ce journal principal.

En cas d’échec, le journal principal indique le chemin du rapport actuel .v2.unresolved.json ou .v2.error.json. En cas de réussite, il indique le chemin des éléments .v2.proof.json et le chemin complet où le profil généré beta_.json a été enregistré. Les rapports sont conservés dans le cache de détection.

Linux et Proton

La détection s’exécute dans le module runtime natif et ne nécessite aucun programme PowerShell ou Python externe. Ce flux de travail n’a pas encore été testé en conditions réelles sous Proton.

Consultez Moteur pour en savoir plus sur le runtime, l’API de mod et le parseur.