XML:TRGE: Difference between revisions

From OniGalore
Jump to navigation Jump to search
(attempting an update to the export/import section, but I don't know how to actually replace the data intelligently)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{XML_File_Header | type=TRGE | prev=TRBS | next=TRIG | name=Trigger Emitter }}
{{XML_File_Header | prev=TRBS | type=TRGE | next=TRIG | name=Trigger Emitter}}


===general information===
==General information==
* The xml code on this page is compatible with onisplit '''v0.9.61.0'''
* The XML on this page is compatible with OniSplit '''v0.9.61.0'''.
* TRGE is stored globally (in AE/AEInstaller/vanilla/level0_Final.dat)
* TRGE is stored globally, in level0_Final.dat.
* vanilla Oni has only one file of that type: TRGEtrigger_emitter_0
* 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 crashs if you try to put a TRGEtrigger_emitter_0 clone into an AE package
* 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, then create a new TRIG and use your TRGE in the <Emitter> tag, finally modify <Class> tag of BINACJBOTrigger
* 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"
{| border=0 cellspacing=20 cellpadding=0 style="float:right"
| [[Image:Changed TRGE mesh.png|150px]]<br>test: replaced mesh<br>(screamer warhead)
| [[Image:Changed TRGE mesh.png|150px]]<br>test: replaced mesh<br>(screamer warhead)
Line 25: Line 24:
         +-- TXMP <Texture> (link to external file)
         +-- TXMP <Texture> (link to external file)


===XML tags===
==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
 
 
===embedded 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.


You can create M3GM meshes from obj files.
==Embedded M3GM==
: onisplit -create:m3gm output_folder -tex:texture_file input_folder/weapon.obj
===Export===
:: -tex is optional
To extract the DAE of the trigger head, use:
:: The TXMP file must created separately (if needed).  
onisplit -extract:xml output_folder input_folder\TRGEfile.oni


Then you can convert the file to xml and replace the TRGE's old M3GM xml code.
===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.)


Remember to change the links (#N) and instance IDs of the new data.
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.


{{XML}}
{{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.