Nobody Saves the World · handler “NobodySavestheWorld”
Version 1
Release notes
First release
- Released
- Size
- 39 KB
- Downloads
- 1
- Check
- Verified
- SHA-256
- 90af541a540315a3b8810a2308053ea394470da896740debbe0503e320d4a184
Files 4
| Path | Size |
|---|---|
| handler.js | 4.5 KB |
| NobodySavestheWorld/ssMaster.ini | 174 B |
| NobodySavestheWorld/ssMaster64.exe | 74 KB |
| NobodySavestheWorld/ssMaster_x64.dll | 21 KB |
handler.js
Plain textHub.Handler.Version = 1; // Released at https://hub.splitscreen.me/ on Sat Jan 22 2022 22:22:08 GMT+0000 (Coordinated Universal Time).
Hub.Handler.Id = "YS6jx4AMqj6A6sZNb";
Hub.Maintainer.Name = "Talos91";
Hub.Maintainer.Id = "eeL7HAz8zJovChWw4";
var answers1 = ["No", "Yes"];
Game.AddOption("Letterboxing/Pillarboxing fix?", "Removes the black bars in split-screen, some UI elements get misaligned.", "Pillar", answers1);
Game.ExecutableContext = ["fmod.dll"];
Game.FileSymlinkExclusions = ["steam_api64.dll", "steam_appid.txt", "local_save.txt", "xinput1_3.dll", "NStW_x64.exe", "ssMaster64.exe"];
Game.GameName = "Nobody Saves the World";
Game.HandlerInterval = 100;
Game.SymlinkExe = false;
Game.SymlinkGame = true;
Game.SymlinkFolders = true;
Game.ExecutableName = "NStW_x64.exe";
Game.SteamID = "1432050";
Game.GUID = "Nobody Saves the World";
Game.MaxPlayers = 2;
Game.MaxPlayersOneMonitor = 2;
Game.UseNucleusEnvironment = true;
Game.UseGoldberg = true;
Game.GoldbergNoLocalSave = true;
Game.LauncherTitle = "";
Game.LauncherExe = "ssMaster64.exe";
Game.LauncherExeIgnoreFileCheck = true;
Game.Hook.ForceFocus = true;
Game.Hook.ForceFocusWindowName = "Game";
Game.SendFakeFocusMsg = false;
Game.ResetWindows = true;
Game.Hook.DInputEnabled = false;
Game.Hook.XInputEnabled = true;
Game.Hook.XInputReroute = false;
Game.XInputPlusDll = ["xinput1_3.dll"];
Game.Hook.CustomDllEnabled = false;
Game.SupportsKeyboard = true;
Game.UserProfileSavePath = "AppData\\Roaming\\Goldberg SteamEmu Saves\\1432050\\remote";
Game.UserProfileConfigPath = "Documents\\NStW";
Game.UserProfileSavePathNoCopy = true;
Game.UserProfileConfigPathNoCopy = true;
Game.Description =
"Steam version only. Create an online multiplayer game in one instance and join in the other. You can access each instance save file via Nucleus, after the first launch click game options/open user profile save path in the UI.";
Game.KeepSymLinkOnExit = false;
Game.PauseBetweenStarts = 25;
Game.Play = function() {
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\ssMaster64.exe");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "ssMaster64.exe");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\ssMaster_x64.dll");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "ssMaster_x64.dll");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\ssMaster.ini");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "ssMaster.ini");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var pillar = Context.Options["Pillar"];
var id = Context.PlayerID + 1;
if (Context.PlayerID == 0) {
var savePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\ssMaster.ini";
Context.ModifySaveFile(savePath, savePath, Nucleus.SaveType.INI, [new Nucleus.IniSaveInfo("Settings", "Target", "NStW_x64.exe")]);
} else {
var savePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\ssMaster.ini";
Context.ModifySaveFile(savePath, savePath, Nucleus.SaveType.INI, [new Nucleus.IniSaveInfo("Settings", "Target", "NStW_x64" + id + ".exe")]);
}
if (pillar == "Yes") {
if (Context.PlayerID == 0) {
//remove pillar boxing
Context.PatchFileFindAll(
System.IO.Path.Combine(Context.RootInstallFolder, "NStW_x64.exe"),
System.IO.Path.Combine(Context.RootFolder, "NStW_x64.exe"),
[0x39, 0x8e, 0xe3, 0x3f],
Context.ConvertToBytes(Context.AspectRatioDecimal)
);
} else {
Game.ExecutableName = "NStW_x64" + id + ".exe";
Context.PatchFileFindAll(
System.IO.Path.Combine(Context.RootInstallFolder, "NStW_x64.exe"),
System.IO.Path.Combine(Context.RootFolder, "NStW_x64" + id + ".exe"),
[0x39, 0x8e, 0xe3, 0x3f],
Context.ConvertToBytes(Context.AspectRatioDecimal)
);
}
}
if (pillar == "No") {
if (Context.PlayerID == 0) {
System.IO.File.Copy(System.IO.Path.Combine(Context.RootInstallFolder, "NStW_x64.exe"), System.IO.Path.Combine(Context.RootFolder, "NStW_x64.exe"), true);
} else {
Game.ExecutableName = "NStW_x64" + id + ".exe";
System.IO.File.Copy(System.IO.Path.Combine(Context.RootInstallFolder, "NStW_x64.exe"), System.IO.Path.Combine(Context.RootFolder, "NStW_x64" + id + ".exe"), true);
}
}
};