NoMansSky:UnlockableItemTrees: Difference between revisions

From Step Mods | Change The Game
m (Text replacement - "\" to "/")
m (Text replacement - "\[\[Category:NMS-Index-.*\]\]" to "")
 
(12 intermediate revisions by 3 users not shown)
Line 1: Line 1:
__NOTITLE__
{{#set:
{{NMSPage|contentTitle=[https://stepmodifications.org/wiki/NMS:Game_Structure Game Structure] // [https://stepmodifications.org/wiki/NMS:Game_Structure/METADATA METADATA] / [https://stepmodifications.org/wiki/NMS:Game_Structure/METADATA/REALITY REALITY] / TABLES / UNLOCKABLEITEMTREES.MBIN}}
NMSIndex=BaseBuilding
[[Category:NoMansSky Reference]]
|NMSIndex=Tables
{{TOC_right}}
}}{{PageTitle|logo=nomanssky|title=UnlockableItemTrees File|author=Lo2k}}
{{NMSPage}}
{{TOC}}
== Introduction ==
== Introduction ==
Crafting is a key point in No Man's Sky and a lot of blueprints can be unlocked via technology trees.<br>
Crafting is a key point in No Man's Sky and a lot of blueprints can be unlocked via technology trees. All the tech trees, either from Nexus, Freighter or Blueprint Analysis Module are declared in: <code>METADATA\REALITY\TABLES\UNLOCKABLEITEMTREES.MBIN</code>
All the tech trees, either from Nexus, Freighter or Blueprint Analysis Module are declared in METADATA/REALITY/TABLES/UNLOCKABLEITEMTREES.MBIN.<br>
 
<br>
The whole file is composed of 2 parts :
The whole file is composed of 2 parts :
* Trees themselves, which represents 95% of the file, listing each item in a nested way
* Trees themselves, which represents 95% of the file, listing each item in a nested way
Line 12: Line 13:


== Trees Definition ==
== Trees Definition ==
The file structure is pretty simple as it mimics the tech tree it describes.<br>
The file structure is pretty simple as it mimics the tech tree it describes.


{{GallerySimple|id=galleryID|width=800|img=https://stepmodifications.org/wiki/images/9/93/275850_20191227190548_1.jpg|caption=Wooden parts tree}} {{clear}}
{{GallerySimple|id=galleryID|width=800|img=https://stepmodifications.org/wiki/images/9/93/275850_20191227190548_1.jpg|caption=Wooden parts tree}}{{clear}}




Line 20: Line 21:


     <Property name="BasicBaseParts" value="GcUnlockableItemTrees.xml">
     <Property name="BasicBaseParts" value="GcUnlockableItemTrees.xml">
       <Property name="Title" value="UI_PURCHASABLE_BASICPARTS_TREE" />        {{fc|#FFF|Tree Name. This name is referenced in each language file for translation}}
       <Property name="Title" value="UI_PURCHASABLE_BASICPARTS_TREE" />        {{fc|highlight|Tree Name. This name is referenced in each language file for translation}}
       <Property name="Trees">
       <Property name="Trees">
         <Property value="GcUnlockableItemTree.xml">
         <Property value="GcUnlockableItemTree.xml">
           <Property name="Title" value="UI_BASIC_WOOD_SUB" />    {{fc|#FFF|Branch Name. This name is referenced in each language file for translation}}
           <Property name="Title" value="UI_BASIC_WOOD_SUB" />    {{fc|highlight|Branch Name. This name is referenced in each language file for translation}}
           <Property name="CostTypeID" value="SALVAGE" />    {{fc|#FFF|Currency used, as defined at the end of the file.}}
           <Property name="CostTypeID" value="SALVAGE" />    {{fc|highlight|Currency used, as defined at the end of the file.}}
           <Property name="Root" value="GcUnlockableItemTreeNode.xml">
           <Property name="Root" value="GcUnlockableItemTreeNode.xml">
             <Property name="Unlockable" value="W_WALL" />    {{fc|#FFF|Item Name. This name is referenced in each language file for translation}}
             <Property name="Unlockable" value="W_WALL" />    {{fc|highlight|Item Name. This name is referenced in each language file for translation}}
             <Property name="Children">
             <Property name="Children">
               <Property value="GcUnlockableItemTreeNode.xml">
               <Property value="GcUnlockableItemTreeNode.xml">
                 <Property name="Unlockable" value="W_FLOOR" />    {{fc|#FFF|Item Name. This name is referenced in each language file for translation}}
                 <Property name="Unlockable" value="W_FLOOR" />    {{fc|highlight|Item Name. This name is referenced in each language file for translation}}
                 <Property name="Children">
                 <Property name="Children">
                   <Property value="GcUnlockableItemTreeNode.xml">
                   <Property value="GcUnlockableItemTreeNode.xml">
Line 45: Line 46:
                   </Property>
                   </Property>


As you can see, each item has childrens, as in the trees themselves, and you can't unlock a child if you havn't unlocked its parent.
As you can see, each item has children, as in the trees themselves, and you can't unlock a child if you haven't unlocked its parent.


== Cost types ==
== Cost types ==
Line 53: Line 54:
Here is one of the currencies :
Here is one of the currencies :
     <Property value="GcUnlockableTreeCostType.xml">
     <Property value="GcUnlockableTreeCostType.xml">
       <Property name="CostTypeID" value="SALVAGE" />    {{fc|#FFF|Currency. This is the name used in the trees to define the required currency}}
       <Property name="CostTypeID" value="SALVAGE" />    {{fc|highlight|Currency. This is the name used in the trees to define the required currency}}
       <Property name="TypeOfCost" value="Product" />
       <Property name="TypeOfCost" value="Product" />
       <Property name="CurrencyType" value="GcCurrency.xml">
       <Property name="CurrencyType" value="GcCurrency.xml">
         <Property name="Currency" value="Units" />
         <Property name="Currency" value="Units" />
       </Property>
       </Property>
       <Property name="TypeID" value="BP_SALVAGE" />    {{fc|#FFF|Currency Name. This name is referenced in each language file for translation}}
       <Property name="TypeID" value="BP_SALVAGE" />    {{fc|highlight|Currency Name. This name is referenced in each language file for translation}}
       <Property name="CantAffortString" value="TRADE_BUY_BUILDING_NO_ITEMS" />  {{fc|#FFF|Insufficient currency message. This is referenced in each language file for translation}}
       <Property name="CantAffortString" value="TRADE_BUY_BUILDING_NO_ITEMS" />  {{fc|highlight|Insufficient currency message. This is referenced in each language file for translation}}
     </Property>
     </Property>
{{NMSPageClose}}

Latest revision as of 19:06, August 5, 2021

Nomanssky flare.png

UnlockableItemTrees File

by: Lo2k

Introduction

Crafting is a key point in No Man's Sky and a lot of blueprints can be unlocked via technology trees. All the tech trees, either from Nexus, Freighter or Blueprint Analysis Module are declared in: METADATA\REALITY\TABLES\UNLOCKABLEITEMTREES.MBIN

The whole file is composed of 2 parts :

  • Trees themselves, which represents 95% of the file, listing each item in a nested way
  • Cost types, describing currencies used in the trees

Trees Definition

The file structure is pretty simple as it mimics the tech tree it describes.


Here is a small extract of the first branch of the wooden parts tree above :

   <Property name="BasicBaseParts" value="GcUnlockableItemTrees.xml">
     <Property name="Title" value="UI_PURCHASABLE_BASICPARTS_TREE" />        Tree Name. This name is referenced in each language file for translation
     <Property name="Trees">
       <Property value="GcUnlockableItemTree.xml">
         <Property name="Title" value="UI_BASIC_WOOD_SUB" />     Branch Name. This name is referenced in each language file for translation
         <Property name="CostTypeID" value="SALVAGE" />     Currency used, as defined at the end of the file.
         <Property name="Root" value="GcUnlockableItemTreeNode.xml">
           <Property name="Unlockable" value="W_WALL" />     Item Name. This name is referenced in each language file for translation
           <Property name="Children">
             <Property value="GcUnlockableItemTreeNode.xml">
               <Property name="Unlockable" value="W_FLOOR" />     Item Name. This name is referenced in each language file for translation
               <Property name="Children">
                 <Property value="GcUnlockableItemTreeNode.xml">
                   <Property name="Unlockable" value="W_GFLOOR" />
                   <Property name="Children" />
                 </Property>
                 <Property value="GcUnlockableItemTreeNode.xml">
                   <Property name="Unlockable" value="W_RAMP" />
                   <Property name="Children">
                     <Property value="GcUnlockableItemTreeNode.xml">
                       <Property name="Unlockable" value="W_RAMP_H" />
                       <Property name="Children" />
                     </Property>
                   </Property>
                 </Property>

As you can see, each item has children, as in the trees themselves, and you can't unlock a child if you haven't unlocked its parent.

Cost types

Each tree items requires a currency to be unlocked.
All of them are listed at the end of the file.

Here is one of the currencies :

   <Property value="GcUnlockableTreeCostType.xml">
     <Property name="CostTypeID" value="SALVAGE" />    Currency. This is the name used in the trees to define the required currency
     <Property name="TypeOfCost" value="Product" />
     <Property name="CurrencyType" value="GcCurrency.xml">
       <Property name="Currency" value="Units" />
     </Property>
     <Property name="TypeID" value="BP_SALVAGE" />    Currency Name. This name is referenced in each language file for translation
     <Property name="CantAffortString" value="TRADE_BUY_BUILDING_NO_ITEMS" />   Insufficient currency message. This is referenced in each language file for translation
   </Property>