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

Plutonium

  1. Home
  2. WAW Modding Releases & Resources
  3. [ZM][RELEASE] Timer and backspeed patch that follows ZWR rules for ALL maps

[ZM][RELEASE] Timer and backspeed patch that follows ZWR rules for ALL maps

Scheduled Pinned Locked Moved WAW Modding Releases & Resources
15 Posts 9 Posters 3.0k 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.
  • AlexInVrundefined AlexInVr

    So, I had a record for a 1000 sr on shi no that I did when there wasn't any rule on the ZWR website about patches for waw, now there is one, you aren't allowed first boxes at all, but timer, and backspeed is allowed, so I decided to make this universal patch that works with all maps.

    I can't guarantee 100% that it is safe for a record, as I am not an admin of ZWR, however, if I look at ZWR's rules for waw, it says this:

    • Automatic timers are ALLOWED.
    • Patches are NOT ALLOWED with the exception of fixed backspeed and timer patches.
    • source

    My patch follows all these rules. But like I said, I am not a ZWR admin, so I cannot guarantee 100%


    I had to overwrite the round_think function just to add the round_start and round_end event, so that the round timer could work correctly, nothing else was touched.

    Known "problems":

    • Round timer only works on Shi no and Der for some reason. Nacht and Verruckt have an issue preventing the timer from working correctly, I am actively looking for a fix.

    • on round 1, when the round ends the round timer removes and adds 1 second until the next round begins, that's it, it just goes like -> 12.2, 12.1, 12.2, 12.1 etc.... it fixes itself the next round.

    • there is a 1 second delay between both timers, could probably fix it with a wait(1); but ngl I was a bit lazy, will fix later, it still works fine, 1 second won't kill you

    #include maps\_utility;
    #include common_scripts\utility;
    #include maps\_zombiemode_utility;
    
    //timer by twitch.tv/AlexInZombies
    
    init()
    {
    	replacefunc(maps\_zombiemode::round_think, ::custom_round_think);
    	thread on_connect();
       
    }
    
    on_connect()
    {
    	for(;;)
    	{
    		level waittill( "connecting", player );
    		player thread on_player_spawned();
    	}
    }
    
    
    custom_round_think()
    {
    	for( ;; )
    	{
    		level.round_spawn_func = maps\_zombiemode::round_spawning;
    		//////////////////////////////////////////
    		//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.round_timer = level.zombie_vars["zombie_round_time"]; 
    		
    		add_later_round_spawners();
    
    		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 );
    
    		level thread maps\_zombiemode::award_grenades_for_survivors();
    
    		level.round_start_time = getTime();
    		level thread [[level.round_spawn_func]]();
    		level notify("start_of_round");
    
    		maps\_zombiemode::round_wait(); 
    		level.first_round = false;
    		level notify("end_of_round");
    
    		level thread maps\_zombiemode::spectators_respawn();
    
    		//		round_text( &"ZOMBIE_ROUND_END" );
    		level thread maps\_zombiemode::chalk_round_hint();
    
    		wait( level.zombie_vars["zombie_between_round_time"] ); 
    
    		// here's the difficulty increase over time area
    		timer = level.zombie_vars["zombie_spawn_delay"];
    
    		if( timer < 0.08 )
    		{
    			timer = 0.08; 
    		}	
    
    		level.zombie_vars["zombie_spawn_delay"] = timer * 0.95;
    
    		// Increase the zombie move speed
    		level.zombie_move_speed = level.round_number * 8;
    
    		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.x = hud.x - -700; 
    	hud.y = hud.y + 35; 
    	hud.alpha = 1;
    	flag_wait("all_players_spawned");
    	hud setTimerUp(1);
    }
    
    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";
    	timerHud.x = timerHud.x - -700; 
    	timerHud.y = timerHud.y + 45;
    	timerHud.color =  (1, 0, 0);
    	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;
    		freeze_time(timerHud, time); 
    	}
    	
    }
    
    freeze_time(hud, time)
    {
    	level endon("start_of_round");
    	time = time - 0.1;
    	while(1)
    	{
    		hud settimer(time);
    		wait(0.5);
    	}
    }
    
    on_player_spawned()
    {
    	self endon( "disconnect" ); 
    
    	for( ;; )
    	{
    		
    		level waittill( "connected", player ); 
    		self thread game_timer();
    		self thread round_timer();
    		self SetClientDvars( 
    			"player_backSpeedScale", "1", 
    			"player_strafeSpeedScale", "1");
    		
    		wait 3;
    
    		self IPrintLnBold("ZWR safe patch by ^1twitch.tv/^2AlexInVR");
    	}
    	level waittill( "connected", player ); 
    	
    }   
    
    trakinaundefined Offline
    trakinaundefined Offline
    trakina
    wrote on last edited by
    #4
    This post is deleted!
    1 Reply Last reply
    0
    • Weezlundefined Offline
      Weezlundefined Offline
      Weezl
      wrote on last edited by
      #5

      the round timer seems to not work on nacht, i dont know if youd know any fix for that but id love one

      1 Reply Last reply
      0
      • Mystic_YTundefined Offline
        Mystic_YTundefined Offline
        Mystic_YT
        wrote on last edited by
        #6

        the round timer only works for shi no numa and der riese for me is there a fix so it works for nacht and verruckt as well?

        AlexInVrundefined 1 Reply Last reply
        0
        • Mystic_YTundefined Mystic_YT

          the round timer only works for shi no numa and der riese for me is there a fix so it works for nacht and verruckt as well?

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

          Mystic_YT Will take a look at it soon when I get the time, sorry about the inconvenience !

          1 Reply Last reply
          0
          • Mystic_YTundefined Offline
            Mystic_YTundefined Offline
            Mystic_YT
            wrote on last edited by
            #8

            np, at least we have a round timer for waw now i appreciate it as i always wanted one for waw

            AlexInVrundefined 1 Reply Last reply
            0
            • JezuzLizardundefined JezuzLizard

              FaZe Flick No Plutonium client requires you to manually compile. You can just put the GSCs in the scripts folder and the game will auto compile them.

              6RAIZundefined Offline
              6RAIZundefined Offline
              6RAIZ
              wrote on last edited by
              #9

              JezuzLizard what scripts folder?

              6RAIZundefined 1 Reply Last reply
              0
              • 6RAIZundefined 6RAIZ

                JezuzLizard what scripts folder?

                6RAIZundefined Offline
                6RAIZundefined Offline
                6RAIZ
                wrote on last edited by
                #10

                @Defined_Leaf I found the folder area but when labeling the folder as nazi_zombie_sumpf with the patch.gsc note it doesnt launch with it

                1 Reply Last reply
                0
                • Mystic_YTundefined Mystic_YT

                  np, at least we have a round timer for waw now i appreciate it as i always wanted one for waw

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

                  Mystic_YT Hey man, update on the round timer, so I spent a good while investigating, and figured WHY it's not working, but as to fix it, I currently have no idea lol, this game's code is a mess, and I'm not the best at GSC, for some reason, the event that is supposed to trigger the timer to end, does not trigger on 2 out of 4 maps, why this happens I truly have no idea, but if I do find a fix I'll make sure to fix it, otherwise, I am sorry to announce I am unable to fix it at the moment

                  1 Reply Last reply
                  0
                  • Miaa_undefined Offline
                    Miaa_undefined Offline
                    Miaa_
                    wrote on last edited by Miaa_
                    #12

                    Damn how tf do I install this ?? GSC Tool Kit website has no download or place where I can do anything basically. Went to check the "How to" page on Plutonium which explains virtually everything except how to to run these things. Ended up finding about GSC Studio but got really tired having to look through 10 shady websites just to find an obscure download link. Way too complicated for such basic ass features that only works on half the maps, well fuck it

                    I applaud your intentions but in practice only engineers know how to use this thing

                    JezuzLizardundefined ItsAMeStefanoundefined AlexInVrundefined 3 Replies Last reply
                    0
                    • Miaa_undefined Miaa_

                      Damn how tf do I install this ?? GSC Tool Kit website has no download or place where I can do anything basically. Went to check the "How to" page on Plutonium which explains virtually everything except how to to run these things. Ended up finding about GSC Studio but got really tired having to look through 10 shady websites just to find an obscure download link. Way too complicated for such basic ass features that only works on half the maps, well fuck it

                      I applaud your intentions but in practice only engineers know how to use this thing

                      JezuzLizardundefined Offline
                      JezuzLizardundefined Offline
                      JezuzLizard
                      Plutonium Staff
                      wrote on last edited by
                      #13

                      Miaa_ It works the same way as T6 does except you put the scripts in %localappdata%/Plutonium/storage/t4/raw/scripts You can also override a script by placing it in the same path as here https://github.com/plutoniummod/t4-scripts/tree/main/SP/Common inside of raw.

                      1 Reply Last reply
                      0
                      • Miaa_undefined Miaa_

                        Damn how tf do I install this ?? GSC Tool Kit website has no download or place where I can do anything basically. Went to check the "How to" page on Plutonium which explains virtually everything except how to to run these things. Ended up finding about GSC Studio but got really tired having to look through 10 shady websites just to find an obscure download link. Way too complicated for such basic ass features that only works on half the maps, well fuck it

                        I applaud your intentions but in practice only engineers know how to use this thing

                        ItsAMeStefanoundefined Offline
                        ItsAMeStefanoundefined Offline
                        ItsAMeStefano
                        wrote on last edited by
                        #14

                        Miaa_ You can just copy a GSC file in the scripts of WAW folder and just overwrite it with the script given to you in this post. You dont need to install a GSC toolkit

                        1 Reply Last reply
                        0
                        • Miaa_undefined Miaa_

                          Damn how tf do I install this ?? GSC Tool Kit website has no download or place where I can do anything basically. Went to check the "How to" page on Plutonium which explains virtually everything except how to to run these things. Ended up finding about GSC Studio but got really tired having to look through 10 shady websites just to find an obscure download link. Way too complicated for such basic ass features that only works on half the maps, well fuck it

                          I applaud your intentions but in practice only engineers know how to use this thing

                          AlexInVrundefined Offline
                          AlexInVrundefined Offline
                          AlexInVr
                          wrote last edited by
                          #15

                          Miaa_ see my other patches, they have install instructions

                          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