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

Call of Duty: Black Ops II · handler “Call of Duty: Black Ops II Zombies”

Version 3

Release notes

5:4 ar fix

Released
Size
1.9 MB
Downloads
15,762
Check
Verified
SHA-256
bd6420540b86ac9da2e42bdcbf2b60f40623630cd690a146b1c02f10a7713326
Download v3 (.nc)All versions

Files 29

PathSize
handler.js18 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Cloud/iotd-english.jpg72 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Cloud/iotd-english.jpg.Manifest2 B
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Cloud/iotd-english.png30 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Cloud/iotd-english.png.Manifest2 B
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/dedicatedleaderboards.csv36 B
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/ffotd_tu0_mp_147.ff2.6 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/ffotd_tu17_mp_147.ff.0043 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/ffotd_tu17_zm_147.ff.0062 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/ffotd_tu17_zm_147.ff.018.6 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/iotd-english.jpg72 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/iotd-english.png30 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/largeheatmap.raw7.8 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/lsssk059 B
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/lsssk159 B
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/online_tu17_mp_english.wad46 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/online_tu17_zm_english.wad24 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/online_tu8_mp_english.wad5.9 KB
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/statskeyPRIVATE.dat59 B
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/statskeyPUBLIC.dat59 B
Call of Duty Black Ops 2 Zombies/Ayria/Assets/Alwaysoffline/18397/Server/sv_ffotd_tu8_mp_147.ff.0042 KB
Call of Duty Black Ops 2 Zombies/Ayria/Plugins/Alwaysoffline.Localnet321.7 MB
Call of Duty Black Ops 2 Zombies/Ayria/Plugins/Localnetworking.Ayria32511 KB
Call of Duty Black Ops 2 Zombies/Ayria/Plugins/Platformwrapper.Ayria32701 KB
Call of Duty Black Ops 2 Zombies/binkw32.dll212 KB
Call of Duty Black Ops 2 Zombies/Bootstrapper32.dll132 KB
Call of Duty Black Ops 2 Zombies/hardware_zm.chp4.0 KB
Call of Duty Black Ops 2 Zombies/user_common.cgp.music1000 B
Call of Duty Black Ops 2 Zombies/user_common.cgp.nomusic1000 B

handler.js

Plain text
Hub.Handler.Version = 3; // Released at https://hub.splitscreen.me/ on Fri Nov 20 2020 14:42:37 GMT+0000 (UTC).
Hub.Handler.Id = "8ojcrL79RrFdpiaHD";
Hub.Maintainer.Name = "PoundlandBacon";
Hub.Maintainer.Id = "AdiAjSyfZPMvu3a4M";

var answers = ["1", "2", "3", "4", "5", "6", "7", "8"];
var answers1 = ["No", "Yes"];
var answers2 = ["Manual/Current Settings", "Yes", "No"];
Game.AddOption("Enable music only in the first instance?", '"Manual/Current Settings" will not touch the instances current settings.', "Mus", answers2);
Game.AddOption("Change graphics settings?", "Allows you to change graphics settings, for all players, in the first instance", "Gra", answers1);
Game.AddOption("PC-ID", "If you are playing with other PCs in LAN, be sure to have different IDs", "Id", answers);
Game.AddOption("Add PC-ID number in nicknames?", "If different nicknames are not set in Nucleus, this will still allow LAN.", "Nik", answers1);

