3 votes

Existe-t-il un moyen de débloquer tous les scans pour les utiliser dans l'imprimante Pixel ?

J'aime bien créer de nouveaux personnages dans Starbound de temps en temps, mais ça devient une vraie corvée de devoir re-scanner absolument tout pour pouvoir l'imprimer avec l'imprimante Pixel. Existe-t-il un moyen de tout débloquer d'un coup, sans avoir besoin de fouiller toute la galaxie ou d'activer l'imprimante Pixel Printer ? /admin mode ?

La solution la plus proche que j'ai trouvée est d'utiliser manuellement la fonction /spawnitem pour introduire un objet, le scanner et le détruire ensuite, mais cela représente une charge de travail considérable, car je dois le faire pour chaque objet imprimable. J'aimerais trouver un moyen de tout débloquer en une seule fois.

Évidemment, c'est de la "triche", donc je ne me soucie pas particulièrement de la méthode, tant qu'elle n'est pas trop laborieuse. Une commande à exécuter dans le jeu, un mod à installer, ou même un fichier particulier à éditer sont autant de solutions acceptables. Cela dit, je ne considérer /admin une solution acceptable, car je ne veux pas être dans une situation d'urgence. /admin mode ! Je veux continuer à jouer au jeu et être capable d'encaisser des dégâts et de consommer de l'énergie, je veux juste éviter le grind (que j'ai déjà fait auparavant).

2voto

Zebi Points 103

Je suis un ancien développeur de Starbound.

Pas sans un piratage de sauvegarde.

La liste des objets scannés est enregistrée dans le fichier du lecteur.

Tout d'abord, un petit rappel sur la structure des fichiers des lecteurs. Il s'agit de données binaires sérialisées personnalisées qui, une fois développées, deviennent un fichier JSON. La structure actuelle du fichier n'est pas très fraîche dans ma mémoire, et elle peut avoir changé depuis la dernière fois que j'ai eu accès au jeu. Il est possible qu'il existe déjà des utilitaires d'édition de sauvegardes pour Starbound, je vous suggère de vérifier s'ils existent.

Les données à modifier se trouvent sous l'objet "log" dans une liste de chaînes nommée "scannedObjects".

Les entrées de cette liste sont des noms d'objets. Vous pouvez les trouver en décompressant le fichier assets.pak et en parcourant les fichiers .object qu'il contient. La chaîne "objectName" est la chaîne que vous souhaitez utiliser. Par exemple, voici apexaquarium2.object :

{
  "objectName" : "apexaquarium2",
  "colonyTags" : ["apex","apexvillage","pretty"],
  "rarity" : "Common",
  "category" : "Decorative",
  "price" : 60,

  "description" : "An empty aquarium. How lonely.",
  "shortdescription" : "Empty Wooden Aquarium",
  "race" : "apex",

  "apexDescription" : "An Apex may only replace his fish once every 3 years.",
  "avianDescription" : "This fish has flown the nest.",
  "floranDescription" : "Ssssomeone got here firsst.",
  "glitchDescription" : "Neutral. An empty tank.",
  "humanDescription" : "I wonder what happened to the fish...",
  "hylotlDescription" : "Memories of home wash over me.",
  "novakidDescription" : "It's for keepin fish. But there ain't no fish in it.",

  "inventoryIcon" : "apexaquarium2icon.png",
  "orientations" : [
    {
      "dualImage" : "apexaquarium2.png:<color>.<frame>",
      "imagePosition" : [-16, 0],
      "frames" : 8,
      "animationCycle" : 1.0,

      "spaceScan" : 0.1,
      "anchors" : [ "bottom" ],
      "collision" : "platform"

    }
  ],

  "soundEffect" : "/sfx/objects/aquarium1.ogg"

}                                                                                                                                                                   

Par convention, nous avons essayé de faire en sorte que le nom du fichier soit le même que le nom de l'objet, mais cette convention n'est pas respectée par le moteur du jeu.

Vous pouvez également autoriser l'administration à imprimer des objets et la désactiver une fois que vous avez terminé. Si vous y tenez vraiment, vous pouvez acheter un objet avec l'administration, le scanner, le jeter, puis l'acheter à nouveau en toute légalité.

Bien qu'ennuyeuses, ces deux options semblent un peu plus faciles que d'essayer de pirater le fichier de votre lecteur.

Si vous voulez vraiment vous salir les bras, vous pouvez peut-être effectuer cette action via le moteur de script lua en utilisant un mod personnalisé. Le fichier .player est ce que l'on appelle un versionedJson en interne. Il existe une commande lua appelée loadVersionedJson et un autre a appelé makeCurrentVersionedJson . Si tout va bien, votre tâche est aussi simple que de créer un mod qui appelle une fonction lua qui charge une copie du fichier du joueur de votre personnage, le modifie en itérant sur tous les objets et en les ajoutant à la clé log.scannedObjects, puis le stocke à nouveau dans un autre fichier. Ensuite, vous pouvez déplacer ce fichier dans votre fichier de joueur normal, et Bob est votre oncle.

Il se peut que vous deviez jouer avec différents contextes lua pour en trouver un où ces deux commandes sont disponibles.

AlleGamers.com

AlleGamers est une communauté de gamers qui cherche à élargir la connaissance des jeux vidéo.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X