Talk:Introduction to modding: Difference between revisions

From OniGalore
Jump to navigation Jump to search
m (hm ...)
m (fixing typos, adding another note from neo (sndd))
Line 6: Line 6:
They build up the level logic, simply said they make the level to appear logic/intelligent, they give basic commands to game engine.
They build up the level logic, simply said they make the level to appear logic/intelligent, they give basic commands to game engine.


OBD refers to Oni Binay Data. Script commands are useless when their addressed resources don't exist. A BSL command might say "ai2_movetoflag characterA 7" (characterA moves to point 7) but the actual movement animation and flag comes from the binaries, in this case called TRAM and FLAG. Every resource has a four-letter-acronym. TRAM stands for Toronto Animation. In old day we tweaked that kind of data with HEX-editor and OniUnPacker which displays data as hexadecimal number. For last research fields or fast testing we sometimes still use hex-editing. (Written at 26. Juli 2009.) Today, TRAM can be converted to XML, that format can be read and rewritten more easily but still lacks fully some usability when it comes it its core.
OBD refers to Oni Binay Data. Script commands are useless when their addressed resources don't exist. A BSL command might say "ai2_movetoflag characterA 7" (characterA moves to point 7) but the actual movement animation and flag comes from the binaries, in this case called TRAM and FLAG. Every resource has a four-letter-acronym. TRAM stands for Toronto Animation. In old days we tweaked that kind of data with HEX-editor and OniUnPacker which displays data as hexadecimal number. For last research fields or fast testing we sometimes still use hex-editing. (Written at 26. Juli 2009.) Now, TRAM can be converted to XML, that format can be read and rewritten more easily but still lacks some usability when it comes to TRAM's core.


Some resources can be converted into special formats when XML don't really suit them. Those are textures, 3D objects and animations, they are better moddable in other tools. By modding it is often meant that you can also create complete new resources.
Some resources don't suit XML. These are 3D objects and animations, sounds and textures, they become converted into their native formats.<br>By modding it is often meant that you can also create complete new resources.
* Texture can be modified/created in your favourite graphic program: [http://www.gimp.org/ GIMP], [http://www.adobe.com/products/photoshop/compare/ Photoshop], etc. – as long as these programs outputs files in formats that can be reconverted.
* 3D objects (characters, objects, levels) can be modified/created in blender or [http://www.softimage.com/products/modtool/ XSI].
* 3D objects (characters, objects, levels) can be modified/created in blender or [http://www.softimage.com/products/modtool/ XSI].
* Animation can be modified/created with [http://www.softimage.com/ (Autodesk) softimage].
* Animation can be modified/created with [http://www.softimage.com/ (Autodesk) softimage].
* Texture can be modified/created in your favorite graphic program: [http://www.gimp.org/ GIMP], [http://www.adobe.com/products/photoshop/compare/ Photoshop], etc. – as long as these programs outputs files in formats that can be reconverted.




Line 17: Line 17:
===BSL===
===BSL===
* introduction and database links [[BSL|HERE]]
* introduction and database links [[BSL|HERE]]
* [http://www.mods.oni2.net/node/61 Tyr's script editor]
* tutorials: [[BSL:Tutorial/Scratch]]
* tutorials: [[BSL:Tutorial/Scratch]]


Line 52: Line 51:
* tutorial: [[AE:Adding_spawnable_characters|Adding spawnable characters to a level CHAR]]
* tutorial: [[AE:Adding_spawnable_characters|Adding spawnable characters to a level CHAR]]
* tutorial: [[AE:Adding_character_classes|Adding character classes ONCC]]
* tutorial: [[AE:Adding_character_classes|Adding character classes ONCC]]
====Sound====
* importer notes
: -WAV files (.wav, mono/stereo, 22.05KHz/44.1KHz, uncompressed(PCM)/compressed(MS-ADPCM)) produce SNDD files that are compatible with Oni PC retail.
: -AIFC files (.aif/.aifc/.afc, mono/stereo 22.05KHz, compressed(ima4)) produce SNDD files that are compatible with Oni Mac.
:: Example
OniSplit -create out_dir test.aif
OniSplit -create out_dir test.wav




====Textures====
====Textures====
* tutorial: [[AE:ModTXMP|Modifying textures TXMP]]
* tutorial: [[AE:ModTXMP|Modifying textures TXMP]]





Revision as of 14:34, 27 July 2009

introduction

In sum, modding Oni looks like writing a theatre play: You have stages, actors, and scripts - wide areas, buildings, rooms, decorations, characters running from A to B whereas the protagonist triggers most events. But the official makers had ran out of time, left the game without modding support, so it took over seven years to unlock most possibilities. Read HERE the full story.

Scripts are written in Bungie Script Language, that's why we also often say "BSL mods". They build up the level logic, simply said they make the level to appear logic/intelligent, they give basic commands to game engine.

OBD refers to Oni Binay Data. Script commands are useless when their addressed resources don't exist. A BSL command might say "ai2_movetoflag characterA 7" (characterA moves to point 7) but the actual movement animation and flag comes from the binaries, in this case called TRAM and FLAG. Every resource has a four-letter-acronym. TRAM stands for Toronto Animation. In old days we tweaked that kind of data with HEX-editor and OniUnPacker which displays data as hexadecimal number. For last research fields or fast testing we sometimes still use hex-editing. (Written at 26. Juli 2009.) Now, TRAM can be converted to XML, that format can be read and rewritten more easily but still lacks some usability when it comes to TRAM's core.

Some resources don't suit XML. These are 3D objects and animations, sounds and textures, they become converted into their native formats.
By modding it is often meant that you can also create complete new resources.

  • 3D objects (characters, objects, levels) can be modified/created in blender or XSI.
  • Animation can be modified/created with (Autodesk) softimage.
  • Texture can be modified/created in your favorite graphic program: GIMP, Photoshop, etc. – as long as these programs outputs files in formats that can be reconverted.


links to tools, documentations and tutorials

BSL


OBD

file converting in general


3D


Animation

onisplit -create:tram target_dir animation.dae
In the target folder you'll get a TRAManimation.xml file.
You need to add some stuff to that file to make it actually work as an animation. In particular the animation type, from/to states and varient needs to be set.
For all I know this works with animations exported from Oni and modified in Softimage. If you come up with a completly new animation it should work as long as the skeleton is similar to the one used in Oni.
Note that the geometry that is present inside the Collada file is used to compute the "vertical extents" so it better be the same or close to the one the animation is intended for.
The biggest problem are the attacks. While it's not difficult to add attacks to the xml file, computing the necessary "extents" is not going to be easy. I guess in the end I'll have to add some command to OniSplit to do it.


HEX


Sound

  • importer notes
-WAV files (.wav, mono/stereo, 22.05KHz/44.1KHz, uncompressed(PCM)/compressed(MS-ADPCM)) produce SNDD files that are compatible with Oni PC retail.
-AIFC files (.aif/.aifc/.afc, mono/stereo 22.05KHz, compressed(ima4)) produce SNDD files that are compatible with Oni Mac.
Example
OniSplit -create out_dir test.aif
OniSplit -create out_dir test.wav


Textures


what you can do