Game.FileSymlinkExclusions = ["binkw32.dll", "t6mp.exe", "t6sp.exe", "t6zm.exe", "hardware_zm.chp", "user_common.cgp"];
Game.GameName = "Call of Duty Black Ops 2 Zombies";
Game.HandlerInterval = 100;
Game.SymlinkExe = false;
Game.SymlinkGame = true;
Game.KeepSymLinkOnExit = true;
Game.ForceSymlink = true;
Game.SupportsKeyboard = false;
Game.ExecutableName = "t6zm.exe";
Game.SteamID = "202970";
Game.GUID = "CallofDutyBlackOps2ZM";
Game.MaxPlayers = 4;
Game.MaxPlayersOneMonitor = 4;
Game.BinariesFolder = "";
Game.NeedsSteamEmulation = false;
Game.UseGoldberg = false;
Game.LauncherTitle = "";
Game.Hook.ForceFocus = true;
Game.Hook.ForceFocusWindowName = "Call of Duty: Black Ops II - Zombies";
Game.HasDynamicWindowTitle = true;
Game.ForceWindowTitle = true;
Game.HookFocus = true;
Game.Hook.XInputEnabled = true;
Game.Hook.XInputReroute = false;
Game.Hook.DInputEnabled = false;
Game.PauseBetweenStarts = 20;
Game.PreventWindowDeactivation = true;
Game.SetForegroundWindowElsewhere = true;
Game.Hook.CustomDllEnabled = false;
Game.XInputPlusDll = ["xinput1_3.dll"];
Game.ResetWindows = true;
Game.Description =
  "Requires the steam version of the game, it's recommended you have the dlc too. Steam doesn't need to be running when you use the script. The game needs to be set to English language for the script to work. You can change this by right clicking the game in your steam library and selecting the properties menu, then selecting the Language tab. Select English from the dropdown menu and the required files will be downloaded. Your antivirus may delete files the script needs, if the script doesn't work this is the first thing to check. If you find it has deleted files you may need to remove and redownload the script. The settings files for the game are encrypted, so you will need so set your resolution in game or it will render at the default resolution, even after the windows resize. We included an option to let you change your settings for the first player, which will be copied to all other players. Alternatively you can change them in game per player. Not all changes will be made until the next launch of the game. There are two ways to start a game: 1) The first player starts searching for an online game (it will only find players connected to your local network) after around 7 seconds it will stop searching and start hosting instead, at this point the other players can join by searching the same game mode via the online menu. This mode fully simulates online, you can rank up/unlock as you would online. 2) The first player creates a custom game and then uses the friends menu to send invites to the other players. For invites to work reliably make sure you select Online at the main menu BEFORE the next instance opens. Credits/Thanks to The Project Nova Team https://projectnova.us/ for the LAN mod, and Pinecone from their forums for his invaluable advice! Script contributors: Rip3535, Pizzo and Zerofox. Also huge thanks to Talos, Dr.Oldboi and the rest of the SplitScreenDreams discord.";

