Windower Data Locations - Windower/packages GitHub Wiki

Default Paths

By default, Windower stores various types of data in several locations:

Data Type Default Path Contents
Settings %LOCALAPPDATA%\Windower User Profiles: profiles.xml
Lua Packages: \packages
User Data %USERPROFILE%\Saved Games\Windower Initialization Script: \scripts\init.lua
Temporary Data %TEMP%\Windower

Configure Paths

Per-Profile Configuration

You can change the data locations on a per-profile basis from the Windower launcher:

  1. In the launcher, edit the profile.
  2. Click the Advanced tab and enable the override switch for the path.
  3. Specify the desired location.

Global Path Configuration

You can also configure data location paths globally for all profiles.

Create a paths.xml file in the same directory as windower.exe, with the following contents:

<paths>
  <settings-path>...</settings-path>
  <user-path>...</user-path>
  <temp-path>...</temp-path>
</paths>

Note: Each path is optional, and an unspecified path reverts to the default location.

Example: Portable installation with default temporary data location

<paths>
  <settings-path>%WINDOWER%\settings</settings-path>
  <user-path>%WINDOWER%\data</user-path>
</paths>

Additional Environment Variables

In addition to the system-default environment variables, the following variables may be used when defining paths:

Variable Definition
%WINDOWER% Directory that contains windower.exe
%SAVEDGAMES% %USERPROFILE%\Saved Games

Package Override Paths

For development purposes, you can also override the paths that Windower searches when loading packages. For example, it will load a package from an override path instead of the same package in the default location.

To define override paths, create an overrides.xml file next to profiles.xml in your Settings Path folder, with the following contents:

Example: overrides.xml

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<overrides>
  <path>C:\path\to\packages</path>
</overrides>

You can specify multiple paths, and packages found in a path earlier in the list take priority over those found in paths later in the list.

⚠️ **GitHub.com Fallback** ⚠️