XML:TRGE: Difference between revisions

From OniGalore
Jump to navigation Jump to search
m (Iritscen moved page OBD talk:TRGE to XML:TRGE without leaving a redirect)
(attempting an update to the export/import section, but I don't know how to actually replace the data intelligently)
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Template:XMLModdingHints}}
{{XML_File_Header | prev=TRBS | type=TRGE | next=TRIG | name=Trigger Emitter}}
{| border=0 cellspacing=20 cellpadding=0 align=center
| The xml code on this page is compatible with onisplit '''v0.9.61.0'''
|}


'''general information'''
==General information==
* TRGE is stored globally (in edition/GameDataFolder/level0_Final)
* The XML on this page is compatible with OniSplit '''v0.9.61.0'''.
* vanilla Oni has only one file of that type: TRGEtrigger_emitter_0
* TRGE is stored globally, in level0_Final.dat.
* the game crashs if you try to put a TRGEtrigger_emitter_0 clone into an AE package
* TRGE files hold the 3D models for laser triggers, however there's only one model used in all of Oni, TRGEtrigger_emitter_0.
* choose another file name if you want a different TRGE, then create a new TRIG and use your TRGE in the <Emitter> tag, finally modify <Class> tag of BINACJBOTrigger
* The game crashes if you try to put a TRGEtrigger_emitter_0 file into an AE package to override the original.
 
* Choose another file name if you want a different TRGE, create a new [[XML:TRIG|TRIG]] and name your TRGE in the <Emitter> tag, and then name your TRIG in the <Class> tag of the level's [[XML:BINA/OBJC/TRIG|BINACJBOTrigger]].
 
'''file structure'''


==File structure==
{| border=0 cellspacing=20 cellpadding=0 style="float:right"
| [[Image:Changed TRGE mesh.png|150px]]<br>test: replaced mesh<br>(screamer warhead)
|}
  TRGE
  TRGE
   |  
   |  
   +-- M3GE
   +-- M3GM
         |
         |
         +-- PNTA <Points>
         +-- PNTA <Points>
Line 25: Line 24:
         +-- TXMP <Texture> (link to external file)
         +-- TXMP <Texture> (link to external file)


{| border=0 cellspacing=20 cellpadding=0 align=right
==XML tags==
| testing replaced mesh<br>(screamer warhead)<br>[http://i305.photobucket.com/albums/nn207/unknownfuture/Oni_Galore_Images/XML_modding/changed_TRGE_mesh.png http://i305.photobucket.com/albums/nn207/unknownfuture/Oni_Galore_Images/XML_modding/changed_TRGE_mesh_tn.png]<br>
|}
 
 
'''XML tags'''
 
: '''TRGE'''
: '''TRGE'''
:: <Position> - x y z position of the emitter in connection to the M3GM
:: <Position> - XYZ position of the emitter in connection to the M3GM
:: <Direction> - x y z value of the normal vector of the emitter
:: <Direction> - XYZ value of the normal vector of the emitter
:: <Geometry> - link to baked in M3GM instance
:: <Geometry> - link to M3GM instance
:: <GunkFlags> - ?
:: <GunkFlags> - unused
 
 
===M3GM===
'''export'''
 
You would need to cut TRGE instance so that only the M3GM and its connected instances remain and convert it to oni.
:    onisplit -extract:xml output_folder input_folder\TRGEfile.oni
:    onisplit -create output_folder input_folder\cutfile.xml
 
version hint:
: onisplit v0.9.61.0 can extract M3GM only as obj
: onisplit [http://mods.oni2.net/node/38 v0.9.41.0] can extract M3GM as obj or dae
 
Convert the M3GMfile.oni to obj:
:    onisplit -extract:obj output_folder input_folder\M3GMfile.oni
 
 
'''import'''


Are there some tags which make together the mesh but you basically need to know that you can replace that content with data from another M3GM.
==Embedded M3GM==
===Export===
To extract the DAE of the trigger head, use:
onisplit -extract:xml output_folder input_folder\TRGEfile.oni


You can create M3GM meshes from obj files.
===Import===
: onisplit -create:m3gm output_folder -tex:texture_file input_folder/weapon.obj
You will need to replace the M3GM content with data from another M3GM after running:
:: -tex is optional  
onisplit -create output_folder -tex:texture_file input.dae
:: The TXMP file must created separately (if needed).
("-tex" is optional; the TXMP file must created separately if needed.)


Then you can convert the file to xml and replace the TRGE's old M3GM xml code.
Then you can replace the TRGE's old M3GM data with the new M3GM's data. Remember to change the links (#N) and instance IDs of the new data.


Remember to change the links (#N) and instance IDs of the new data.
{{XML}}

Latest revision as of 20:49, 30 March 2021

TRGE : Trigger Emitter
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

TRBS << Other file types >> TRIG

switch to OBD page

General information

  • The XML on this page is compatible with OniSplit v0.9.61.0.
  • TRGE is stored globally, in level0_Final.dat.
  • TRGE files hold the 3D models for laser triggers, however there's only one model used in all of Oni, TRGEtrigger_emitter_0.
  • The game crashes if you try to put a TRGEtrigger_emitter_0 file into an AE package to override the original.
  • Choose another file name if you want a different TRGE, create a new TRIG and name your TRGE in the <Emitter> tag, and then name your TRIG in the <Class> tag of the level's BINACJBOTrigger.

File structure

Changed TRGE mesh.png
test: replaced mesh
(screamer warhead)
TRGE
  | 
  +-- M3GM
        |
        +-- PNTA <Points>
        +-- VCRA <VertexNormals>
        +-- VCRA <FaceNormals>
        +-- TXCA <TextureCoordinates>
        +-- IDXA <TriangleStrips>
        +-- IDXA <FaceNormalIndices>
        +-- TXMP <Texture> (link to external file)

XML tags

TRGE
<Position> - XYZ position of the emitter in connection to the M3GM
<Direction> - XYZ value of the normal vector of the emitter
<Geometry> - link to M3GM instance
<GunkFlags> - unused

Embedded M3GM

Export

To extract the DAE of the trigger head, use:

onisplit -extract:xml output_folder input_folder\TRGEfile.oni

Import

You will need to replace the M3GM content with data from another M3GM after running:

onisplit -create output_folder -tex:texture_file input.dae

("-tex" is optional; the TXMP file must created separately if needed.)

Then you can replace the TRGE's old M3GM data with the new M3GM's data. Remember to change the links (#N) and instance IDs of the new data.