Realpiout Yeah It's a test, I'm still trying to figure it out but if I don't I'm'a just delete this
Coronavirus-19
Posts
-
[ZM] Origins Permasnow (TEST) -
[Release] [ZM] “Stim Shot” Movement ScriptThis script adds a stim-shot–style movement boost to Black Ops 2 Zombies using pure GSC, no hooks or engine mods required.
By double-tapping the sprint button, the player temporarily equips a hidden consumable (syrette_zm) that:
• Plays the injection animation
• Grants a temporary walk/run speed boost
• Automatically removes itself after the animation finishes
• Restores the player’s original weapon afterward
Controls
• Double-tap Sprint → Activate stim boost
• Speed boost automatically ends when the animation finishes!Raw Code:
#include maps\mp\_utility; init() { level thread onPlayerConnect(); } onPlayerConnect() { for (;;) { level waittill("connected", player); player thread heroinListener(); } } heroinListener() { self endon("disconnect"); self endon("death"); lastPressTime = 0; sprintHeld = false; normalSpeed = 1.0; boostSpeed = 1.5; // Adjust as needed for (;;) { wait 0.05; // Detect NEW sprint press (edge detection) if ( self sprintbuttonpressed() ) { if ( !sprintHeld ) { sprintHeld = true; currentTime = getTime(); // Double-tap window (300 ms) if ( currentTime - lastPressTime <= 300 ) { currentWeapon = self getCurrentWeapon(); // Give consumable self giveWeapon("syrette_zm"); self switchToWeapon("syrette_zm"); // Apply speed boost self setMoveSpeedScale(boostSpeed); // Let animation play wait 2; // Remove consumable self takeWeapon("syrette_zm"); // Remove speed boost self setMoveSpeedScale(normalSpeed); // Restore previous weapon if ( isDefined(currentWeapon) ) { self switchToWeapon(currentWeapon); } lastPressTime = 0; wait 0.3; } else { lastPressTime = currentTime; } } } else { // Button released → allow next tap sprintHeld = false; } } } -
[ZM] [RELEASE] Running and Reloading!This isn't true running and reloading, more so an illusion. In Black Ops 2, running and reloading at the same time isn’t actually a scriptable feature — it’s hard-locked by the game engine itself.
Why true “run + reload” isn’t possible in BO2 (and why this is a workaround)
When you reload:
• The engine forces the player out of sprint
• Sprint is only allowed while moving forward
• Reload animations temporarily override movement logic
• Scripts do not receive early reload input events
Because of this, there’s no exposed function in GSC to:
• Detect the reload button press early
• Override sprint restrictions
• Allow sprinting during reload
• Change movement state mid-animation
Those checks happen below the scripting layer, inside the player movement code (pm_* functions), which GSC can’t modify.
═══════════════════════════════════════════So how does this script work?
Instead of true sprint-reload, the script:
• Detects when the engine flags the player as “reloading”
• Temporarily boosts walk speed
• Restores normal speed once reload finishes
This creates the illusion of running while reloading:
• Movement feels faster
• No animation breaking
• No desync
• No crashes
It’s the closest possible result without engine hooks or custom DLLs.Path: Win + R "%localappdata%"
- Plutonium/storage/t6/scripts/zm
Raw Code:
#include maps\mp\_utility; init() { level thread onPlayerConnect(); } onPlayerConnect() { for ( ;; ) { level waittill("connected", player); player thread onPlayerSpawned(); } } onPlayerSpawned() { self endon("disconnect"); for ( ;; ) { self waittill("spawned_player"); // Start reload speed monitor self thread reloadWalkSpeedBoost(); } } reloadWalkSpeedBoost() { self endon("disconnect"); self endon("death"); normalSpeed = 1.0; // default speed is 1.0 reloadSpeed = 1.5; // adjust if needed (1.2–1.5 safe) wasReloading = false; for (;;) { isNowReloading = self isReloading(); // Detect reload START (edge detection) if ( isNowReloading && !wasReloading ) { self setMoveSpeedScale(reloadSpeed); } // Detect reload END if ( !isNowReloading && wasReloading ) { self setMoveSpeedScale(normalSpeed); } wasReloading = isNowReloading; wait 0.05; } } -
[ZM] Emotes & Gestures Script (VERSION 2 RELEASE)!Just Some Fun Shit!

