UltimatePlugin
by
tonykaram1993
Description
Top
We all know the famous
amx_super plugin. Most servers use it as a wonderful administrative tool to let admins take control over their servers and manage it in a better and more efficient way. At first I started by editing that plugin to make it use less resources and do things in a better way (AFAIK). But later, I ended up rewriting the whole thing from scratch (ofc it is based on amx_super so a lot of resemblance can be found). I hope I succeeded in my mission. I am not the best coder there is, but I think I have some good knowledge in scripting (I hope

).
NOTE: why post this plugin if you can use the original amx_super? Well AFAIK, amx_super has stopped being worked on or progress is going immensely slow since the developers/authors are busy. Have a look
here 
.
Plugins Included
Top
Code:
PLUGIN_NAME PLUGIN_AUTHOR
Admin Check (by OneEyed)
Admin Restart/Shutdown (by Hawk552)
Admin Heal (by F117Bomb)
Admin Armor (by F117Bomb)
Admin Bury/Unbury (by v3x)
Admin Ammo (by AssKicR)
Admin Revive (by anakin_cstrike)
Admin Disarm (by mike_cao)
Admin Noclip (by watch)
Admin Godmode (by watch)
Admin Blanks (by EKS)
Admin NoBuy (by AssKicR)
Admin Score (by Freecode)
Admin Listen (by sMaxim)
Admin Rocket (by F117Bomb)
Admin Extend (by JSauce)
Admin Speed (by X-olent)
Admin Badaim (by Twistedeuphoria)
Admin Drug (by X-Olent)
Admin Lock (by Bmann_420)
Admin Gravity (by JustinHoMi)
Admin PersonalGravity (by GHW_Chronic)
Admin Auto-Slay (by fezh)
Admin Password (by Sparky911)
Admin Transfer (by Deviance)
Admin Swap (by Deviance)
Admin Team Swap (by Deviance)
Admin Glow (by Kensai)
Admin Glow2 (by Kensai)
Admin Gag (by EKS)
Reset Score (by silentt)
Command Search (by GHW_Chronic)
Advanced Bullet Damage (by Sn!ff3r)
Spawn Refund (by tonykaram1993)
Auto Restart (by vato loco [GE-S])
Aim Practice (by rompom7)
Dead Listen (by sMaxim)
Standard Admin Color Chat (by vandercal)
AFK Bomb Transfer (by VEN)
Join/Leave Announcments (by BigBaller)
Shown Dead Spectator Fix (by Vantage)
C4 Timer (by Cheap_Suit)
No More Rcon (by ??)
AFK Manager (by hoboman)
Player IP (by tonykaram1993)
Loading Songs (by White Panther)
Spectator Menu Bug Fix (by Gray Death)
To Spec and Back (by Regalis)
Mute Menu (by Cheap_Suit)
Spawn Protection (by tonykaram1993)
Commands:
Top
Client Commands:
NOTE: all chat commands are applicable through 'say' and 'say_team'
Code:
COMMAND COMMAND_DESCRIPTION
/rs - Resets player score
/resetscore - Resets player score
/admin - Prints the list of online admins
/admins - Prints the list of online admins
/spec - Transfer player to spec without affecting the score
/unspec - Transfer player back to his team without affecting the score
/gravity - Check the current gravity
/alltalk - Check the alltalk value
/version - Prints the name and version of the plugin
/mute - Pops up a menu were you can mute individual players
/randmusic - Plays a random song from the loading songs (if you have a cd in the tray, it will play one of those songs)
/stopmusic - Stops the song in play
/upmenu - Opens up the commands menu (only if the 'UltimatePluginMenu' plugin is installed)
Admin Commands:
Format:
Code:
[ ] : optional
< > : obligatory
| : or
# : number
@T : Terrorists
@CT : Counter-Terrorists
@ALL : All
@SPEC : Spectators
COMMAND COMMAND_DESCRIPTION
COMMAND_EXAMPLES
ADMIN_LEVEL_A (fun):
Code:
amx_heal "<nick | #userid | authid | @> <#hp>" - Gives player certain ammount of health (ALIVE ONLY)
amx_heal tony 10 - Gives tony 10 hp
amx_heal @CT 10 - Gives CT players 10 hp
amx_hp "<nick | #userid | authid | @> <#hp>" - Sets player health to a certain ammount (ALIVE ONLY)
amx_hp tony 10 - Sets tony's hp to 10
amx_hp @ALL 1 - Sets everyone's hp to 1
amx_armor "<nick | #userid | authid | @> <#ap" - Gives player certain ammount of armor (ALIVE ONLY)
amx_armor tony 100 - Gives tony 100 armor
amx_armor @T 50 - Gives T players 50 armor
amx_ap "<nick | #userid | authid | @> <#ap" - Sets player armor to a certain ammount (ALIVE ONLY)
amx_ap tony 0 - Sets tony's armor to 0
amx_ap @SPEC 100 - Sets ALIVE specator players's armor to 100
amx_unammo "<nick | #userid | authid | @> [0 | 1] - 0:Off | 1:On" - Give player unlimited CLIP ammo (ALIVE ONLY) (NO PARAM = OFF)
amx_unammo tony 1 - Turn ON unlimited clip ammo for tony
amx_unammo @ALL - Turn OFF everyone's unlimited clip ammo
amx_unammobp "<nick | #userid | authid | @> [0 | 1] - 0:Off | 1:On" - Give player unlimited BP ammo (ALIVE ONLY) (NO EFFECT IF PLAYER HAS UNLIMITED CLIP AMMO) (NO PARAM = Off)
amx_unammobp tony 1 - Turn ON unlimited bp ammo for tiny
amx_unammobp @T - Turn OFF unlimited bp ammo for all T players
amx_score "<nick | #userid | authid | @> <#frags> <#deaths>" - Change player's frags and deaths
amx_score tony 2000 2 - Set tony's score to 2000 frags and 2 deaths (I rock :P)
amx_score @ALL 0 0 - Set everyone's score to 0 frags and 0 deaths
amx_revive "<nick | #userid | authid | @> [#health] [#armor]" - Make a player respawn in his spawn
amx_revive tony - Revives tony
amx_revive @CT 250 - Revives CT players with 250 health and 0 armor
amx_revive @T 100 100 - Revives T players with 100 health and 100 armor
amx_noclip "<nick | #userid | authid | @> [0 | 1 | 2] - 0:Off | 1:On | 2:On + Every Round" - Set a player's noclip status (NO PARAM = OFF) (ALIVE ONLY)
amx_noclip tony 2 - Give tony noclip every round
amx_noclip @CT 1 - Give CT players noclip for one round
amx_noclip @T - Remove T players' noclip
amx_godmode "<nick | #userid | authid | @> [0 | 1 | 2] - 0:Off | 1:On | 2:On + Every Round" - Set a player's godmode status (NO PARAM = OFF) (ALIVE ONLY)
amx_godmode tony 2 - Give tony godmode every round
amx_godmode @CT 1 - Give CT players godmode for one round
amx_godmode @T - Remove T players's godmode
amx_userorigin "<nick | #userid | authid | @>" - Save a player's origin (ALIVE ONLY)
amx_userorigin tony - Save tony's origin coordinates (to be used later in amx_teleport)
amx_teleport "<nick | #userid | authid | @> [x] [y] [z]" - Teleport player to an origin (NO PARAM = SAVED ORIGIN) (ALIVE ONLY)
amx_teleport tony - Teleport tony to location saved when amx_userorigin is used
amx_teleport @CT 0 0 0 - Teleprt CT players to location x=0 y=0 z=0
amx_speed "<nick | #userid | authid | @> [0 | 1] - 0:Off | 1:On" - Set a player's speed status (NO PARAM = OFF) (ALIVE ONLY)
amx_speed tony 1 - Give tony speed
amx_speed @ALL - Remove everyone's speed
amx_drug "<nick | #userid | authid | @>" - Give player drugs (ALIVE ONLY)
amx_drug tony - Give tony drugs
amx_drug @ALL - Give everyone drugs
amx_weapon "<nick | #userid | authid | @> <weaponname | weaponid> [ammo]" - Give a player a weapon (NO AMMO = MAX WEAPON AMMO) (ALIVE ONLY)
amx_weapon tony ak47 - Give tony ak47 with full bp ammo
amx_weapon tony 46 10 - Give tony awp (awp = #46) with 10 bp ammo
amx_weapon @ALL deagle - Give all players deagles with full bp ammo
ADMIN_LEVEL_B (punishments):
Code:
amx_blanks "<nick | #userid | authid | @> [0 | 1] - 0:Off | 1:On" - Make player's bullets without damage (NO PARAM = OFF)
amx_blanks tony 1 - Give tony blank bullets
amx_blanks @ALL - Remove everyone's blank bullets
amx_nobuy "<nick | #userid | authid | @> [0 | 1] - 0:Off | 1:On" - Set players ability to buy weapons (NO PARAM = OFF)
amx_nobuy tony 1 - Disable tony's ability to buy weapons
amx_nobuy @ALL - Allow everybody to buy weapons
amx_bury "<nick | #userid | authid | @>" - Put player in the ground and strip weapons (ALIVE ONLY)
amx_bury tony - Bury tony
amx_bury @T - Bury all T players
amx_unbury "<nick | #userid | authid | @>" - Remove player from the ground (ALIVE ONLY)
amx_unbury tony - Unbury tony
amx_unbury @T - Unbury all T players
amx_disarm "<nick | #userid | authid | @>" - Remove player's weapons (ALIVE ONLY)
amx_disarm tony - Disarm tony
amx_disarm @SPEC - Disarm ALIVE spectators
amx_uberslap "<nick | #userid | authid | @>" - Slaps player with power repetadely (ALIVE ONLY)
amx_uberslap tony - Slaps tony repetadely
amx_uberslap @CT - Slaps CT players repetadely
amx_fire "<nick | #userid | authid | @>" - Set player on fire (ALIVE ONLY)
amx_fire tony - Set tony on fire
amx_fire @T - Set T players on fire
amx_autoslay "<nick | #userid | authid | @> [0 | 1] - 0:Off | 1:On" - Set player's auto slay status (NO PARAM = OFF)
amx_autoslay tony 1 - Auto slay tony every time he spawns
amx_autoslay @ALL - Turn everyone's auto slay status to off
amx_rocket "<nick | #userid | authid | @>" - Make a rocket out of a player a.k.a. kill (ALIVE ONLY)
amx_rocket tony - Rocket tony
amx_rocket @SPEC - Rocket ALIVE spectator players
amx_badaim "<nick | #userid | authid | @> [0 | 1 | #seconds]" - Set player's badaim status (ALIVE ONLY) (NO PARAM = OFF)
amx_badaim tony 20 - Give tony badaim for 20 seconds
amx_badaim @ALL - Remove everyone's badadim
amx_badaim @T 1 - Set Terrorist player's badaim status to 1
amx_slay2 "<nick | #userid | authid | @> [0 | 1 | 2] - 0:Lightning | 1:Blood | 2:Explode" - Slay a player in different way (ALIVE ONLY) (NO PARAM = LIGHTNING)
amx_slay2 tony 2 - Make tony explode
amx_slay2 @ALL - Make all players get struck by lightning and die
amx_slay2 @T 1 - Make all T players gore blood and die
amx_gag "<nick | #userid | authid> [a | b | c] [#time] [reason]" - Gags the player with the specified flags (NO PARAM = DEFAULT)
amx_gag tony - Gags tony for 10 minutes and with all flags
amx_gag @ALL - INVALID
amx_gag tony abc 120 "because i can" - Gags tony with reason "because i can"
amx_ungag "<nick | #userid | authid>" - Ungags players
amx_ungag tony - Ungags tony
amx_ungag @T - INVALID
ADMIN_LEVEL_C (others):
Code:
amx_pgravity "<nick | #userid | authid | @> [#gravity]" - Change individual player's gravity (NO PARAM = OFF)
amx_pgravity tony 100 - Give ONLY tony 100 gravity
amx_pgravity @ALL - Set everyone's gravity to default
amx_pass "<password>" - Change the server's password
amx_pass tonyrocks - Change the server's password to "tonyrocks"
amx_nopass - Remove the server's password
amx_nopass - Removes the password
amx_ip "[nick | #userid | authid | @]" - Get a players ip (NO PARAM = ALL PLAYERS)
amx_ip tony - Prints tony's ip
amx_ip - Prints everyone's ip
amx_transfer "<nick | #userid | authid | @> [t | ct | spec]" - Transfer a player to another team (NO PARAM = OPPOSITE TEAM)
amx_transfer tony - Transfer tony to CT if he is T or to T if he is CT
amx_transfer @CT t - Transfer all CT players to terrorist team
amx_swap "<nick | #userid | authid> <nick | #userid | authid>" - Swap two players with each others (ONLY PLAYERS WITH OPPOSITE TEAMS)
amx_swap tony johndoe - Swap both players
amx_swapteams - Swap two teams with each others
amx_swapteams - Swaps all players
amx_glow "<nick | #userid | authid | @> [#r] [#g] [#b] [#a]" - Glow player (NO PARAM = OFF) (ALIVE ONLY)
amx_glow tony red - Glows tony red
amx_glow @ALL - Turn's off everyone's glow
amx_glow @T 0 0 255 100 - Glow terrorist players blue with alpha (a.k.a. transparency) 100
amx_glow2 "<nick | #userid | authid | @> [#r] [#g] [#b] [#a]" - Glow player permanently (NO PARAM = OFF) (ALIVE ONLY)
amx_glow2 tony red - Glows tony red
amx_glow2 @ALL - Turn's off everyone's glow
amx_glow2 @T 0 0 255 100 - Glow terrorist players blue with alpha (a.k.a. transparency) 100
ADMIN_LEVEL_D (affects everybody):
Code:
amx_hsonly "[0 | 1] - 0:Off | 1:On" - Set or remove headshot only gameplay (NO PARAM = OFF)
amx_hsonly 1 - Turn on hs only
amx_hsonly - Turn off hs only
amx_extend "<#minutes>" - Extend map by minutes
amx_extend 10 - Extend map 10 minutes
amx_lock "<CT | T | AUTO | SPEC>" - Lock teams (NO PARAM = ALL TEAMS)
amx_lock ct - Lock ct team
amx_lock - Lock all teams
amx_unlock "<CT | T | AUTO | SPEC>" - Unlock team (NO PARAM = ALL TEAMS)
amx_unlock t - Unlock t team
amx_unlock - Unlock all teams
amx_gravity "[#gravity]" - Change general gravity (NO PARAM = CHECK VALUE)
amx_gravity 100 - Change gravity to 100
amx_gravity - Check gravity value
OTHERS:
Code:
amx_reloadcvars - Reload all cvars
amx_reloadcvars - Reloads all cvars and changes take place immediately
amx_restart "<timer> - Min:0 | Max:60 | Cancel:-1" - Restarts server by a timer (NO PARAM = 0)
amx_restart - Instant server restart
amx_restart 15 - Restart in 15 seconds
amx_shutdown "<timer> - Min:0 | Max:60 | Cancel:-1" - Shuts down server by a timer (NO PARAM = 0)
amx_shutdown - Instant server shutdown
amx_shutdown 15 - Shutdown in 15 seconds
amx_search "<command>" - Search all commands containing that part
amx_seach glow - Seachs for all commands containing "glow" in it
amx_ultimatepluginmenu - Open the UltimatePluginMenu from console (ONLY IF UltimatePluginMenu IS INSTALLED)
CVARs
Top
NOTE: after changing the cvar, you will need to execute 'amx_reloadcvars' in the console for changes to take place, or wait for a new round.
Code:
// UltimatePlugin Configuration File
// ---------------------------------
// Author: "tonykaram1993"
// Version: "1.0.3"
// Plugin: "UltimatePlugin"
// Note: 0:Disable | 1:Enable
// Enable or disable the resetscore feature for all players
// Values: 0 | 1
// Default: 1
up_resetscore "1"
// Enable or disable the display messages to all players when
// a player resets his score
// Values: 0 | 1
// Default: 1
up_resetscore_display "1"
// Enable or disable the admin check for normal players
// Values: 0 | 1
// Default: 1
up_admincheck "1"
// Enable or disable the display of done and received damage next
// to the crosshair
// Values: 0 | 1
// Deafault: 1
up_abd "1"
// Enable or disable the display of done damage through the walls
// Values: 0 | 1
// Default: 1
// Note: this will not function 100% correctly, as sometimes it might not
// catch correctly done damage. YOU HAVE BEEN WARNED!
up_abd_walls "1"
// Enable or disable giving players a set ammount of money
// when they spawn
// Values: 0 | 1
// Deafult: 1
up_money "1"
// Set the ammount of money given when player is spawn
// Note: up_money must be 1 for this to take effect
// Deafult: 16000
up_money_ammount "16000"
// Enable or disable automatically restarting the round
// after map change or server start
// Values: 0 | 1
// Default: 1
up_autorr "0"
// Set the delay to automatically restart the round after map
// change or server start
// Note: up_autorr must be 1 for this to take effect
// Default: 45
up_autorr_delay "45"
// Enable or disable the use of only knife during autorr
// Note: players will not be able to buy weapons during this time
// Default: 1
up_autorr_knife "1"
// Enable or disable admin being able to see all chat messages
// Values: 0 | 1
// Default: 1
up_adminlisten "1"
// Enable or disable the ability for admin to see teamchat messages
// Values: 0 | 1
// Deafult: 1
up_adminlisten_team "1"
// Enable or disable dead players being able to see alive chat
// messages (say/say_team proof)
// Values: 0 | 1
// Default: 1
up_deadlisten "1"
// Enable or disable the ability for dead players to see alive players'
// team chat messages
// Values: 0 | 1
// Default: 0
up_deadlisten_team "0"
// Enable or disable afk checking
// Values: 0 | 1
// Default: 1
up_afk "1"
// Set the afk time a player can be at most
// Default: 60
// Note: you are advised to choose a number that is a multiple of 5 (or AFK_FREQUENCY
// that is in the source file)
up_afk_time "60"
// Set the type of punishment the player gets when he is afk
// Values: 0:No punishment | 1:Transfer to spec | 2:Kick player
up_afk_punishment "1"
// Enable or disable spectator afk checking
// Values: 0 | 1
// Default: 1
up_afk_spectators "1"
// Set the time that spectators can stay in spec
// Default: 180
// Note: you are advised to choose a number that is a multiple of 5 (or AFK_FREQUENCY
// that is in the source file)
up_afk_spectators_time "180"
// Enable or disable check of the bomb carrier if he is afk,
// and transfer the bomb to a non afk player
// Values: 0 | 1
// Default: 1
up_afkbombtransfer "1"
// Set the time that the player has to be afk in order to make
// the bomb transfer
// Default: 10
// Note: you are advised to choose a number that is a multiple of 5 (or AFK_FREQUENCY
// that is in the source file)
up_afkbombtransfer_time "10"
// Set whether a bomb timer is shown in place of the round time
// when bomb is planted
// Values: 0 | 1
// Default: 1
up_c4timer "1"
// Set the maximum number of minutes a map can be extended at most
// Default: 45
up_extend_max "45"
// Enalbe or disable the /spec command
// Values: 0 | 1
// Default: 1
up_speccommand "1"
// Specify the default time of gag
// Default: 600
// Note: this is in seconds, and not minutes (so 600 seconds is 10 minutes)
up_gag_time "600"
// Specify the default flags of gag
// Default: abc
up_gag_flags "abc"
// Enable or disable name changing when gagged
// Values: 0 | 1
// Default: 1
up_gag_blocknamechange "1"
// Disable or choose what type of join/leave announcements
// Values: 0:Disable | 1:HUD | 2:Chat
up_joinleave_announcements "0"
// Set the welcome messages
// Default: "%name% has joined!\nEnjoy the Server!\nCurrent Ranking is %rankpos%"
// Note: leave empty if you want to disable only welcome messages
up_connect_message "%name% has joined!\nEnjoy the Server!\nCurrent Ranking is %rankpos%"
// Set the leave messages
// Default: "%name% has left!\nHope to see you back sometime."
// Note: leave empty if you want to disable only leave messages
up_leave_message "%name% has left!\nHope to see you back sometime."
// Set the prefix for ingame messages
// Default: [UP]
up_plugin_prefix "[UP]"
// Set the time of the advertisement message (or disable it)
// Default: 10
// Note: type 0 to disable it. I ask you not to disable it, cause that way players
// will know what plugin is running and it becomes more popular. Thank you!
up_advertisement "10"
// Set the time or disable the spawn protection feature
// Default: 0
up_sp "0"
// Enable or disable glowing effect when sp is active
// Default: 1
// Note: 0:No Glow | 1:Team color glow | 2:white glow
up_sp_glow "1"
// Other essentiel cvars
sv_maxspeed "9999" // This is a must in order for amx_speed to work properly
Customizable Defines
Top
NOTE: these are the defines that you can customize to your liking. After editing them, you will need to recompile the plugin for it to take effect (you need to edit these in the source file a.k.a. '.sma')
Code:
/*
Below is the section where normal people can safely edit
its values.
Please if you don't know how to code, refrain from editing
anything outside the safety zone.
Experienced coders are free to edit what they want, but I
will not reply to any private messages nor emails about hel-
ping you with it.
SAFETY ZONE STARTS HERE
*/
/*
Set this to your maximum number of players your server can
hold.
*/
#define MAX_PLAYERS 32
/*
If you wish not to have green message on your server, you
should comment line 133. Else keep it as it is.
Commenting a line is when you add '//' at the beginning of
the line.
NOTE: if GREEN_CHAT is defined, then the plugin must be
above the admin_chat.amxx plugin in the plugins.ini file.
Else the std admin color chat, will not function.
*/
#define GREEN_CHAT 1
/*
This will control whether green messages are shown. Comment
to disable the colored messages
Note: prefix is always colored in green
*/
#define COLOR_CHAT 1
/*
ADMIN_LISTEN is the access the admin must have in order to
see all the players' messages. For the full list of admin
rights, please check the following file:
c:\...\scripting\includes\amxconst.txt.
*/
#define ADMIN_LISTEN ADMIN_BAN
/*
Below are the limits that admins can use to set the health/armor
of a player. The reason that this exists is to prevent admin
from giving players 200,000 health/armor and risk crash the
server.
*/
#define MIN_HEALTH 1
#define MAX_HEALTH 20000
#define MIN_ARMOR 0
#define MAX_ARMOR 1000
/*
Below are the default values of each the health and armor
whitch are used when the admin who revives a player does
not specify an exact ammount of health and/or armor.
Note: MIN_/MAX_ HEALTH/ARMOR values still apply.
*/
#define SPAWN_DEF_HEALTH 100
#define SPAWN_DEF_ARMOR 0
/*
Below is to specify whether the revive function include
already alive players or skips them. If you want that alive
players gets counted, then leave it as it is, else comment
line 173.
Commenting a line is when you add '//' at the beginning of
the line.
*/
#define REVIVE_ALIVE 1
/*
Below are the default, minimun and maximum values that the
restart/shutdown timer take. Default timer is when the admin
who wants to restart/shutdown the server does not specify it.
Note: 0 means instant restart/shutdown
*/
#define DEF_TIMER 0
#define MIN_TIMER 0
#define MAX_TIMER 60
/*
Below is the delay that it takes to auto slay a player after
he has spawned.
Note: this value must be a float (float means that its a deci-
mel number even if the first number after the '.' is a 0)
ex: 2.5, 0.1, 5.0 (5.0 and not 5).
*/
#define DELAY_AUTOSLAY Float:2.5
/*
After a player is revived by an admin, he normally doesn't
get any weapons, but I am giving them their default spawn
weapons (CT:USP | T:GLOCK18). And here you can specify how
much back pack ammo they get with the weapon.
*/
#define BPAMMO_USP 24
#define BPAMMO_GLOCK18 40
/*
Here you can specify how much damage a player gets per 2
seconds when he is set on fire by an admin.
Note: even if the damage is set to a negative number, it
will automatically take the absolute value if it
ex: setting it to -10 is like setting it to 10
*/
#define FIRE_DAMAGE 10
/*
In here you can define what are the limits that an admin
can extend the map by step. So that the admin cannot ext-
end more than 15 minutes at one time for example.
*/
#define MIN_EXTEND 1
#define MAX_EXTEND 15
/*
Here you can specify what access the admin has to have in
order to see the IP and STEAM ID of the joining/leaving
player, else do not display IP nor STEAM ID.
*/
#define ADMIN_DISCONNECT ADMIN_BAN
#define ADMIN_AUTHORIZED ADMIN_BAN
/*
AFK specific settings are below here.
+ Frequency: each what number of seconds, the plugin checks
for afk players
+ Immunity: what flag the admin must to be immune
+ Warning: when he has that many seconds left, he is warned
*/
#define AFK_FREQUENCY 5
#define AFK_IMMUNITY ADMIN_IMMUNITY
#define AFK_WARNING 10
/*
In the following, you can specify the model that the players
would get if they have been transfered by an admin.
*/
#define CS_T_MODEL CS_T_LEET
#define CS_CT_MODEL CS_CT_URBAN
/*
This is to ensure the admin executing amx_search
does not get overflowed. A max ammount of commands
is set. Besides having that many commands means just
like paging amx_help
*/
#define MAX_SEARCH_RESULTS 30
/*
These are the minimums and maximum of the gag time
an admin can set on a player. They are in minutes.
*/
#define GAG_MIN 1
#define GAG_MAX 60
/*
This is where you stop. Editing anything below this point
might lead to some serious errors, and you will not get any
support if you do.
SAFETY ZONE ENDS HERE
*/
Installation Instructions
Top
Note: it is recommended to use the latest version of this plugin, using an older version is not supported.
Code:
UltimatePlugin Installation Instructions:
-----------------------------------------
First of all, I would like to thank you for using UltimatePlugin. You have made a good choice!
Now for the installation instructions, please look below.
Note: UltimatePlugin now supports amxmodx 1.8.2 and amxmodx 1.8.3. While it will work on both,
using this plugin on amxmodx 1.8.3 is gonna be faster, you will not notice the difference.
In this .zip file you will find everything you need to make the plugin work on your server. You only
need to do two small steps.
1. Download a copy of UltimatePlugin.amxx and UltimatePluginMenu.amxx from the alliedmods. To do
so, click on 'Get Plugin' for both files (UltimatePlugin.sma and UltimatePluginMenu.sma)
Note: if you have amxmodx 1.8.3, you will need to compile the plugin locally because the web
compiler is on 1.8.2 at the writing of this post.
2. Place those two files in the 'addons/amxmodx/plugins' folder.
3. Extract and copy all the files to their respective folders. In the .zip file, everything is in
the correct folder, so all you have to do is merge to the folders together, and you are done.
4. Last but not least, go to the following file: 'addons/amxmodx/configs/plugins.ini'. Now look for
the following line: 'adminchat.ammx'. After you locate that line, add directly ABOVE it the following:
'UltimatePlugin.sma'. Then add at the very bottom of the file the following: 'UltimatePluginMenu.amxx'
Note: do NOT include the quotes when writing them.
Now the plugins is installed. For the changes to take effect, you will need to restart your server, or
simply change the map.
ATTENTION: you might ask, why are there 3 language files? The answer is simple, some players do not
like greeen chat messages, therefore they have the opportunity to change that in the source code.
If '#define GREEN_CHAT 1' is commented, on the prefix is set in green color, else it is colored.
API Natives
Top
Note: For the full .inc file, check the zip package.
Code:
/*
The below get natives are pretty much self explanatory.
Note: - those natives return 1 if positive/success and 0 if negative/failure.
- for the get natives, it will return -1 on failure (for example user is
not connected or dead)
*/
native up_get_user_unammo( iPlayerID );
native up_get_user_unammobp( iPlayerID );
native up_get_user_speed( iPlayerID );
native up_get_user_blanks( iPlayerID );
native up_get_user_nobuy( iPlayerID );
native up_get_user_fire( iPlayerID );
native up_get_user_autoslay( iPlayerID );
native up_get_user_badaim( iPlayerID );
native up_get_user_afk( iPlayerID );
native up_get_user_mute( iPlayerID, iMutePlayerID );
native up_set_user_unammo( iPlayerID, iState = 0 );
native up_set_user_unammobp( iPlayerID, iState = 0 );
native up_set_user_speed( iPlayerID, iState = 0 );
native up_set_user_blanks( iPlayerID, iState = 0 );
native up_set_user_nobuy( iPlayerID, iState = 0 );
native up_set_user_fire( iPlayerID, iState = 0 );
native up_set_user_autoslay( iPlayerID, iState = 0 );
native up_set_user_badaim( iPlayerID, iState = 0 );
native up_user_revive( iPlayerID );
native up_user_drug( iPlayerID );
native up_user_bury( iPlayerID );
native up_user_unbury( iPlayerID );
native up_user_disarm( iPlayerID );
native up_user_uberslap( iPlayerID );
native up_user_rocket( iPlayerID );
/*
The below natives will lock/unlock teams.
strTeam can start with:
't', 'T': TERRORIST
'c', 'C': COUNTER
's', 'S': SPEC
'a', 'A': AUTO
Will return 1 on success and 0 on failure
*/
native up_lock_team( strTeam[ ] );
native up_unlock_team( strTeam[ ] );
/*
The below native will slay the player in another way than normal.
0: Lightning
1: Blood
3: Explode
Will return 1 on success and 0 on failure
*/
native up_user_slay2( iPlayerID, iType );
/*
The following native will return the gag flags of the user.
Note: you would have to use get_flags after getting the sum
of bits if you don't know what the sum of bits is equal to.
Will return 1 on success and 0 on failure
*/
native up_get_user_gag( iPlayerID );
/*
The below native will gag a user. Flags range from 'a' to 'c'.
You can combine flags like so 'ab' or 'abc'.
'a': gag say
'b': gag say_team
'c': gag voice_com
Will return 1 on success and 0 on failure
*/
native up_set_user_gag( iPlayerID, strFlags[ ] = "^0" );
/*
The below native will turn ON or OFF HS only on the server.
Note: 0 means OFF and 1 means ON
Will return 1 on success and 0 on failure
*/
native up_get_hsonly( );
native up_set_hsonly( iState );
/*
The below native will set the frags and deaths of a user.
Will return 1 on success and 0 on failure
*/
native up_set_user_score( iPlayerID, iFrags, iDeaths );
Known Bugs:
Top
- In the 'UltimatePluginMenu' plugin, the amx_restart command will not work. You will have to issue it manually. Why? It is because of the 2013 HLDS update, they blocked the '_restart' command which is contained in the 'amx_restart' command. I am afraid there is no workaround for this bug.
Screen Shots:
Top
Notes
Top
Credits
Top
To-Do:
Top
-
Menu (DONE)
After three days of hard work, the menu plugin is finished and can be downloaded below. I made it as much as user friendly as possible. Hope it worked, and let me know in the comments below.
- Selectivity (100% DONE - BETA)
Yes, Yes and Yes. Finally it's done, selectivity has been implemented. However, this feature is still in beta, please test it and report back to me. If it's a success I will release it as a stable version. Go to the Beta section and download it.
-
Multilingual (DONE)
I have already started working on it, and progress is good. I have finished the language text file, now all to do is go throught all the chat messages in the source code and replace them with the according format. This as you can see takes time since the plugin has a lot of messages to display.
-
API (DONE)
Yep, API is ready to roll. I have tested the API myself for about two days, trying several combinations and so one. Until now, no major flaws were found just minute ones and they have been fixed. Developers, if you want something new added (new native, forward, ...etc), please let me know.
-
ColorChat (DONE)
Yes ColorChat has finally been integrated into 1.8.3 and it is finally available on UltimatePlugin. Took a bit longer than expected but it worked. Please check the README.txt files in each .zip package to get a better understanding.
Download
Top
Code also available on Github: