XML:File types

From OniGalore
Revision as of 22:04, 10 April 2014 by Iritscen (talk | contribs) (Location refuses to align properly with the other headers)
Jump to navigation Jump to search
XML.png
See Modding Oni for an introduction to modding. See HERE for an introduction to Oni's data. See XML for an introduction to XML modding.

The XML namespace is devoted to explaining Oni's data types in plainer English than the technical documentation at OBD, by following the more user-friendly format the data appears in when exported by OniSplit as XML. Following is an overview of each data type's function, and whether it has XML documentation available. If you are not familiar with the meaning of BINA and OBJC then you should read the overview first. See HERE for a tree showing the hierarchy of the file types which link to other types.

Jump Table
ABNA, AGQC, AGQG, AGQR, AISA, AKAA, AKBA, AKBP, AKEV, AKOT, AKVA, BINA, CBPI, CBPM, CHAR, CMBT, CONS, CONS (OBJC), CRSA, DOOR, DOOR (OBJC), DPge, ENVP, FILM, FLAG, FURN, HPge, IDXA, IGHH, IGPA, IGPG, IGSA, IGSt, Impt, IPge, KeyI, M3GA, M3GM, MELE, Mtrl, NEUT, OBAN, OBJC, OBOA, OFGA, ONCC, ONCP, ONCV, ONGS, ONIA, ONIE, ONLD, ONLV, ONOA, ONSK, ONVL, ONWC, OPge, OSBD, OTIT, OTLF, PAR3, PART, PATR, PLEA, PNTA, PSpc, PSpL, PSUI, PWRU, QTNA, SABD, SNDD, SNDG, StNA, SUBT, TMBD, TRAC, TRAM, TRAS, TRBS, TRCM, TRGA, TRGE, TRGV, TRIA, TRIG, TRIG (OBJC), TRMA, TRSC, TRTA, TSFF, TSFL, TSFT, TSGA, TURR, TURR (OBJC), TXAN, TXCA, TXMA, TXMB, TXMP, TxtC, VCRA, WEAP, WMCL, WMDD, WMM, WMMB, WPge
Documentation status:
Aqua Dot-Green.png : available
Aqua Dot-Yellow.png : incomplete
Aqua Dot-Red.png : not available, but that doesn't mean you cannot mod the file type
Location:
global: File(s) found in level0_Final
local: File(s) found in level[1-19]_Final
both: File(s) found in all level files


Tag Aqua Dot-Grey.png Name File Location
AISA Aqua Dot-Green.png AI Character Setup Array

AISAlevel##_scripts local This file type was probably in the process of being replaced by CHAR when Oni shipped, but it is still used for a few cutscene characters.
{{{7}}}
AKEV Aqua Dot-Yellow.png Akira Environment

AKEV... local It's the 3D level model. Many subtypes are used for the actual 3D data -- ABNA, AGDB, AGQG, AGQC, AGQR, AKAA, AKBA, AKBP, AKDA, AKOT (which in turn uses OTIT, OTLF, and QTNA), AKVA, IDXA, PLEA, PNTA, TXCA, and TXMA; these types do not have separate XML documentation because they export as a part of AKEV. Some of these types are also used by M3GM. This type exports as a Collada (.dae) file, meant to be edited in a 3D modeler like Mod Tool.
{{{7}}}
CONS Aqua Dot-Yellow.png Console

CONSconsole... global There are only three of these models for the consoles used in all of Oni, as documented in Console, though the picture (TXMP) displayed on a specific console varies.
{{{7}}}
DOOR Aqua Dot-Green.png Door

DOOR... global There are 48 types of doors, defined globally for use in the levels.
{{{7}}}
DPge Aqua Dot-Green.png Diary Page

