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

Tom Clancy's Splinter Cell: Conviction · handler “SplinterCellConviction”

Version 3

Release notes

dirsymlink fix.

Released
Size
16.5 MB
Downloads
68
Check
Verified
SHA-256
093007d47b7e0d62c7d4e13f729051f6fd838feac5c3cc50d2af171268082b47
Download v3 (.nc)All versions

Files 72

PathSize
Conviction/d3d9.dll164 KB
Conviction/d3d9.ini690 B
Conviction/dinput8.dll150 KB
Conviction/flush.ps118 B
Conviction/MapConfigurationDLC.xml6.0 KB
Conviction/patch.txt16.0 MB
Conviction/ProfileDefaultsPC.ini3.2 KB
Conviction/runp.bat150 B
Conviction/scc_lan_helper.exe1.6 MB
Conviction/SplinterCellConviction.FusionMod.asi738 KB
Conviction/SplinterCellConviction.FusionMod.ini178 B
Conviction/ubiorbitapi_r2.dll864 KB
Conviction/version.dll2.1 MB
Conviction/_internal/api-ms-win-core-console-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-datetime-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-debug-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-errorhandling-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-fibers-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-file-l1-1-0.dll26 KB
Conviction/_internal/api-ms-win-core-file-l1-2-0.dll22 KB
Conviction/_internal/api-ms-win-core-file-l2-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-handle-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-heap-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-interlocked-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-libraryloader-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-localization-l1-2-0.dll22 KB
Conviction/_internal/api-ms-win-core-memory-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-namedpipe-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-processenvironment-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-processthreads-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-processthreads-l1-1-1.dll22 KB
Conviction/_internal/api-ms-win-core-profile-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-rtlsupport-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-string-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-synch-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-synch-l1-2-0.dll22 KB
Conviction/_internal/api-ms-win-core-sysinfo-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-timezone-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-core-util-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-crt-conio-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-crt-convert-l1-1-0.dll26 KB
Conviction/_internal/api-ms-win-crt-environment-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-crt-filesystem-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-crt-heap-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-crt-locale-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-crt-math-l1-1-0.dll30 KB
Conviction/_internal/api-ms-win-crt-process-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-crt-runtime-l1-1-0.dll26 KB
Conviction/_internal/api-ms-win-crt-stdio-l1-1-0.dll26 KB
Conviction/_internal/api-ms-win-crt-string-l1-1-0.dll26 KB
Conviction/_internal/api-ms-win-crt-time-l1-1-0.dll22 KB
Conviction/_internal/api-ms-win-crt-utility-l1-1-0.dll22 KB
Conviction/_internal/base_library.zip1.3 MB
Conviction/_internal/libcrypto-3.dll4.9 MB
Conviction/_internal/libffi-8.dll39 KB
Conviction/_internal/pydivert/windivert_dll/WinDivert32.dll18 KB
Conviction/_internal/pydivert/windivert_dll/WinDivert32.sys40 KB
Conviction/_internal/pydivert/windivert_dll/WinDivert64.dll22 KB
Conviction/_internal/pydivert/windivert_dll/WinDivert64.sys46 KB
Conviction/_internal/python312.dll6.7 MB
Conviction/_internal/select.pyd30 KB
Conviction/_internal/ucrtbase.dll1.1 MB
Conviction/_internal/unicodedata.pyd1.1 MB
Conviction/_internal/VCRUNTIME140.dll116 KB
Conviction/_internal/_bz2.pyd83 KB
Conviction/_internal/_ctypes.pyd122 KB
Conviction/_internal/_decimal.pyd247 KB
Conviction/_internal/_hashlib.pyd64 KB
Conviction/_internal/_lzma.pyd156 KB
Conviction/_internal/_socket.pyd81 KB
Conviction/_internal/_wmi.pyd36 KB
handler.js9.3 KB

handler.js

Plain text
Hub.Handler.Version = 3; // Released at https://hub.splitscreen.me/ on Sat Jun 08 2024 02:32:14 GMT+0000 (Coordinated Universal Time).
Hub.Handler.Id = "GGN6FpryMWXq8eP2x";
Hub.Maintainer.Name = "Talos91";
Hub.Maintainer.Id = "eeL7HAz8zJovChWw4";

