Mac beta 4: Difference between revisions

From OniGalore
Jump to navigation Jump to search
(expanding upon the story of the betas, and incorporating the level0_Tools page)
m (link fixes)
(32 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Although no PC [[wiktionary:beta#Noun|betas]] are known to have been leaked, there are two known Mac betas which have shed some light on the development of Oni.
:''See [[History of Mac Oni]] for the story of the officially released builds of Oni for Mac.''


;Beta 4 (leaked during beta testing)
Although no Windows Oni [[wiktionary:beta#Noun|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.
Once cheat codes were unlocked by beating the beta (or hacking [[persist.dat]]), entering the code "thedayismine" would enable [[Developer Mode|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 [[History of Oni modding#Engine patching|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 [[BSL:PC_vs._Mac_Comparison_(list)|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 [[AE:OMNI|here]].
==Beta 4==
[[Image:Mac beta 4 Oni Get Info window.png|thumb|The application's version number is 1.0, as opposed to [[:Image:Classic Mac Oni Get Info window.jpg|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.]]


;Beta 5 (sold in German online store)
During Oni's beta testing period, specifically in November 2000, a copy of the entire Mac version of the game [http://carnage.bungie.org/oniforum/oni.forum.pl?read=6634 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 [[History of Oni modding#Engine patching|engine patching]]; beta 4 is the only version of Oni observed to have Dev Mode freely accessible.
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 [http://www.macelite.de/product_info.php?language=en&info=p107_Big-Blue-Box--Mac-.html 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 [http://geyser.oni2.net/edition/plugins/level0_Tools.zip here].
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 port for Mac OS X (now "macOS"), and found them. Through hex editing, pointers to active BSL variables and functions that were not of much use were diverted to point to some of the hidden and more useful ones. Those changes effectively brought the Omni app to near-parity with the retail Windows version; those patches were documented [[OMNI|here]]. Today, the [[FERAL|Intel build]] from Feral has restored virtually all the BSL functionality that is present in Windows Oni.


:level0_Tools contains:
==German Oni==
:*some furniture [[OFGA]]s (which are now baked into the environment of Oni's levels, as generic [[AKEV]] quads that are merely flagged as furniture);
The German localization of Oni for the Mac accidentally shipped with development-related files. 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 <u>pre</u>-beta period. It was also called the "Big Blue Box beta" or the "BBB beta" because the discovery was made in a collection of four games called The Big Blue Box which included Oni. However, not only do all German copies of Oni seem to have these files, but other localizations may have them as well; for instance, the U.S. PS2 release of Oni has the cut level scripts, but not the tool files.
:*some [[WMDD]]s 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 [[:Image:TXMPPOSTER3.png|Hapékat]], our mascot)


:[[OniSplit]] can be used to extract the data into individual resources, for the curious.
The app's creation date is 3/13/01, well after Oni's U.S. release, which indicates that the app was produced after localization had occurred, and contains changes necessary to make it work with the extended set of characters in the German alphabet. The game app itself has the same functionality, however, as other retail releases do; its version number is 1.1, just like the English Mac build of Oni, and access to Developer Mode and many BSL functions have been removed as in the English Mac builds of Oni.


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.
However, 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 (the Mac scripts have a [[Windows Oni vs. Mac Oni|few small differences]]). This might mean that Oni's game data files were made available to the localization team between the Windows gold master in November 2000 and the [[History of Mac Oni|Mac gold master]] in December 2000; at least the code for the game app was supplied after the Windows gold master, since [[separate file]]s are present, as in other Mac releases. However, this does not explain why there are files from earlier in Oni's development bundled with the game.
 
Firstly, the '''level0_Tools files''' (found in GameDataFolder in the usual .dat/.raw/.sep formats) contain resources used during development. The Oni application will not actually load these files (in fact, Oni will explicitly state in its startup log that it is skipping the "tool files"), but the function of the files was determined from examining their resources. If you're curious, you can download level0_Tools [http://geyser.oni2.net/edition/plugins/level0_Tools.zip here]. [[OniSplit]] can be used to extract the data into individual resources. level0_Tools contains:
:*Distinct furniture models ([[OFGA|OFGAs]]). These are now "baked into" the environment of Oni's levels as generic [[AKEV]] quads that are merely flagged as furniture.
:*[[WMDD]]s that were used by the in-game visual editor, AKA Tool mode. This mode is not available in retail builds of Oni, but Bungie West used it to edit [[OBJC|OBJCs]] and other [[BINA]] resources while in-game. The German localizers seem to have translated some of the Tool mode GUI into German along with everything else, not understanding that the files were superfluous.
:*Textures that were used for debugging, or for other obsolete purposes. The most notable texture is [[:Image:TXMPPOSTER3.png|this mask-less rendition]] of the [[:Image:TXMPPOSTER1.png|Hapémask cat]] who appears in Chapter 2. Logically called "Hapékat", he is now our wiki's mascot.
 
The WMDDs were visually reconstructed, and these images have been placed on the [[OBD]] pages of any resource types that had editor window(s) devoted to them. A complete collection of the images in one place is found [http://ssg.oni2.net/subfold/bluebox/images/ here]. The labels on the elements in these windows were helpful in reverse-engineering the BINA formats.
 
Secondly, German Mac Oni contains a number of '''extra level scripts''' within the [[IGMD]] folder which are not present in retail Oni, either because (a) they provided the logic for test levels used by the developers, (b) they represent content that was later merged into another level, or (c) they represent actual cut content. In total there are 10 folders not present in a retail Oni installation: '''Airport_II''', '''BGI''', '''aop''', '''cap''', '''CZ''', '''CZ_II''', '''[[IGMD/global|global]]''' (empty), '''pit''', '''ats''', and '''SR'''. The missing levels that 9 of these folders refer to, and what the scripts reveal about them, are discussed on the [[Pre-beta content#Cut levels|Pre-beta content]] page.
 
[[Category:Oni history]]

Revision as of 14:55, 18 May 2021

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 Oni's beta testing period, specifically in November 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 port for Mac OS X (now "macOS"), and found them. Through hex editing, pointers to active BSL variables and functions that were not of much use were diverted to point to some of the hidden and more useful ones. Those changes effectively brought the Omni app to near-parity with the retail Windows version; those patches were documented here. Today, the Intel build from Feral has restored virtually all the BSL functionality that is present in Windows Oni.

German Oni

The German localization of Oni for the Mac accidentally shipped with development-related files. 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 the "Big Blue Box beta" or the "BBB beta" because the discovery was made in a collection of four games called The Big Blue Box which included Oni. However, not only do all German copies of Oni seem to have these files, but other localizations may have them as well; for instance, the U.S. PS2 release of Oni has the cut level scripts, but not the tool files.

The app's creation date is 3/13/01, well after Oni's U.S. release, which indicates that the app was produced after localization had occurred, and contains changes necessary to make it work with the extended set of characters in the German alphabet. The game app itself has the same functionality, however, as other retail releases do; its version number is 1.1, just like the English Mac build of Oni, and access to Developer Mode and many BSL functions have been removed as in the English Mac builds of Oni.

However, 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 (the Mac scripts have a few small differences). This might mean that Oni's game data files were made available to the localization team between the Windows gold master in November 2000 and the Mac gold master in December 2000; at least the code for the game app was supplied after the Windows gold master, since separate files are present, as in other Mac releases. However, this does not explain why there are files from earlier in Oni's development bundled with the game.

Firstly, the level0_Tools files (found in GameDataFolder in the usual .dat/.raw/.sep formats) contain resources used during development. The Oni application will not actually load these files (in fact, Oni will explicitly state in its startup log that it is skipping the "tool files"), but the function of the 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). These are now "baked into" the environment of Oni's levels as generic AKEV quads that are merely flagged as furniture.
  • WMDDs that were used by the in-game visual editor, AKA Tool mode. This mode is not available in retail builds of Oni, but Bungie West used it to edit OBJCs and other BINA resources while in-game. The German localizers seem to have translated some of the Tool mode GUI into German along with everything else, not understanding that the files were superfluous.
  • Textures that were used for debugging, or for other obsolete purposes. The most notable texture is this mask-less rendition of the Hapémask cat who appears in Chapter 2. Logically called "Hapékat", he is now our wiki's mascot.

The WMDDs were visually reconstructed, and these images have been placed on the OBD pages of any resource types that had editor window(s) devoted to them. A complete collection of the images in one place is found here. The labels on the elements in these windows were helpful in reverse-engineering the BINA formats.

Secondly, German Mac Oni contains a number of extra level scripts within the IGMD folder which are not present in retail Oni, either because (a) they provided the logic for test levels used by the developers, (b) they represent content that was later merged into another level, or (c) they represent actual cut content. In total there are 10 folders not present in a retail Oni installation: Airport_II, BGI, aop, cap, CZ, CZ_II, global (empty), pit, ats, and SR. The missing levels that 9 of these folders refer to, and what the scripts reveal about them, are discussed on the Pre-beta content page.