DPgelev_##_pg_## global As seen in the Diary tab of the Pause screen. The actual text is in a linked IGPG (see OPge for more info; also used by HPge, IPge, and WPge). The diary page is used for both diary-style entries and move pages, which are both unlocked when reaching the level number contained in this data. When being used as a move page, the sequence of actions that produce the move can be conveyed with the use of icons (TXMPs provided by KeyI), however, this functionality is unused in Oni's existing data.
{{{7}}}
FILM Aqua Dot-Green.png Film

FILM... local A record of a character's movements, created by a developer recording his gameplay and played back in cutscenes to make an AI perform complex actions. During playback, AIs have no AI. ^_^
{{{7}}}
HPge Aqua Dot-Green.png Help Page

HPgehelp_pg_01 global The Help tab of the Pause screen labels the in-game UI and reminds the player of the controls (but only the default bindings, regardless of what the player is actually using...). The actual text is in a linked IGPG (also used by DPge, OPge, IPge, and WPge).
{{{7}}}
IGHH Aqua Dot-Green.png IGUI (In-Game User Interface) HUD Help

IGHHhud_help_info global The Help tab of the Pause screen labels the in-game UI using the text found here and the overlay textures it links to.
{{{7}}}
Impt Aqua Dot-Green.png Impact

Impt... global This file is used to build up the hierarchy of impacts. See BINA/ONIE for more information.
{{{7}}}
IPge Aqua Dot-Green.png Item Page

IPge... local As items are picked up, their Item Pages are displayed on the Items tab of the Pause screen. The actual text and image is found in a linked IGPG (see OPge for more info; also used by DPge, HPge, and WPge).
{{{7}}}
M3GM Aqua Dot-Green.png Geometry

M3GM... both A basic unit of 3D geometry, used by anything that can have a physical shape, such as characters (TRBS), consoles (CONS), animated objects (OBAN) and particles (PAR3). The building blocks of the geometry are the types IDXA, PNTA, TXCA, VCRA (these are all exported under M3GM so do not have separate XML documentation), and the texture is provided by TXMP.
{{{7}}}
Mtrl Aqua Dot-Green.png Material

Mtrl... global These files is used to build up the hierarchy of materials. See BINA/ONIE for more information.
{{{7}}}
OBAN Aqua Dot-Green.png Object Animation

OBAN... both Yes, this is used to animate objects, but also characters and cutscene cameras. Uses OBOA (also used by ONLV) to store the physics settings, and the OBOA in turn uses an M3GA, which is an array of M3GMs, to store the actual geometry.
{{{7}}}
OFGA Aqua Dot-Green.png Object Furniture Geometry Array

OFGA... N/A Used to import objects with no functions. (Door, consoles, etc. get imported by their object collections. See XML:ONLV for more information.)
{{{7}}}
ONCC Aqua Dot-Yellow.png Oni Character Class

ONCC... local Here a type of character (Konoko, Striker, etc.) is assigned its weapon skill, behavior ID, vision radius, jumping height, sounds, 3D model (TRBS), animation collection (TRAC), textures (TRMA), and much more. The XML file contains also the character's body part material (CBPM), body part impacts (CBPI), and particles for animations (ONCP and ONIA).)
{{{7}}}
ONCV Aqua Dot-Green.png Oni Character Variant

ONCV... global Used to create a pool of characters from which an AI can be randomly spawned, in order to create a natural variation in appearance. A flag in a CHAR determines which variant the character falls under. It can be also used to upgrade characters on the Hard difficulty level, also determined by a flag in the CHAR.)
{{{7}}}
ONGS Aqua Dot-Green.png Oni Game Settings

ONGSgame_settings global Here you can modify the game's health bar, hypo spray strength, game difficulty, autoprompts (text messages when picking up a new kind of item), etc.
{{{7}}}
ONLD Aqua Dot-Yellow.png Oni Game Level Descriptor

ONLDlevel_## global Contains the level's number, the number of the next level, and the level's name as it appears on the Load Game screen.
{{{7}}}
ONLV Aqua Dot-Yellow.png Oni Game Level

