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

Attack on Titan · handler “AoT-1”

Version 2

Release notes

update to r5.

Released
Size
1.5 KB
Downloads
700
Check
Verified
SHA-256
d5713bba3e02abdf331df605c8e981cb2bd2cccf13d8ecc73367fde33c891c5f
Download v2 (.nc)All versions

Files 1

PathSize
handler.js4.2 KB

handler.js

Plain text
Hub.Handler.Version = 2; // Released at https://hub.splitscreen.me/ on Fri Dec 25 2020 08:42:51 GMT+0000 (UTC).
Hub.Handler.Id = "HKGTL3q87m6CQuXSi";
Hub.Maintainer.Name = "Talos91";
Hub.Maintainer.Id = "eeL7HAz8zJovChWw4";

var answers1 = ["Yes", "No"];
Game.AddOption("Xbox/XInput controllers only?", "Select No if you are using any DirectInput gamepads.", "Gamepad", answers1);

Game.FileSymlinkExclusions = ["steam_api64.dll", "steam_appid.txt", "xinput1_3.dll", "Dinput8.dll", "XInputPlus.ini", "winmm.dll"];
Game.NeedsSteamEmulation = false;
Game.UseGoldberg = true;
Game.UseNucleusEnvironment = true;
Game.UseSteamStubDRMPatcher = true;
Game.HandlerInterval = 100;
Game.SymlinkExe = false;
Game.SymlinkGame = true;
Game.SymlinkFolders = true;
Game.SupportsKeyboard = false;
Game.ExecutableName = "AoT.exe";
Game.SteamID = "449800";
Game.GUID = "Attack on Titan";
Game.GameName = "Attack on Titan / A.O.T. Wings of Freedom";
Game.MaxPlayers = 4;
Game.MaxPlayersOneMonitor = 4;
Game.BinariesFolder = "";
Game.LauncherTitle = "";
Game.HideTaskbar = false;
Game.Hook.ForceFocus = true;
Game.Hook.ForceFocusWindowName = "Attack on Titan / A.O.T. Wings of Freedom";
Game.Hook.DInputEnabled = true;
Game.Hook.DInputForceDisable = true;
Game.Hook.XInputEnabled = true;
Game.Hook.XInputReroute = false;
Game.UseDevReorder = true;
Game.Hook.CustomDllEnabled = false;
Game.FakeFocus = false;
Game.HookFocus = true;
Game.HookInit = true;
Game.SetForegroundWindowElsewhere = true;
Game.UserProfileSavePath = "Documents\\KoeiTecmo\\Attack on Titan\\SAVEDATA";
Game.Description =
  "Each instance has its own saves. You can access these saves in the app, after the first launch click game options/open user profile save path in the UI. If you get uneven fps in the instances try alt-tabbing to the NucleusCo-op app window, the game windows will remain on top. You can also try reducing graphic settings in-game.";
Game.KeepSymLinkOnExit = false;
Game.PauseBetweenStarts = 30;

Game.Play = function() {
  Context.EditRegKey("HKEY_CURRENT_USER", "SOFTWARE\\KoeiTecmo\\Attack on Titan\\System", "WindowMode", 1, Nucleus.RegType.DWord);

  var NucleusRoot = System.IO.Path.Combine(Game.Folder, "..", "..");
  System.IO.File.Copy(NucleusRoot + "\\utils\\XInputPlus\\XInputPlus.ini", Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\XInputPlus.ini");

  var gamepad = Context.Options["Gamepad"];

  if (gamepad == "Yes") {
    Game.UseDevReorder = false;

    var NucleusRoot = System.IO.Path.Combine(Game.Folder, "..", "..");
    System.IO.File.Copy(NucleusRoot + "\\utils\\XInputPlus\\x64\\xinput1_3.dl_", Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\xinput1_3.dll");
    System.IO.File.Copy(NucleusRoot + "\\utils\\XInputPlus\\old\\x64\\Dinput8.dl_", Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Dinput8.dll", true);
    //System.IO.File.Copy(NucleusRoot + "\\utils\\XInputPlus\\x64\\Dinput8.dl_", Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Dinput8.dll", true);
  }

  if (gamepad == "No") {
  }

  if (Player.IsKeyboardPlayer) {
    var savePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\XinputPlus.ini";
    Context.ModifySaveFile(savePath, savePath, Nucleus.SaveType.INI, [
      new Nucleus.IniSaveInfo("ControllerNumber", "Controller1", "0"),
      new Nucleus.IniSaveInfo("ControllerNumber", "Controller2", "0"),
      new Nucleus.IniSaveInfo("ControllerNumber", "Controller3", "0"),
      new Nucleus.IniSaveInfo("ControllerNumber", "Controller4", "0")
    ]);
  } else {
    var savePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\XInputPlus.ini";
    Context.ModifySaveFile(savePath, savePath, Nucleus.SaveType.INI, [
      new Nucleus.IniSaveInfo("ControllerNumber", "Controller1", Context.PlayerID + 1),
      new Nucleus.IniSaveInfo("ControllerNumber", "Controller2", Context.PlayerID + 1),
      new Nucleus.IniSaveInfo("ControllerNumber", "Controller3", Context.PlayerID + 1),
      new Nucleus.IniSaveInfo("ControllerNumber", "Controller4", Context.PlayerID + 1),
      new Nucleus.IniSaveInfo("X2DInput", "EnableX2Dinput", true),
      new Nucleus.IniSaveInfo("X2DInput", "LT", "Z_Axis(+)"),
      new Nucleus.IniSaveInfo("X2DInput", "RT", "Z_Axis(-)")
    ]);
  }
};