Heroes of Hammerwatch · handler “Heroes of Hammerwatch”
Version 1
Release notes
First Release
- Released
- Size
- 980 KB
- Downloads
- 89
- Check
- Verified
- SHA-256
- 933fac57b9b1fef31dcb67e48c418160e0bad0a0af38048254957da92a02623b
Files 3
| Path | Size |
|---|---|
| handler.js | 3.8 KB |
| HeroesofHammerwatch/Galaxy.dll | 2.5 MB |
| HeroesofHammerwatch/NemirtingasGalaxyEmu.json | 256 B |
handler.js
Plain textHub.Handler.Version = 1; // Released at https://hub.splitscreen.me/ on Sat Jul 17 2021 00:18:29 GMT+0000 (UTC).
Hub.Handler.Id = "CFMDxMdoua3zzBC8E";
Hub.Maintainer.Name = "Talos91";
Hub.Maintainer.Id = "eeL7HAz8zJovChWw4";
Game.ExecutableContext = ["res"];
Game.DirSymlinkExclusions = ["ngalaxye_settings"];
Game.FileSymlinkExclusions = ["Galaxy.dll", "steam_api.dll", "xinput1_4.dll"];
Game.FileSymlinkCopyInstead = ["HWR.exe.cfg"];
Game.NeedsSteamEmulation = false;
Game.UseGoldberg = true;
Game.HandlerInterval = 100;
Game.SymlinkGame = true;
Game.SymlinkFolders = true;
Game.SymlinkExe = false;
Game.ExecutableName = "HWR.exe";
Game.SteamID = "677120";
Game.GUID = "Heroes of Hammerwatch";
Game.GameName = "Heroes of Hammerwatch";
Game.MaxPlayers = 4;
Game.MaxPlayersOneMonitor = 4;
Game.LauncherTitle = "";
Game.Hook.ForceFocus = true;
Game.Hook.ForceFocusWindowName = "Heroes of Hammerwatch";
Game.HasDynamicWindowTitle = true;
Game.SupportsKeyboard = true;
Game.Hook.DInputEnabled = false;
Game.Hook.XInputEnabled = true;
Game.Hook.XInputReroute = false;
Game.XInputPlusDll = ["xinput1_4.dll"];
Game.Hook.CustomDllEnabled = false;
Game.Description =
"Create different characters in your main game before running this. Create a public lobby in one instance and join in the others using server list, use a different character per instance. If you launch one instance with keyboard wait until an instance loses its borders before opening the next one, this way they will resize correctly.";
Game.KeepSymLinkOnExit = false;
Game.PauseBetweenStarts = 30;
Game.GamePlayBeforeGameSetup = true;
Game.Play = function() {
var txtPath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\HWR.exe.cfg";
var dict = [
Context.FindLineNumberInTextFile(txtPath, "v_resolution", Nucleus.SearchType.StartsWith) + "|v_resolution " + Context.Width + "x" + Context.Height,
Context.FindLineNumberInTextFile(txtPath, "v_fullscreen", Nucleus.SearchType.StartsWith) + "|v_fullscreen 0",
Context.FindLineNumberInTextFile(txtPath, "v_forced_aspect_ratio", Nucleus.SearchType.StartsWith) + "|v_forced_aspect_ratio 0.000000"
];
Context.ReplaceLinesInTextFile(txtPath, dict);
if (Context.HasKeyboardPlayer == true) {
Game.PromptBetweenInstances = true;
Game.PauseBetweenStarts = 40;
Game.PreventWindowDeactivation = true;
Game.KeyboardPlayerSkipPreventWindowDeactivate = true;
} else {
Game.FakeFocus = true;
Game.SetForegroundWindowElsewhere = true;
}
var id = Context.PlayerID + 6;
var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\ngalaxye_settings");
System.IO.Directory.CreateDirectory(filePath);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Galaxy.dll");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Galaxy.dll");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\ngalaxye_settings\\NemirtingasGalaxyEmu.json");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "NemirtingasGalaxyEmu.json");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var txtPath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\ngalaxye_settings\\NemirtingasGalaxyEmu.json";
var dict = [
Context.FindLineNumberInTextFile(txtPath, ' "galaxyid":', Nucleus.SearchType.StartsWith) + '| "galaxyid": 14549624462898294' + id + ",",
Context.FindLineNumberInTextFile(txtPath, ' "username":', Nucleus.SearchType.StartsWith) + '| "username": "' + Context.Nickname + '"'
];
Context.ReplaceLinesInTextFile(txtPath, dict);
if (!System.IO.File.Exists(Context.OrigRootFolder + "\\steam_api.dll")) {
Game.UseGoldberg = false;
} else {
}
};