ONLV... local The top of the hierarchy when it comes to level data. Holds, among other things, the name of the BSL folder with the scripts for this level, and links to the environmental model (AKEV), animated objects (OBOA), the skybox (ONSK), and the AIs to spawn (well, the ones in AISA; the ones in CHAR need no link from here). These type links as well as the corpse array (CRSA), environmental particles (ENVP), and gunk data (ONOA) will be exported together in XML. ONLV also links to six obsolete types which will not be exported: AITR, OBDC, ONFA, ONMA, ONSA, and ONTA.
{{{7}}}
ONSK Aqua Dot-Green.png Oni Sky Class

ONSK... local It's essentially a box of textures that sits on the level, so you will need five images for the top, north, east, south and west. The bottom has no image.
{{{7}}}
ONVL Aqua Dot-Green.png Oni Variant List

ONVLvariant_list global It's used to randomize characters' appearances in conjunction with ONCV.
{{{7}}}
ONWC Aqua Dot-Green.png Oni Weapon Class

ONWCw... global Describes the primary and secondary fire mode and more, and links to its particles (PAR3), a 3D model (M3GM), and textures (TXMP).
{{{7}}}
OPge Aqua Dot-Green.png Objective Page

OPgelevel_## local This is the wrapping type for the text that appears in the Objective tab of the Pause screen. The actual text is found by following the objective page's link to an IGPA (also used by TxtC), which is an array of IGPGs (also used by DPge, HPge, IPge, and WPge) which contain links to arrays of text strings (IGSA, which point to the individual strings, IGSt, which link to the font family, TSFF) and links to TXMPs for illustrations.
{{{7}}}
OSBD Aqua Dot-Yellow.png Oni Sound Binary Data

OSBD... global They determine how sounds (SNDD) get played.
{{{7}}}
PSpc Aqua Dot-Green.png Part Specification

PSpc... both Specifies coordinates in a certain TXMP which contains a collection of UI elements. The coordinates are used to cut out specific elements for use in drawing the windows in the game.
{{{7}}}
PSpL Aqua Dot-Red.png Part Specification List

PSpLpartspec_list global Links to the PSpc used for the plain-color background of a particular UI (the in-game UI uses black and the out-game UI uses transparency).
{{{7}}}
PSUI Aqua Dot-Red.png Part Specification UI

PSUIpsui_... global Specifies the PSpcs used to paint a certain style of UI. There are only two of these files in Oni, and only PSUIpsui_oniUI is actually used.
{{{7}}}
StNA Aqua Dot-Green.png String Array

StNA... global StNA files are obsolete. However, in the XML docs for it, you'll find collections of flags used by TRAM.
{{{7}}}
SUBT Aqua Dot-Green.png Subtitle Array

SUBT... global This is just here for informational purposes, because subtitle files are extracted to TXT files, not XML.
{{{7}}}
TRAC Aqua Dot-Green.png (Totoro) Animation Collection

TRAC... both Used to build a hierarchy of moves (TRAMs) which form a weighted moveset, based on which parent TRAC(s) a character's TRAC inherits from.
{{{7}}}
TRAM Aqua Dot-Yellow.png Totoro Animation Sequence

TRAM... both The core animation data for character moves. Exports to Collada (.dae) + XML. The XML file contains the animation's Oni-specific flags, links to particles, and so on.
{{{7}}}
TRAS Aqua Dot-Red.png Totoro Animation Sequence

TRAS... both The pose keyframes defined here are interpolated and overlaid on characters when they aim with weapons.
{{{7}}}
TRBS Aqua Dot-Green.png Totoro Body Set

TRBS... local The wrapping data for the 3D model of a character. Character classes (ONCCs) link to these. The 3D data can be imported/exported as Collada (.dae) files, but using the ONCC for this might be preferable so you get all related character data in XML on the side. The structure of the body at each individual detail level is found in the linked TRCM, which links to TRGA for the geometry of each body part, to TRTA for the relative location of each body part, and to TRIA for the hierarchical relationship of the body parts.
{{{7}}}
TRGE Aqua Dot-Green.png Trigger Emitter

