Windows Oni vs. Mac Oni
This page contains information that is out of date. |
There are no significant gameplay differences between the PC and Mac versions. However, the following information is important for all who hope to mod or script Oni in a way that is Mac-compatible.
PC exclusives
Bindable events
Everything that has to do with cutscene authoring (recording character movements), and probably a little bit more.
BSL functions/variables
The PC build is probably older, and so it has a lot of "dev-and-debug" functionalities that were not used by the original script logic. When the Mac and PC demo releases were built, some of those features were completely left out. HERE is the full list of commands and variables that are unavailable on Mac or PC demo (by order of appearance in script_commands.txt). While some of them may be obsolete, and thus may have little effect on PC, a lot of them are definitely not defunct, and their lack on Mac is a major limitation. For instance, one should note :
- the absence of dev-console-related commands (the Dev Mode, however, is available on Mac and PC demo : just somewhat limited)
- the absence of chr_location and chr_location_settocamera. The placement of characters is thus limited by the original set of "teleport" flags.
- the absence of chr_focus and sc_focus. Thus none of the following is scriptable on Mac as of today :
- shapeshifting bots and Tag mode in Oni Team Arena
- squad gameplay
- intermittently "switching" to characters that are NPCs in the original logic (used in a few mods e.g. Loser's Warehouse)
- the absence of chr_health, wp_reset, and a few other commands/variables that make scripting more flexible.
- other stuff I'm forgetting (there's quite a lot missing, really)
For further information, here are the complete lists of commands/variables as obtained with the dump_docs function call :
- script_commands_Mac.txt
- script_commands_MacBeta.txt
- script_commands_PC.txt
- A comparison of the commands/variables side by side, PC, Mac, and Mac Beta
As for the effect of the commands and variables, the best documentation so far is on ssg's Oni Stuff. It covers the full list of commands/variables, i.e. that of the PC version. Porting it to Oni Galore, slowly but surely...
Mac exclusives
A newer (stabler?) build
The current build of Oni for Intel Macs (see HERE for link) is based on code that has been touched up by Bungie, Omni Group, and Feral Interactive since Oni was gold mastered for Windows in 2000 (see History of Mac Oni for details), so they may have fixed a few issues with sounds, mouse, rendering, and AI. On the whole, the Mac build of Oni may have fewer crash issues as a result.
Also, many of the patches made by the Daodan DLL to Windows Oni were implemented into the Mac Intel build. Below are whatever new features were added, or changes made, that cause Mac Oni to differ from Windows Oni + Daodan DLL.
Bigger textures
Macs support 1024x1024 textures, whereas the Daodan DLL only allows up to 512x512 in Windows, although in practice this isn't much of an advantage because no one will go out of their way to make such enormous textures just for Mac players when they can keep their mod to 512x512 and make it playable for everyone ^_^
bsl_config.txt
Any BSL commands left in a text file with this name alongside the Oni app will be run upon level load. This is equivalent to using the "global" folder in IGMD, which the Mac also supports as of the Intel build.
New BSL commands
Modders may find it helpful to set the following new variables to true: am_show_texturename, chr_show_weaponid, and show_triggervolumes (also enabled with Ctrl-Shift-X).
Modified BSL commands
- slowmo works differently, but how?
- chr_location in Windows takes a character index number as the first parameter; on Mac, you can pass it either the index or the AI name.
launch_args.txt
Instead of using the Terminal to pass launch arguments to the Oni binary, which is extra complicated on the Mac, you can list them in a file with this name next to the Oni app, separated by spaces, e.g. "-fsaa2x -noswitch".
Graphical niceties
You can supply the launch arguments -fsaa2x or -fsaa4x to get full-screen anti-aliasing.
Diary pages
The Mac supports 30 weapon pages in the diary, over the Windows limit of 15.
Bindable cheats
Oni's original cheat codes can be bound to keys in key_config.txt.
Other differences
Level logic
The contents of the IGMD folders are exactly the same on Mac and PC, except for tctf_ii (CHAPTER 13 . PHOENIX RISING); these changes were made in the logic of the boss battle and cutscenes:
The global folder is not recognized by the PC demo and Mac PPC engines, but is by the Mac Intel build from Feral.
File formats
Differences between Mac and PC files:
files
PC: *.dat, *.raw
Mac and PC demo: *.dat, *.sep, *.raw
dat file
PC: first 4 bytes are 1F 27 DC 33
Mac and PC demo: first 4 bytes are 61 30 C1 23
(Mac beta: first bytes are 81 11 8D 23)
sep file
PC: no sep files
Mac and PC demo: contains the offset data of the BINA, OSBD and TXMP files
- special: sep-file link in the TXMP file
raw file
PC: contains the offset data of the AGDB, AKVA, BINA, OSBD, SNDD, SUBT, TRAM and TXMP file
Mac and PC demo: contains the offset data of the AKVA, SNDD, SUBT and TRAM files
- special 1: Mac and PC demo haven't AGDB files
- special 2: Mac uses AIFF sounds, PC and PC demo uses WAV sounds