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

Saints Row: The Third · handler “SaintsRowTheThird”

Version 1

Release notes

First Release

Released
Size
1.3 KB
Downloads
39
Check
Unverified
SHA-256
52ca556ea8cf7915c845df9f40878064fb16bfef2ae93f3104e7059a5bf63a43
Download v1 (.nc)All versions

Files 1

PathSize
handler.js3.0 KB

handler.js

Plain text
Hub.Handler.Version = 1; // Released at https://hub.splitscreen.me/ on Thu Feb 13 2020 06:51:11 GMT+0000 (UTC).
Hub.Handler.Id = "J6FvgPdMWt3XiCNtr";
Hub.Maintainer.Name = "Talos91";
Hub.Maintainer.Id = "eeL7HAz8zJovChWw4";

Game.ExecutableContext = ["binkw32.dll"];
Game.KillMutex = ["SR3"];
Game.FileSymlinkExclusions = ["display.ini", "steam_api.dll", "steam_appid.txt", "steam_interfaces.txt", "XInput1_3.dll"];
Game.NeedsSteamEmulation = false;
Game.UseGoldberg = true;
Game.GoldbergNoLocalSave = true;
Game.UseNucleusEnvironment = true;
Game.HandlerInterval = 100;
Game.SymlinkExe = false;
Game.SymlinkGame = true;
Game.SymlinkFolders = true;
Game.SupportsKeyboard = true;
Game.ExecutableName = "saintsrowthethird_dx11.exe";
Game.SteamID = "5523011";
Game.GUID = "Saints Row 3 DX11";
Game.GameName = "Saints Row 3 (DX11)";
Game.MaxPlayers = 2;
Game.MaxPlayersOneMonitor = 4;
Game.BinariesFolder = "";
Game.LauncherTitle = "";
Game.HideTaskbar = false;
Game.StartArguments = "";
Game.Hook.ForceFocus = true;
Game.Hook.ForceFocusWindowName = "Saints Row: The Third";
Game.Hook.DInputForceDisable = true;
Game.Hook.DInputEnabled = false;
Game.Hook.XInputEnabled = true;
Game.Hook.XInputReroute = false;
Game.Hook.UseAlpha8CustomDll = true;
Game.UseForceBindIP = true;
Game.KeepSymLinkOnExit = true;
Game.SetWindowHook = true;
Game.UserProfileSavePath = "AppData\\Roaming\\Goldberg SteamEmu Saves\\5523011";
Game.PauseBetweenStarts = 25;

Game.Play = function() {
  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\display.ini");
  var savePkgOrigin = System.IO.Path.Combine(Context.RootInstallFolder, "display.ini");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var txtPath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\display.ini";
  var dict = ["5|ResolutionWidth = " + Context.Width, "6|ResolutionHeight = " + Context.Height, "9|Fullscreen = false", "10|SkipIntroVideo = true", "17|VerifyResolution = false"];
  Context.ReplaceLinesInTextFile(txtPath, dict);

  var autoExec = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\steam_interfaces.txt";
  var lines = [
    "SteamClient009",
    "SteamGameServer010",
    "SteamGameServerStats001",
    "SteamUser014",
    "SteamFriends007",
    "SteamUtils005",
    "SteamMatchMaking008",
    "SteamMatchMakingServers002",
    "STEAMUSERSTATS_INTERFACE_VERSION007",
    "STEAMAPPS_INTERFACE_VERSION003",
    "SteamNetworking004",
    "STEAMREMOTESTORAGE_INTERFACE_VERSION002",
    "SteamMasterServerUpdater001"
  ];

  Context.WriteTextFile(autoExec, lines);

  if (Player.IsKeyboardPlayer) {
    Context.Hook.BlockMouseEvents = "False";
    Context.Hook.BlockKeyboardEvents = "False";
    Context.Hook.BlockInputEvents = "False";
    Context.Hook.ForceFocus = "False";
  } else {
    Context.Hook.BlockMouseEvents = "True";
    Context.Hook.BlockKeyboardEvents = "True";
    Context.Hook.BlockInputEvents = "True";
    Context.Hook.ForceFocus = "True";
  }
};