TRGEtrigger_emitter_0 global This file links to the one 3D model (M3GM) used for all laser triggers. Used by TRIG.
{{{7}}}
TRIG Aqua Dot-Yellow.png Trigger

TRIG... global A laser trigger class.
{{{7}}}
TRMA Aqua Dot-Green.png Texture Map Array

TRMA... local The list of textures used for each body part of a certain character.
{{{7}}}
TRSC Aqua Dot-Red.png Screen (Aiming) Collection

TRSC... both Essentially just links to the TRAS of a character.
{{{7}}}
TURR Aqua Dot-Green.png Turret

TURR... global A class of turret. The actual geometry is in a linked M3GM.
{{{7}}}
TXMB Aqua Dot-Green.png Texture Map Big

TXMB... both A series of concatenated TXMPs, used for creating splash screens, like the Main Menu background and level intro/win/loss screens.
{{{7}}}
TXMP Aqua Dot-Green.png Texture Map

TXMP... both This type covers all images in Oni (except the ones larger than 256x256, which are built with TXMB). When a texture is animated, it will have a link to TXAN, which simply contains information about the animation; the actual image data is still in the TXMP.
{{{7}}}
TxtC Aqua Dot-Green.png Text Console

TxtClevel_... local The source of the text for a given console. The actual text is found by following the link to an IGPA (also used by OPge), which is an array of IGPG (also used by DPge, HPge, IPge, and WPge) that contains the actual text.
{{{7}}}
WMCL Aqua Dot-Red.png WM (Window Manager) Cursor List

WMCLcursor_list global Simply links to the PSpc which links to the image used for the mouse pointer that appears in Oni.
{{{7}}}
WMDD Aqua Dot-Green.png WM (Window Manager) Dialog Data

WMDD... global Describes the structure of screens like the Main Menu. Uses WMM for pop-up menus, and links to the desired font family (TSFF, also used by IGPG), which in turn links to the font language (TSFL) and the font itself (TSFT, which links to TSGA for the coordinates of each letter in the TSFT data); there is only one font to choose from, Tahoma. Because Oni's UI is partially hardcoded, adding new buttons would require engine modding.
{{{7}}}
WMM Aqua Dot-Green.png WM (Window Manager) Menu

WMM... global Drop-down menus used in WMDDs. This type is actually "WMM_", using the underscore in lieu of a fourth letter, but the wiki won't let us end a page in an underscore, so here we call it "WMM". Most of the WMMs, and the sole WMMB in Oni (a menu bar that uses WMM for its menus), are development relics.
{{{7}}}
WPge Aqua Dot-Green.png Weapon Page

WPgew... global This is the source for the text and images that appear in the Weapons tab of the Pause screen. The actual text and image is found in a linked IGPG (see OPge for more info; also used by DPge, HPge, and WPge).
{{{7}}}

BINA

Tag Aqua Dot-Grey.png Name File Location
BINA/ONIE Aqua Dot-Yellow.png Oni Impact Effects

BINAEINOimpact_effects global A list of all impact effects which can happen in the game. That includes weapon particles, hand-to-hand combat, and footsteps. The impact effect is selected according the type of impact (Impt) and the material (Mtrl) which is hit.
{{{7}}}
BINA/PAR3 Aqua Dot-Yellow.png Particle

BINA3RAP... global A type of particle which can be spawned in the game, used by weapons to deal damage, for lighting effects, etc. The list of the specific particles spawned in a certain level is a PART.
{{{7}}}
BINA/SABD Aqua Dot-Yellow.png Sound Animation

BINADBAS... global A list of the sounds to be played for an animation type. There is one of these for each character variant (ONCV).
{{{7}}}
BINA/TMBD Aqua Dot-Green.png Texture Materials

BINADBMTTextureMaterials global A list of the materials (Mtrl) assigned to each texture map (TXMP). Used by ONIE.
{{{7}}}

