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

Clandestine · handler “Clandestine”

Version 2

Release notes

multiple keyboard support and fixes.

Released
Size
1.6 KB
Downloads
0
Check
Verified
SHA-256
462e0cc5a96b46fabceabcfe68ce6532b6073ac839e53882d4d048b463ffe840
Download v2 (.nc)All versions

Files 1

PathSize
handler.js3.9 KB

handler.js

Plain text
Hub.Handler.Version = 2; // Released at https://hub.splitscreen.me/ on Thu Oct 29 2020 01:35:08 GMT+0000 (UTC).
Hub.Handler.Id = "M4DohysoE7XacttWq";
Hub.Maintainer.Name = "Talos91";
Hub.Maintainer.Id = "eeL7HAz8zJovChWw4";

Game.DirSymlinkExclusions = ["Clandestine_Data\\Plugins"];
Game.FileSymlinkExclusions = ["steam_appid.txt", "steam_api64.dll"];
Game.GameName = "Clandestine";
Game.HandlerInterval = 100;
Game.SymlinkExe = false;
Game.SymlinkGame = true;
Game.SupportsKeyboard = false;
Game.ExecutableName = "Clandestine.exe";
Game.SteamID = "290530";
Game.GUID = "Clandestine";
Game.MaxPlayers = 2;
Game.MaxPlayersOneMonitor = 4;
Game.BinariesFolder = "";
Game.NeedsSteamEmulation = false;
Game.UseGoldberg = true;
Game.LauncherTitle = "";
Game.Hook.ForceFocus = true;
Game.Hook.ForceFocusWindowName = "Clandestine";
Game.Hook.DInputEnabled = false;
Game.Hook.DInputForceDisable = true;
Game.Hook.XInputEnabled = true;
Game.Hook.XInputReroute = false;
Game.Hook.CustomDllEnabled = false;
Game.BlockRawInput = true;
Game.StartHookInstances = "2,3,4";
Game.FakeFocus = true;
Game.PreventWindowDeactivation = false;
Game.KeyboardPlayerSkipPreventWindowDeactivate = false;
Game.SetWindowHook = false;
Game.ResetWindows = true;
Game.PromptBetweenInstances = true;
Game.UserProfileConfigPath = "Documents\\My Games\\Clandestine";
Game.UserProfileSavePath = "Documents\\My Games\\Clandestine\\Saves";
Game.Description =
  "Best played with one gamepad and one keyboard and mouse. Host a public game in the first instance before starting the second via the prompt, join the match in the second instance before applying the focus hooks prompt. Do not enter the setup menu when launching via Nucleus or it will break your custom resolution. Press the END key to unlock the input and the main cursor when you finish playing. You can also use CTRL+Q to close Nucleus and all its instances. If you are using 2 gamepads map your gamepads to the different players in the game controls options in your regular game first.";
Game.PauseBetweenStarts = 50;

Game.SupportsMultipleKeyboardsAndMice = true;

Game.HookSetCursorPos = true;
Game.HookGetCursorPos = true;
Game.HookGetKeyState = false;
Game.HookGetAsyncKeyState = false;
Game.HookGetKeyboardState = false;
Game.HookFilterRawInput = true;
Game.HookFilterMouseMessages = false;
Game.HookUseLegacyInput = false;
Game.HookDontUpdateLegacyInMouseMsg = false;
Game.HookMouseVisibility = false;

Game.SendNormalMouseInput = true;
Game.SendNormalKeyboardInput = true;
Game.SendScrollWheel = true;
Game.ForwardRawKeyboardInput = false;
Game.ForwardRawMouseInput = false;
Game.HookReRegisterRawInput = true;
Game.HookReRegisterRawInputMouse = true;
Game.HookReRegisterRawInputKeyboard = false;
Game.DrawFakeMouseCursor = true;
Game.LockInputAtStart = true;
Game.LockInputToggleKey = 0x23;

Game.Play = function() {
  var Args = (Context.Args = " -popupwindow " + " -screen-width " + Context.Width + " -screen-height " + Context.Height);

  Context.StartArguments = Args;

  var savePath = Context.GetFolder(Nucleus.Folder.Documents) + "\\My Games\\Clandestine\\settings.ini";
  Context.ModifySaveFile(savePath, savePath, Nucleus.SaveType.INI, [
    new Nucleus.IniSaveInfo("Video", "FullScreen", false),
    new Nucleus.IniSaveInfo("Video", "ResolutionWidth", Context.Width),
    new Nucleus.IniSaveInfo("Video", "ResolutionHeight", Context.Height)
  ]);

  Context.EditRegKey("HKEY_CURRENT_USER", "SOFTWARE\\Logic Artists\\Clandestine", "Screenmanager Is Fullscreen mode_h3981298716", 0, Nucleus.RegType.DWord);

  Context.EditRegKey("HKEY_CURRENT_USER", "SOFTWARE\\Logic Artists\\Clandestine", "Screenmanager Resolution Height_h2627697771", Context.Height, Nucleus.RegType.DWord);

  Context.EditRegKey("HKEY_CURRENT_USER", "SOFTWARE\\Logic Artists\\Clandestine", "Screenmanager Resolution Width_h182942802", Context.Width, Nucleus.RegType.DWord);
};