100% Orange Juice · handler “100% Orange Juice”
Version 7
Release notes
config edit for auto windowed res
- Released
- Size
- 2.8 MB
- Downloads
- 150
- Check
- Verified
- SHA-256
- cf49e10fd8e9ec614137353a4498ecd4a3319bb9c2e6c95367a850fbd0726bf3
Files 5
| Path | Size |
|---|---|
| 100OrangeJuice/ColdClientLoader.ini | 2.0 KB |
| 100OrangeJuice/steamclient.dll | 2.9 MB |
| 100OrangeJuice/steamclient64.dll | 3.3 MB |
| 100OrangeJuice/steamclient_loader_64.exe | 330 KB |
| handler.js | 9.9 KB |
handler.js
Plain textHub.Handler.Version = 7; // Released at https://hub.splitscreen.me/ on Wed May 29 2024 05:01:56 GMT+0000 (Coordinated Universal Time).
Hub.Handler.Id = "EBgma2F8r4TpumJNA";
Hub.Maintainer.Name = "Talos91";
Hub.Maintainer.Id = "eeL7HAz8zJovChWw4";
var answers1 = ["Yes", "No"];
Game.AddOption("Do you own the DLC?", "ONLY select No if you do not have any DLC.", "DLC", answers1);
Game.ExecutableContext = ["data"];
Game.KillMutex = ["Luna"];
Game.DirSymlinkExclusions = ["settings", "steam_settings"];
Game.FileSymlinkExclusions = [
"steam_api.dll",
"steam_api64.dll",
"steam_appid.txt",
"steamclient.dll",
"steamclient64.dll",
"steamclient_loader_64.exe",
"ColdClientLoader.ini",
"config.dat",
"user.dat"
];
Game.FileSymlinkCopyInstead = ["100orange_x86.exe", "Ayame64.dll", "discord-rpc.dll", "discord-rpc64.dll", "physfs.dll", "settings.ojc"];
Game.NeedsSteamEmulation = false;
Game.UseGoldberg = true;
Game.HandlerInterval = 100;
Game.SymlinkExe = false;
Game.SymlinkGame = true;
Game.SymlinkFolders = true;
Game.ExecutableName = "100orange.exe";
Game.LauncherExe = "steamclient_loader_64.exe";
Game.LauncherExeIgnoreFileCheck = true;
Game.SteamID = "282800";
Game.GUID = "100 Orange Juice";
Game.GameName = "100% Orange Juice";
Game.MaxPlayers = 4;
Game.MaxPlayersOneMonitor = 4;
Game.LauncherTitle = "splashscreen";
Game.HideTaskbar = false;
Game.StartArguments = "";
Game.SetTopMostAtEnd = true;
Game.Hook.ForceFocus = true;
Game.Hook.ForceFocusWindowName = "100% Orange Juice";
Game.HasDynamicWindowTitle = true;
Game.FakeFocus = true;
Game.FakeFocusInterval = 3000;
Game.SendFakeFocusMsg = true;
Game.ResetWindows = true;
Game.Hook.DInputEnabled = false;
Game.Hook.XInputEnabled = false;
Game.Hook.XInputReroute = false;
Game.Hook.CustomDllEnabled = false;
Game.Description =
"IMPORTANT: When the game launcher opens quickly set windowed mode, the custom resolution you want and click play. After all the instances finish setting up press the END key once to lock the input so that each instance get its own working mouse cursor. You need at least one DLC or the game will throw an error when creating a lobby. In latest version of the game the instances will save in your main game files Save folder in a different numbered folder each, if the game updates backup your saves and delete the game content folder (instances folders) via Nucleus UI. Add custom resolutions in your AMD/Nvidia/Intel panel (for example for a 1920x1080 monitor add: 960x1080, 960x540, 1920x540 etc.) so the game can see and use them.";
Game.KeepSymLinkOnExit = false;
Game.PauseBetweenContextAndLaunch = 2;
Game.PauseBetweenProcessGrab = 17;
Game.PauseBetweenStarts = 20;
//USS deprecated options:
Game.HookSetCursorPos = false;
Game.HookGetCursorPos = false;
Game.HookGetKeyState = false;
Game.HookGetAsyncKeyState = false;
Game.HookGetKeyboardState = false;
Game.HookFilterRawInput = false;
Game.HookFilterMouseMessages = false;
Game.HookUseLegacyInput = false;
Game.HookDontUpdateLegacyInMouseMsg = false;
Game.HookMouseVisibility = false;
Game.InjectHookXinput = false;
Game.SendNormalMouseInput = false;
Game.SendNormalKeyboardInput = false;
Game.SendScrollWheel = false;
Game.ForwardRawKeyboardInput = false;
Game.ForwardRawMouseInput = false;
Game.HookReRegisterRawInput = false;
Game.HookReRegisterRawInputMouse = false;
Game.HookReRegisterRawInputKeyboard = false;
Game.DrawFakeMouseCursor = false;
//ProtoInput:
Game.SupportsMultipleKeyboardsAndMice = true;
Game.ProtoInput.InjectStartup = false;
Game.ProtoInput.InjectRuntime_RemoteLoadMethod = false;
Game.ProtoInput.InjectRuntime_EasyHookMethod = true;
Game.ProtoInput.InjectRuntime_EasyHookStealthMethod = false;
Game.LockInputAtStart = false;
Game.LockInputSuspendsExplorer = true;
Game.ProtoInput.FreezeExternalInputWhenInputNotLocked = false;
Game.LockInputToggleKey = 0x23;
Game.ProtoInput.RenameHandlesHook = false;
Game.ProtoInput.RenameHandles = [];
Game.ProtoInput.RenameNamedPipes = [];
Game.ProtoInput.RegisterRawInputHook = true;
Game.ProtoInput.GetRawInputDataHook = true;
Game.ProtoInput.MessageFilterHook = true;
Game.ProtoInput.GetCursorPosHook = true;
Game.ProtoInput.SetCursorPosHook = true;
Game.ProtoInput.GetKeyStateHook = true;
Game.ProtoInput.GetAsyncKeyStateHook = true;
Game.ProtoInput.GetKeyboardStateHook = true;
Game.ProtoInput.CursorVisibilityHook = false;
Game.ProtoInput.ClipCursorHook = true;
Game.ProtoInput.FocusHooks = true;
Game.ProtoInput.DrawFakeCursor = false;
Game.ProtoInput.RawInputFilter = true;
Game.ProtoInput.MouseMoveFilter = false;
Game.ProtoInput.MouseActivateFilter = true;
Game.ProtoInput.WindowActivateFilter = true;
Game.ProtoInput.WindowActvateAppFilter = true;
Game.ProtoInput.MouseWheelFilter = true;
Game.ProtoInput.MouseButtonFilter = true;
Game.ProtoInput.KeyboardButtonFilter = true;
Game.ProtoInput.SendMouseWheelMessages = true;
Game.ProtoInput.SendMouseButtonMessages = true;
Game.ProtoInput.SendMouseMovementMessages = true;
Game.ProtoInput.SendKeyboardButtonMessages = true;
Game.ProtoInput.XinputHook = false;
Game.ProtoInput.UseOpenXinput = false;
Game.ProtoInput.UseDinputRedirection = false;
Game.ProtoInput.DinputDeviceHook = false;
Game.ProtoInput.DinputHookAlsoHooksGetDeviceState = false;
Game.ProtoInput.EnableFocusMessageLoop = false;
//Game.ProtoInput.FocusLoopIntervalMilliseconds = 5;
//Game.ProtoInput.FocusLoop_WM_ACTIVATE = true;
//Game.ProtoInput.FocusLoop_WM_ACTIVATEAPP = true;
//Game.ProtoInput.FocusLoop_WM_NCACTIVATE = true;
//Game.ProtoInput.FocusLoop_WM_SETFOCUS = true;
//Game.ProtoInput.FocusLoop_WM_MOUSEACTIVATE = true;
Game.ProtoInput.BlockedMessages = [0x0008]; // Blocks WM_KILLFOCUS
Game.Play = function() {
var txtPath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\settings.ojc";
var dict = [
Context.FindLineNumberInTextFile(txtPath, ' "height":', Nucleus.SearchType.StartsWith) + '| "height": ' + Context.Height + ",",
Context.FindLineNumberInTextFile(txtPath, ' "screen_mode":', Nucleus.SearchType.StartsWith) + '| "screen_mode": 1,',
Context.FindLineNumberInTextFile(txtPath, ' "width":', Nucleus.SearchType.StartsWith) + '| "width": ' + Context.Width
//Context.FindLineNumberInTextFile(txtPath, ' "showStartupDialog":', Nucleus.SearchType.StartsWith) + '| "showStartupDialog": false,',
];
Context.ReplaceLinesInTextFile(txtPath, dict);
var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\sdlls\\steam_settings");
System.IO.Directory.CreateDirectory(filePath);
var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\sdlls\\settings");
System.IO.Directory.CreateDirectory(filePath);
var nolay = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\sdlls\\steam_settings\\disable_overlay.txt";
var lines = [""];
Context.WriteTextFile(nolay, lines);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\steam_api.dll");
var savePkgOrigin = System.IO.Path.Combine(Context.OrigRootFolder, "steam_api.dll");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\steam_api64.dll");
var savePkgOrigin = System.IO.Path.Combine(Context.OrigRootFolder, "steam_api64.dll");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\sdlls\\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) + "\\sdlls\\steamclient64.dll");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "steamclient64.dll");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\steamclient_loader_64.exe");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "steamclient_loader_64.exe");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\ColdClientLoader.ini");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "ColdClientLoader.ini");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\ColdClientLoader.ini");
Context.ModifySaveFile(savePath, savePath, Nucleus.SaveType.INI, [
new Nucleus.IniSaveInfo("SteamClient", "SteamClientDll", Context.RootFolder + "\\sdlls\\steamclient.dll"),
new Nucleus.IniSaveInfo("SteamClient", "SteamClient64Dll", Context.RootFolder + "\\sdlls\\steamclient64.dll")
]);
var localsave = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\sdlls\\local_save.txt";
var lines = [""];
Context.WriteTextFile(localsave, lines);
System.IO.File.Copy(System.IO.Path.Combine(Context.RootFolder, "settings\\account_name.txt"), System.IO.Path.Combine(Context.RootFolder, "sdlls\\settings\\account_name.txt"), true);
System.IO.File.Copy(System.IO.Path.Combine(Context.RootFolder, "settings\\language.txt"), System.IO.Path.Combine(Context.RootFolder, "sdlls\\settings\\language.txt"), true);
System.IO.File.Copy(System.IO.Path.Combine(Context.RootFolder, "settings\\user_steam_id.txt"), System.IO.Path.Combine(Context.RootFolder, "sdlls\\settings\\user_steam_id.txt"), true);
var dlc = Context.Options["DLC"];
if (dlc == "Yes") {
}
if (dlc == "No") {
var dlc = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\sdlls\\steam_settings\\DLC.txt";
var lines = [];
Context.WriteTextFile(dlc, lines);
}
};