Post by JRavens on Apr 22, 2015 12:55:22 GMT
(my apologies - these are not coming out as fast as I would like. Real life, etc. I'll try to sort out more time for posting these)
OK so this tutorial goes hand in hand with my tutorial on how to mod the shop file.
The file in this case is:
\patch_hd\__UNKNOWN\misc\4EF705FE5CDB8750.maybe.rml
Like the other encoded XML files it can be converted back and forth using the Gibbed Dunia tools convert xml tool (Gibbed.Dunia2.ConvertXml.exe). Be sure to rename it back to .maybe.rml on the end when done.
This file contains the display information and skin/plant requirements for all the crafting items.
Lets take a look at one of the entries:
Here's a brief run down on what those fields do.
disLibItemId="7678408208474" and arkArchetype="7682173255252" - again all items are given library item numbers, but the most important number is the Archetype number (in this case 7682173255252) as it refers to the actual archetype file which contains further info on what this crafting item does.
Name="FCC_Upgrades/A1 - 2 weapon holster" - just the internal name for what this item is. Makes it easier for you to know which item is which.
disId="162" - ID number in this file for each crafting item. Not as interesting nor useful as the ones in the shop file. You could experiment and see if these can be used in the shop file as prerequisites to unlocking things, but I'm not sure if it would work.
It IS used in the field iNextRecipeID="163" which presumably tells the game which recipe to reference and display AFTER you craft this one.
locidItemNameId="190429" locidItemHUDNameId="1844418944" locidDescriptionId="82694" and locidIngredientsDescriptionId="346975" - all of these are pointers in the oasisstring file to assign text strings to the name and description of the crafting item. In this example locidItemNameId (string number 190429) is "WEAPON HOLSTER" and locidDescriptionId (82694) is "Carry one weapon of any type.".
Of particular note here is locidIngredientsDescriptionId (346975) which is the TEXT display of whatever ingredients are required to craft this item. This description is independent of whatever you actually make the requirements so if it's unchanged then the description will not match the icons of what is required (and trust me this WILL lead to confusion and bug reports by people who use your mod )
In this example 346975 is the text string "3x Tibetan Wolf skin"
iSortId="0" - this controls sorting of the icons in the crafting HUD. The lower the number the closer to the beginning of the items it appears. In this case zero (0) being the lowest makes holsters appear first in the crafting HUD.
cftrcptpeType="5" - most gear is set to 5. Syringes are set to 255. Arrows are set to 4 even though you cannot seemingly craft arrows (I tried unsuccessfully to get them to show up on the crafting screen, but maybe someone else could have more luck - would be great to actually craft arrows instead of only buy them)
vectorMenuDisplayPosition="0.06,-0.15,0.14" menuDisplayAngles="18.58,-15.5,-60.4" fRotationSpeed="0.3" and fRotationAmplitude="0.05" - all are hold overs from the FC3 menu system where items where displayed with 3D models and positioning.
UnlockOnMissionComplete="" and UnlockFromScript="" - these seemingly work just like in the shop file. I have not tried using them, but it's theoretical that you could limit a crafting recipe to requiring a certain mission or bell tower to unlock it. Whether this would override actually crafting it with skins or prevent it from showing up or cause visual glitches I don't know. It would have to be tested. You can tell which syringes are the actual single player ones as they all have entries in the UnlockFromScript field. They are mysteriously called elephant, tiger, leopard and overdose (instead of healing, hunting, etc which also have entries but are unused...)
iCurrentLevel="0" iMaxLevel="3" - this tells the game which level of the item type this is. For example this is the first holster you craft so it's level is 0. The next is 1 and so on. You will find that the game actually contains an extra "FINAL" crafting item of each time. This could be very similar to the uber items that DZiggy added in his FC3 mod. Unfortunately these items are all currently disabled. I have not yet experimented with enabling them since I think they need additional support from the nomadobjects file and the archetypes files. I believe they were a planned feature that was cut in the end either due to time constraints or simply because Ubi deemed them unnecessary. Crafting in general seems more scaled back than FC3 so I suspect it was the later. (Whether or not the idea for Ubi to implement these came from DZiggys mod is for another discussion and speculation). NOTE that these final items could also simply be "stops" (for lack of a better word) to bookend the crafting types and tell the game that there are no more items of that type to display and craft.
OK the reply under this will contain the meat and potatoes of how to actually change the requirements for crafting items (i.e. "the fun stuff")
OK so this tutorial goes hand in hand with my tutorial on how to mod the shop file.
The file in this case is:
\patch_hd\__UNKNOWN\misc\4EF705FE5CDB8750.maybe.rml
Like the other encoded XML files it can be converted back and forth using the Gibbed Dunia tools convert xml tool (Gibbed.Dunia2.ConvertXml.exe). Be sure to rename it back to .maybe.rml on the end when done.
This file contains the display information and skin/plant requirements for all the crafting items.
Lets take a look at one of the entries:
<Generic disLibItemId="7678408208474" Name="FCC_Upgrades/A1 - 2 weapon holster" hidGUID_Legacy="{3E24D8F7-73A4-4AE7-924E-6A6303F6FE92}" hidSingleObject="0" bCanBeShared="1" hidName="FCC_Upgrades/A1 - 2 weapon holster" disId="162" locidDescriptionId="82694" iSortId="0" sIconName="TX_Holster_01" locidItemNameId="190429" locidItemHUDNameId="1844418944" cftrcptpeType="5" sItemSize="" arkArchetype="7682173255252" arkMenuArchetype="0" vectorMenuDisplayPosition="0.06,-0.15,0.14" menuDisplayAngles="18.58,-15.5,-60.4" UnlockOnMissionComplete="" UnlockFromScript="" iCurrentLevel="0" iMaxLevel="3" locidIngredientsDescriptionId="346975" arkPreRequisiteRecipe="0" iNextRecipeID="163" fRotationSpeed="0.3" fRotationAmplitude="0.05">
<OffScreenRenderParams vectorBBoxMin="-0.8,0,0.4" vectorBBoxMax="0.4,0,0.2" />
<upgradeInfo locidDurationDescriptionStringId="654377248" locidDurationValueStringId="654377344" locidStrengthDescriptionStringId="654377440" locidStrengthValueStringId="654377536">
<UpgradeLevels>
<Level iStrengthValue="0" />
</UpgradeLevels>
</upgradeInfo>
<Requirements>
<Requirement shpLootObject="2257" iNeeded="3" />
<Requirement shpLootObject="255" iNeeded="0" />
</Requirements>
<Levels>
<Level iMax="1" iIncrement="1" />
<Level iMax="1" iIncrement="0" />
<Level iMax="0" iIncrement="0" />
</Levels>
</Generic>
Here's a brief run down on what those fields do.
disLibItemId="7678408208474" and arkArchetype="7682173255252" - again all items are given library item numbers, but the most important number is the Archetype number (in this case 7682173255252) as it refers to the actual archetype file which contains further info on what this crafting item does.
Name="FCC_Upgrades/A1 - 2 weapon holster" - just the internal name for what this item is. Makes it easier for you to know which item is which.
disId="162" - ID number in this file for each crafting item. Not as interesting nor useful as the ones in the shop file. You could experiment and see if these can be used in the shop file as prerequisites to unlocking things, but I'm not sure if it would work.
It IS used in the field iNextRecipeID="163" which presumably tells the game which recipe to reference and display AFTER you craft this one.
locidItemNameId="190429" locidItemHUDNameId="1844418944" locidDescriptionId="82694" and locidIngredientsDescriptionId="346975" - all of these are pointers in the oasisstring file to assign text strings to the name and description of the crafting item. In this example locidItemNameId (string number 190429) is "WEAPON HOLSTER" and locidDescriptionId (82694) is "Carry one weapon of any type.".
Of particular note here is locidIngredientsDescriptionId (346975) which is the TEXT display of whatever ingredients are required to craft this item. This description is independent of whatever you actually make the requirements so if it's unchanged then the description will not match the icons of what is required (and trust me this WILL lead to confusion and bug reports by people who use your mod )
In this example 346975 is the text string "3x Tibetan Wolf skin"
iSortId="0" - this controls sorting of the icons in the crafting HUD. The lower the number the closer to the beginning of the items it appears. In this case zero (0) being the lowest makes holsters appear first in the crafting HUD.
cftrcptpeType="5" - most gear is set to 5. Syringes are set to 255. Arrows are set to 4 even though you cannot seemingly craft arrows (I tried unsuccessfully to get them to show up on the crafting screen, but maybe someone else could have more luck - would be great to actually craft arrows instead of only buy them)
vectorMenuDisplayPosition="0.06,-0.15,0.14" menuDisplayAngles="18.58,-15.5,-60.4" fRotationSpeed="0.3" and fRotationAmplitude="0.05" - all are hold overs from the FC3 menu system where items where displayed with 3D models and positioning.
UnlockOnMissionComplete="" and UnlockFromScript="" - these seemingly work just like in the shop file. I have not tried using them, but it's theoretical that you could limit a crafting recipe to requiring a certain mission or bell tower to unlock it. Whether this would override actually crafting it with skins or prevent it from showing up or cause visual glitches I don't know. It would have to be tested. You can tell which syringes are the actual single player ones as they all have entries in the UnlockFromScript field. They are mysteriously called elephant, tiger, leopard and overdose (instead of healing, hunting, etc which also have entries but are unused...)
iCurrentLevel="0" iMaxLevel="3" - this tells the game which level of the item type this is. For example this is the first holster you craft so it's level is 0. The next is 1 and so on. You will find that the game actually contains an extra "FINAL" crafting item of each time. This could be very similar to the uber items that DZiggy added in his FC3 mod. Unfortunately these items are all currently disabled. I have not yet experimented with enabling them since I think they need additional support from the nomadobjects file and the archetypes files. I believe they were a planned feature that was cut in the end either due to time constraints or simply because Ubi deemed them unnecessary. Crafting in general seems more scaled back than FC3 so I suspect it was the later. (Whether or not the idea for Ubi to implement these came from DZiggys mod is for another discussion and speculation). NOTE that these final items could also simply be "stops" (for lack of a better word) to bookend the crafting types and tell the game that there are no more items of that type to display and craft.
OK the reply under this will contain the meat and potatoes of how to actually change the requirements for crafting items (i.e. "the fun stuff")