These scripts add gesture, emote, consumable, and buildable equip functionality that can be activated using the D-Pad (Action Slots) and work with keyboard bindings.
Input Methods
Controller:
• Uses D-Pad / Action Slot buttons (Action Slot 1–4 depending on script)
Keyboard:
• Functions via mapped action-slot keys.
Behavior Details
Repeatable Use
• Single Tap for Action Buttons 3 & 4.
• Double Tap for Action Buttons 1 & 2.
Most gestures (e.g. knuckle crack, syrette-style animations) are:
• Fully repeatable
• Reset correctly after each use
• Safe to activate multiple times in one game
Map-Specific Gestures and equipment
• Some gestures / emotes are map-specific
• Jetgun is for the Tranzit maps only!
Availability depends on:
• Map scripting
• Loaded assets
• Internal animation support
If a gesture exists on the map, it can generally be reused without issue!
️ Important Limitation
If a buildable is already equipped or actively attached (example: Zombie Shield already on the player), attempting to equip another buildable or gesture may fail or do nothing due to engine restrictions.
• This is a game limitation, not a script bug! -
BO3's System for Max Ammo for BO1StarGold Thank you for notifying me, I'll work on this!
-
looking for decompiled or compiled jetgun modsWhere would this go?
-
Custom Loading Screen and Menu SelectionHigh Quality Images from Remastered Projects on BO3!
Drag n' Drop Method - Plutonium/storage/t6/images
Custom Pack - Instructions in the files!- You'll need this image converter for the .dds files!
OAT Img Converter

