The XML namespace is devoted to explaining Oni's data types, originally documented in a technical byte-by-byte manner at OBD, according to the more user-friendly format they appear in when exported by OniSplit as XML. Following is an overview of each data type's function, and whether it has XML documentation available.
Documentation status:
: available
: incomplete
: not available, but that doesn't mean you cannot mod the file type
BINA
BINA/ONIEFile name: BINAEINOimpact_effects.oni Location: global
Purpose: Oni Impact Effects. 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.
Particle class (the "3" referring to the Particle subsystem's version number). A list of types of particles which can be spawned in the game, used by weapons to deal damage, for lighting effects, etc. A specific instance of a PAR3 class is a PART.
Sound Animation Binary Data. A list of the sounds to be played for each animation type, according to the character variant (ONCV) and the type of animation (TRAM) that they are playing.
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.
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.
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.
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.
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 SNDG.
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.
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.
AI Spawn Array. This file type was probably in the process of being replaced by BINA/CJBO/CHAR when Oni shipped, but AISA is still used for a few cutscene characters.
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. ^_^
Object Furniture Geometry Array. Used to import objects with no functions. (Door, consoles, etc. get imported by their object collections. See ONLV for more information.)
Oni Character Class. Here a type of character (Konoko, Strikers, etc.) is assigned their 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).
Character variant. 1) It's used to create a pool of characters from which an AI can be randomly spawned, in order to create a natural variance in appearance. A flag in a CHAR determines which ONCV the character falls under. 2) It can be also used to upgrade characters on the Hard difficulty level, also determined by a flag in the CHAR.
Game settings (global). There 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.
Sky. 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.
Totoro Animation collection. Used to build a hierarchy of moves (TRAM) which form a weighted moveset, based on which parent TRAC(s) a character's TRAC inherits from.
Totoro Animation. You can create new animations with Mod Tool. But for setting Oni-specific flags, links to particles, and so on, you need to edit the XML file afterwards, or create a precursor XML beforehand.
Totoro Body Set, in other words the 3D model of a character. Character classes (ONCC) link to TRBS. The 3D data itself will be exported/imported as Collada (.dae) files.