Engine terminology
Engine versions
There are three versions of Oni's engine found in released versions of the game. They are referred to interchangeably by various names.
- Windows retail, Windows, PC, v1.0
This version of the engine can be identified as v1.0 from its read-me but is often referred to as the "Windows" or "PC" engine. This version of the engine was used for all localized Windows releases translated into non-English languages as well.
- Mac, Windows demo, v1.1
This version was used for Mac retail and demo releases and can be identified as v1.1 from the Mac read-me, and underwent another month of development after v1.0. It was also used for the Windows demo, but is sometimes referred to as the "Mac" engine for simplicity. Its most obvious difference is the addition of .sep files to the GameDataFolder, but some templates were changed as well.
- PS2
This version was created by Rockstar North for the PlayStation 2 port. It also uses .sep files but makes additional changes to templates. It went through another 1-2 months of development after the Mac version and could possibly be thought of as v1.2, but is probably best understood as a fork of the v1.1 engine made for PS2 compatibility.
Subsystems
The engine consists of various subsystems, some of which have colorful animé-related names and some of which have simple descriptive names.
- AI2
The second iteration of the code for driving the AIs.
- Akira
The environment code, responsible for holding the game world in memory. Named for the 1988 film Akira.
- BFW
A layer rather than a subsystem, standing for BungieFrameWork. This is the lower layer of the game engine, consisting of generalized cross-platform engine code. The upper layer is simply called "Oni" and contains specializations needed to implement Oni's gameplay logic.
- BSL
Standing for BFW Scripting Language, this is the subsystem responsible for running Oni's scripting language.
- Motoko
The renderer code, responsible for drawing Oni's graphics. Named for the main character of the 1995 film Ghost in the Shell.
- Totoro
The code for Oni's animation system, responsible for running all 3D model animations. Named for the 1988 film My Neighbor Totoro.