It's a game type called Tag, based on the childrens' game, released for beta testing and suggestions.
The game is very simple, but configurations can vary widely. In the first round, all players are on the CT side with only a knife, with friendly fire turned on. The first CT to die is "IT", and transferred to the T side. "IT" remains "IT" until "IT" tags (kills) a CT, at which time that CT becomes "IT". Positive points can be gained by killing "IT", and/or spawning as a CT. Negative points can be gained by spawning as "IT". The game is played up to a certain amount of configurable points.
Defaults created if the plugin creates a new sm_css_tag.cfg:
Killing "IT" = 3 points
Spawning as CT = 1 point
Spawning as IT = -2 points
Points To Win Game = 100 points
Defaults contained in the included sm_css_tag.cfg as of version public.beta.2013.06.13.17.36:
Killing "IT" = 1 points
Spawning as CT = 0 point
Spawning as IT = -1 points
Points To Win Game = 10 points
You can also configure how much money each team spawns with on their first round and subsequent rounds, and some of the game timers.
"IT" gains back health each round, CTs do not
gain back health.
The game is played like a deathmatch, all bomb/hostage scenarios are (or at least should be) disabled.
1. Incorrect spawns. Only one player should spawn on T's, ever. If there are 2 players as T, there is a malfunction. This may happen on loading the plugin. Try reloading the plugin, or changing the map. On the first playable round, all players should be on CT.
2. Possible incorrect money. I haven't been able to check this out much. Sometimes it seems like the money given to CTs is too small.
3. Possible issues ending the game. Depending on what you are using for your sm_css_tag_gameendcmd cvar, the game may hang. I think I've fixed it for most cases, but the error may still occur if you are using a command that wasn't thought of. For your sm_css_tag_gameendcmd cvar, you should be using a command that (leads to) changing the map, such as changelevel, sm_votemap, sm_umc_mapvote, etc.
4. For some unknown reason, some players on CT are getting only 1 health, when they should be getting 100. This usually occurs at the beginning of the game, but won't fix itself (as it should) as rounds progress.
5. Weapons are not kept after first round after a "No IT" round (knife round to decide who will be IT), which occurs at the beginning of a game and when IT leaves the game.
6. Sometimes there are multiple "No IT" rounds.
7. Possible map change issues, depending on what sm_css_tag_gameendcmd you are using.
- First spawn start money for IT. Min=0, Max=4000
- First spawn start money for a CT. Min=0, Max=2000
- Raise for each consecutive spawn as IT. Min=500, Max=4000
- Raise for each consecutive spawn as a CT. Min=0, Max=1000
- Points rewarded for killing IT. Min=0, Max=10. Note: If BOTH this cvar AND sm_css_tag_ctspawn are set to 0, sm_css_tag_itkillreward will be adjusted to 1.
- Points rewarded for spawning as a CT when someone is IT (not rewarded when no one is IT). Min=0, Max=5. Note: If BOTH this cvar AND sm_css_tag_itkillreward are set to 0, sm_css_tag_itkillreward will be adjusted to 1.
- Points deducted for spawning as IT. 0=disabled, must be 0 or a negative number Min=-5, Max=0
- Points needed to win game. Score is checked when IT is killed or end of round. No ties are allowed. Min=10, Max=1000
- Game timer in minutes. 0 = disabled. Min=0, No Max
- Seconds added to game timer. Tweak timing of vote/mapchange when game end due to timer, which may vary server to server. If not set properly, map might not change. Min=0, No Max
- Round time foramtted as minutes.hundreths_of_a_minute. Min=1.00, Max=99.99
- Automatically unload the plugin at the end of the game. 0 = no, 1 = yes. Min=0, Max=1
- server command to run at then end of the game. You can use sm_css_tag_gameendparam1name to pass a parameter with the command. Default="changelevel". You should be using a command that (leads to) changing the map, such as changelevel, sm_votemap, sm_umc_mapvote, etc.
- Parameter to pass to sm_css_tag_gameendcmd. If the string is an existing cvar, such as sm_nextmap, the evaluation of the cvar will be passed, otherwise the string will be passed as a literal. Default = "sm_nextmap"
Unzip the attached archive and merge it into your cstrike game folder.
SRCDS for CS:S. No other plugins, extensions, or other files not included here are required. This plugin may work with CS:GO, I have no way to test that, give it a whirl if you wish.
The compiled plugin is stored in the ...\cstrike\addons\sourcemod\plugins\disabled folder. Depending on how you want to use it, you can load it from the server console with "sm plugins load disabled\sm_css_tag", or you can stick that same command in your server.cfg or some other configuration file, or you can move the file into the plugins folder.
As of version public.beta.2013.06.13.17.36, you can now load the game with the server command: exec loadtaggame.cfg
, and the game is set to auto-unload in the included sm_css_tag.cfg file.
It is suggested that you load the game with a per-map .cfg in ...\cstrike\maps\cfg, and have maps with a special prefix just for tag. For example, copy de_dust.bsp and de_dust.nav to tg_dust.bsp and tg_dust.nav, respectively. Also upload these to your fastdownload server, if you have one. Now create a text file ...\cstrike\maps\cfg\tg_dust.cfg that contains this:
This is the best way to run tag side by side with other game types.
There is an optional file, sm_css_tag_otherplugins.cfg located in cstrike\addons\sourcemod\configs folder. This is a key values file that can be used to unload and/or load other plugins when sm_css_tag starts and/or ends. Formatting is fairly simple and explained in detail in the sample file provided. The sample file is set up to unload the teambets and knifemug plugins, so make sure to modify or delete the sample sm_css_tag_otherplugins.cfg file if you wish to play sm_css_tag and have either of those other plugins running.
In addition to the required GPL license, all of the attached files are NO-BSware and complete freeware. Use any of it in any way you wish. It would be nice to mention me or give thanks, but not required. Nothing is required unless specifically required by the GPL license.
As mentioned, this is still in Beta, and I know there is more to be added and changed. As per my license above, anyone is free to modify the code in any way they wish. As far as modifications I make to the code released here, it will depend on how important I think it is, and how much interest there is in the code at all. There are some features I plan to add/modify already, but as far as adding some huge feature that only one or 2 people want, I wouldn't wait for me to do that, unless it's a really good idea. Personally, I think most of the tweaking will come in the existing configuration files. You can really change the game drastically with what's already configurable there.
Thanks to the authors of the Predator plugin. It doesn't look like it's supported anymore, but while looking around for something different to put on my server like jailbreak or build, I came across that plugin which actually inspired me to make this plugin.
version public.beta.2013.06.13.17.36: This version is playable and ready for review. Minor code clean up since last version. Changed the setting in the included .cfg file. Added loadtaggame.cfg to the .zip file.
version public.beta.2013.06.09.13.47: Fixed all known issues, discovered some others and fixed those. Rules are now sent via a panel rather than through chat. Set traps for all cvar changes. Game should be friendly to loading from the command line, or from a .cfg file. Added cvar sm_css_tag_gametimertweak to tweak timing of end of game and map vote/map change.
version public.beta.2013.05.26.14.34: Fixed known issue #2. Fixed some other issues related to ending the game with plugin loaded. Fixed some scoring and health regeneration issues. Changed some cvar data in the .cfg file. Plugin made more friendly to server command line loading (I still suggest that you load it from a .cfg file though).
version public.beta.2013.05.05.01.51: Some small items fixed since original release. The most important item was anti-trolling put in to keep players that are "IT" from disconnecting and reconnecting. Any player that is "IT" who tries to change teams is given a denial message. If the same player disconnects, then reconnects, when they try to join a team they are also denied for the remainder of the map.