AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Plugins (https://forums.alliedmods.net/forumdisplay.php?f=108)
-   -   [CS:S] SM CS:S Tag Beta (https://forums.alliedmods.net/showthread.php?t=215217)

Bittersweet 05-04-2013 23:00

[CS:S] SM CS:S Tag Beta
 
1 Attachment(s)
Description:
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.

Known Issues:
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.

Cvars:
sm_css_tag_itstartmoney - First spawn start money for IT. Min=0, Max=4000
sm_css_tag_ctstartmoney - First spawn start money for a CT. Min=0, Max=2000
sm_css_tag_itraise - Raise for each consecutive spawn as IT. Min=500, Max=4000
sm_css_tag_ctraise - Raise for each consecutive spawn as a CT. Min=0, Max=1000
sm_css_tag_itkillreward - 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.
sm_css_tag_ctspawn - 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.
sm_css_tag_itspawn - Points deducted for spawning as IT. 0=disabled, must be 0 or a negative number Min=-5, Max=0
sm_css_tag_pointstowin - Points needed to win game. Score is checked when IT is killed or end of round. No ties are allowed. Min=10, Max=1000
sm_css_tag_gametimer - Game timer in minutes. 0 = disabled. Min=0, No Max
sm_css_tag_gametimertweak - 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
sm_css_tag_roundtime - Round time foramtted as minutes.hundreths_of_a_minute. Min=1.00, Max=99.99
sm_css_tag_autounloadplugin - Automatically unload the plugin at the end of the game. 0 = no, 1 = yes. Min=0, Max=1
sm_css_tag_gameendcmd - 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.
sm_css_tag_gameendparam1name - 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"

Installation:
Unzip the attached archive and merge it into your cstrike game folder.

Dependencies/Requirements:
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.

Activation/Enabling:
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:
Code:

exec loadtaggame.cfg
This is the best way to run tag side by side with other game types.

Additional Features:
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.

License:
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.

Beta:
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:
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.

Changelog:
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.

ecca 05-05-2013 12:53

Re: [CS:S] SM CS:S Tag Beta
 
So if i get the description right there is only one "IT" (Terrorist) which should try to kill the other Counter-Terrorists ?

Bittersweet 05-05-2013 13:10

Re: [CS:S] SM CS:S Tag Beta
 
Quote:

Originally Posted by ecca (Post 1946375)
So if i get the description right there is only one "IT" (Terrorist) which should try to kill the other Counter-Terrorists ?

Yes, one "IT", until "IT" kills a CT, at which time the round ends in a round draw, and the killed CT becomes "IT", while the previous "IT" becomes a CT for the next round. The idea, just like the real game of Tag, is to not be IT. "IT" cannot score any points, but "IT" can lose points each time "IT" spawns depending on how the game is configured. Points are gained by spawning as a CT and/or killing "IT".

Doc-Holiday 05-06-2013 07:59

Re: [CS:S] SM CS:S Tag Beta
 
If not too difficult a freeze tag option would be cool.

Bittersweet 05-06-2013 08:15

Re: [CS:S] SM CS:S Tag Beta
 
Quote:

Originally Posted by Doc-Holiday (Post 1946858)
If not too difficult a freeze tag option would be cool.

The round ends after a player gets "tagged" (killed). So by simply adjusting mp_freezetime...

Doc-Holiday 05-06-2013 09:45

Re: Re: [CS:S] SM CS:S Tag Beta
 
Quote:

Originally Posted by Bittersweet (Post 1946867)
The round ends after a player gets "tagged" (killed). So by simply adjusting mp_freezetime...

I meant freeze tag. The t player "kills" a ct who is frozen until his teammate frees him. It would take slight modification but freezer tag is alot of fun in cz lol

Bittersweet 05-06-2013 21:51

Re: [CS:S] SM CS:S Tag Beta
 
Quote:

Originally Posted by Doc-Holiday (Post 1946912)
I meant freeze tag. The t player "kills" a ct who is frozen until his teammate frees him. It would take slight modification but freezer tag is alot of fun in cz lol

Are you talking about this: https://forums.alliedmods.net/showthread.php?p=1281802

That's a pretty big modification to what I have now, completely changes the idea. That said, I'd think about doing it at a later time, but as a separate project.

Doc-Holiday 05-07-2013 00:38

Re: Re: [CS:S] SM CS:S Tag Beta
 
Quote:

Originally Posted by Bittersweet (Post 1947243)
Are you talking about this: https://forums.alliedmods.net/showthread.php?p=1281802

That's a pretty big modification to what I have now, completely changes the idea. That said, I'd think about doing it at a later time, but as a separate project.

Yes. And it is fun haha

NinjaSK 05-19-2013 10:11

Re: [CS:S] SM CS:S Tag Beta
 
Which maps do you recommend for testing this plugin? :)

Bittersweet 05-20-2013 21:12

Re: [CS:S] SM CS:S Tag Beta
 
Quote:

Originally Posted by NinjaSK (Post 1954450)
Which maps do you recommend for testing this plugin? :)

Well, this plugin is suffering from some bugs at the moment. You'll have to play with it to get it to work correctly. Working correctly, there should be only one person on T's, the "IT". That might sound unfair at first, but remember that the IT only needs to kill one person to get off of being "IT", and that the best way to score positive points is by killing the "IT".

All that said, I haven't had as much time to spend testing or fixing this plugin. Feedback from others is appreciated. The way I was trying to run this plugin is by loading from a map specific .cfg file, files with a tg_ prefix. "But wait, what map files have that prefix?", you ask. None as far as I know, they are other files copied with the prefix changed by me to tg_, and you do not need to do this at all to use the plugin. This is just a method I use to control game type to run things like VIP, GunGame, and stuff like this side by side on the same server. The gametype is determined by the map, which is determined by vote - that's how I do it.

It really depends on how you run your server, number of slots, how you configure the game, etc. on what map(s) to use. With one player as the "IT", this could quickly become "Hide 'n Seek" instead of "Tag" on large map. I prefer to run my server with quick rounds. Players like to play more than they like to spectate, but that's just what I do. With the limited testing I've done, I like it with the fy_iceworld map. I think it would work good on other small/medium maps, especially maps that have weapons laying around to pick up.

I've had another plugin that just leveled out, and once everything gets sorted out after the CS:S update today, this will be my #1 plugin project, so the more feedback I get up front, the more I can fix. See the added "Known Issues" above (adding now) for details.


All times are GMT -4. The time now is 18:41.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.