EventScripts Forums
Mattie's EventScripts and Source Forums
Mattie recommends...
Premier Sponsor:Platinum Sponsor:
 
Script Categories
addon (49) admin (269) admins (14) advert (15) adverts (19) afk (15) alerts (12) ammo (23) anti (15) auth (16) automatic (12) awp (23) ban (18) ba_jail (17) bhop (19) block (19) bomb (40) bonus (23) bot (24) bot-management (19) bots (17) bunnyhop (11) Buy (21) cash (65) chat (57) cheat (11) clan (16) classes (22) color (21) colors (18) command (20) commands (18) config (22) connect (42) CS:S (16) css (2498) Damage (35) database (11) dead (15) death (19) deathmatch (70) deathrun (12) disconnect (18) Dissolve (11) dm (20) dod:s (11) dods (386) easy (17) effects (120) English (15) entity (21) es_tools (12) Eventscript (12) flashbang (25) français (99) french (36) fun (286) funny (16) Gabeee (11) gameplay (174) give (16) gravity (11) grenade (25) grenades (29) gun (14) GunGame (26) GunGame5 (11) guns (17) Hack (15) headshot (32) health (54) hegrenade (13) hl2dm (329) HP (13) info (48) information (16) jail (26) jailbreak (11) join (23) jump (12) kick (23) kill (44) kills (22) knife (57) leveling (36) management (14) mani (15) map (25) map-management (27) maps (15) match (17) menu (106) message (20) messaging (52) mod (109) model (14) models (32) money (42) motd (12) music (29) mute (18) nades (18) name (13) noblock (35) player (40) player-management (31) player-tracking (28) popup (55) props (23) protection (27) punishment (50) python (63) quake (18) radio (21) random (36) rank (35) rates (16) rcon (13) realism (21) respawn (61) restrict (36) round (20) rpg (24) rules (42) say (11) scout (19) Script (20) script-helper (25) scriptpack (33) sdk (149) server (44) server-tools (42) shop (12) silly (31) simple (27) skins (24) slay (13) soccer (11) sound (45) sounds (92) spawn (62) speed (25) statistics (13) stats (48) STEAMID (23) Superhero (13) surf (31) Team (25) team-balance (14) teleport (11) text (14) TF2 (143) time (17) timer (14) tools (15) tracers (17) triggers (11) uedi (18) uses_auth (18) utility (11) vip (11) vote (36) voting (22) war (20) wcs (24) wcs:Python (32) weapon (77) weapons (114) web (14) welcome (12) zm (24) zombie (90) zombiemod (51) zombies (11)
Script Authors
*XYZ*SaYnt (12) .:MiB:. (11) .eMko* (6) 101satoon101 (10) 3R10N (24) 4u571n91 (5) 7355608 (9) Absolute (8) Ace Rimmer (40) adminc (5) Adz (8) AgathaKnuppelkuh (8) aidden (8) ajax (5) ak_47 (6) Al3c Tr3v3lyan (6) allstareng (5) ashbash1987 (9) ATAMAH (7) aznone (5) B00M (5) BackRaw (41) BFH_RedBull (8) bigfabi (7) Bioko (7) Blade (10) bladesback (13) bobdole (11) bodzsar1 (8) bonbon (36) Brainsucker (30) cagemonkey (8) carbon-14 (10) CaskioUTF (5) cbirou (15) ChaCaLz2psy4 (5) CharlesT (5) Chrisber (5) chrismrulz (9) Chun (6) cladiron (10) clipz934 (8) Colster (21) Cookieman8 (7) craziest (10) DanielB (19) Darkness123 (8) Dave (9) dbozan99 (7) deathx9 (5) Deathyy (15) dhack (16) Di[M]aN (12) DoCky (27) Don (15) dordtcore (8) DragonFreddo (8) Drassil (5) Einlanzers (42) EmbouT (10) emilplov (7) Errant (10) Eun (6) Fantole (9) Franc1sco (9) freddukes (18) Frequency (6) Fulmine (5) GAMEREN2 (8) german9114 (13) GODJonez (38) GoodfellaDeal (5) Hansi (6) HitThePipe (7) HOLLDIDAY (9) Icetouch (6) ichthys (25) infamous1 (9) Jeff91 (45) JoeyT2006 (30) Juba_PornBorn (12) jxl180 (10) KDBFame (6) L'In20Cible (7) Largo Usagi (10) Lobe (11) loKkdoKk (7) lolo-le-haricot (7) LosNir (5) Lumpi@Work (9) M4rc3L-XCN (7) macshot (6) Matth (5) Mattie (20) MBchrono (15) McFly (20) Medda (5) Memphis-84 (10) Messiah93 (12) Mickyy (5) micmacx (6) Mitchell (5) Mordavolt (7) MrScriptaz (5) mryoung (6) Nicolous (26) ojii (31) Omega_K2 (6) Owned|Myself (8) P3N (7) pand3mic (5) parsimba (5) Pascal257 (9) PatPeter (7) PDrop (10) Phaedrus (18) PhantOm Fury (7) phoenix131 (8) pinkyyy -.- (5) pitbull0993 (7) randomknifer (9) Ratzee (6) ReaCtioN2oo9 (6) Rennnyyy (17) revolutionfighters (6) RideGuy (12) Rio (9) Roeliekt (6) runamagic (13) sandking220 (6) Sarcasm_Poisoning (10) saRs| Johnny-5 (13) Schubaal (10) sea212 (5) sega74rus (7) sgt.angel (6) sicilia (5) sicman_adrian (22) skillz92 (7) sn4k3 (18) snake38 (10) sonicsight (7) spoonman184 (8) stabby (22) stas (22) Strontium Dog (30) SumGuy14 (25) SuperDave (45) surfteam (5) TaCo (5) TanaToS (17) Tealk (6) teowow (16) TheCheeTaH (20) TheDonFather (5) theresthatguy (6) Tiny Tod (7) Totyahun (9) uedi (38) Undead (25) usernamesaretaken (15) Warren (13) westham (6) WhiteAvenger (7) Wonder (14) X-Mania (5) XE_ManUp (13) xfalcon61 (5) zSweetXz (5) [Cs]Lord_Inferno2 (11) [NATO]Hunter (28) ||Wolf|| (10)
Search

