Modding:Coding An Item: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
No edit summary
Line 2: Line 2:
You have made a mesh for a human man, a circlet. We are going to add it to the game.
You have made a mesh for a human man, a circlet. We are going to add it to the game.
Remember to check your naming conventions for .lsf.lsx files so the multitool correctly converts them, and keep in mind that some lsx files should not be converted to lsf at all.
Remember to check your naming conventions for .lsf.lsx files so the multitool correctly converts them, and keep in mind that some lsx files should not be converted to lsf at all.
==File Overview==


Your mod is '''MySweetMod'''
Your mod is '''MySweetMod'''
Line 28: Line 31:
********Data <--- Armor.txt, Object.txt, Passive.txt, Weapon.txt and other TXT files. These contain stats.
********Data <--- Armor.txt, Object.txt, Passive.txt, Weapon.txt and other TXT files. These contain stats.


==Meshes.lsx==


We export the mesh, '''HUM_M_CLT_Headwear_Circlet_Silver_A''', we created to the MySweetMod/Generated/Public/MySweetMod/'''Assets''' Folder.  
We export the mesh, '''HUM_M_CLT_Headwear_Circlet_Silver_A''', we created to the MySweetMod/Generated/Public/MySweetMod/'''Assets''' Folder.  
Line 106: Line 110:
Now, we move on to our mesh.
Now, we move on to our mesh.


 
==RootTemplate==
Now for the game recognise the item, we add it to the root template lsx:
Now for the game recognise the item, we add it to the root template lsx:


Line 206: Line 210:
  </save>
  </save>


==Loca==
Now, let's see how this links up to the localisation.
Now, let's see how this links up to the localisation.
You can generate a handle by ticking the Handle box next to 'GENERATE' on the Multitool. It is much like an UUID but it starts with an H.
You can generate a handle by ticking the Handle box next to 'GENERATE' on the Multitool. It is much like an UUID but it starts with an H.
Line 213: Line 218:
  </contentList>
  </contentList>


==Armor and Passives==
Meanwhile in your '''Armor.txt''', they link up like this:
Meanwhile in your '''Armor.txt''', they link up like this:
You can look at the games own armor.txt for ideas of what to put here. You can delete a lot of this, all you really need is the entry, the type, what slot it uses and the RootTemplate.
You can look at the games own armor.txt for ideas of what to put here. You can delete a lot of this, all you really need is the entry, the type, what slot it uses and the RootTemplate.
Line 243: Line 249:
  data "StatsFunctors" "IF(context.HasContextFlag(StatsFunctorContext.OnAttacked) and HasStatus('MAGE_ARMOR') and IsLastConditionRollSuccess(ConditionRollType.ConditionSavingThrow) and not Self() and IsSavingThrow()):DealDamage(SWAP, 1d4, Radiant,Magical)"
  data "StatsFunctors" "IF(context.HasContextFlag(StatsFunctorContext.OnAttacked) and HasStatus('MAGE_ARMOR') and IsLastConditionRollSuccess(ConditionRollType.ConditionSavingThrow) and not Self() and IsSavingThrow()):DealDamage(SWAP, 1d4, Radiant,Magical)"


==TreasureTable==
Now, you need to put it in the treasuretable.
Now, you need to put it in the treasuretable.
Your treasuretable should look like this:
Your treasuretable should look like this:
Line 253: Line 260:
This will make it spawn in the tutorial chest.
This will make it spawn in the tutorial chest.


If something goes wrong, it is recommended to overwrite a custom mesh from someone else's mod. When you know this, you can fix things one step at a time. No one can fix it better than you- sometimes it is best to just leave things a day or two and come back to them with a clear head.
If something goes wrong, it is recommended to overwrite a custom mesh from someone else's mod. When you know the fault is not with your mesh, you can fix things one step at a time. No one can fix it better than you- sometimes it is best to just leave things a day or two and come back to them with a clear head.


{| class="nomobile" style="text-align:center; margin: auto; border:1px solid #785000; font-size:83%; background-color:#1B1B1B; width: 60;" ;
{| class="nomobile" style="text-align:center; margin: auto; border:1px solid #785000; font-size:83%; background-color:#1B1B1B; width: 60;" ;

Navigation menu