Tom Clancy's Rainbow Six: Vegas 2 · handler “RainbowSixVegas2”
Version 3
Release notes
fixed notes and 3 players splitscreen.
- Released
- Size
- 526 KB
- Downloads
- 5,904
- Check
- Verified
- SHA-256
- 40d6355dd03365c59d76d6768a050dd6ba88182ecbf694ebdf1ab9cde657cf49
Files 13
| Path | Size |
|---|---|
| handler.js | 9.0 KB |
| RainbowSixVegas2/TeknoR6Vegas2.exe | 513 KB |
| RainbowSixVegas2/windowed/d3d9.dll | 11 KB |
| RainbowSixVegas2/windowed/d3d9hook.cpp | 5.6 KB |
| RainbowSixVegas2/windowed/d3d9hook.def | 1.0 KB |
| RainbowSixVegas2/windowed/d3d9hook.h | 6.9 KB |
| RainbowSixVegas2/windowed/d3d9hook.sln | 878 B |
| RainbowSixVegas2/windowed/d3d9hook.vcxproj | 7.0 KB |
| RainbowSixVegas2/windowed/IDirect3D9.h | 7.3 KB |
| RainbowSixVegas2/windowed/IDirect3DDevice9.h | 43 KB |
| RainbowSixVegas2/windowed/IUnknown.h | 481 B |
| RainbowSixVegas2/windowed/LogWindowMessagesImpl.h | 23 KB |
| RainbowSixVegas2/windowed/overrides.h | 5.3 KB |
handler.js
Plain textHub.Handler.Version = 3; // Released at https://hub.splitscreen.me/ on Mon Nov 09 2020 10:04:53 GMT+0000 (UTC).
Hub.Handler.Id = "WfAMG7akRb5Gdydms";
Hub.Maintainer.Name = "Talos91";
Hub.Maintainer.Id = "eeL7HAz8zJovChWw4";
Game.ExecutableContext = ["binkw32.dll"];
Game.KillMutex = [
"RainbowSixVegas2IsRunning"
//"steam_singleton_mutext_00000000_000015a0"
];
Game.DirSymlinkExclusions = ["Binaries"];
Game.FileSymlinkExclusions = [
"d3d9.dll",
"d3d9hook.cpp",
"d3d9hook.def",
"d3d9hook.h",
"d3d9hook.sln",
"d3d9hook.vcxproj",
"IDirect3D9.h",
"IDirect3DDevice9.h",
"IUnknown.h",
"LogWindowMessagesImpl.h",
"overrides.h",
"TeknoR6Vegas2.exe"
];
Game.NeedsSteamEmulation = false;
Game.HandlerInterval = 100;
Game.SymlinkExe = false;
Game.SymlinkGame = true;
Game.SymlinkFolders = true;
Game.SupportsKeyboard = false;
Game.ExecutableName = "R6Vegas2_Game.exe";
Game.SteamID = "15120";
Game.GUID = "Rainbow Six Vegas 2";
Game.GameName = "Tom Clancy's Rainbow Six Vegas 2";
Game.MaxPlayers = 16;
Game.MaxPlayersOneMonitor = 16;
Game.LauncherTitle = "";
Game.LauncherExe = "Binaries\\TeknoR6Vegas2.exe";
Game.LauncherExeIgnoreFileCheck = true;
Game.BinariesFolder = "Binaries";
Game.ForceFinishOnPlay = true;
Game.HideTaskbar = false;
Game.Hook.ForceFocus = false;
Game.Hook.ForceFocusWindowName = "Tom Clancy's Rainbow Six Vegas 2";
Game.Hook.DInputEnabled = false;
Game.Hook.DInputForceDisable = true;
Game.Hook.XInputEnabled = true;
Game.Hook.XInputReroute = false;
Game.Hook.BlockKeyboardEvents = false;
Game.Hook.BlockMouseEvents = true;
Game.Hook.BlockInputEvents = true;
Game.Hook.UseAlpha8CustomDll = false;
Game.Hook.CustomDllEnabled = false;
Game.XInputPlusDll = ["xinput1_3.dll"];
Game.FakeFocus = true;
Game.ResetWindows = true;
Game.KeepSymLinkOnExit = false;
Game.UserProfileSavePath = "Documents\\My Games\\Ubisoft";
Game.Description =
"On first launch using the keyboard go to extras, options and set the xbox controller for windows option to ON, also select your custom resolution in the video settings per instance, alt-tab between instances to use the keyboard. After all that exit in each instance via the menu and launch again via Nucleus. Connect the instances via LAN. You need to add custom resolutions in your AMD/Nvidia/Intel panel (For example: 960x1080, 1920x540, 960x540 etc.) for the game to see them. You can access each instance save in the app, after the first launch click game options/open user profile save path in the UI.";
Game.PauseBetweenStarts = 30;
Game.Play = function() {
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\R6Vegas2_Game.exe");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "R6Vegas2_Game.exe");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\TeknoR6Vegas2.exe");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "TeknoR6Vegas2.exe");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\d3d9.dll");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "windowed\\d3d9.dll");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\d3d9hook.cpp");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "windowed\\d3d9hook.cpp");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\d3d9hook.def");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "windowed\\d3d9hook.def");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\d3d9hook.h");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "windowed\\d3d9hook.h");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\d3d9hook.sln");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "windowed\\d3d9hook.sln");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\d3d9hook.vcxproj");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "windowed\\d3d9hook.vcxproj");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\IDirect3D9.h");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "windowed\\IDirect3D9.h");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\IDirect3DDevice9.h");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "windowed\\IDirect3DDevice9.h");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\IUnknown.h");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "windowed\\IUnknown.h");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\LogWindowMessagesImpl.h");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "windowed\\LogWindowMessagesImpl.h");
System.IO.File.Copy(savePkgOrigin, savePath, true);
var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Binaries\\overrides.h");
var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "windowed\\overrides.h");
System.IO.File.Copy(savePkgOrigin, savePath, true);
if (Context.PlayerID == 0) {
var Args = (Context.Args = " 1 " + " 0 " + " 0 ");
Context.StartArguments = Args;
} else {
var Args = (Context.Args = " 0 " + " 0 " + " 0 ");
Context.StartArguments = Args;
}
if (Context.PlayerID == 1) {
//patch instance exe to save to a different folder.
Context.PatchFile(
System.IO.Path.Combine(Game.Folder, "R6Vegas2_Game.exe"),
System.IO.Path.Combine(Context.RootFolder, "Binaries\\R6Vegas2_Game.exe"),
[0x52, 0x36, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00],
[0x52, 0x37, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00]
);
}
if (Context.PlayerID == 2) {
Context.PatchFile(
System.IO.Path.Combine(Game.Folder, "R6Vegas2_Game.exe"),
System.IO.Path.Combine(Context.RootFolder, "Binaries\\R6Vegas2_Game.exe"),
[0x52, 0x36, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00],
[0x52, 0x38, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00]
);
}
if (Context.PlayerID == 3) {
Context.PatchFile(
System.IO.Path.Combine(Game.Folder, "R6Vegas2_Game.exe"),
System.IO.Path.Combine(Context.RootFolder, "Binaries\\R6Vegas2_Game.exe"),
[0x52, 0x36, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00],
[0x52, 0x39, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00]
);
}
if (Context.PlayerID == 4) {
Context.PatchFile(
System.IO.Path.Combine(Game.Folder, "R6Vegas2_Game.exe"),
System.IO.Path.Combine(Context.RootFolder, "Binaries\\R6Vegas2_Game.exe"),
[0x52, 0x36, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00],
[0x52, 0x46, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00]
);
}
if (Context.PlayerID == 5) {
Context.PatchFile(
System.IO.Path.Combine(Game.Folder, "R6Vegas2_Game.exe"),
System.IO.Path.Combine(Context.RootFolder, "Binaries\\R6Vegas2_Game.exe"),
[0x52, 0x36, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00],
[0x52, 0x47, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00]
);
}
if (Context.PlayerID == 6) {
Context.PatchFile(
System.IO.Path.Combine(Game.Folder, "R6Vegas2_Game.exe"),
System.IO.Path.Combine(Context.RootFolder, "Binaries\\R6Vegas2_Game.exe"),
[0x52, 0x36, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00],
[0x52, 0x48, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00]
);
}
if (Context.PlayerID == 7) {
Context.PatchFile(
System.IO.Path.Combine(Game.Folder, "R6Vegas2_Game.exe"),
System.IO.Path.Combine(Context.RootFolder, "Binaries\\R6Vegas2_Game.exe"),
[0x52, 0x36, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00],
[0x52, 0x49, 0x56, 0x65, 0x67, 0x61, 0x73, 0x32, 0x00]
);
}
if (Context.AspectRatioDecimal > 1.8) {
var Args = (Context.Args = " 1 " + " 0 " + " 1 ");
Context.StartArguments = Args;
} else if (Context.AspectRatioDecimal < 1.3) {
var Args = (Context.Args = " 1 " + " 0 " + " 0 ");
Context.StartArguments = Args;
} else {
var Args = (Context.Args = " 1 " + " 0 " + " 0 ");
Context.StartArguments = Args;
}
};