God Eater Resurrection · handler “GodEaterR”
Version 2
Release notes
Stretching fix.
- Released
- Size
- 136 KB
- Downloads
- 314
- Check
- Verified
- SHA-256
- 6a5ba9bef47411b16c82b0810cca37f61966f0ea6a43e28851f110f1a820eba7
Files 6
| Path | Size |
|---|---|
| GodEaterR/CPY.ini | 118 B |
| GodEaterR/SST311212.dll | 70 KB |
| GodEaterR/steamclient.dll | 5.5 KB |
| GodEaterR/steam_api.dll | 29 KB |
| GodEaterR/ValveAPI.dll | 183 KB |
| handler.js | 6.3 KB |
handler.js
Plain textHub.Handler.Version = 2; // Released at https://hub.splitscreen.me/ on Sat Jan 16 2021 13:40:41 GMT+0000 (UTC).
Hub.Handler.Id = "Sr4JPKj93ceBJ4W3X";
Hub.Maintainer.Name = "Talos91";
Hub.Maintainer.Id = "eeL7HAz8zJovChWw4";
var answers1 = ["Yes", "No"];
Game.AddOption("Change aspect ratio to match the window resolution?", "Fixes the blackbars and stretching in split.Tested with 1920x1080 monitor res.", "AR", answers1);
Game.KillMutex = ["GE"];
Game.FileSymlinkExclusions = ["GER.exe", "steam_api.dll", "steam_appid.txt", "steamclient.dll", "ValveAPI.dll", "CPY.ini", "SST311212.dll", "xinput1_3.dll"];
Game.GameName = "God Eater Resurrection";
Game.HandlerInterval = 100;
Game.SymlinkExe = false;
Game.SymlinkGame = true;
Game.SymlinkFolders = true;
Game.SupportsKeyboard = false;
Game.ExecutableName = "ger.exe";
Game.SteamID = "460870";
Game.GUID = "God Eater Resurrection";
Game.MaxPlayers = 4;
Game.MaxPlayersOneMonitor = 4;
Game.UseNucleusEnvironment = true;
Game.NeedsSteamEmulation = true;
Game.UseGoldberg = false;
Game.CreateSteamAppIdByExe = true;
Game.LauncherTitle = "";
Game.Hook.ForceFocus = true;
Game.Hook.ForceFocusWindowName = "God Eater Resurrection";
Game.Hook.DInputEnabled = false;
Game.Hook.DInputForceDisable = true;
Game.Hook.XInputEnabled = true;
Game.Hook.XInputReroute = false;
Game.XInputPlusDll = ["xinput1_3.dll"];
Game.Hook.CustomDllEnabled = false;
Game.FakeFocus = true;
Game.HookFocus = true;
Game.SetWindowHook = true;
Game.UserProfileConfigPath = "AppData\\Local\\BANDAI NAMCO GAMES\\GOD EATER RESURRECTION";
Game.Description =
"CLOSE Steam completely before running this. Each instance has its own save, you can access these saves in the app, after the first launch click game options/open user profile config path in the UI. Gamepads only.";
Game.PauseBetweenStarts = 30;
Game.Play = function() {
var VideoConfig = Context.EnvironmentPlayer + Context.UserProfileConfigPath + "\\config.ini";
Context.ModifySaveFile(VideoConfig, VideoConfig, Nucleus.SaveType.INI, [new Nucleus.IniSaveInfo("GFX", "Fullscreen", "0")]);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\steam_api.dll");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "steam_api.dll");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\steamclient.dll");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "steamclient.dll");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\SST311212.dll");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "SST311212.dll");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\ValveAPI.dll");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "ValveAPI.dll");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\CPY.ini");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "CPY.ini");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\CPY.ini";
Context.ModifySaveFile(savePath, savePath, Nucleus.SaveType.INI, [
new Nucleus.IniSaveInfo("Settings", "PlayerName", Context.Nickname),
new Nucleus.IniSaveInfo("Settings", "SavePath", Context.EnvironmentPlayer + Context.UserProfileConfigPath)
]);
var ar = Context.Options["AR"];
if (ar == "Yes") {
if (Context.AspectRatioDecimal > 1.8) {
var VideoConfig = Context.EnvironmentPlayer + Context.UserProfileConfigPath + "\\config.ini";
Context.ModifySaveFile(VideoConfig, VideoConfig, Nucleus.SaveType.INI, [
new Nucleus.IniSaveInfo("GFX", "Resolution_Width", "1920"),
new Nucleus.IniSaveInfo("GFX", "Resolution_Height", "1080"),
new Nucleus.IniSaveInfo("GFX", "Fullscreen", "0")
]);
//patch widescreen
Context.PatchFile(
System.IO.Path.Combine(Context.RootInstallFolder, "GER.exe"),
System.IO.Path.Combine(Context.RootFolder, "GER.exe"),
[0x00, 0x80, 0x07, 0x00, 0x00, 0x38, 0x04],
[0x00, 0x80, 0x07, 0x00, 0x00, 0x1c, 0x02]
);
Context.PatchFile(System.IO.Path.Combine(Context.RootFolder, "GER.exe"), System.IO.Path.Combine(Context.RootFolder, "GER.exe"), [0x3f, 0x00, 0x00, 0x80, 0x41], [0x3f, 0x00, 0x00, 0x00, 0x42]);
} else if (Context.AspectRatioDecimal < 1.2) {
var VideoConfig = Context.EnvironmentPlayer + Context.UserProfileConfigPath + "\\config.ini";
Context.ModifySaveFile(VideoConfig, VideoConfig, Nucleus.SaveType.INI, [
new Nucleus.IniSaveInfo("GFX", "Resolution_Width", "1920"),
new Nucleus.IniSaveInfo("GFX", "Resolution_Height", "1080"),
new Nucleus.IniSaveInfo("GFX", "Fullscreen", "0")
]);
Context.PatchFile(
System.IO.Path.Combine(Context.RootInstallFolder, "GER.exe"),
System.IO.Path.Combine(Context.RootFolder, "GER.exe"),
[0x00, 0x80, 0x07, 0x00, 0x00, 0x38, 0x04],
[0x00, 0xc0, 0x03, 0x00, 0x00, 0x38, 0x04]
);
Context.PatchFile(System.IO.Path.Combine(Context.RootFolder, "GER.exe"), System.IO.Path.Combine(Context.RootFolder, "GER.exe"), [0x3f, 0x00, 0x00, 0x80, 0x41], [0x3f, 0x00, 0x00, 0x00, 0x41]);
} else {
System.IO.File.Copy(System.IO.Path.Combine(Context.RootInstallFolder, "GER.exe"), System.IO.Path.Combine(Context.RootFolder, "GER.exe"), true);
}
}
if (ar == "No") {
System.IO.File.Copy(System.IO.Path.Combine(Context.RootInstallFolder, "GER.exe"), System.IO.Path.Combine(Context.RootFolder, "GER.exe"), true);
if (Context.AspectRatioDecimal < 1.2) {
var VideoConfig = Context.EnvironmentPlayer + Context.UserProfileConfigPath + "\\config.ini";
Context.ModifySaveFile(VideoConfig, VideoConfig, Nucleus.SaveType.INI, [
new Nucleus.IniSaveInfo("GFX", "Resolution_Width", Context.Width),
new Nucleus.IniSaveInfo("GFX", "Resolution_Height", Context.Height),
new Nucleus.IniSaveInfo("GFX", "Fullscreen", "0")
]);
} else {
}
}
};