XML:Mtrl: Difference between revisions

From OniGalore
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=[[OBD:Mtrl|Mtrl]]: materials=
{{XML_File_Header | prev=M3GM | type=Mtrl | next=OBAN | name=Material}}


{{Template:XMLModdingHints}}
==General information==
{| border=0 cellspacing=20 cellpadding=0 align=center
* The XML on this page is compatible with OniSplit '''v0.9.61.0'''.
| The xml code on this page is compatible with onisplit '''v0.9.61.0'''
* '''Mtrl*.oni''' files are global. (They can be found in AE/AEInstaller/vanilla/level0_Final.dat.)
|}
* They are used by [[XML:BINA/ONIE|ONIE]], [[XML:BINA/TMBD|TMBD]] and [[XML:ONCC#CBPM:_Character_Body_Part_Materials|CBPM]].
 
* Materials are specified solely by the file name, for example "Mtrl'''Armor'''.oni"
 
* Every material has a parent material (except for "Default"), in order to organize the effects in ONIE.
'''general information'''
: For example: An effect is looked up from ONIE if a character get hit by a bullet.
* '''Mtrl*.oni''' files are global. (They can be found in edition/GameDataFolder/level0_...)
:: Let's imagine the hit body part has Armor as its material. If there's no effect defined for Armor, the engine looks for the parent material, here Character. And if Character doesn't match, the effect from Default is chosen.
* They are used by [[OBD_talk:BINA/ONIE|ONIE]], [[OBD_talk:BINA/TMBD|TMBD]] and [[OBD_talk:ONCC#CBPM|CBPM]].
* Material is only specified by the file name, for example "Mtrl'''Armor'''.oni"
* Every material has a parent material (except for "Default") to organize effects in ONIE.
: An example: An effect is looked up from ONIE if a character get hit by a bullet.
:: Let's imagine the hit body part has Armor as material. If there's no effect for Armor then the engine looks for the parent material, here Character. And if Character doesn't match then the effect from Default becomes chosen.
 
 
'''XML structure'''


==XML structure==
('''e.g.''' file name "Mtrl'''Armor'''.xml")
('''e.g.''' file name "Mtrl'''Armor'''.xml")
  <?xml version="1.0" encoding="utf-8"?>
  <?xml version="1.0" encoding="utf-8"?>
Line 26: Line 19:
  </Oni>
  </Oni>


 
==Vanilla material tree==
'''vanilla material tree'''
{{Tree list}}
 
*Default
Default
**Character
  |
***Armor
  +-- Character
***Cloth
  |    |
***Flesh
  |    +-- Armor
***Shield
  |    +-- Cloth
****Super_Shield
  |    +-- Flesh
**Glass
  |    +-- Shield
***Clear_Glass
  |          |
***Small_Glass
  |          +-- Super_Shield
***Tinted_Glass
  | 
***Unbreak_Glass
  +-- Glass
** Liquid
  |    |
**Mesh
  |    +-- Clear_Glass
**Solid
  |    +-- Small_Glass
***Carpet
  |    +-- Tinted_Glass
***Hard
  |    +-- Unbreak_Glass
****Metal
  |
*****Heavy_Metal
  +-- Liquid
*****Light_Metal
  +-- Mesh
*****Resonant_Metal  
  +-- Solid
****Stone
        |
*****Asphalt
        +-- Carpet
*****Concrete  
        +-- Hard
****Stucco
        |    |
***Loose_Ground
        |    +-- Metal
****Dirt
        |    |    |
****Snow
        |    |    +-- Heavy_Metal
***Plastic
        |    |    +-- Light_Metal
***Soft
        |    |    +-- Resonant_Metal  
{{Tree list/end}}
        |    |
{{XML}}
        |    +-- Stone
        |    |    |
        |    |    +-- Asphalt
        |    |    +-- Concrete  
        |    |
        |    +-- Stucco
        |
        +-- Loose_Ground
        |    |
        |    +-- Dirt
        |    +-- Snow
        |
        +-- Plastic
        +-- Soft

Latest revision as of 20:31, 6 December 2023

Mtrl : Material
XML modding tips
  • See HERE to start learning about XML modding.
  • See HERE if you are searching for information on how to handle object coordinates.
  • See HERE for some typical modding errors and their causes.
XML.png
XML

M3GM << Other file types >> OBAN

switch to OBD page

General information

  • The XML on this page is compatible with OniSplit v0.9.61.0.
  • Mtrl*.oni files are global. (They can be found in AE/AEInstaller/vanilla/level0_Final.dat.)
  • They are used by ONIE, TMBD and CBPM.
  • Materials are specified solely by the file name, for example "MtrlArmor.oni"
  • Every material has a parent material (except for "Default"), in order to organize the effects in ONIE.
For example: An effect is looked up from ONIE if a character get hit by a bullet.
Let's imagine the hit body part has Armor as its material. If there's no effect defined for Armor, the engine looks for the parent material, here Character. And if Character doesn't match, the effect from Default is chosen.

XML structure

(e.g. file name "MtrlArmor.xml")

<?xml version="1.0" encoding="utf-8"?>
<Oni>
   <Mtrl id="0">
       <ParentMaterial>MtrlCharacter</ParentMaterial>
   </Mtrl>
</Oni>

Vanilla material tree

  • Default
    • Character
      • Armor
      • Cloth
      • Flesh
      • Shield
        • Super_Shield
    • Glass
      • Clear_Glass
      • Small_Glass
      • Tinted_Glass
      • Unbreak_Glass
    • Liquid
    • Mesh
    • Solid
      • Carpet
      • Hard
        • Metal
          • Heavy_Metal
          • Light_Metal
          • Resonant_Metal
        • Stone
          • Asphalt
          • Concrete
        • Stucco
      • Loose_Ground
        • Dirt
        • Snow
      • Plastic
      • Soft