Mac beta 4

From OniGalore
Revision as of 16:27, 20 July 2014 by Iritscen (talk | contribs) (moving Mac history link to top of page; PC -> Windows (Macs are PCs too!))
Jump to navigation Jump to search
See History of Mac Oni for the story of the officially released builds of Oni for Mac.

Although no Windows Oni betas are known to have been leaked, there are two alternate Mac versions that have shed some light on the development of Oni. One is a leaked beta, and has been called "beta 4" since its leak. It is unknown whether there were later beta versions or if this was the last one before Oni's release. The second is the German localization, known informally as the "Big Blue Box beta", or "beta 5", which is not technically a beta.

Beta 4

The application's version number is 1.0, as opposed to retail Mac Oni's v1.1, and its creation date is 11/14/00, which corresponds to the period of time that Oni was in beta testing.

During beta testing in late 2000, a copy of the entire Mac version of the game was leaked, identified as "beta 4". Also leaked was a list of cheats. After Oni was released, fans were intrigued by the "Developer Mode" cheat "thedayismine", but found it did not work in their retail versions of Oni. Dev Mode did exist in beta 4, however it was assumed that the code for Dev Mode had been removed before the retail build was made. Later on, it would be discovered that the retail Mac (and Windows) Oni still had a partially-functional Dev Mode, but the cheat that enabled it would need to be unlocked by engine patching; beta 4 is the only version of Oni observed to have Dev Mode freely accessible.

Additionally, this beta still had all the BSL functionality of the Windows version; it had previously been thought that about 40 functions and about 160 variables were stripped from the code used to build Oni for the Mac, since the Mac version was finalized a bit later than the Windows version. Having seen from beta 4 that these functions and variables were once present in the Mac binary, the community set about searching for them in the current Mac app at the time, Omni Group's OS X port, and found them. Through hex editing, pointers to active variables and functions that were not of much use were diverted to point to some of the hidden and more useful BSL abilities. Those changes brought the Omni app into effective near-parity with the retail Windows version; the changes made were documented here. Today, the Intel build from Feral has restored virtually all the BSL that is present in Windows Oni.

German Oni

The German localization of Oni for the Mac accidentally shipped with development files. The game app's version number is 1.1, just like retail Mac Oni, and its creation date is 3/13/01, which indicates that the app is a retail build, not a beta. Nevertheless, this version was originally called "beta 5" by the community because it was thought to come after the leaked beta 4; but in fact the extra files it contains would likely have come from Oni's pre-beta period. It was also called "Big Blue Box" Oni, or "BBB" for short, because it was first discovered in a collection of four games called The Big Blue Box; however, all German copies seem to have these files, not just the BBB version.

As in the retail Mac application, access to Developer Mode and many BSL functions had been removed, but the game data had two very unusual features: the level0_Tools files, and some scripts for levels that were never released. It also uses the Windows versions of the familiar level scripts. This confirms that the files made available to the localizers predate the final preparation for the Mac gold master, which came after the Windows gold master and included some engine code and BSL changes.

The level0_Tools files (found in GameDataFolder in the usual .dat/.raw/.sep formats) contain resources used during development. The application does not actually seem able to use these tools in-game (in fact, the startup log explicitly records that Oni skips "tool files" such as this one), but the function of the tool files was determined from examining their resources. If you're curious, you can download level0_Tools here. OniSplit can be used to extract the data into individual resources. level0_Tools contains:

  • distinct furniture models (OFGAs) (which are now "baked into" the environment of Oni's levels, as generic AKEV quads that are merely flagged as furniture)
  • WMDDs that were used at some point to edit OBJCs and other BINA resources (helpful in reverse-engineering the BINA formats)
  • textures that were used for debugging, or for other more obscure purposes (the most notable such texture is Hapékat, a mask-less rendition of this little guy not found in-game, and now the depiction of our wiki's mascot)

The WMDDs were reconstructed and "screenshots" have been placed on the OBD pages of resource types that these windows allowed the developers to edit. A complete collection of the images in one place is found here.

Secondly, German Mac Oni contains a number of folders within the IGMD folder which are not present in retail Oni either because (a) they provided the logic for levels that were used for testing during development, (b) they represent levels that were merged into other levels, or (c) they represent actual content that was cut from Oni in development. In total there are 10 folders not present in a retail Oni installation: Airport_II, BGI, aop, cap, CZ, CZ_II, pit, ats, SR. The missing levels these scripts referred to, and what the scripts reveal about them, are discussed on the Pre-beta content page. The global folder is also present in IGMD/.