100% Orange Juice · handler “100% Orange Juice”
Version 4
Release notes
updated again to work with latest Steam version.
- Released
- Size
- 2.8 MB
- Downloads
- 2
- Check
- Verified
- SHA-256
- 1bf631fae848157b93714755712b1702efb7e21093cc3896fae2c15e089453ab
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 | 8.9 KB |
handler.js
Plain textHub.Handler.Version = 4; // Released at https://hub.splitscreen.me/ on Sun May 26 2024 13:20:41 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.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 = 3;
Game.PauseBetweenProcessGrab = 17;
Game.PauseBetweenStarts = 25;
//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 filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\steam_settings");
System.IO.Directory.CreateDirectory(filePath);
var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\sdlls\\settings");
System.IO.Directory.CreateDirectory(filePath);
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) + "\\steam_settings\\DLC.txt";
var lines = [];
Context.WriteTextFile(dlc, lines);
}
};