Post new topic Reply to topic
Author Message
User avatar
EventScripts Administrator
EventScripts Administrator
Profile

Posts: 3479
Location:
Calgary, Waterloo, Ottawa
 
New postPosted: 2006-12-09, 10:10 am 
   Post subject: Spectator Kicker DM Version 1.0

Spectator Kicker DM version v1.0

Features:
    Should work will all source games
    Kicks players that spectate for a set number of seconds
    Admin immunity. Admin list part of script
    This works with DM server because it periodically checks on the player_death event. You can the period of deaths with spec_checkperiod
    If you set that to 5 then every 5 deaths the script will increment players idle time
    NOTE: You if you change this variable you must reload the script to make changes take affect


Requirements:
    Eventscripts v1.3 or higher link

Install:
    Put the supplied code into addons/eventscripts/spectate_kick_dm/es_spectate_kick_dm.txt
    add es_load spectate_kick_dm
    to autoexec.cfg
    restart server


Settings:
Code:
spec_checkperiod 5 //Number of deaths in between spec checks. NOTE: Changing this only comes into effect when you reload the script
spec_kick_enable 1 //enable or disable spectate kick
spec_timelimit "120.0" //Number of seconds before a spectator is kicked
spec_admin_immune 0 //Enable admin immunity
spec_kick_reason "spectator for too long"
spec_min_players 16 //set this to the minimum number of players before the spectator kicker will be activated

es_xkeycreate spec_kick_admins "steam_0:0:5333515"
//Remove the comment //'s below and add your own admins steamid like the one above
//es_xkeycreate spec_kick_admins "steam_0:0:xxxxxxx"
//es_xkeycreate spec_kick_admins "steam_0:0:xxxxxxx"
//es_xkeycreate spec_kick_admins "steam_0:0:xxxxxxx"