- You'll need this image converter for the .dds files!
-
[ZM][RELEASE] First Box Patch + Timer + Movement Speed Patch for VerrucktLuciTheFen %localappdata%/Plutonium/storage/t4/raw/scripts/sp/nazi_zombie_asylum
-
[ZM][RELEASE] First Box Patch + Timer + Movement Speed Patch for VerrucktLuciTheFen literally what's the folder name?
-
[Zombies]Aim assist WaW(lock on)John_Banana did you finish it?
-
Bo1 3 hit scripLllos definitely working on it
-
BO3's 3-Hit System & increased health for Juggernog on BO1!hzp13 I realized that this version functions to regen the players health faster! I'm working on a v2!
-
Bo1 3 hit scrip -
BO3's 3-Hit System & increased health for Juggernog on BO1!This script overrides the health function and increases it to 150 HP then 300 HP when Juggernog is obtained. Also properly resets when downed and revived!
Installation
Plutonium/storage/t5/scripts/sp
Raw Code
#include maps\_utility; init() { level thread on_player_connect(); } on_player_connect() { for (;;) { level waittill("connected", player); player thread health_controller(); } } health_controller() { self endon("disconnect"); for (;;) { wait 0.05; // Determine max HP if (self hasperk("specialty_armorvest")) { self.maxhealth = 300; } else { self.maxhealth = 150; } // Force regen override if (self.health < self.maxhealth && self.health > 0) { self.health += 2; if (self.health > self.maxhealth) { self.health = self.maxhealth; } } } } -
BO3's System for Max Ammo for BO1This script overrides the max ammo to function like BO3's Max Ammo!
Installation
Plutonium/storage/t5/scripts/sp
Raw Code
#include maps\_utility; init() { level thread on_player_connect(); } on_player_connect() { for (;;) { level waittill("connected", player); player thread max_ammo_clip_fix(); } } max_ammo_clip_fix() { self endon("disconnect"); lastAmmoCheck = []; for (;;) { wait 0.1; weapons = self getweaponslist(); i = 0; while (i < weapons.size) { weapon = weapons[i]; if (!self hasweapon(weapon)) { i++; continue; } ammo = self getweaponammostock(weapon); maxAmmo = weaponmaxammo(weapon); // Init tracking if (!isDefined(lastAmmoCheck[weapon])) lastAmmoCheck[weapon] = ammo; // Detect Max Ammo refill if (ammo == maxAmmo && lastAmmoCheck[weapon] < maxAmmo) { self setweaponammoclip(weapon, weaponclipsize(weapon)); } lastAmmoCheck[weapon] = ammo; i++; } } } -
What are the numbers on the top of my screen and how can i disable it?I've gotten the same thing on my BO2
-
Zombie Damage (3hit system like bo3) -
[ZM] Origins Permasnow (TEST)Permanent Snow after Round 1!
This mod is for anyone that wants the Ice Staff on an earlier round.
Any issues please state them in the comments!
Files: Plutonium/storage/t6/scripts/zm/zm_tomb
Raw Code:
init() { level thread force_snow_weather(); } force_snow_weather() { // Wait for Origins weather controller to start wait 5; // Stop Origins from cycling weather level.weather_cycle_enabled = false; level.weather_state = "snow"; setDvar("weather", "snow"); setDvar("weather_state", "snow"); // Loop to keep overriding anything the game tries to change while (1) { level.weather_state = "snow"; setDvar("weather", "snow"); setDvar("weather_state", "snow"); wait 5; } } -
[ZM] Iron Fist on Round 1 of OriginsThe Iron Fists/ One Inch Punch has been my favorite melee since it's debut. I know the steps to require it can take some time and by the time to get it the Iron Fist is a two-hit kill!
-
CREDIT: https://forum.plutonium.pw/topic/16828/resource-gsc-give-yourself-the-one_inch_punch-correctly
-
I updated the code and also allowed the Iron Fist to be a one-shot kill for further rounds!
-
I will make an update for the upgraded version and the elemental versions too!
-
Iron Fist and Damage Mod for it was be separate in-case you just want the fist by itself!
-
Command will be through in-game chat by typing and entering "#fist"
-
Setup for the correct placements for the scripts:
Put the iron_fist.gsc and iron_fist_infdmg.gsc in zm_tomb, so it should be "Plutonium/storage/t6/scripts/zm/zm_tomb".
Create a new folder within zm, so it should be "Plutonium/storage/t6/scripts/zm/replaced", and put infdmgfist.gsc in there!
NOTE you can edit the damage, have fun and enjoy!
Raw Code:
#include maps\mp\_utility; #include maps\mp\zombies\_zm_weap_one_inch_punch; init() { level thread on_player_connect(); level thread command_bar(); } on_player_connect() { for (;;) { level waittill("connected", player); player thread on_player_spawned(); } } on_player_spawned() { self endon("disconnect"); for (;;) { self waittill("spawned_player"); } } command_bar() { level endon("end_game"); prefix = "#"; for (;;) { level waittill("say", message, player); if (!isDefined(message) || !isDefined(player)) continue; message = toLower(message); if (message[0] == prefix) { args = strtok(message, " "); command = getSubStr(args[0], 1); switch (command) { case "fist": player thread give_iron_fist(); break; } } } } give_iron_fist() { self endon("disconnect"); self freezecontrols(true); current_weapon = self getcurrentweapon(); if (isDefined(current_weapon)) self takeweapon(current_weapon); // Optional flourish animation self giveweapon("zombie_one_inch_punch_upgrade_flourish"); self switchtoweapon("zombie_one_inch_punch_upgrade_flourish"); wait 1.5; self freezecontrols(false); self takeweapon("zombie_one_inch_punch_upgrade_flourish"); // Give & activate regular Iron Fist self giveweapon("one_inch_punch_zm"); self switchtoweapon("one_inch_punch_zm"); // Enable proper Iron Fist melee handling self thread monitor_melee_swipe(); self iprintlnbold("Iron Fist Equipped!"); } monitor_melee_swipe() { self endon("disconnect"); for (;;) { self waittill("melee"); // add hit effect logic here if desired } } -
-
[ZM] BO3's Three hit system and increased health for Juggernog as well! v3!To add this script first copy n' paste this code into Notepad++ then save it as a ".txt" after edit the change ".txt" to ".gsc" -- if you don't know how to do that open up a random folder look for "View" at the top and click it. A drop down menu should appear and you'll see "Show" at the bottom, click it and you'll see "File name extension" and should be able to change ".txt" to ".gsc"
--You can name the file whatever you want, just make sure it ends with ".gsc"
After the File name extension change add the ".gsc" to the Plutonium folders by:
Win + R and Run "%localappdata%" then search for "Plutonium" and go the folders as shown: Local/Plutonium/storage/t6/scripts/zmRaw Code:
#include common_scripts\utility; #include maps\mp\_utility; init() { level thread global_player_connect_handler(); } // ------------------------- // GLOBAL PLAYER CONNECT // ------------------------- global_player_connect_handler() { for(;;) { level waittill("connected", player); // make sure EVERY client gets the code player thread player_spawn_handler(); } } // ------------------------- // PLAYER SPAWN HANDLER // ------------------------- player_spawn_handler() { self endon("disconnect"); level endon("game_ended"); for(;;) { self waittill("spawned_player"); // ensure each new spawn has these set self.jugActive = false; self.health_initialized = false; self thread enforce_health_system(); self thread monitor_perks(); self thread revive_handler(); } } // ------------------------- // ENFORCE HEALTH (RUNS EVERY 250ms) // ------------------------- enforce_health_system() { self endon("disconnect"); level endon("game_ended"); for(;;) { wait 0.25; if (self.jugActive) { if (self.maxhealth != 300) { self.maxhealth = 300; self.health = self.maxhealth; } } else { if (self.maxhealth != 150) { self.maxhealth = 150; self.health = self.maxhealth; } } } } // ------------------------- // PERK MONITOR // ------------------------- monitor_perks() { self endon("disconnect"); level endon("game_ended"); for(;;) { wait 0.25; currentJug = self hasPerk("specialty_armorvest"); if (!isDefined(self.jugActive) || currentJug != self.jugActive) { self.jugActive = currentJug; if (currentJug) { self.maxhealth = 300; self.health = self.maxhealth; self IPrintLnBold("^2Juggernog: 300 HP"); } else { self.maxhealth = 150; self.health = self.maxhealth; self IPrintLnBold("^1Jug lost: 150 HP"); } } } } // ------------------------- // REVIVE HANDLER // ------------------------- revive_handler() { self endon("disconnect"); level endon("game_ended"); for(;;) { self waittill("player_revived"); // revive resets health → reapply our rules self.maxhealth = 150; self.health = self.maxhealth; self IPrintLnBold("^3Revived → HP reset to 150"); } }