Skip to content
Beta: this is a preview of the new SplitScreen.Me. Data may be reset before launch.

Sanctum 2 · handler “Sanctum2”

Version 1

Release notes

First release

Released
Size
1.3 KB
Downloads
44
Check
Verified
SHA-256
77f821322fdae4519122e9be101fe287ae5701030d19478f4d48ce6f4d215846
Download v1 (.nc)All versions

Files 1

PathSize
handler.js3.1 KB

handler.js

Plain text
Hub.Handler.Version = 1; // Released at https://hub.splitscreen.me/ on Sat Feb 15 2020 03:31:56 GMT+0000 (UTC).
Hub.Handler.Id = "qCSNgcfvSbi2qg8ns";
Hub.Maintainer.Name = "Talos91";
Hub.Maintainer.Id = "eeL7HAz8zJovChWw4";

Game.DirSymlinkExclusions = ["Binaries\\Win32"];
Game.FileSymlinkExclusions = ["steam_api.dll", "steam_appid.txt", "steam_interfaces.txt"];
Game.NeedsSteamEmulation = false;
Game.UseGoldberg = true;
Game.HandlerInterval = 100;
Game.SymlinkExe = false;
Game.SymlinkGame = true;
Game.SupportsKeyboard = false;
Game.ExecutableName = "sanctumgame-win32-shipping.exe";
Game.SteamID = "210770";
Game.GUID = "Sanctum 2";
Game.GameName = "Sanctum 2";
Game.MaxPlayers = 4;
Game.MaxPlayersOneMonitor = 4;
Game.BinariesFolder = "Binaries\\Win32";
Game.LauncherTitle = "";
Game.SupportsPositioning = true;
Game.Hook.ForceFocus = true;
Game.Hook.ForceFocusWindowName = "Sanctum Game (32-bit, DX9)";
Game.Hook.DInputEnabled = false;
Game.Hook.DInputForceDisable = true;
Game.Hook.XInputEnabled = true;
Game.Hook.XInputReroute = false;
Game.Hook.XInputReroute = false;
Game.Hook.UseAlpha8CustomDll = true;
//Game.XInputPlusDll = [ "xinput1_3.dll" ];
//Game.Hook.CustomDllEnabled= false;
//Game.PreventWindowDeactivation = false;
//Game.HookFocus= true;
Game.SetForegroundWindowElsewhere = true;
Game.SetWindowHook = true;
Game.ResetWindows = true;
Game.PauseBetweenStarts = 30;

Game.Play = function() {
  var savePath = Context.GetFolder(Nucleus.Folder.Documents) + "\\My Games\\Sanctum2\\SanctumGame\\Config\\SanctumSystemSettings.ini";
  Context.ModifySaveFile(savePath, savePath, Nucleus.SaveType.INI, [
    new Nucleus.IniSaveInfo("SystemSettings", "FullScreen", "false"),
    new Nucleus.IniSaveInfo("SystemSettings", "ResX", Math.max(640, Context.Width)),
    new Nucleus.IniSaveInfo("SystemSettings", "ResY", Math.max(360, Context.Height)),
    new Nucleus.IniSaveInfo("SystemSettings", "Resolution", Context.Width + "x" + Context.Height)
  ]);

  if (Player.IsKeyboardPlayer) {
    Context.StartArguments = "-windowed -AlwaysFocus -nosplash -nomoviestartup";
    Context.Hook.BlockMouseEvents = "False";
    Context.Hook.BlockKeyboardEvents = "False";
    Context.Hook.BlockInputEvents = "False";
    Context.Hook.ForceFocus = "False";
  } else {
    Context.StartArguments = "-windowed -AlwaysFocus -nosplash -nomoviestartup";
    Context.Hook.BlockMouseEvents = "True";
    Context.Hook.BlockKeyboardEvents = "True";
    Context.Hook.BlockInputEvents = "True";
    Context.Hook.ForceFocus = "True";
  }

  var autoExec = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\binaries\\win32\\steam_interfaces.txt";
  var lines = [
    "SteamClient012",
    "SteamGameServer011",
    "SteamGameServerStats001",
    "SteamUser016",
    "SteamFriends013",
    "SteamUtils005",
    "SteamMatchMaking009",
    "SteamMatchMakingServers002",
    "STEAMUSERSTATS_INTERFACE_VERSION011",
    "STEAMAPPS_INTERFACE_VERSION005",
    "SteamNetworking005",
    "STEAMREMOTESTORAGE_INTERFACE_VERSION010",
    "STEAMSCREENSHOTS_INTERFACE_VERSION002",
    "STEAMHTTP_INTERFACE_VERSION002",
    "STEAMUNIFIEDMESSAGES_INTERFACE_VERSION001"
  ];

  Context.WriteTextFile(autoExec, lines);
};