BINA/OBJC

Tag Aqua Dot-Grey.png Name File Location
BINA/OBJC/CHAR Aqua Dot-Yellow.png Characters

BINACJBOCharacter local List of characters in a specific level, containing their position, script function names, weapon, ammunition, items, team, combat, melee ID, etc.
{{{7}}}
BINA/OBJC/CMBT Aqua Dot-Yellow.png Combat

BINACJBOCombat global List of combat profiles for global use, containing conditions that govern the AI's melee, weapon combat, and retreat behavior, based on factors like distance and the enemy's reactions.
{{{7}}}
BINA/OBJC/CONS Aqua Dot-Green.png Consoles

BINACJBOConsole local List of consoles in a specific level, containing their position, script name (ID), screen images, and script function names. Consoles are used to open doors, trigger alarms, or provide information.
{{{7}}}
BINA/OBJC/DOOR Aqua Dot-Green.png Doors

BINACJBODoor local List of doors in a specific level, containing their conditions for when a door opens (e.g., is the action key required?), and what events are triggered by a character who opens the door.
{{{7}}}
BINA/OBJC/FLAG Aqua Dot-Green.png Flags

BINACJBOFlag local List of flags in a specific level, containing their position. Flags are used by level scripts and patrol paths.
{{{7}}}
BINA/OBJC/FURN Aqua Dot-Green.png Furniture

BINACJBOFurniture local List of pieces of furniture in a specific level. This file type can be used to import level objects.
{{{7}}}
BINA/OBJC/MELE Aqua Dot-Yellow.png Melee

BINACJBOMelee Profile global List of melee profiles for global use. A melee profile contains a simple program that determines how the AI uses its combat moves.
{{{7}}}
BINA/OBJC/NEUT Aqua Dot-Green.png Neutral

BINACJBONeutral local List of neutral character behaviors in a specific level. Every character has a melee, combat and neutral behavior ID. It determines whether a non-player character (NPC) talks to you and whether they give you a power-up.
{{{7}}}
BINA/OBJC/PART Aqua Dot-Green.png Particles

BINACJBOParticle local List of particles in a specific level, containing their position, script name and scaling.
{{{7}}}
BINA/OBJC/PATR Aqua Dot-Green.png Patrol Paths

BINACJBOPatrol Path local List of patrol paths in a specific level, containing an ID which is used by CHAR and the scripting command "ai2_dopath".
{{{7}}}
BINA/OBJC/PWRU Aqua Dot-Green.png PowerUps

BINACJBOPowerUp local List of power-ups (items, e.g. hypo sprays) in a specific level which are spawned at level load, containing their position.
{{{7}}}
BINA/OBJC/SNDG Aqua Dot-Yellow.png Sound Groups

BINACJBOSound local List of sound groups in a specific level. Sound groups are the invisible spheres which contain ambient sounds. If you come near a machine and you hear a sound, that's because of a sound group.
{{{7}}}
BINA/OBJC/TRGV Aqua Dot-Green.png Trigger Volumes

BINACJBOTrigger Volume local List of trigger volumes in a specific level. They are invisible areas which trigger functions in a script when entered.
{{{7}}}
BINA/OBJC/TRIG Aqua Dot-Green.png Triggers

BINAJCBOTrigger local List of laser triggers in a specific level. There are several forms of triggers, and they can trigger not only turrets (TURR), but also script functions in the level.
{{{7}}}
BINA/OBJC/TURR Aqua Dot-Green.png Turrets

BINACJBOTurret local List of turrets in a specific level. Note that their pods are part of the level geometry. Spawn one manually and it might be located somewhere in the air. Determines their head's position, the weapon inside the turret head, and the team ID to target.
{{{7}}}
BINA/OBJC/WEAP Aqua Dot-Green.png Weapons

BINACJBOWeapon local List of weapons in a specific level, determining their spawn location at level load.
{{{7}}}