Outils

Modding de données JSON dans Ostranauts

Ajoutez items, vaisseaux et interactions en JSON — sans programmation

Dernière mise à jour:

Modding JSON

Le modding de données JSON (aussi appelé data modding) est la porte d’entrée la plus accessible pour étendre Ostranauts une fois le jeu vanilla maîtrisé. Blue Bottle Games livre la base en JSON éditables sous StreamingAssets/data/ ; les créateurs community reproduisent cette arborescence dans des packs mod chargés après "core". Les abonnements Workshop gèrent la distribution pour beaucoup de joueurs, mais tout auteur finit par toucher aux mêmes fichiers documentés sur le wiki officiel et dans le Official Ostranauts Modding Guide Steam (valide depuis v0.15.0.38+).

Cette page complète Steam Workshop — Workshop explique subscribe et load order ; ici on détaille comment créer un mod JSON local, tester en sécurité et éviter de corrompre les saves. Modding légitime uniquement — pas de scripts cheat.

Deux types de mods : Workshop et local

Ostranauts reconnaît les mods Workshop (abonnés via Steam ou le navigateur in-game MODS → Open Workshop) et les mods locaux (dossiers créés ou téléchargés depuis Discord, GitHub ou Nexus). Le menu MODS in-game liste les deux, respecte loading_order.json, et avertit quand la version cible d’un mod est plus ancienne que votre client.

La détection des doublons privilégie les copies locales sur les IDs Workshop abonnés — vous pouvez itérer sans vous désabonner. Sauvegardez toujours vos saves avant d’activer de nouveaux packs — voir Steam Workshop pour le workflow subscribe sécurisé.

Arborescence et mod_info.json

Sous Windows, les mods locaux vivent ici :

<Ostranauts>/Ostranauts_Data/Mods/YourModFolder/

Chaque mod exige mod_info.json à la racine du dossier avec les métadonnées affichées par le scanner MODS :

  • Nom convivial et auteur
  • Compatibilité strGameVersion (le label passe au rouge si votre client est plus récent)
  • strWorkshopID optionnel pour publier des mises à jour sur un item Workshop existant
  • Champ notes pour le changelog

Dans le dossier mod, créez un arbre data/ qui reflète les catégories du jeu de base : items, interactions, vaisseaux, condowners, loot tables, careers, et plus. Les noms de fichiers sont libres ; ce sont les champs strName dans le JSON qui définissent les IDs jeu.

Blue Bottle livre aussi SampleMod.zip et SampleWorkshopMod.zip dans l’install Steam — décompressez, renommez, incrémentez la version, et différez contre vanilla avant publication.

loading_order.json contrôle les overrides

Un niveau au-dessus de Mods/, Ostranauts_Data/loading_order.json liste l’ordre de chargement dans aLoadOrder :

{
  "aLoadOrder": ["core", "YourModFolder"]
}

Règles que capitaines et auteurs doivent respecter :

  • "core" toujours en premier — données jeu de base
  • Les noms de dossiers mod doivent correspondre exactement (sensible à la casse)
  • Les entrées tardives écrasent les précédentes quand strName entre en collision
  • Options → Files → MODS peut générer ce fichier s’il manque
  • Ajoutez |edit à une ligne mod pour exposer Upload au lieu d’Open Folder pour la publication Workshop

Un mauvais ordre provoque sprites manquants, interactions cassées ou crash au boot quand deux mods redéfinissent la même pièce.

Ce que les mods JSON peuvent changer

Le data modding couvre le contenu sans C# / BepInEx :

CatégorieExemples
ItemsOutils, mobilier, conteneurs, pièces décoratives
InteractionsCâlin, réparation, utilisation, actions équipage custom
VaisseauxTemplates coque complets et layouts starter
ConditionsEffets de statut, moodlets, triggers
LootTables de spawn pour épaves et stations
CareersOptions background à la création de personnage
Tâches IATweaks priorités équipage (avancé)

Le modding C# via BepInEx et Harmony ajoute des patches code — puissant mais hors scope ici. Commencez en JSON ; passez au code quand vous avez besoin de systèmes que la couche data ne peut pas exprimer.

Workflow d’auteur (safe)

  1. Copiez SampleMod.zip dans Mods/ et renommez le dossier.
  2. Éditez mod_info.json avec votre nom et la version jeu cible.
  3. Ajoutez YourMod/data/items/ (ou interactions/vaisseaux) un fichier à la fois.
  4. Enregistrez le dossier dans loading_order.json après "core".
  5. Lancez Ostranauts → menu MODS → confirmez le load order.
  6. Démarrez une save de test — ne gamblez jamais une carrière principale au premier boot.
  7. Consultez les logs Ostranauts dans %USERPROFILE%/AppData/LocalLow/ pour les erreurs syntaxe JSON.

Validez le JSON avec un linter externe avant launch — une virgule traînante casse le chargement de toute la catégorie.

Pattern tutoriel peluche

Le tutoriel wiki officiel Creating a Stuffed Animal Mod parcourt un exemple complet :

  • Définir un CondOwner peluche avec nom convivial et description
  • Câbler une interaction câlin via condition triggers (condtrigs)
  • Sprites custom optionnels sous images/ correspondant aux champs strImg
  • Tester l’IA équipage s’approchant de l’item en shift FREE

Suivez ce pattern pour tout item confort, signalétique ou prop QoL — une feature par itération de test.

Tester contre les systèmes vanilla

Les vaisseaux moddés ont encore besoin du routage Gérer l’atmosphère — les auteurs oublient souvent la capacité scrubber. Les économies moddées peuvent désynchroniser les chiffres Économie salvage de ce wiki, qui documente vanilla 1.0 uniquement.

Lisez Construction de vaisseau en publiant des coques : étanchéité, trunks conduits et placement transpondeur nav comptent même si le JSON autorise des layouts impossibles.

Chemins de publication

  • Steam Workshop — Upload in-game quand |edit est défini et Steam Overlay activé
  • GitHub / Nexus / Discord — zippez le dossier mod ; les utilisateurs installent manuellement et éditent loading_order.json
  • Thunderstore — surtout plugins BepInEx ; les packs JSON-only se distribuent ailleurs

Listez honnêtement les versions jeu compatibles. Les saves post-Lancement version 1.0 peuvent casser si vous retirez des items en milieu de carrière.

Dépannage

SymptômeCause probable
Mod non listéNom dossier ≠ loading_order.json
Item invisibleSprite manquant ou mauvais chemin strImg
Interaction absenteRéférence condtrig cassée ou typo dans strName
Crash au loadErreur syntaxe JSON ou ID dupliqué avec mauvais ordre override
Label mod rougestrGameVersion plus ancien que le client — testez quand même, puis bump version

Désactivez le mod depuis le menu MODS avant de supprimer des fichiers — les références orphelines en save effacent les items au déchargement du mod.

Pages connexes

FAQ

Foire aux questions

Réponses rapides pour rester en vie dans le boneyard.

Faut-il programmer pour modder Ostranauts ?

Non pour les mods JSON — éditez des fichiers texte pour items, vaisseaux et interactions. Les mods C# BepInEx exigent du code. Commencez avec SampleMod.zip et le pattern tutoriel peluche officiel.

Où placer loading_order.json ?

Dans `Ostranauts_Data/` (un niveau au-dessus du dossier Mods). Listez `"core"` en premier, puis les noms de dossiers mod exactement comme sur le disque.

Les mods vont-ils casser ma save ?

Ils peuvent. Sauvegardez avant subscribe ou activation de mods locaux. Désinstaller un mod retire ses items des saves. Testez sur une carrière jetable d'abord — voir Steam Workshop.