Skip to content
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Donate
Collapse

Plutonium

  1. Home
  2. BO1 Modding Releases & Resources
  3. [ZM][RELEASE][PLUTO SCRIPT] Backspeed + game and round timer patch

[ZM][RELEASE][PLUTO SCRIPT] Backspeed + game and round timer patch

Scheduled Pinned Locked Moved BO1 Modding Releases & Resources
17 Posts 10 Posters 3.8k Views 2 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.
  • Ktuluuundefined Offline
    Ktuluuundefined Offline
    Ktuluu
    wrote on last edited by
    #7

    I was also able to move the timer location to be in the top left corner for people with 1080p monitors. Ive never used a 1440p monitor so you might have to tweak a little more for those

    For the game timer fix the X-Y on lines 105 & 106 to:

    hud.x = hud.x - 1;
    hud.y = hud.y + -5;

    For the Round timer fix the X-Y on lines 130 & 131 to:

    hud.x = hud.x - 1;
    hud.y = hud.y + 9;

    I would also change the fontscale from 1.2 to 1.6 on lines 107 & 132 just so the timers can be a tad bigger.

    I also changed "settimerup" from 1 to 0 on line 113 just so the timers can start together (Just personal preference)

    The timer should now look like the photo I shared.20241006150607_1.jpg

    1 Reply Last reply
    1
    • Ktuluuundefined Ktuluu

      Script works perfectly! Just wondering what the "custom Round Think" lines do? (lines 17-87) and if they're essential or just QoL fixes (Not very knowledgeable on these kinds of things so apologies if this is a silly question)

      AlexInVrundefined Offline
      AlexInVrundefined Offline
      AlexInVr
      wrote on last edited by
      #8

      @Hulkster So basically the custom round think is just so I could add in the notifiers for the round timer, I basically copy pasted the regular method, and added 2 notifiers lmao

      Ktuluuundefined 1 Reply Last reply
      1
      • AlexInVrundefined AlexInVr

        @Hulkster So basically the custom round think is just so I could add in the notifiers for the round timer, I basically copy pasted the regular method, and added 2 notifiers lmao

        Ktuluuundefined Offline
        Ktuluuundefined Offline
        Ktuluu
        wrote on last edited by
        #9

        AlexInVr Ohh I see. Thanks for clarifying! And thank you for the script as well!

        AlexInVrundefined 1 Reply Last reply
        0
        • Ktuluuundefined Ktuluu

          AlexInVr Ohh I see. Thanks for clarifying! And thank you for the script as well!

          AlexInVrundefined Offline
          AlexInVrundefined Offline
          AlexInVr
          wrote on last edited by
          #10

          @Hulkster you're welcome man, enjoy !

          1 Reply Last reply
          1
          • Claaarkundefined Offline
            Claaarkundefined Offline
            Claaark
            wrote on last edited by
            #11

            and for five is there a name for the folder?

            Sugah2undefined 1 Reply Last reply
            0
            • asherisisundefined Offline
              asherisisundefined Offline
              asherisis
              wrote on last edited by
              #12

              Is there a script for just backspeed/strafe fix?

              AlexInVrundefined 1 Reply Last reply
              0
              • AlexInVrundefined AlexInVr

                After a request on Discord, I decided to release the script for everyone to use, because a lot of patches are being gatekept or not a lot of patchers release their stuff.

                It's a pluto only version but I have a steam version also that I can release, it's just harder to customize if you don't know what you are doing:

                Install instructions:

                • Turn on file extensions in your windows explorer, see this link if you don't know how

                • Press windows + r, a dialog box will open

                • Inside it type in %LOCALAPPDATA%\Plutonium\storage\t5\scripts\sp

                • Create a folder with the name of the map you want to play

                • Kino: zombie_theater

                • Asc: zombie_cosmodrome

                • Shang: zombie_temple

                • Moon: zombie_moon

                • Cotd: zombie_coast

                Waw maps:

                • Nacht: zombie_cod5_prototype

                • Verruckt: zombie_cod5_asylum

                • Shi no: zombie_cod5_sumpf

                • Der riese: zombie_cod5_factory

                • Create a new file with the name of your choice, and make its file extension .gsc (example: patch.gsc)

                • copy and paste the code inside your gsc file

                launch your game and enjoy !

                I did not include the splash texts as some people don't like that, and I can understand, I'd just appreciate if you could leave a like on the post if my patch helped you 🙂

                #include maps\_utility;
                #include common_scripts\utility;
                #include maps\_zombiemode_utility;
                
                
                init()
                {
                        if ( GetDvar( #"zombiemode" ) == "1" )
                        {
                			replacefunc(maps\_zombiemode::round_think, ::custom_round_think);
                            level thread onPlayerConnect();
                        }
                
                }
                
                
                custom_round_think()
                {
                	for( ;; )
                	{
                		//////////////////////////////////////////
                		//designed by prod DT#36173
                		maxreward = 50 * level.round_number;
                		if ( maxreward > 500 )
                			maxreward = 500;
                		level.zombie_vars["rebuild_barrier_cap_per_round"] = maxreward;
                		//////////////////////////////////////////
                
                		level.pro_tips_start_time = GetTime();
                		level.zombie_last_run_time = GetTime();	// Resets the last time a zombie ran
                
                        level thread maps\_zombiemode_audio::change_zombie_music( "round_start" );
                		maps\_zombiemode::chalk_one_up();
                		//		round_text( &"ZOMBIE_ROUND_BEGIN" );
                
                		maps\_zombiemode_powerups::powerup_round_start();
                
                		players = get_players();
                		array_thread( players, maps\_zombiemode_blockers::rebuild_barrier_reward_reset );
                
                		//array_thread( players, maps\_zombiemode_ability::giveHardpointItems );
                
                		level thread maps\_zombiemode::award_grenades_for_survivors();
                
                		bbPrint( "zombie_rounds: round %d player_count %d", level.round_number, players.size );
                
                		level.round_start_time = GetTime();
                		level thread [[level.round_spawn_func]]();
                
                		level notify( "start_of_round" );
                
                		[[level.round_wait_func]]();
                
                		level.first_round = false;
                		level notify( "end_of_round" );
                
                		level thread maps\_zombiemode_audio::change_zombie_music( "round_end" );
                
                		UploadStats();
                
                		if ( 1 != players.size )
                		{
                			level thread maps\_zombiemode::spectators_respawn();
                			//level thread last_stand_revive();
                		}
                
                		//		round_text( &"ZOMBIE_ROUND_END" );
                		level maps\_zombiemode::chalk_round_over();
                
                		// here's the difficulty increase over time area
                		timer = level.zombie_vars["zombie_spawn_delay"];
                		if ( timer > 0.08 )
                		{
                			level.zombie_vars["zombie_spawn_delay"] = timer * 0.95;
                		}
                		else if ( timer < 0.08 )
                		{
                			level.zombie_vars["zombie_spawn_delay"] = 0.08;
                		}
                
                		//
                		// Increase the zombie move speed
                		level.zombie_move_speed = level.round_number * level.zombie_vars["zombie_move_speed_multiplier"];
                
                		level.round_number++;
                
                		level notify( "between_round_over" );
                	}
                }
                
                
                
                game_timer()
                {
                	hud = create_simple_hud( self );
                	hud.foreground = true;
                	hud.sort = 1;
                	hud.hidewheninmenu = true;
                	hud.alignX = "left";
                	hud.alignY = "top";
                	hud.horzAlign = "user_left";
                	hud.vertAlign = "user_top";
                	hud.alpha = 1;
                	//=======================CUSTOM SECTION==============
                	hud.x = hud.x - -720; //This is for the position on X axis, decrease this number to move it further left, and increase it to go right.
                	hud.y = hud.y + 35; //This is for the position on Y axis, decrease this number to move it down, and increase it to go up.
                	hud.fontscale = 1.2; //This is for the font size, increase it by whatever you want and see what you like
                	hud.color =  (255, 255, 255); //This is for the color using RGB, use a website for that
                	//=========================================
                	time_text = string(GetTime() / 1000);
                	flag_wait("all_players_spawned");
                	while (1){
                		hud setTimerUp(1);
                		hud setTimer(time_text);
                	}
                
                }
                
                round_timer()
                {
                	timerHud = create_simple_hud( self );
                	timerHud.foreground = true;
                	timerHud.sort = 1;
                	timerHud.hidewheninmenu = true;
                	timerHud.alignX = "left";
                	timerHud.alignY = "top";
                	timerHud.horzAlign = "user_left";
                	timerHud.vertAlign = "user_top";
                	//=======================CUSTOM SECTION==============
                	timerHud.x = timerHud.x - -720; //This is for the position on X axis, decrease this number to move it further left, and increase it to go right.
                	timerHud.y = timerHud.y + 45; //This is for the position on Y axis, decrease this number to move it down, and increase it to go up.
                	timerHud.fontscale = 1.2; //This is for the font size, increase it by whatever you want and see what you like
                	timerHud.color =  (255, 0, 0); //This is for the color using RGB, use a website for that
                	//=========================================
                	timerHud.alpha = 1;
                	flag_wait("all_players_spawned");
                	for (;;){
                		start_time = GetTime() / 1000;
                		timerHud setTimerUp(0);
                		level waittill("end_of_round");
                		end_time = GetTime() / 1000;
                		time = end_time - start_time;
                		set_time_frozen(timerHud, time);
                	}
                
                }
                
                set_time_frozen(hud, time)
                {
                	level endon("start_of_round");
                	time = time - 0.1;
                	while(1)
                	{
                		hud settimer(time);
                		wait(0.5);
                	}
                }
                
                onPlayerConnect()
                {
                	for(;;)
                	{
                		level waittill ("connecting", player);
                		player thread onPlayerSpawned();
                	}
                }
                
                onPlayerSpawned()
                {
                	for(;;)
                	{
                		self waittill("spawned_player");
                		self thread game_timer(); //Thread the global timer
                		self thread round_timer(); //Thread the round timer
                		self SetClientDvars("player_backSpeedScale", "1", "player_strafeSpeedScale", "1"); //Patch speed to be same as console
                	}
                }
                
                haki_markusundefined Offline
                haki_markusundefined Offline
                haki_markus
                wrote on last edited by
                #13
                This post is deleted!
                1 Reply Last reply
                0
                • asherisisundefined asherisis

                  Is there a script for just backspeed/strafe fix?

                  AlexInVrundefined Offline
                  AlexInVrundefined Offline
                  AlexInVr
                  wrote on last edited by
                  #14

                  asherisis open console:

                  player_strafeSpeedScale 1

                  player_backSpeedScale 1

                  1 Reply Last reply
                  0
                  • Claaarkundefined Claaark

                    and for five is there a name for the folder?

                    Sugah2undefined Offline
                    Sugah2undefined Offline
                    Sugah2
                    wrote on last edited by
                    #15
                    This post is deleted!
                    1 Reply Last reply
                    0
                    • Hatbat133undefined Offline
                      Hatbat133undefined Offline
                      Hatbat133
                      wrote on last edited by
                      #16

                      what do i do with the folder i created? do i put the gsc file in it?

                      1 Reply Last reply
                      0
                      • Hatbat133undefined Offline
                        Hatbat133undefined Offline
                        Hatbat133
                        wrote on last edited by
                        #17

                        nvm i got it

                        1 Reply Last reply
                        0
                        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
                        • Recent
                        • Tags
                        • Popular
                        • Users
                        • Groups
                        • Donate