Game.ExecutableContext = ["UMDS"];
Game.KillMutex = ["Type:Semaphore|sc5_semaphore"];
Game.DirSymlinkExclusions = ["src\\system", "src\\system\\scripts", "data\\Videos"];
Game.FileSymlinkExclusions = [
  "MapConfigurationDLC.xml",
  "ubiorbitapi_r2.dll",
  "d3d9.dll",
  "d3d9.ini",
  "conviction_game.exe",
  "gu.exe",
  "UPlayBrowser.exe",
  "Skidrow.ini",
  "Logo_ESRB_01.bik",
  "Logo_ESRB_02.bik",
  "Logo_MiddleWare_01.bik",
  "Logo_Ubisoft.bik",
  "Logo_Clancy_01.bik",
  "ProfileDefaultsPC.ini",
  "SplinterCellConviction.FusionMod.asi",
  "SplinterCellConviction.FusionMod.ini",
  "dinput8.dll",
  "xinput1_3.dll",
  "version.dll"
];
Game.FileSymlinkCopyInstead = [
  "gameinfo.ini",
  "Conviction.ini",
  "ConvictionInputs.ini",
  "ConvictionUser.ini",
  "ConvictionUserPC.ini",
  "Default.ini",
  "dynamicxbox.umd",
  "InputKeyTranslation.ini",
  "loc-dan.umd",
  "loc-deu.umd",
  "loc-esp.umd",
  "loc-fra.umd",
  "loc-int.umd",
  "loc-ita.umd",
  "loc-nl.umd",
  "loc-nor.umd",
  "loc-swe.umd",
  "version",
  "systemdetection.dll"
];
Game.RequiresAdmin = true;
Game.UseNucleusEnvironment = true;
Game.NeedsSteamEmulation = false;
Game.HandlerInterval = 100;
Game.SymlinkExe = false;
Game.SymlinkGame = true;
Game.SymlinkFolders = true;
Game.ExecutableName = "conviction_game.exe";
Game.SteamID = "33220";
Game.GUID = "Splinter Cell Conviction";
Game.GameName = "Tom Clancy's Splinter Cell Conviction";
Game.MaxPlayers = 2;
Game.MaxPlayersOneMonitor = 4;
Game.BinariesFolder = "src\\system";
Game.HideTaskbar = false;
Game.StartArguments = "";
Game.Hook.ForceFocus = true;
Game.Hook.ForceFocusWindowName = "Conviction";
Game.DPIHandling = Nucleus.DPIHandling.InvScaled;
Game.ResetWindows = true;
Game.Hook.DInputEnabled = false;
Game.Hook.XInputEnabled = true;
Game.Hook.XInputReroute = false;
Game.Hook.UseAlpha8CustomDll = true;
Game.Hook.BlockMouseEvents = false;
Game.Hook.BlockInputEvents = false;
Game.Hook.BlockKeyboardEvents = false;
Game.SupportsKeyboard = false;
Game.UserProfileSavePath = "AppData\\Local\\storage";
Game.UserProfileSavePathNoCopy = true;
Game.Description =
  "IMPORTANT: Make sure you have launched your main game at least once before using this. On first handler launch enable the gamepad in the game controller options for both instances using the keyboard, alt-tab between instances to do it. Connect the instances via the native LAN option, you need the latest version of the game, deactivate all virtual internet interfaces like VirtualBox, Hyper-v, etc. This is recommended to avoid issues searching for each other sessions ingame. Host the game in the second instance and join in the first if you have crashes hosting in the first instance. If you want the instances to resize correctly and avoid stretching you need to create custom resolutions in your AMD/Nvidia/Intel panel (for example if you have a 1920x1080 monitor add custom resolutions like: 960x1080, 960x540, 1920x540 etc.) so the game can see and use them. If you get too low fps make sure the game is using most cpu cores, this is a known issue to fix it in task manager details tab select the conviction exes, right click and set affinity, do this after starting a new level, you can use CTRL+T to minimize the instances. If you can not change in-game graphic settings try launching the instance in all the monitor. This handler uses this to restore the LAN mode after the official servers shutdown: https://github.com/Ododo/scc-lan-restore.";
Game.PauseBetweenContextAndLaunch = 3;
Game.PauseBetweenStarts = 25;

