Skip to content

Doc_Halo1_Settings

Noah Sherwin edited this page Feb 9, 2023 · 4 revisions

Introduction

Both the game and editor extensions use XML files to store user-configurable settings. For the game these settings are configured using the in-game menu. The rest require editing the actual XML.

Halo1_CE

You can reference the game template file for a low level break down of what settings are stored and used by the game.

Upon running OS with the game for the first time, two XML files will be created in your My Documents\My Games\Halo CE\OpenSauce\ folder: OS_Settings.User.xml and OS_Settings.Server.xml. One file OS_Settings.PostProcessing.xml will be present after installing OS as it has no options that are set by the runtime.

Note: The OS in-game menu can be activated by pressing F7 while in the menus and whislt in-game

OS_Settings.User.xml

The user settings file controls options that change the features available in the client version of the game.

Cache Files

Node Usage
<CheckYeloFilesFirst> Set this to true if you want the game to load the .yelo file when a .map with the same file name exists.
<MainMenuScenario> Set this to the scenario name of the ui map you wish OS to use. Eg, the scenario name for the stock ui.map is levels\ui\ui. If you had a map ui_custom.map and its scenario name was levels\ui\ui_custom, you would set the attribute like so: <MainMenuScenario>levels\ui\ui<MainMenuScenario/>

Rasterizer

The <Rasterizer> node contains all of the settings that relate to the graphical additions and/or changes that OpenSauce contains.

<GBuffer> node:

Node Usage
<Enabled> Controls whether the GBuffer is enabled or not.

<Upgrades> node:

Node Usage
<MaximumRenderedTriangles> When set to true, this increases the maximum number of triangles the game can render in a single frame.

Shader Extensions

The <ShaderExtensions> element contains settings that control whether the rendering additions added by Open Sauce are enabled or not.

Node Usage
<Enabled> Global control over whether the shader extensions are enabled or not.

<Object> node:

Node Usage
<NormalMaps> Toggles whether normal maps on shader_model's are enabled
<DetailNormalMaps> Toggles whether detail normal maps on shader_model's are enabled
<SpecularMaps> Toggles whether specular color maps on shader_model's are enabled
<SpecularLighting> Toggles whether specular lighting on shader_model's is enabled

<Environment> node:

Node Usage
<DiffuseDirectionalLightmaps> Toggles whether diffuse directional lightmaps are enabled
<SpecularDirectionalLightmaps> Toggles whether specular directional lightmaps are enabled

<Effect> node:

Node Usage
<DepthFade> Toggles whether effect depth fading is enabled

Post Processing

The <PostProcessing> node contains settings that control the post processing system and its options.

<MotionBlur> node:

Node Usage
<Enabled> Controls whether motion blur is enabled.
<BlurAmount> Controls how much blurring is applied.

<Bloom> node:

Node Usage
<Enabled> Controls whether bloom is enabled.

<AntiAliasing> node:

Node Usage
<Enabled> Controls whether anti-aliasing is enabled.

<ExternalEffects> node:

Node Usage
<Enabled> Controls whether external user effects are enabled.

<MapEffects> node:

Node Usage
<Enabled> Controls whether map based effects are enabled.

Camera

Node Usage
<FieldOfView> The players field of view in degrees.
<IgnoreFOVChangeInCinematics> Controls whether the players FOV should be stock during cinematics.
<IgnoreFOVChangeInMainMenu> Controls whether the players FOV should be stock whilst on the main menu.

Networking

<GameSpy> node:

Node Usage
<NoUpdateCheck> Controls whether the game should check for updates.

<MapDownload> node:

Node Usage
<Enabled> Controls whether map downloads are enabled.

HUD

Node Usage
<ShowHUD> Controls whether the HUD should be displayed.
<ScaleHUD> Controls whether the HUD should be scaled.
<HUDScale><X> Controls the scale of the HUD on the X axis.
<HUDScaleY><Y> Controls the scale of the HUD on the Y axis.

OS_Settings.Server.xml

The settings file for the dedicated server currently has no options that the user has to set manually.

OS_Settings.PostProcessing.xml

This settings file controls the external post processing system, which allows you to add your own post process effects at runtime. The main bulk of the file is initially commented out so that the system is not needlessly trying to use the settings when they are not in use. Full documentation of the post processing settings can be found in the post processing system documentation.

Halo1_CheApe

OS_Settings.Editor.xml

The editor settings XML located in your HEK directory allows you to define different paths and options for different projects without having duplicate directories. You can reference the editor template file for a low level break down of what settings are used by the editor.

The editor options are separated into <Profile> elements.

Each profile must have a unique name, which is used in a command line argument added to OS Guerilla and OS Sapien -editorProfile:<profile-name> to make the program use the settings from that named profile. This allows you to set up shortcuts for OS Guerilla and OS Sapien that target different sets of tags without having to duplicate your HEK directory or rename your tags folders to switch projects.

Profile

Node Usage
Name A unique string identifier for the profile.

<Paths> node:

Node Usage
<Root> Defines the directory to use as the root directory, which affects where compiled maps are saved to.
<DataDirectory> Sets the path to use as the location of the data directory.
<MapsDirectory> Sets the path to use when saving a compile map file.
<TagsDirectory> Sets the path to use as the location of the tags directory.

Tool

Node Usage
DisableExceptionHandling Control's whether exception handling should be disabled.
DoFullCrashdump Control's whether a full crash dump should be saved when a crash occurs.

Sapien

Node Usage
AffinityMask Sets which processor Sapien should use on a multi-processor computer.
Clone this wiki locally