Game.Play = function() {
  if (Context.AspectRatioDecimal > 1.8) {
    Context.PatchFile(System.IO.Path.Combine(Context.RootInstallFolder, "t6zm.exe"), System.IO.Path.Combine(Context.RootFolder, "t6zm.exe"), [0x39, 0x8e, 0xe3, 0x3f], [0x39, 0x8e, 0x63, 0x40]);
  } else if (Context.AspectRatioDecimal < 1.2) {
    Context.PatchFile(System.IO.Path.Combine(Context.RootInstallFolder, "t6zm.exe"), System.IO.Path.Combine(Context.RootFolder, "t6zm.exe"), [0x39, 0x8e, 0xe3, 0x3f], [0x39, 0x8e, 0x63, 0x3f]);
  } else {
    Context.PatchFile(System.IO.Path.Combine(Context.RootInstallFolder, "t6zm.exe"), System.IO.Path.Combine(Context.RootFolder, "t6zm.exe"), [0x39, 0x8e, 0xe3, 0x3f], [0x39, 0x8e, 0xe3, 0x3f]);
  }

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

  var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets");
  System.IO.Directory.CreateDirectory(filePath);

  var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline");
  System.IO.Directory.CreateDirectory(filePath);

  var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397");
  System.IO.Directory.CreateDirectory(filePath);

  var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Cloud");
  System.IO.Directory.CreateDirectory(filePath);

  var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server");
  System.IO.Directory.CreateDirectory(filePath);

  var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Platformwrapper");
  System.IO.Directory.CreateDirectory(filePath);

  var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Platformwrapper\\209170");
  System.IO.Directory.CreateDirectory(filePath);

  var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Plugins");
  System.IO.Directory.CreateDirectory(filePath);

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

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Cloud\\iotd-english.jpg");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Cloud\\iotd-english.jpg");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Cloud\\iotd-english.jpg.Manifest");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Cloud\\iotd-english.jpg.Manifest");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Cloud\\iotd-english.png");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Cloud\\iotd-english.png");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Cloud\\iotd-english.png.Manifest");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Cloud\\iotd-english.png.Manifest");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\dedicatedleaderboards.csv");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\dedicatedleaderboards.csv");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\ffotd_tu0_mp_147.ff");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\ffotd_tu0_mp_147.ff");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\ffotd_tu17_mp_147.ff.00");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\ffotd_tu17_mp_147.ff.00");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\ffotd_tu17_zm_147.ff.00");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\ffotd_tu17_zm_147.ff.00");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\ffotd_tu17_zm_147.ff.01");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\ffotd_tu17_zm_147.ff.01");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\iotd-english.jpg");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\iotd-english.jpg");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\iotd-english.png");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\iotd-english.png");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\largeheatmap.raw");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\largeheatmap.raw");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\lsssk0");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\lsssk0");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\lsssk1");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\lsssk1");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\online_tu8_mp_english.wad");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\online_tu8_mp_english.wad");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\online_tu17_mp_english.wad");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\online_tu17_mp_english.wad");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\online_tu17_zm_english.wad");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\online_tu17_zm_english.wad");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\statskeyPRIVATE.dat");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\statskeyPRIVATE.dat");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\statskeyPUBLIC.dat");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\statskeyPUBLIC.dat");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Alwaysoffline\\18397\\Server\\sv_ffotd_tu8_mp_147.ff.00");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Assets\\Alwaysoffline\\18397\\Server\\sv_ffotd_tu8_mp_147.ff.00");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Plugins\\Alwaysoffline.Localnet32");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Plugins\\Alwaysoffline.Localnet32");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Plugins\\Localnetworking.Ayria32");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Plugins\\Localnetworking.Ayria32");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Plugins\\Platformwrapper.Ayria32");
  var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "Ayria\\Plugins\\Platformwrapper.Ayria32");
  System.IO.File.Copy(savePkgOrigin, savePath, true);

  var nik = Context.Options["Nik"];
  var id = Context.Options["Id"];

  if (nik == "No") {
    var UserName = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Platformwrapper\\Username.txt";
    var lines = [Context.Nickname];
    Context.WriteTextFile(UserName, lines);
  }
  if (nik == "Yes") {
    if (id == "1") {
      var UserName = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Platformwrapper\\Username.txt";
      var lines = [Context.Nickname];
      Context.WriteTextFile(UserName, lines);
    }

    if (id != "1") {
      var UserName = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Platformwrapper\\Username.txt";
      var lines = [Context.Nickname + "(" + id + ")"];
      Context.WriteTextFile(UserName, lines);
    }
  }

  var UserID = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\Ayria\\Assets\\Platformwrapper\\UserID.txt";
  var lines = [22222220 + 19 * id + Context.PlayerID];
  Context.WriteTextFile(UserID, lines);

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

  if (Context.PlayerID == 0) {
    if (!System.IO.Directory.Exists(Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players")) {
      var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players");
      System.IO.Directory.CreateDirectory(filePath);
    }

    if (!System.IO.File.Exists(Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players\\hardware_zm.chp")) {
      var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players\\hardware_zm.chp");
      var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "hardware_zm.chp");
      System.IO.File.Copy(savePkgOrigin, savePath, true);
    }
  } else {
    if (!System.IO.Directory.Exists(Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players")) {
      var filePath = (Context.filePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players");
      System.IO.Directory.CreateDirectory(filePath);
    }

    if (!System.IO.File.Exists(Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players\\hardware_zm.chp")) {
      var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players\\hardware_zm.chp");
      var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "hardware_zm.chp");
      System.IO.File.Copy(savePkgOrigin, savePath, true);
    }

    if (System.IO.File.Exists(Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players\\hardware_zm.chp")) {
      var NucleusRoot = System.IO.Path.Combine(Game.Folder, "..", "..");
      System.IO.File.Delete(Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players\\hardware_zm.chp");
      System.IO.File.Copy(NucleusRoot + "\\content\\CallofDutyBlackOps2ZM\\Instance0\\players\\hardware_zm.chp", Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players\\hardware_zm.chp");
    }

    var mus = Context.Options["Mus"];
    if (mus == "Manual/Current Settings") {
    }
    if (mus == "Yes") {
      var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players\\user_common.cgp");
      var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "user_common.cgp.nomusic");
      System.IO.File.Copy(savePkgOrigin, savePath, true);
    }
    if (mus == "No") {
      var savePath = (Context.SavePath = Context.GetFolder(Nucleus.Folder.InstancedGameFolder) + "\\players\\user_common.cgp");
      var savePkgOrigin = System.IO.Path.Combine(Game.Folder, "user_common.cgp.music");
      System.IO.File.Copy(savePkgOrigin, savePath, true);
    }
  }

  var gra = Context.Options["Gra"];
  if (gra == "No") {
    Game.PromptBetweenInstances = false;
    Game.SetWindowHookStart = true;
  }
  if (gra == "Yes") {
    Game.PromptBetweenInstances = true;
    Game.SetWindowHookStart = false;
  }
};