Mac beta 4

From OniGalore
Revision as of 20:57, 13 November 2008 by Iritscen (talk | contribs) (expanding upon the story of the betas, and incorporating the level0_Tools page)
Jump to navigation Jump to search

Although no PC betas are known to have been leaked, there are two known Mac betas which have shed some light on the development of Oni.

Beta 4 (leaked during beta testing)

Once cheat codes were unlocked by beating the beta (or hacking persist.dat), entering the code "thedayismine" would enable Developer Access. Later on it would be discovered that the retail Mac (and PC) Oni also had Dev Mode, but it would need to be unlocked by engine patching; this is the only version of Oni observed to have Dev Mode freely accessible.

Also, this beta still had all the BSL functionality of the PC version; it had previously been thought that about 40 functions and about 160 variables were stripped from Oni for the Mac (listed here). Having seen that the code was once present in the Mac binary, the community set about searching for it in the retail Mac version, and found it. Through hex editing, pointers to current variables and functions that were not of much use were diverted to point to some of the hidden and more useful BSL abilities. Those efforts have brought the retail Mac release into effective near-parity with the retail PC version; the changes made are documented here.

Beta 5 (sold in German online store)

At one time, beta 5 of the Mac Oni was actually being sold as if it were the retail version. It was part of a package of four games called the Big Blue Box, and sold only on a German website. It may no longer be available for purchase, but the product page is here. By the time of beta 5, access to Developer Mode and many BSL functions had been removed, but this version had something new: a set of files called level0_Tools.

level0_Tools (in the traditional level file format of .dat/.raw/.sep) contains resources used during development. The beta does not actually seem able to use these tools in-game, but the function of the tools was determined from examining their resources. You can download level0_Tools here.

level0_Tools contains:
  • some furniture OFGAs (which are now baked into the environment of Oni's levels, as generic AKEV quads that are merely flagged as furniture);
  • some WMDDs that were used at some point to edit OBJC and other BINA (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, our mascot)
OniSplit can be used to extract the data into individual resources, for the curious.

Finally, beta 5 contains a number of unique scripts in the IGMD folder, which apparently provided the logic for unreleased levels that were (mostly) used for testing during development. Since the actual level files for these scripts are not present, they are of little value beyond being historically interesting. Some of these scripts actually may have been used for levels intended for the final game, although they were far from completed. One script, for instance, is for a level that would have taken place in a building owned by BGI, and there is code for a cutscene where Konoko sets off a bomb, and one where the late Iron Demon makes its appearance.