Skip to content
  • 0 Unread 0
  • Recent
  • Popular
  • Users
  • Donate
Collapse
Home Docs Stats Discord Donate
Download
  1. Home
  2. BO1 Modding Releases & Resources
  3. [Release] [T5] [Zombies] ZPause T5 - a synced co-op pause mod by Xep

[Release] [T5] [Zombies] ZPause T5 - a synced co-op pause mod by Xep

Scheduled Pinned Locked Moved BO1 Modding Releases & Resources
3 Posts 1 Posters 229 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Xeptix
    Xeptix
    Xeptix
    wrote on last edited by
    #1

    ZPause T5

    Synced co-op pause for Black Ops Zombies (Plutonium T5)

    by Xep

    A port of ZPause, the Black Ops II pause mod, to Black
    Ops 1. Same design, same settings, same version numbering.

    Any player can pause. Any player can unpause. The state lives on level, so it's
    identical for everyone — there's no per-client state that can desync.

    • Zombies stop where they are, and stop spawning
    • Players are locked and can't be hurt
    • Powerup timers, effect countdowns and bleedout all hold
    • Resumes on a 3‑2‑1 countdown with a short grace period
    • Optional vote-to-pause, so a pause has to carry the room

    Requirements

    Plutonium T5 (Black Ops), zombies. No other mods or dependencies.

    Only the host needs this file. Everything runs on the host and reaches everyone else
    as ordinary server-to-client traffic — the freeze, the invulnerability, the HUD, the vote
    tally, the sounds. Players joining your game install nothing.

    Download & Source

    Latest Version Download:

    https://github.com/Xeptix/ZPauseT5/releases/latest

    GitHub Source Code:

    https://github.com/Xeptix/ZPauseT5

    All ports in one download:

    ZPause [Treyarch Bundle], on the ZPause release page:
    https://github.com/Xeptix/ZPause/releases/latest

    Install

    Copy the Plutonium folder from the download into:

    %localappdata%
    

    It mirrors your existing %localappdata%\Plutonium exactly, so Windows will ask whether to
    merge — say yes. The only thing it replaces is an older zpause.gsc.

    That puts the file here:

    %localappdata%\Plutonium\storage\t5\raw\scripts\sp\zpause.gsc
    

    sp, not zm — Black Ops 1 zombies runs on the singleplayer script tree. That's the
    same folder Plutonium's own zombies scripts live in.

    There's no mod-folder version of this one. Plutonium's mods folder and its in-game Mods
    menu are Black Ops II features; T5 has neither, so the script drop-in is the whole
    delivery.

    install.bat in the download does the same copy for you if you'd rather — it lists what
    it's about to install, asks once, then copies. Nothing is deleted or downloaded.

    You don't need to restart the game to reload a script — just end the current match and
    start a new one.

    Usage

    Action Input
    Pause / unpause hold crouch + melee together for ~0.3s
    Vote yes, while a vote is open the same combo
    Vote no, while a vote is open hold jump + melee

    Crouching or prone counts, by any binding — Black Ops 1 splits crouch across four
    separate binds and CHANGE STANCE goes prone when held, so the script reads your stance
    rather than a key.

    The combo keeps working while you're frozen: freezecontrols() blocks movement and weapon
    use, but button state still reaches the server. That's what lets a frozen player resume.

    There are no chat commands. Black Ops 1 has no say callback for a script to bind to,
    so unlike the Black Ops II version there's no !pause or !yes. Everything is on the
    combos, which is why the down-state combos below matter.

    While you're down

    You can't crouch from the floor, and once you've bled out the engine stops delivering
    those buttons at all. Downed and spectating players switch to use + aim, and
    use + fire for a no vote. The HUD shows a while down: line whenever anybody is in
    that state, so nobody has to remember it.

    Voting

    Off by default. zp_vote 1 and a pause has to carry the room instead of any one player
    stopping the game.

    Calling a vote is the same action as pausing. The vote runs 30 seconds and everyone gets a
    tally: the count, the clock, and every player with how they voted.

    The bar is whichever is higher, zp_vote_min or zp_vote_percent of the players in the
    game, then clamped to how many are actually present — so a lobby can't set a threshold
    nobody there can clear, and solo play skips the vote entirely.

    Configuration

    Every setting is at the top of the file, and each one is also a dvar of the same name:

    zp_countdown 5
    

    The config is re-read whenever a pause is requested, so a change takes effect on the
    next pause — no map restart needed.

    Dvar Default What it does
    zp_button_combo 1 Enable the button combos.
    zp_combo crouch_melee Pause combo: crouch_melee, jump_use, jump_melee, use_melee, ads_melee, ads_use, throw_use.
    zp_button_hold_time 0.3 How long a combo must be held.
    zp_combo_dead use_ads Combo used while downed or spectating. "" = no button in that state.
    zp_vote_no_combo_dead use_attack The same, for a no vote.
    zp_vote 0 Put pauses to a vote.
    zp_vote_min 2 Minimum yes votes, whatever the player count.
    zp_vote_percent 51 Percent of players who must vote yes.
    zp_vote_time 30 Seconds a vote stays open.
    zp_vote_unpause 0 Resuming needs a vote too.
    zp_vote_hold 0 Freeze the game while the vote runs, and resume if it fails.
    zp_vote_initiator_yes 1 Whoever called the vote counts as a yes.
    zp_vote_lockout 10 Seconds before another vote can be called after one fails.
    zp_vote_alive_only 1 Leave bled-out spectators out of the threshold and the count.
    zp_vote_hud 1 Show the vote tally on screen.
    zp_vote_show_voters 1 List each player and how they voted.
    zp_vote_result_time 2 Seconds the result stands on the tally afterwards.
    zp_vote_no_combo jump_melee Combo for a no vote.
    zp_countdown 3 Seconds of 3‑2‑1 before play resumes.
    zp_grace 2 Seconds of invulnerability after resuming.
    zp_cooldown 2 Minimum seconds between toggles.
    zp_max_pause_time 0 Auto-resume after N seconds. 0 = unlimited.
    zp_drift_guard 1 Snap back any AI that still manages to move.
    zp_stop_anims 1 Cut scripted animations, so zombies can't finish tearing a barrier through the pause.
    zp_godmode 1 Make players invulnerable while paused.
    zp_control_guard 1 Re-apply the player freeze every tick.
    zp_freeze_bleedout 1 Stop downed players bleeding out.
    zp_freeze_powerups 1 Stop ground powerups timing out.
    zp_freeze_effects 1 Hold the insta-kill, double points, fire sale, bonfire, tesla and minigun timers.
    zp_silence_zombies 1 Stop zombies growling while paused.
    zp_show_hint 1 Tell players how to pause when they spawn.
    zp_hud_timer 1 Show who paused and how long it's been.
    zp_hud_position center Where the pause banner sits: top, center, middle, bottom, left, right.
    zp_vote_hud_position top Where the vote tally sits.
    zp_hud_glow 1 Black glow behind the HUD text.
    zp_hud_binds 1 Draw combos as each player's bound buttons instead of words.
    zp_hud_panel 0 Black slab behind the whole block.
    zp_hud_panel_alpha 0.45 How opaque that slab is.
    zp_hud_panel_width 340 How wide it is, in HUD units.
    zp_blackout 0 Black out everyone's screen while paused (anti-scouting).
    zp_blur 1 Blur everyone's screen while paused.
    zp_blur_amount 1.5 Blur strength. 4 is the blur the game runs when you buy a perk.
    zp_pause_sound zmb_box_poof Played when the game is paused. "" = silent.
    zp_countdown_sound zmb_bolt Played on each countdown tick.
    zp_resume_sound zmb_perks_power_on Played when play resumes.

    How it works

    Black Ops II ships a working full-game pause — it's what runs during a host migration
    — and the original ZPause is built on that recipe. Black Ops 1 has no host migration in
    zombies and no disablezombies() builtin to go with it, so the engine-level AI freeze
    simply isn't available here.

    Everything else carries over, and the AI freeze is done in script instead:

    • flag_clear("spawn_zombies") is the flag the spawn loop actually blocks on, so
      spawning stops at the source.
    • The AI enforcer holds ignoreall, pins every goal to where the zombie is standing,
      and snaps back anything that drifts. On Black Ops II this is a safety net around the
      engine freeze; here it is the freeze.
    • zp_stop_anims cancels scripted animations, because a zombie tearing a barrier is
      driven by its animation rather than by pathing — goals and positions don't govern it.
      Everything cancelled is released again on resume.
    • The stuck-zombie watchdog. round_spawn_failsafe() kills any zombie that hasn't
      moved 24 units in 30 seconds, assuming it's stuck outside the playspace — and a paused
      zombie trips it every time. ZPause keeps the barrier-chunk timestamp fresh, which the
      watchdog honours, so it loops harmlessly instead of firing.
    • Ground powerups. powerup_timeout() is a plain wait() chain and can't be paused,
      so the thread is cut and restarted on resume.
    • Powerup effects. Every timed powerup keeps an _on flag and a _time countdown;
      pinning the countdowns holds all six on-screen timers at once.
    • Bleedout is pinned so a downed player doesn't bleed out.
    • Late joiners and respawns are frozen on spawn, and everything is torn down on
      end_game so nobody is left frozen at the scoreboard.

    The pause clock is in minutes

    zp_hud_timer reports in minutes — under a minute, 3 minutes, over an hour — rather
    than the live mm:ss the Black Ops II version shows.

    That's a hard constraint, not a shortcut. Black Ops 1 has no HUD timer element, so a clock
    has to be drawn as text, and every distinct string costs a configstring. A ticking second
    counter burns one a second until the pool runs dry and drops the server. Minutes bound the
    whole set to about sixty strings, all reused.

    Notes

    • Zombies stand still rather than freeze solid. Their animation is cancelled rather
      than frozen; a true animation freeze isn't reachable from server-side GSC.
    • Scripted rides keep running. Pause mid-ride and it finishes underneath the pause —
      zp_control_guard only stops it handing your controls back early.
    • Not held: the magic box close timer, teleporter cooldowns, trap durations and Easter
      egg step timers.

    Ports

    Same mod, same version numbering, on three engines:

    • Black Ops II — https://github.com/Xeptix/ZPause
    • Black Ops — https://github.com/Xeptix/ZPauseT5
    • World at War — https://github.com/Xeptix/ZPauseT4

    Credits

    • Xep — author
    • Treyarch — _zombiemode.gsc
    • plutoniummod/t5-scripts — stock T5 script reference
    1 Reply Last reply
    1
    • Xeptix
      Xeptix
      Xeptix
      wrote on last edited by
      #2

      ZPause T5 v1.4

      Eleven new settings, a settings editor so you never need the console, and two more games —
      ZPause now runs on all five Treyarch zombies titles.

      Download: https://github.com/Xeptix/ZPauseT5/releases/latest

      One thing changes on its own

      zp_blackout is on by default now, at the new zp_blackout_alpha of 0.2. It was off
      in v1.3, so this is the one thing you'll notice straight away: the screen dims slightly
      while paused. It's there to carry the pause text over a bright skybox.

      zp_blackout 0 puts it back, zp_blackout_alpha 1 gives the full blackout it used to be.
      zp_blur_amount went from 1.5 to 2 for the same reason. The installer mentions both
      when you update if you'd been leaving them alone.

      New — who decides

      All off by default, and they don't fight each other:

      • zp_host_only — only the host can pause or resume.
      • zp_host_approve — anyone can ask, the host answers yes or no. It runs on the same
        yes/no combo a vote uses, which is what lets it work on an engine with no chat.
      • zp_ready_check — resuming waits for everyone to say they're back. Not a vote:
        nobody says no and it can't fail.
      • zp_max_pauses — a cap per match.

      New — pausing without being asked

      • zp_pause_on_disconnect — pause when somebody drops, so whoever is left isn't
        overrun while they rejoin.
      • zp_round_pause — hold the pause until the round is over instead of freezing the
        game mid-horde.

      New — a settings editor

      The installer sets every dvar for you now. It reads the list out of the script you've
      actually got installed, so it's always right for your version, and offers a list rather
      than a blank prompt for anything that takes fixed values.

      It writes the values into the installed script — which is what makes them stick, since
      Plutonium regenerates its own player cfg — and also exports a portable zpause.cfg for a
      dedicated server. Keep several profiles and switch between them. Settings are re-applied
      after every update.

      The installer has also grown into a manager: what's installed and at which version,
      removal, GitHub fetch, and a doctor for the things that actually go wrong. It asks before
      every network call. And it's one installer for all five games now — keep a copy on your PC
      and it can install any of them later.

      New — settings apply without a map restart

      The config is re-read every five seconds while you're playing, and again whenever a pause
      is requested.

      This one matters more here than anywhere else: it's what finally lets zp_combo be
      changed by hand
      . Before, changing it needed a pause to take effect — and with no chat
      commands on this engine, the combo is the thing that asks for one.

      set zp_config_print 1 prints every setting with its current value.

      Also new

      • zp_hud — turn the pause block off entirely, for a recording or a server with its
        own overlay.
      • zp_ease and zp_ease_time — config parity with the other ports. No effect on
        this engine; the README says why.

      Fixed

      • A zombie paused on its way to a window now finishes the walk instead of tearing at
        the boards from wherever it was standing. The pause holds zombies by pinning their goal
        to the spot, and the game took that as "at the window"; on resume, any zombie still short
        of its spot is sent the rest of the way first.

      New — Black Ops III and Black Ops 4

      Both debut at v1.4, same version number and the same feature set allowing for what each
      engine can do:

      • Black Ops III — https://github.com/Xeptix/ZPauseT7
      • Black Ops 4 — https://github.com/Xeptix/ZPauseT8

      That's all five Treyarch zombies games now. Each has a download of its own, and
      ZPause [Treyarch Bundle] on the ZPause release page carries all five — one download,
      one installer that knows every game.

      Install

      Unchanged. Run installer\windows\install.bat from the extracted folder, or copy the
      Plutonium folder into %localappdata% yourself. Your old zpause.gsc is replaced in
      place, so there's nothing to clean up first.

      No game restart needed — end the current match and start a new one. Only the host needs the
      file.

      Full dvar list and the how-it-works writeup are in the README:
      https://github.com/Xeptix/ZPauseT5

      1 Reply Last reply
      0
      • Xeptix
        Xeptix
        Xeptix
        wrote on last edited by
        #3

        ZPause T5 v1.5

        Chat commands, a settings menu while paused, settings that stay set — and two fixes that
        matter: anybody can unpause again, and Black Ops no longer stops at boot with ZPause
        installed.

        Download: https://github.com/Xeptix/ZPauseT5/releases/latest

        Fixed — read these first

        • Black Ops no longer stops at boot. v1.4 called two of the game's zombies functions in
          a way Black Ops has to resolve while it boots, before any zombies script is loaded, and a
          build carrying them stopped the game there. They're looked up once a match is running now.
        • Anybody can unpause, not only whoever paused. The crouch half of a combo reads the
          stance you're in, and freezing a player freezes their stance — so whoever paused stayed
          crouched and everybody else, frozen standing, could never make it. While paused, resume
          with use + aim
          (or !unpause). The pause banner says so.
        • use_ads and use_attack do what they say. Both are the default down combos, and
          neither name was ever tested for, so both fell through to crouch + melee — the one combo a
          downed player can't make.

        New — chat commands

        !pause, !p, !unpause, !resume, and yes / no while a vote is open — the same words
        as Black Ops II. This port shipped without them because nothing in the game's own scripts
        listens for chat; the game raises it anyway. zp_allow_short_words widens them to the bare
        words, off by default.

        New — a settings menu while paused

        The host holds fire + melee: aim and fire move through the list, grenade changes a
        setting, melee closes it, and what the setting does is written under the list. zp_menu 0
        turns it off.

        New — settings stick

        The menu saves to scriptdata\zpause.cfg as it closes, and the script reads it back as the
        next match loads. The installer's settings editor writes the same file and opens on it, so
        the menu and the installer always agree.

        Also

        • zp_freeze_players 0 lets players walk around a paused game with their weapons down.
          Not recommended — doors, the box and perks still work.
        • none empties a setting from the console, so set zp_pause_sound none is silence.
        • Changing zp_godmode during a pause no longer leaves players invulnerable after it.
        • The installer's -To works when it already remembers a folder.

        Install

        Unchanged. Run installer\windows\install.bat from the extracted folder, or copy the
        Plutonium folder into %localappdata% yourself. Your settings are carried over. No game
        restart needed — end the current match and start a new one. Only the host needs the file.

        Full dvar list and the how-it-works writeup are in the README:
        https://github.com/Xeptix/ZPauseT5

        1 Reply Last reply
        0

        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

        With your input, this post could be even better 💗

        Register Login
        Reply
        • Reply as topic
        Log in to reply
        • Oldest to Newest
        • Newest to Oldest
        • Most Votes


        • Login

        • Don't have an account? Register

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