Skip to content
  • 0 Unread 0
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse

Plutonium

vnm_420undefined

vnm_420

@vnm_420
About
Posts
6
Topics
4
Shares
0
Groups
0
Followers
4
Following
3

Posts

Recent Best Controversial

  • PowerUp Safety
    vnm_420undefined vnm_420

    This script makes it so if there are 8 or less zombies you have to hold the use button in order to activate the nuke
    Also adds a delay so you cant accidently pick up a powerup if you don't want to
    Can remove delay or shorten the delay on line 7
    Can change required zombie amount for nuke on line 8
    b04ad389-db10-4043-be9a-ed44fc83a914-image.jpeg
    da0d96c5-da3b-4fa7-a394-f497fd37550b-image.jpeg
    https://drive.google.com/file/d/1sPxbV2YT6YiuLDF4VPspEKH6TvhuMVtk/view?usp=sharing
    https://www.virustotal.com/gui/file/0e579e46ec19fbd294531cff283a8507bddc73cdf3211775d444a4b48fb87f92?nocache=1

    BO2 Modding Releases & Resources

  • Powerup Timer Countdown
    vnm_420undefined vnm_420

    Updated HUD https://drive.google.com/file/d/1_F2WEZNLCL2GV6dguHE5enHGog8DpD9L/view?usp=sharing
    https://www.virustotal.com/gui/file/3304407c442f22354198464eefa2d12a0cb1ae453e133f377004b188803077b8

    BO2 Modding Releases & Resources

  • Game Timer
    vnm_420undefined vnm_420

    Heres the links since i finally got a vote
    https://drive.google.com/file/d/1_F2WEZNLCL2GV6dguHE5enHGog8DpD9L/view?usp=sharing
    https://www.virustotal.com/gui/file/e9cec55c4eaeec1195436013149444ff3b7be96558a333c8c161535fd8045f46?nocache=1

    BO2 Modding Releases & Resources

  • Last Zombie Finder
    vnm_420undefined vnm_420

    Tells you where the last zombie is
    dcaf47f6-ad9b-4227-bb89-af5c905d0d86-image.jpeg
    a962a969-d2f8-466f-a62a-f3053cd4353e-image.jpeg

    Lines to change where text is displayed
    Line 28 - LAST ZOMBIE - Position
    Line 34: Distance number
    Line 41: Meters away

    The last two numbers are x, y.

    Bigger x moves it right.
    Smaller/negative x moves it left.
    Bigger y moves it down.
    Smaller/negative y moves it up.

    https://drive.google.com/file/d/1cd6w1UWFqgvibgEC9iDjskSW2p2tqkO1/view?usp=sharing

    https://www.virustotal.com/gui/file/dfcc5471637951cf92f79cfe99aa5220dfbf06986925a7120d8ea5873f83ef47?nocache=1

    BO2 Modding Releases & Resources

  • Game Timer
    vnm_420undefined vnm_420

    Timer that keeps track of total play time along with current round time and previous round time
    Screenshot 2026-04-30 224255.png

    Lines 26-28 allow you to change where its displayed

    #include maps\mp_utility;
    #include common_scripts\utility;
    #include maps\mp\gametypes_zm_hud_util;

    init()
    {
    level thread onPlayerConnect();
    }

    onPlayerConnect()
    {
    for(;;)
    {
    level waittill("connected", player);
    player thread playerGameTimers();
    }
    }

    playerGameTimers()
    {
    self endon("disconnect");
    level endon("end_game");

    flag_wait("initial_blackscreen_passed");
    
    self.gameTimerHud = self createTimerHud("Game:", 400, 120);
    self.roundTimerHud = self createTimerHud("Round:", 400, 145);
    self.lastRoundTimerHud = self createTimerHud("Last:", 395, 170);
    
    gameSeconds = 0;
    roundSeconds = 0;
    lastRoundSeconds = 0;
    currentRound = getCurrentRound();
    
    for(;;)
    {
    	newRound = getCurrentRound();
    
    	if(newRound != currentRound)
    	{
    		lastRoundSeconds = roundSeconds;
    		roundSeconds = 0;
    		currentRound = newRound;
    	}
    
    	self.gameTimerHud setText("Game: " + formatTimer(gameSeconds));
    	self.roundTimerHud setText("Round: " + formatTimer(roundSeconds));
    	self.lastRoundTimerHud setText("Last: " + formatTimer(lastRoundSeconds));
    
    	wait 1;
    
    	gameSeconds++;
    	roundSeconds++;
    }
    

    }

    createTimerHud(label, x, y)
    {
    hud = createFontString("small", 1.35);
    hud setpoint("RIGHT", "TOP", x, y);
    hud.alpha = 1;
    hud.sort = 20;
    hud.color = (1, 1, 1);
    hud setText(label + " 00:00");
    return hud;
    }

    getCurrentRound()
    {
    if(isDefined(level.round_number))
    return level.round_number;

    if(isDefined(level.round))
    	return level.round;
    
    if(isDefined(level.zombie_round))
    	return level.zombie_round;
    
    return 1;
    

    }

    formatTimer(totalSeconds)
    {
    hours = 0;
    minutes = 0;
    seconds = totalSeconds;

    while(seconds >= 3600)
    {
    	hours++;
    	seconds -= 3600;
    }
    
    while(seconds >= 60)
    {
    	minutes++;
    	seconds -= 60;
    }
    
    if(hours > 0)
    	return hours + ":" + twoDigits(minutes) + ":" + twoDigits(seconds);
    
    return minutes + ":" + twoDigits(seconds);
    

    }

    twoDigits(value)
    {
    if(value < 10)
    return "0" + value;

    return "" + value;
    

    }

    BO2 Modding Releases & Resources

  • Powerup Timer Countdown
    vnm_420undefined vnm_420

    script that displays power up timers

    Lines 27-30 allow you to change where the timers are displayed on the screen

    Screenshot 2026-04-30 221037.png

    #include maps\mp_utility;
    #include common_scripts\utility;
    #include maps\mp\gametypes_zm_hud_util;
    #include maps\mp\zombies_zm_powerups;

    init()
    {
    level thread onPlayerConnect();
    }

    onPlayerConnect()
    {
    for(;;)
    {
    level waittill("connected", player);
    player thread playerPowerupTimers();
    }
    }

    playerPowerupTimers()
    {
    self endon("disconnect");
    level endon("end_game");

    flag_wait("initial_blackscreen_passed");
    
    self.doublePointsTimer = self createPowerupTimerHud(-42, -36);
    self.instaKillTimer = self createPowerupTimerHud(-14, -36);
    self.fireSaleTimer = self createPowerupTimerHud(14, -36);
    self.zombieBloodTimer = self createPowerupTimerHud(42, -36);
    
    zombieBloodWasActive = false;
    zombieBloodSeconds = 0;
    zombieBloodTick = 0;
    
    for(;;)
    {
    	self updatePowerupTimer(self.doublePointsTimer, getTeamPowerupTime("zombie_powerup_point_doubler_on", "zombie_powerup_point_doubler_time"));
    	self updatePowerupTimer(self.instaKillTimer, getTeamPowerupTime("zombie_powerup_insta_kill_on", "zombie_powerup_insta_kill_time"));
    	self updatePowerupTimer(self.fireSaleTimer, getGlobalPowerupTime("zombie_powerup_fire_sale_on", "zombie_powerup_fire_sale_time"));
    	
    	zombieBloodActive = self isZombieBloodActive();
    
    	if(zombieBloodActive && !zombieBloodWasActive)
    	{
    		zombieBloodSeconds = 30;
    		zombieBloodTick = 0;
    	}
    
    	if(zombieBloodSeconds > 0)
    	{
    		self updatePowerupTimer(self.zombieBloodTimer, zombieBloodSeconds);
    		zombieBloodTick++;
    
    		if(zombieBloodTick >= 4)
    		{
    			zombieBloodSeconds--;
    			zombieBloodTick = 0;
    		}
    	}
    	else
    		self updatePowerupTimer(self.zombieBloodTimer, 0);
    
    	zombieBloodWasActive = zombieBloodActive;
    
    	wait 0.25;
    }
    

    }

    createPowerupTimerHud(x, y)
    {
    hud = createFontString("small", 1.25);
    hud setpoint("CENTER", "BOTTOM", x, y);
    hud.alpha = 0;
    hud.sort = 30;
    hud.color = (1, 1, 1);
    return hud;
    }

    updatePowerupTimer(hud, timeLeft)
    {
    if(!isDefined(hud))
    return;

    if(timeLeft > 0)
    {
    	hud.alpha = 1;
    	hud setvalue(getWholeSeconds(timeLeft));
    }
    else
    {
    	hud setText("");
    	hud.alpha = 0;
    }
    

    }

    getTeamPowerupTime(activeVar, timeVar)
    {
    if(!isDefined(level.zombie_vars))
    return 0;

    team = "allies";
    
    if(isDefined(self.team))
    	team = self.team;
    
    if(!isDefined(level.zombie_vars[team]))
    	return 0;
    
    if(!isDefined(level.zombie_vars[team][activeVar]))
    	return 0;
    
    if(!level.zombie_vars[team][activeVar])
    	return 0;
    
    if(!isDefined(level.zombie_vars[team][timeVar]))
    	return 0;
    
    return level.zombie_vars[team][timeVar];
    

    }

    getGlobalPowerupTime(activeVar, timeVar)
    {
    if(!isDefined(level.zombie_vars))
    return 0;

    if(!isDefined(level.zombie_vars[activeVar]))
    	return 0;
    
    if(!level.zombie_vars[activeVar])
    	return 0;
    
    if(!isDefined(level.zombie_vars[timeVar]))
    	return 0;
    
    return level.zombie_vars[timeVar];
    

    }

    getWholeSeconds(timeLeft)
    {
    seconds = 0;

    while(seconds < timeLeft)
    	seconds++;
    
    return seconds;
    

    }

    isZombieBloodActive()
    {
    if(isDefined(self.ignoreme) && self.ignoreme)
    return true;

    if(isDefined(self.zombie_blood) && self.zombie_blood)
    	return true;
    
    if(isDefined(self.zombie_blood_on) && self.zombie_blood_on)
    	return true;
    
    if(isDefined(self.zombieblood) && self.zombieblood)
    	return true;
    
    return false;
    

    }

    BO2 Modding Releases & Resources
  • 1 / 1
  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • Unread 0
  • Recent
  • Tags
  • Popular
  • Users
  • Groups