cstrike/addons/eventscripts/spectate_kick_dm/es_spectate_kick_dm.txt
ES:
    //Spectate Kicker DM version v1.0 by ichthys

    //for Mattie's Eventscripts v.1.3+  <!-- m --><a class="postlink" href="http://mattie.info/cs/">http://mattie.info/cs/</a><!-- m -->



    block config

    {

            spec_checkperiod 3 //Number of deaths in between spec checks. NOTE: Changing this only comes into effect when you reload the script

            spec_kick_enable 1 //enable or disable spectate kick

            spec_timelimit "120.0" //Number of seconds before a spectator is kicked

            spec_admin_immune 0 //Enable admin immunity

            spec_kick_reason "spectator for too long"

            spec_min_players 16 //set this to the minimum number of players before the spectator kicker will be activated



            es_xkeycreate spec_kick_admins "steam_0:0:5333515"

            //Remove the comment //'s below and add your own admins steamid like the one above

            //es_xkeycreate spec_kick_admins "steam_0:0:xxxxxxx"

            //es_xkeycreate spec_kick_admins "steam_0:0:xxxxxxx"

            //es_xkeycreate spec_kick_admins "steam_0:0:xxxxxxx"

    }



    block load

    {

            //initialize variables

            es_xsetinfo spec_checkperiod 0

            es_xsetinfo spec_kick_enable 0

            es_xsetinfo spec_timelimit 0

            es_xsetinfo spec_admin_immune 0

            es_xsetinfo spec_team 0

            es_xsetinfo spec_reset 0

            es_xsetinfo spec_msg 0

            es_xsetinfo spec_kick_reason 0

            es_xsetinfo spec_timeconnected 0

            es_xsetinfo spec_lasttime 0

            es_xsetinfo spec_idletime 0

            es_xsetinfo spec_min_players 0

            es_xsetinfo spec_dead 0

            es_xsetinfo spec_exists 0

            es_xsetinfo spec_format 0

            es_xsetinfo spec_isbot 0

            es_xsetinfo spec_kick_version "1.0dm"

            es_xmakepublic spec_kick_version



            es_xsetinfo spec_count 0



            es_xkeygroupcreate spec_kick

            es_xkeygroupcreate spec_kick_admins

            es_xdoblock spectate_kick_dm/config

            es_format spec_count "es kickid server_var(spec_key) %1" server_var(spec_kick_reason)

            es alias alias_spec_kick server_var(spec_count)

           

            es_xcreateplayerlist spec_kick_temp

            es_xforeachkey spec_key in spec_kick_temp "es_xdoblock spectate_kick_dm/createkeys"

            es_xkeygroupdelete spec_kick_temp

           

            //Create alias's for checks

            alias spec_check "spec_check_1"

           

            es_xsetinfo spec_pointer 1

            es_xdoblock spectate_kick_dm/createalias

    }



    block createkeys

    {

            es_keygetvalue spec_isbot spec_kick_temp server_var(spec_key) isbot

            if (server_var(spec_isbot) = 0) do

            {

                    es_keycreate spec_kick server_var(spec_key)

                    es_keysetvalue spec_kick server_var(spec_key) idletime 0

                    es_keygetvalue spec_timeconnected spec_kick_temp server_var(spec_key) timeconnected

                    es_keysetvalue spec_kick server_var(spec_key) lasttime server_var(spec_timeconnected)

            }

    }



    block createalias

    {

            if (server_var(spec_pointer) = server_var(spec_checkperiod)) do

            {

                    es_format spec_alias_name "spec_check_%1" server_var(spec_pointer)

                    es alias server_var(spec_alias_name) "es_xdoblock spectate_kick_dm/check; alias spec_check spec_check_1"

            }

            else do

            {

                    es_format spec_alias_name "spec_check_%1" server_var(spec_pointer)

                    es_xmath spec_pointer + 1

                    es_format spec_alias_command "alias spec_check spec_check_%1" server_var(spec_pointer)

                    es alias server_var(spec_alias_name) server_var(spec_alias_command)

                    es_xdoblock spectate_kick_dm/createalias

            }

    }



    block spec_spawn

    {

            es_keygetvalue spec_isbot spec_kick_temp server_var(spec_key) isbot

            if (server_var(spec_isbot) = 0) do

            {

                    es_keygetvalue spec_dead spec_kick_temp server_var(spec_key) isdead

                    if (server_var(spec_dead) = 1) do

                    {

                            es_keygetvalue spec_team spec_kick_temp server_var(spec_key) teamid

                            if (server_var(spec_team) < 2) do

                            {

                                    es_xsetinfo spec_admin 0

                                    if (server_var(spec_admin_immune) equalto 1) do

                                    {

                                            es_getplayersteamid spec_steamid server_var(spec_key)

                                            es_exists spec_admin key spec_kick_admins server_var(spec_steamid)

                                    }

                                   

                                    if (server_var(spec_admin) equalto 0) do

                                    {

                                            es_keygetvalue spec_idletime spec_kick server_var(spec_key) idletime

                                            es_keygetvalue spec_lasttime spec_kick server_var(spec_key) lasttime

                                            es_keygetvalue spec_timeconnected spec_kick_temp server_var(spec_key) timeconnected

                                            es_keysetvalue spec_kick server_var(spec_key) lasttime server_var(spec_timeconnected)

                                            es_math spec_timeconnected - server_var(spec_lasttime)

                                            es_math spec_idletime + server_var(spec_timeconnected)

                                            es_keysetvalue spec_kick server_var(spec_key) idletime server_var(spec_idletime)

                                            if (server_var(spec_idletime) >= server_var(spec_timelimit)) do

                                            {

                                                    es_keygetvalue spec_msg spec_kick_temp server_var(spec_key) name

                                                    es_getgame spec_count

                                                    if (server_var(spec_count) = "Counter-Strike: Source") do

                                                    {

                                                            es_format spec_msg "#lightgreenichthys Specator Kicker DM version::#green %1 #defaultkicked.#green %2s#default idle" server_var(spec_msg) server_var(spec_idletime)

                                                    }

                                                    else do

                                                    {

                                                            es_format spec_msg "ichthys Specator Kicker DM version:: %1 kicked. %2s idle" server_var(spec_msg) server_var(spec_idletime)

                                                    }

                                                    es_msg #multi server_var(spec_msg)

                                                    alias_spec_kick

                                            }

                                    }

                            }

                    }

            }

    }



    block check

    {

            if (server_var(spec_kick_enable) equalto 1) do

            {

                    es_xsetinfo spec_playercount 0

                    es_xgetplayercount spec_playercount

                    if (server_var(spec_playercount) >= server_var(spec_min_players)) do

                    {

                            es_xcreateplayerlist spec_kick_temp

                            es_xforeachkey spec_key in spec_kick_temp "es_xdoblock spectate_kick_dm/spec_spawn"

                            es_xkeygroupdelete spec_kick_temp

                    }

            }

    }



    event player_connect

    {

            es_keycreate spec_kick event_var(userid)

            es_keysetvalue spec_kick event_var(userid) idletime 0

            es_keysetvalue spec_kick event_var(userid) lasttime 0

    }



    event player_disconnect

    {

            es_exists spec_exists key spec_kick event_var(userid)

            if (server_var(spec_exists) = 1) then es_xkeydelete spec_kick event_var(userid)

    }



    event player_death

    {

            spec_check

    }



    event player_team

    {

            if (event_var(disconnect) = 0) do

            {

                    es_isbot spec_isbot event_var(userid)

                    if (server_var(spec_isbot) = 0) do

                    {

                            if (event_var(team) > 1) do

                            {

                                    es_createplayerlist spec_kick_temp event_var(userid)

                                    es_keygetvalue spec_timeconnected spec_kick_temp event_var(userid) timeconnected

                                    es_keysetvalue spec_kick event_var(userid) lasttime server_var(spec_timeconnected)

                                    es_keysetvalue spec_kick event_var(userid) idletime 0

                            }

                    }

            }

    }



    block unload

    {

            es_xkeygroupdelete spec_kick

            es_xkeygroupdelete spec_kick_admins

    }

_________________
Image
Image





User avatar
Professor
Professor
Profile

Posts: 1992
Location:
127.0.0.1
 
New postPosted: 2006-12-10, 8:58 am 

That's awesome, ichthys! I'm going to load it on my Gun Game servers now. 8)

_________________
Cagemonkey I [GunGame] 4 Join now!
ninja monkeys are meeting as we speak, plotting my demise
Image


Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 2 posts ] 


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group