Windows Oni vs. Mac Oni

From OniGalore
Revision as of 02:25, 4 May 2013 by Iritscen (talk | contribs) (updating for Intel Mac build; not sure about the statement left under "PC exclusives" about bindable events)
Jump to navigation Jump to search

There are no significant gameplay differences between the PC and Mac versions. However, there are some minor differences in scripting functionality that modders should be aware of.

PC exclusives

Bindable events

Everything that has to do with cutscene authoring (recording character movements), and probably a little bit more.

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

  • chr_location in Windows takes a character index number as the first parameter; on Mac, you can pass it either the index number or the AI name as a string.

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

BSL functions

  • PCs have co_show_all, which prints all commands and variables to the console, though this is of dubious usefulness compared to dump_docs, which writes all commands and variables to script_commands.txt on both PC and Mac.
  • PCs have the handy li_center_cursor, though this behavior is hardcoded to be on all the time on Macs.
  • chr_location can take the AI's name as a string or the AI's index number on Macs, but only the AI's index number on PC.
  • Macs can show attack extents by passing an animation name to the chr_showextent command (with the chr_showextent_globals variable set to true).

BSL variables

  • Only PCs have the boolean ai2_debug_localmove_lines.
  • Macs can show attack extents with the chr_showextent_globals variable set to true by watching characters attack (or by passing an animation name to the chr_showextent command).
  • Macs can also show trigger volumes using show_triggervolumes.
  • Macs can display the weapon name when equipping a weapon if chr_show_weaponid is true.
  • Macs have a few probably-useless variables for graphics left over from the debugging days at Bungie: debug_font_cache, gl_disable_dxt1, gl_disable_packed_pixels, and gl_mipmap_offset.

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)

  • special: Mac SNDD files are 32 bytes long, PC and PC demo SNDD files are 96 bytes long

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