NOTE (mainly for Red Barrels): In addition to the files from this repository, you should still have the original source files and a licensed copy of the game (for content files, etc.). The files from this repository are provided only for modding convenience
If you happen to have the original Outlast source files, you can add/replace them with these
The resulting OLGame.exe, along with Core.upk, Engine.upk, OLGame.upk, or any other (post-cook) .upk files to which you add UnrealScript, can be used to replace the original files in your licensed Steam version of the game.
- Load original content/maps/shaders (including DLC)
- Load custom maps via a separate tab in the main menu (maps displayed in this tab must be placed in the
CookedPCConsole/Mods/Persistentfolder) - Cook
.upkfiles, saving textures and lighting in separate.tfcfiles (which are read from any subfolder ofCookedPCConsole) - Cook
.upkfiles, savingTextures,CharTexturesandLightingwithin each .upk (without.tfcfiles). This is useful when you don't want to drag three separate.tfcfiles just for one.upk - Adding a custom suffix to
RefShaderCachewhen cooking.upkfiles - Asset redirection for only-script packages (
.u). For example, updated scripts fromOLGame.unow take priority over originalOLGame.upk, and loading order is:.uscript -> group-referenced.upk(e.g.menuassets.upk) -> originalOLGame.upk
- Connect to OpenOL relays and play in multiplayer mode
- Influence other clients worlds (Doors/Triggers/Enemies/Cutscenes)
- Host a server directly from within the game (embedded relay)
Reloadreload current checkpointSpawnEnemy <Enemy> <Weapon> <ShouldAttack>spawns enemy with specified weapon and attack controlToggleSmoothCameratoggles smooth camera settingToggleUnlockDoorstoggles whether player ignores locked/blocked doorsToggleAllowGhostDoorstoggles ability to do "ghost door" glitch (e.g. for speedruns)MaxFPS <Number>alias forSet Engine MaxSmoothedFramerate <Number>commandUnlit/Lit/ToggleUnlitsets/toggles viewmode to Unlit or LitSetGameSpeed <Number>sets game speed
- Press F6 in-game to open the ImGui overlay menu (player stats, camera, visuals, scene inspector, etc.)
- The toggle key can be rebound inside the menu under System
- Player mesh matches checkpoints and game type
- Player footstep sounds are traced to the first texture, not to a collision + trace from each foot, not from center of the mesh
OpenOL supports two ways to host a game:
- Embedded relay — host from inside the game: open Multiplayer -> Start Server. Clients connect via Steam P2P — no open ports or public IP needed. Room code:
DEFAULT. - Standalone relay — run
OpenOL_Relay(TUI) orOpenOL_Relay_GUI(GUI) on any machine with a reachable IP. Clients connect directly over UDP. Default room code:PUBLIC.
To connect to an embedded relay, the host invites friends via Steam — the client accepts the invite and joins automatically. To connect to a standalone relay, use Multiplayer -> Connect with the server IP:port and room code.
All compilation runs through build_wine.sh (Wine + MSVC 2012). The easiest way to set up the environment is the automated script:
# Set your desired Wine prefix path, then run:
WINEPREFIX=/path/to/prefix ./Development/Src/Targets/setup_wineprefix.shThis downloads VS 2012 and DirectX SDK automatically and sets up the full build environment. Then:
cd Development/Src/Targets
./build_wine.sh # interactive menu with all build steps-> Full Linux setup & troubleshooting · All build steps
- Install Visual Studio 2012 and DirectX SDK (June 2010)
- Open the solution, set configuration to Release | Mixed Platforms, build
To produce a ready-to-ship OpenOL.7z:
./Development/Src/Targets/publish_production.shOutput is placed in PublishTemp/. Users can drag-and-drop the archive contents into their Steam game folder.
