Description
A rewrite on the Oshizu's deathrun plugin.
I wanted a plugin that really restricts the weapons (I hate those people with the Ullapool caber/eureka/atomizer).
Also I love playing as any class without being in disadvantage!
Features
Now everything is in a config file (sourcemod/data/deathrun/deathrun.cfg)
You can select the speed for each team and every class has the same number of jumps(1)!
Restrict to melee and replace every weapon you want with the default one or an all-class.
You can disable fall-damage.
Activate outlines on the runners and the death based on how many runners are alive!
You can change the fall-damage on/off, the speed and the outline config per map too! (sourcemod/data/deathrun/maps/mapname.cfg)
Added sounds! "RoundStart" "OnDeath" "OnKill" (with a delay) and "LastAlive"
Players don't push them self with each other.
No one can be death twice (until everybody was death at last one time).
If you don't want to be death, you can use !drtoggle (you will be asked the first time you join anyways).
You can block commands like kill/explode and build.
The plugin detects if the current map is a deathrun one.
Configurations
Spoiler
PHP Code:
"deathrun"
{
//Configs used if the map doesn't have it's own value.
"default"
{
"DisableFallDamage" "1" //If 1 there won't be fall damage.
//Speed of every team (for reference, pyro's base speed is 300).
"speed"
{
"runners" "300.0" //On the runners team
"death" "400.0" //On the death
}
//How many players on the "runners" team must be alive to activate the outline (-1 = never|0 = always|>0 alive runners needed).
"outline"
{
"runners" "0" //On the runners team
"death" "-1" //On the death
}
}
//Sounds used in this game-mode, the plugin will pre-cache them and add them to the download table.
//The plugin will use all of them randomly.
"sounds"
{
//When the round starts (NOT when the preparation period ends).
"RoundStart"
{
"1" "vo/announcer_dec_missionbegins10s01.mp3"
"2" "vo/announcer_begins_10sec.mp3"
}
//Played to a runner that just died.
"OnDeath"
{
"1" "vo/announcer_dec_failure01.mp3"
"2" "vo/announcer_dec_failure02.mp3"
"3" "vo/announcer_am_lastmanforfeit01.mp3"
"4" "vo/announcer_am_lastmanforfeit02.mp3"
"5" "vo/announcer_am_lastmanforfeit03.mp3"
"6" "vo/announcer_am_lastmanforfeit04.mp3"
}
//Played to the death after a kill (You should use many different sounds since he will be hearing this a lot).
"OnKill"
{
"delay" "5.0" //Time after a kill that the plugin won't reproduce any "OnKill" sound.
"1" "vo/announcer_dec_kill01.mp3"
"2" "vo/announcer_dec_kill02.mp3"
"3" "vo/announcer_dec_kill03.mp3"
"4" "vo/announcer_dec_kill04.mp3"
"5" "vo/announcer_dec_kill05.mp3"
"6" "vo/announcer_dec_kill06.mp3"
"7" "vo/announcer_dec_kill07.mp3"
"8" "vo/announcer_dec_kill08.mp3"
"9" "vo/announcer_dec_kill09.mp3"
"10" "vo/announcer_dec_kill10.mp3"
"11" "vo/announcer_dec_kill11.mp3"
"12" "vo/announcer_dec_kill12.mp3"
"13" "vo/announcer_dec_kill13.mp3"
"14" "vo/announcer_dec_kill14.mp3"
"15" "vo/announcer_dec_kill15.mp3"
}
//Played to the last client alive on the runners team.
"LastAlive"
{
"1" "vo/announcer_am_lastmanalive01.mp3"
"2" "vo/announcer_am_lastmanalive02.mp3"
"3" "vo/announcer_am_lastmanalive03.mp3"
"4" "vo/announcer_am_lastmanalive04.mp3"
}
}
//Here we manage the weapon restriction (mostly melee-related)
"weapons"
{
//If true (1) will restrict every other slot than melee. If False (0) the plugin wont use the rest of this config section.
"MeleeOnly" "1"
//If true (1) will follow the "MeleeRestriction"'s rules.
"RestrictedMelee" "1"
//Here we define the melee restriction rules.
"MeleeRestriction"
{
"RestrictAll" "0" //If 1 "RestrictedWeapons" will be ignored
"RestrictedWeapons"
{
"1" "589" //The Eureka Effect (teleportation)
"2" "450" //The Atomizer (extra jump)
"3" "307" //Ullapool Caber (explosive jump)
"4" "325" //The Boston Basher (bloody jump)
"5" "452" //Three-Rune Blade (bloody jump)
"6" "304" //Amputator (Lags everybody)
}
"UseDefault" "1" //Use the default melee for every class
"UseAllClass" "1" //Use the AllClassWeapons
//If both UseDefault and UseAllClass are on, the default weapon will be treated like another weapon in the list.
//If both are off the plugin will just use Default Weapons for each class
"AllClassWeapons"
{
"1" "264" //Frying Pan
"2" "423" //Saxxy
"3" "474" //The Conscientious Objector
"4" "880" //The Freedom Staff
"5" "939" //The Bat Outta Hell
"6" "954" //The Memory Maker
"7" "1013" //The Ham Shank
"8" "1123" //The Necro Smasher
"9" "1127" //The Crossing Guard
}
}
}
//Here we define commands to block
"blockcommands"
{
//You must respect the order of this numbers
"1"
{
//command to block
"command" "build"
//If 1 it will only block the command on the preparation time.
"OnlyOnPreparation" "0"
//If 1 it will block the command for runners.
"runners" "1"
//If 1 it will block the command for the death.
"death" "1"
}
"2"
{
"command" "kill"
"OnlyOnPreparation" "0"
"runners" "0"
"death" "1"
}
"3"
{
"command" "explode"
"OnlyOnPreparation" "0"
"runners" "0"
"death" "1"
}
"4"
{
"command" "kill"
"OnlyOnPreparation" "1"
"runners" "1"
"death" "0"
}
"5"
{
"command" "explode"
"OnlyOnPreparation" "1"
"runners" "1"
"death" "0"
}
}
}
Changelog
Spoiler
Quote:
2015-03-20(v0.2.1)
*Fixed a bug related to map prefix.
*Added difference between teams running commands.
*Changed default vo/.wav to .mp3 .
*Now every runner death will be show as a death's kill.
2015-02-15 (v0.2.0)
*Fixed a bug where people in spec would be moved to a team.
*Fixed a bug while playing the death's sounds to everybody if the death was dead.
*Now the clients won't die when they change team at the start of the round, thanks VSH code (?).
*Added the The Boston Basher/Three-Rune Blade to the default banned weps list (because of the pseudo extra jump with the self damage).
*Added the Amputator to the default banned list (healing everybody = lags for everybody).
2015-01-08 (v0.1.6)
*Now everything is in a config file (sourcemod/data/deathrun/deathrun.cfg)
*No more cvars, so that cfg on tf/cfg/sourcemod/ is useless now.
*Now the plugin requires TF2attributes to disable the fall damage(I'll try to make almost every dependence alternative later).
*You can select the speed for each team.
*You can select when the players get the outline effect based on how many runners are alive.
*You can change the falldamage on/off, the speed and the outline config per map too! (sourcemod/data/deathrun/maps/mapname.cfg) I'll add more things to put on those file later, like a timer, for now it's kind of useless).
*Added sounds! "RoundStart" "OnDeath" "OnKill" (with a delay) and "LastAlive" (check the config file).
*Now it's easy to edit the melee restriction rules!
*You can now select what commands the plugin should block, by default it blocks always the "build" command and only on preparation the kill/explode command (people will spam those and lag the server.
2014-12-31 (0.1.5)
*Added a new command for players !drtoggle
*You can choose between 3 options: Can be selected as Death, Can't be selected as Death and Can't be selected as Death in the current map.
*Changed the way I remove the shield, also the plugin removes the sapper too!
*Changed the [GS-DR] prefix to [DR] (I was using my community tag sorry D: ).
2014-12-28(v0.1.4)
*Fixed a bug when only two players were in game.
*Added The Crossing Guard to the all-class weps list.
*Fixed some problems with misc/hats, the plugin were removing some of them.
2014-12-06 (v0.1.3)
*Now players can't suicide themself.
*Engis can't build using the build 0/1/2/3 command
2014-11-22 (v0.1.2)
*Fixed the cvars staying in the dr's values in a not-dr map.
*Now the cvars reset on plugin end.
2014-11-15 (v0.1.1)
* Fixed some parts of the code (Thanks r3dw3r3w0lf)
* Added more all-class weapons:
Frying Pan, Saxxy, The Conscientious Objector, The Freedom Staff, The Bat Outta Hell, The Memory Maker, The Ham Shank, Gold Frying Pan and The Necro Smasher
* Australium default melee (for engi and spy )
2014-11-13 (v0.1.0)
* Initial release.
Installation instructions
deathrun_redux.smx goes on tf/addons/sourcemod/plugins/
deathrun.cfg goes on tf/addons/sourcemod/data/deathrun/
A per-map config can be used on tf/addons/sourcemod/data/deathrun/maps/mapname.cfg
(for now you only can change the speed, outline and fall-damage configs there).
Note: I'll keep updating this plugin with whatever request comes up and also I'll keep improving it's code.
Note 2: The configs/sourcecode/compiled plguins are in the .zip archive, if you want to check the source on GitHub here is it.
Sorry for my bad English and my code.
This plugin is still broken. None of the features are working. Melee only doesn't work, Blu rotation doesn't work, etc.
It's working fine for me, do you have tf2items installed in your server? is the plugin running?
Do a "sm plugins info deathrun_redux" and show me what it says.
Edit:
I'm working on a new version with others all-class weapons and I'm also trying to block the suicide without luck:
Quote:
//Added this on plugin start
AddCommandListener(OnPlayerSuicide, "kill");
AddCommandListener(OnPlayerSuicide, "explode");
//And then this:
public Action:OnPlayerSuicide(client, const String:command[], args)
{
if(g_Enabled && g_isDRmap)
return Plugin_Handled;
return Plugin_Continue;
}
(Both bool variables are true because everything else works and I tried with only the return Plugin_Handled)
As soon as I get this working I'll release a new version!
Watch out when you're paying people for private requests! Most stuff already exists and you can hardly assess the quality of what you'll get, and if it's worth the money.