Customizing
When Oni launches, Options is the third button on the Main Menu. But after you load a game, this button is replaced with Resume when you return to the Main Menu by hitting Esc. However, the Daodan DLL and Mac Intel build make the Options button accessible while the game is paused. This is where you change or toggle:
- Amount of graphical detail
- Resolution and color depth
- Gamma correction
- Overall volume (sound FX and music can't be adjusted separately)
- Subtitles
- Difficulty setting
- Inversion of the vertical mouse axis
- Fun trivia: mouse inversion was implemented backwards. If the box is checked, moving the mouse up makes you look up... that's non-inverted aiming. This is fixed by the AE.
Controls
The Classic Mac build of Oni had a simple control-setting dialog which would appear if launching Oni with Shift held down. No other version of Oni has any kind of GUI for setting key bindings. Here's how you customize your controls:
- Edit the key_config.txt file manually; see Binding syntax and instructions
- Use the Oni Key Editor Java tool for a GUI experience
- Set custom keybindings at runtime using a global BSL script that employs the "bind" command
CD check
Some versions of Oni for Windows have been known to require the game CD-ROM in the drive (or at least some CD named "ONI" ;-), but the app distributed with the standard U.S. release does not perform that CD check. The app is found here.
Save-game editing
- OniSavegameEditor (Windows)
- OniLib (Mac)
Command-line arguments
You can run Oni from your system's command prompt rather than clicking on the automatically generated shortcut. This enables you to use a number of options that are otherwise unavailable. Here is how you pass Oni a command-line argument (multiple arguments can be supplied, as long as they are separated by a space character):
- In Windows, you can make a shortcut to Oni and then add the argument on the shortcut's Properties window, or create a .bat file with contents like "start oni -noswitch".
- With the Classic Mac OS PPC Mac build of Oni, you can manually enter arguments via a special dialog that pops up if you hold down Shift during Oni's startup.
- With the macOS PPC build of Oni, you must use Terminal to directly invoke the actual binary by typing "Oni.app/Contents/MacOS/Oni -noswitch".
- With the macOS Intel build of Oni, you can supply arguments using a file called launch_args.txt. Simply list the arguments on one line. Additional arguments accepted by the Intel build are listed in the documentation. You can also visually choose many arguments in a GUI launch panel by holding down Command while opening Oni; the panel additionally allows you to manually type in any arguments that are not represented in the GUI.
Here are all the arguments Oni accepts, but only the ones in bold seem to be useful:
- -combos: unused
- -debug
- -debugfiles: Additional debug files are dumped, e.g. low-level script debugging.
- -ehalt: unused
- -findsoundbinaries: unused
- -findsounds
- -glide: unused
- -ignore_config: unused
- -ignore_private_data: Disables the loading of "private data" in level0.
- -nodialog
- -nosound: Sounds and music are disabled. The "Overall volume" control in Options thus has no effect.
- -noswitch: Windowed mode (see below).
- -opengl: unused
noswitch
-noswitch is probably the most useful of the command-line arguments. When launched with this argument, Oni stays in a window matching the resolution specified in Oni's Options menu instead of changing your screen resolution and going full-screen. Thus, if Oni is set to run in a low resolution like 640x480, the game will take only a portion of your screen, leaving you access to other applications that you may be running alongside Oni (very useful when modding).
Modding
See Installation page.