Game.Play = function() {
  var username = Context.Nickname;
  var VideoConfig = "C:\\ProgramData\\Ubisoft\\Conviction\\ConvictionUserPC.ini";
  Context.ModifySaveFile(VideoConfig, VideoConfig, Nucleus.SaveType.INI, [
    new Nucleus.IniSaveInfo("Inputs", "ControllerType", "KT_X360"),
    new Nucleus.IniSaveInfo("Inputs", "UseXInputByDefault", true),
    new Nucleus.IniSaveInfo("UserVideoOptions." + username, "FullscreenViewportX", Context.Width),
    new Nucleus.IniSaveInfo("UserVideoOptions." + username, "FullscreenViewportY", Context.Height)
  ]);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\conviction_game.exe");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "patch.txt");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\scripts");
  System.IO.Directory.CreateDirectory(filePath);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\ubiorbitapi_r2.dll");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "ubiorbitapi_r2.dll");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\MapConfigurationDLC.xml");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "MapConfigurationDLC.xml");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\ProfileDefaultsPC.ini");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "ProfileDefaultsPC.ini");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\dinput8.dll");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "dinput8.dll");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\d3d9.dll");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "d3d9.dll");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\d3d9.ini");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "d3d9.ini");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\version.dll");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "version.dll");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\scripts\\SplinterCellConviction.FusionMod.asi");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "SplinterCellConviction.FusionMod.asi");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\scripts\\SplinterCellConviction.FusionMod.ini");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "SplinterCellConviction.FusionMod.ini");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\src\\system\\Skidrow.ini");
  Context.ModifySaveFile(savePath, savePath, Nucleus.SaveType.INI, [
    new Nucleus.IniSaveInfo("Account", "Username", '"' + Context.Nickname + '"'),
    new Nucleus.IniSaveInfo("Account", "Password", '"SamFisher"')
  ]);

  if (Context.AspectRatioDecimal > 1.8) {
    var VideoConfig = "C:\\ProgramData\\Ubisoft\\Conviction\\ConvictionUserPC.ini";
    Context.ModifySaveFile(VideoConfig, VideoConfig, Nucleus.SaveType.INI, [
      new Nucleus.IniSaveInfo("Engine.Display", "EyefinityMode", 0),
      new Nucleus.IniSaveInfo("Engine.Display", "ForceMultiMon", true),
      new Nucleus.IniSaveInfo("Engine.Display", "MinTripleDispRatio", "3.5")
    ]);
  } else if (Context.AspectRatioDecimal < 1.2) {
    var VideoConfig = "C:\\ProgramData\\Ubisoft\\Conviction\\ConvictionUserPC.ini";
    Context.ModifySaveFile(VideoConfig, VideoConfig, Nucleus.SaveType.INI, [
      new Nucleus.IniSaveInfo("Engine.Display", "EyefinityMode", 0),
      new Nucleus.IniSaveInfo("Engine.Display", "ForceMultiMon", true),
      new Nucleus.IniSaveInfo("Engine.Display", "MinTripleDispRatio", "0.8")
    ]);
  } else {
    var VideoConfig = "C:\\ProgramData\\Ubisoft\\Conviction\\ConvictionUserPC.ini";
    Context.ModifySaveFile(VideoConfig, VideoConfig, Nucleus.SaveType.INI, [
      new Nucleus.IniSaveInfo("Engine.Display", "EyefinityMode", 0),
      new Nucleus.IniSaveInfo("Engine.Display", "ForceMultiMon", false)
    ]);
  }

  if (Context.PlayerID == 0) {
    var Gamefolder = System.IO.Path.Combine(Game.Folder);

    var txtPath = "C:\\Windows\\System32\\drivers\\etc\\hosts";
    var dict = ["21|127.0.0.1 gconnect.ubi.com", "22|      "];
    Context.ReplaceLinesInTextFile(txtPath, dict);

    Context.RunAdditionalFiles(["1|" + Gamefolder + "\\runp.bat"], false, 1, true, false);

    Context.Wait(5000);

    Context.RunAdditionalFiles(["1|" + Gamefolder + "\\scc_lan_helper.exe"], false, 1, true, false);
  }

  Game.KillProcessesOnClose = ["scc_lan_helper", "cmd"];
};