Junior Member
|
12-30-2007
, 20:25
Re: TF2 Fun Cvar Settings
|
#26
|
Quote:
Originally Posted by gnumsploitz
Hi Wild,
"sm_mprst <time>" is not working on maps like tc_hydro.
This is from the source of your plugin:
Code:
g_Cvar_RSTime = FindConVar("mp_respawnwavetime");
AFAIK, mp_respawnwavetime will only work on ctf_2fort and maps with only the "logic_auto" entity (I'll explain more below). This includes most customs, and some capture point maps that don't have different respawn times depending on time left for each team and/or which team you're playing.
I've played with the *.bsps using Ented.
This is 2fort's "logic_auto" entity:
Code:
{
"origin" "-48 84 617"
"spawnflags" "1"
"classname" "logic_auto"
"hammerid" "741865"
"OnMapSpawn" "tonemap_global,SetAutoExposureMin,.8,0,-1"
"OnMapSpawn" "tonemap_global,SetAutoExposureMax,1.1,0,-1"
"OnMapSpawn" "tonemap_global,SetBloomScale,.5,0,-1"
"OnMapSpawn" "tf_gamerules,SetBlueTeamGoalString,#2fort_blue_setup_goal,0,-1"
"OnMapSpawn" "tf_gamerules,SetRedTeamGoalString,#2fort_red_setup_goal,0,-1"
"OnMapSpawn" "tf_gamerules,SetStalemateOnTimelimit,1,0,-1"
}
Now, this can be edited to turn just ctf_2fort into an instant respawn map by adding:
Code:
{
"origin" "-48 84 617"
"spawnflags" "1"
"classname" "logic_auto"
"hammerid" "741865"
"OnMultiNewRound" "tf_gamerules,setblueteamrespawnwavetime,0,0,-1"
"OnMultiNewRound" "tf_gamerules,setredteamrespawnwavetime,0,0,-1"
"OnMultiNewMap" "tf_gamerules,setblueteamrespawnwavetime,0,0,-1"
"OnMultiNewMap" "tf_gamerules,setredteamrespawnwavetime,0,0,-1"
"OnMapSpawn" "tf_gamerules,setblueteamrespawnwavetime,0,0,-1"
"OnMapSpawn" "tf_gamerules,setredteamrespawnwavetime,0,0,-1"
"OnMapSpawn" "tonemap_global,SetAutoExposureMin,.8,0,-1"
"OnMapSpawn" "tonemap_global,SetAutoExposureMax,1.1,0,-1"
"OnMapSpawn" "tonemap_global,SetBloomScale,.5,0,-1"
"OnMapSpawn" "tf_gamerules,SetBlueTeamGoalString,#2fort_blue_setup_goal,0,-1"
"OnMapSpawn" "tf_gamerules,SetRedTeamGoalString,#2fort_red_setup_goal,0,-1"
"OnMapSpawn" "tf_gamerules,SetStalemateOnTimelimit,1,0,-1"
}
"OnMultiNewRound" "tf_gamerules,setblueteamrespawnwavetime, 0,0,-1"
"OnMultiNewRound" "tf_gamerules,setredteamrespawnwavetime,0 ,0,-1"
"OnMultiNewMap" "tf_gamerules,setblueteamrespawnwavetime, 0,0,-1"
"OnMultiNewMap" "tf_gamerules,setredteamrespawnwavetime,0 ,0,-1"
"OnMapSpawn" "tf_gamerules,setblueteamrespawnwavetime, 0,0,-1"
"OnMapSpawn" "tf_gamerules,setredteamrespawnwavetime,0 ,0,-1"
The above part in bold is added to the code snippet.
This can mostly be disregarded, because "mp_respawnwavetime" takes care of instant respawn on maps like 2fort. It works. So adding
Code:
"tf_gamerules,setblueteamrespawnwavetime,0,0,-1"
and
Code:
"tf_gamerules,setredteamrespawnwavetime,0,0,-1"
..is redundant.
Now..
tc_hydro is different.
This is it's "team_round_timer" entity:
Code:
{
"origin" "96 0 832"
"timer_length" "480"
"targetname" "timer_central"
"StartDisabled" "0"
"start_paused" "1"
"show_in_hud" "1"
"auto_countdown" "1"
"classname" "team_round_timer"
"hammerid" "183233"
"OnFinished" "master_control_point,SetWinner,0,0,-1"
"On4MinRemain" "tf_gamerules,addblueteamrespawnwavetime,-4,0,-1"
"On3MinRemain" "tf_gamerules,addblueteamrespawnwavetime,-8,0,-1"
"On2MinRemain" "tf_gamerules,addblueteamrespawnwavetime,-12,0,-1"
"On4MinRemain" "tf_gamerules,addredteamrespawnwavetime,-4,0,-1"
"On3MinRemain" "tf_gamerules,addredteamrespawnwavetime,-8,0,-1"
"On2MinRemain" "tf_gamerules,addredteamrespawnwavetime,-12,0,-1"
"OnRoundStart" "tf_gamerules,setredteamrespawnwavetime,10,0,-1"
"OnRoundStart" "tf_gamerules,setblueteamrespawnwavetime,10,0,-1"
}
From what I can tell from that code snippet, the default respawn time for each team is 10 seconds. It's modified depending on time left. For example, if you're on blue with 3 minutes remaining, the respawn time is modified by 8 seconds. The negative value doesn't really make sense to me, unless it actually adds time, because I definitely recall seeing 18 second respawn times on tc_hydro while using this plugin and having "sm_mprst 0".
Instant respawn on tc_hydro can be achieved by changing to values to '0' like so:
Code:
"On4MinRemain" "tf_gamerules,addblueteamrespawnwavetime,0,0,-1"
"On3MinRemain" "tf_gamerules,addblueteamrespawnwavetime,0,0,-1"
"On2MinRemain" "tf_gamerules,addblueteamrespawnwavetime,0,0,-1"
"On4MinRemain" "tf_gamerules,addredteamrespawnwavetime,0,0,-1"
"On3MinRemain" "tf_gamerules,addredteamrespawnwavetime,0,0,-1"
"On2MinRemain" "tf_gamerules,addredteamrespawnwavetime,0,0,-1"
"OnRoundStart" "tf_gamerules,setredteamrespawnwavetime,0,0,-1"
"OnRoundStart" "tf_gamerules,setblueteamrespawnwavetime,0,0,-1"
This is the method I used to use to make all of my server maps have instant respawn. I rent a gameserver, so it was rather tedious editing every single map and having to upload to the ftp, making sure the old maps were overwritten. (Not to mention, it took a long time to upload, because some of the core 6 maps are over 60mb.)
The reason I'm making this post is that "mp_respawnwavetime" and having "sm_mprst" set to "0" does not seem to have any effect on maps, like tc_hydro, that have the "team_round_timer" entity!
Is this something that can painlessly be added to a plugin, or fixed? There are workarounds, but I love being able to use SourceMod plugins, just because they're so simple and easy to use. People on my TF2 server are a bit spoiled by the instant respawn times, so they tend to freak out when we play a map with "team_round_timer" and they have to wait 18 seconds to respawn.
Please let me know if I need to make anything more clear.
Btw, I should credit this thread:
http://forums.joe.to/viewtopic.php?f...ddea03afa462a5
Without googling and finding that topic, I wouldn't have a clue about Ented and how to edit the maps so that respawn is instant.
|
it took a while but i got the new maps uploaded. so far everything seems to have instant respawn but when i was playing with our server last night. i noticed a few times randomly i would have like a 10 second respawn how does this happen. it doens't happen oftern but it happens still.
|
|