Modding:Coding An Item: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
No edit summary
 
Line 188: Line 188:
Now the material we have found, SourceFile "Public/Shared/Assets/Materials/Characters/CHAR_BASE.lsf" is a fairly standard shader without transparency or glowing. Materials that can be Transparent have 'Alpha' in the title. For example, "Public/Shared/Assets/Materials/Characters/CHAR_BASE_AlphaTest_2S.lsf" or "CHAR_BASE_AlphaTest_2S_Dither" will enable alpha and make the mesh visible from both sides (turns off backface culling). Underwear needs to have a Dither shader or it won't hide correctly.
Now the material we have found, SourceFile "Public/Shared/Assets/Materials/Characters/CHAR_BASE.lsf" is a fairly standard shader without transparency or glowing. Materials that can be Transparent have 'Alpha' in the title. For example, "Public/Shared/Assets/Materials/Characters/CHAR_BASE_AlphaTest_2S.lsf" or "CHAR_BASE_AlphaTest_2S_Dither" will enable alpha and make the mesh visible from both sides (turns off backface culling). Underwear needs to have a Dither shader or it won't hide correctly.


Materials with _VT at the end are useless to us, as they only work with virtual texture. A virtualtexture is essentially a box for textures that makes it load faster. We don't have any way of packing virtualtextures ourselves, so do not attempt to use those materials.
Materials with _VT at the end are less useful, as they only work with virtual texture. A virtualtexture is essentially a box for textures that makes it load faster. We can pack our own virtual textures with Script Extender and Lslib, but that is beyond the scope of this page.


In order to make, say, pants disappear when boots are put on, you may need to use a _Vertcut Material, such as 'Public/Shared/Assets/Materials/Characters/CHAR_BASE_VertCut.lsf', and ensure VertexMask is set to True in the mesh lsx. (As well as vertex painting the item itself the desired colour)
In order to make, say, pants disappear when boots are put on, you may need to use a _Vertcut Material, such as 'Public/Shared/Assets/Materials/Characters/CHAR_BASE_VertCut.lsf', and ensure VertexMask is set to True in the mesh lsx. (As well as vertex painting the item itself the desired colour)
Line 379: Line 379:
  Armor.txt
  Armor.txt
  new entry "MY_COOL_NEW_CIRCLET"
  new entry "MY_COOL_NEW_CIRCLET"
  type "Armor"
  type "Armor" '''Note that the 'type' section can enable the item to spawn in random places the game randomly puts items. If you wish it to never spawn anywhere else, either set <code>type ""</code>'''. Or, potentially, add <code>data "ItemGroup" ""</code> below.
  data "ValueOverride" "4000" '''(It's a very cool circlet and we want it to cost a lot!)'''
  data "ValueOverride" "4000" '''(It's a very cool circlet and we want it to cost a lot!)'''
  data "Weight" "0.01"
  data "Weight" "0.01"
  using "_Head_Magic_Circlet" '''(This tells it what slot to equip in. Ideally this should match up with the ParentTemplate you set up.)'''
  using "_Head_Magic_Circlet" '''(This tells it what slot to equip in. Ideally this should match up with the ParentTemplate you set up.)'''
  data "RootTemplate" "0000000000000000000000000002" '''Matches up to the rootemplate Mapkey.'''
  data "RootTemplate" "0000000000000000000000000002" '''Matches up to the rootemplate Mapkey.'''
  data "Rarity" "Rare" '''This effects what colour it is in your inventory, rarer things get a different colour outline. Note that if you set things as common they may spawn in generic containers, which is not optimal for clean uninstalling.'''
  data "Rarity" "Rare" '''This effects what colour it is in your inventory, rarer things get a different colour outline.'''  
  data "Boosts" "UnlockSpell(Target_MAG_HealingWord);UnlockSpell(Shout_MAG_HealingWord_Mass)" '''This forces it to give us these spells. Note that the character needs spell slots in able to use them! If you want it for everyone you may be better off setting it up as a custom passive'''.
  data "Boosts" "UnlockSpell(Target_MAG_HealingWord);UnlockSpell(Shout_MAG_HealingWord_Mass)" '''This forces it to give us these spells. Note that the character needs spell slots in able to use them! If you want it for everyone you may be better off setting it up as a custom passive'''.
  data "PassivesOnEquip" "MAG_Radiant_Radiating_Helmet_Passive;CUSTOMPASSIVEIMADE" '''(The ; seperates passives.)'''
  data "PassivesOnEquip" "MAG_Radiant_Radiating_Helmet_Passive;CUSTOMPASSIVEIMADE" '''(The ; seperates passives.)'''
Line 390: Line 390:
  data "MinAmount" "1"
  data "MinAmount" "1"
  data "MaxAmount" "1"  
  data "MaxAmount" "1"  
Other <code>using</code>  slots include <code>"ARM_Camp_Body"</code>,  <code>"_Vanity_Shoes_Generic_Common"</code> for camp clothes, <code>"_Foot_Magic"</code> for boots, <code>"ARM_Robe_Body"</code> for robes, <code>"_Hand"</code> for gloves.  
Other <code>using</code>  slots include <code>"ARM_Camp_Body"</code>,  <code>"_Vanity_Shoes_Generic_Common"</code> for camp clothes, <code>"_Foot_Magic"</code> for boots, <code>"ARM_Robe_Body"</code> for robes, <code>"_Hand"</code> for gloves.  


Navigation menu