Changelog 2.50.61-beta4 - 22-Feb-2018:-
-----------------
This kit also includes Metamod 1.21.1-am and LogD 1.0.0.7.
Note: The newer Linux 2.50.61 build WON'T work on pre-2013 compiled HL1 GameMods
but the older 2.50.60 admin_mm_i386.so legacy build is included.
Updated by Sir Drinks A Lot, Black Knight, Cavey, alexavil and RoboCop
Before you report on any bugs, first here are the known bugs followed by the actual changelog.
KNOWN BUGS:
-----------------
- plugin_cs appears to fail on restricting the Tactical Shield and the the Weapon Restrictions don't work for CZero
- Using the 'admin_MM_i386.so' Linux 2.50.60 legacy version won't work for using Slay commands nor with the new LogD 1.0.0.7
- plugin_vote appears to automatically aborts vote after vote is counted
- plugin_blatt_map appears to not register the votes for CZero or CS 1.6 on some occasions
- Cavey TK Menu for kick and ban option may need some fixes
- plugin_dod for respawn_time doesn't work on Steam's DoD 1.3
COMPILER:
-----------------
* sc:
- Small compilers now recompiled by GCC 4.8 for Linux
- Fixed the 'assert((sym->usage & (uDEFINE | uREAD))!=0);' for 3rd Party plugins from sc3.c src file along with newer includes
- Dropped AMD64 support for allowing Small Compiler to prevent .amx64 plugins produced
ENGINE:
-----------------
* adminmod_mm.dll/so:
- Build recompiled and enhanced for newer Gamemods and SteamPipe
- Both Linux and Win32 builds are recompiled using those compilers and SDKs
- Visual Studio 2013 for Win32
- GCC/G++ 4.8 for Linux
- HLSDK 2.3p4
- Metamod-P-37 SDK
- Both MySQL, PostgreSQL and Linux AMD64 support dropped
- Both Linux and Win32 builds are optimised for Pentium 4 SSE2
- Fixed apsymbols.h for newer glibc
- Fixed the '~CPlugin::' extra qualification error from CPlugin.h
- Added Support for Sven Co-op and HL1 1st/2nd Party Mods for SteamPipe; All 1st/2nd Party HL1 Mods for Linux Servers no longer use *_i386 suffix binary names
- Fixed Command "Kill" thanks to Warhead!
viewtopic.php?p=63974#p63974
- Fixed the UTIL_ClientPrintAll bug where the older script was commented out until Valve fixed the bot problem.
- All builds for AdminMod, AScript AMX and LogD have been optimised and has reduced approximately 52% of its original size
INCLUDES:
-----------------
* adminlib.inc:
- added close_menu(UserIndex) //plugin_exec to all plugins which registercmd "close_menu"
- added open_menu(UserIndex) //sets vaultnum menu_UserIndex 1
- added reset_menu(UserIndex) //sets vaultnum menu_UserIndex 0
- added check_menu_open(UserIndex) // checks for vaultnum menu_UserIndex.
- added convert_string_all(HLCommand,HLData,HLUserName,Command[],Data[],User[])
- added get_access(UserIndex)
- added isip(IP[])
- added issteamid(SteamID[])
- added log_to_file(UserIndex,Command[],Data[],File[])
- added numtoword(iNum,str[],iLength) and do_numtoword(iNum,str[],iLevel,iLength)
- added sound_get_key(Player[])
- added sound_set_key(Player[])
- added sound_to_all(Data[],iTeam=0);
- added strstrip(str[],chars)
- added strsplitx(str[],separator,escape,...)
- added strfilter(str[],allow[])
- changed code of strbreak using strgsep
* math.inc: (will be checked/revised by Felix. I hope soon...)
- added:
- abs(num)
- pow(num,exp)
- sumvec(vec1[3],vec2[3],vec0[3])
- midvec(vec1[3],vec2[3],vec0[3])
- diffvec(vec1[3],vec2[3],vec0[3])
- veclen(vec[3],factor=1)
- distance(Index1,Index2)
- veccmp(vec1[3],vec2[3],accuracy=0)
- vecncmp(vec[3],num)
- vecstrcmp(vec[3],str[],accuracy=0)
PLUGINS:
-----------------
(in order of plugins which must be in plugin.ini, too!)
* plugin_adminlog:
- file_access_write 1 must be set in adminmod.cfg
- plugin can be activated/deactivated by command: admin_log <on/off>:
- creates 5 different log files in addons/adminmod/config:
- log_say.txt: logs all say messages
- log_retribution.txt: logs retribution commands like:
"slap","slay","kick","bury","unbury","gag","ungag",
"llama","unllama","slayteam","ct","t","vote_kick","execclient",
"execall","execteam","restrict","unrestrict"
- log_admin.txt: logs all admin commands with accesslevel > 0
- log_banned.txt: logs all data which comes from admin_ban, admin_banip, admin_unban
- log_antiflood.txt: logs all data which comes from plugin_antiflood
- other plugins can use log_to_file(UserIndex,Command[],Data[],File[]) (adminlib.inc) to send data which
shall be logged.
* plugin_adminmenu:
- amv_enable_beta "menu1"
- file_access_read 1
- file_access_write 1
- commands which shall be executed must be set in addons/adminmod/config/ammenu
- mapcommands.cfg
- othercommands.cfg
- playercommands.cfg
- servercommands.cfg
- votecommands.cfg
In these cfg files, admin_commands of all plugins can be added.
- In addons/adminmod/config/ammenu/map.cfg all maps must be added which shall be used by mapcommands.
- Every admin can create his own menu which is stored by STEAM_ID_x_x_xxxxx in addons/adminmod/config/ammenu
- Admins with ACCESS_RCON can add/edit or delete commands over this menu directly
- Last executed command is stored and can be easily executed again in mainmenu.
- Structure of menu:
- PLAYER
- Playercommands (of playercommands.cfg)
- Player (available on server)
-Executemenu
- MAP
- Mapcommands (of mapcommands.cfg)
- Map (of maps.cfg)
-Executemenu
- SERVER
- Servercommands (of servercommands.cfg)
-Executemenu
- VOTE
- Votecommands (of votecommands.cfg)
-Executemenu
- OTHER
- Othercommands (of othercommands.cfg)
-Executemenu
- OWN COMMANDS
- Stored commands (of STEAM_x_x_xxxxx.cfg)
-Executemenu
- LAST COMMAND
- Last used command
-Executemenu
- In Executemenu, admin can decide if he executes command, adds some parameters in chat, adds this command with data
to his OWN MENU or (if admin has ACCESS_RCON) he can delete this command in .cfg file
- This menu plugin sends to all other plugins close_menu(UserIndex) if HL integrated menues are opened
by user. All other plugins, where the adminmod menu function is used, can use
plugin_registercmd("close_menu",Function_in_plugin,ACCESS_ALL) in plugin_init() to get this information and can react on it.
So it is not neccessary anymore, to declare all HL-integrated menues functions in each plugin.(like buy, buyequip, radio1, etc.)
The plugins itself can also send a close_menu(UserIndex) when their own menu gets called.
close_menu(UserIndex) is set in adminlib.inc and sends the sUserIndex as Data with plugin_exec
to registered function "close_menu".
* plugin_antiflood:
- added plugin_info protecting flood of changing nickname
- changed Command[] to MAX_DATA_LENGTH in plugin_command function
- added function log_to_file in log_antiflood.log (needs plugin_log)
* plugin_base:
- added helper function convert_string_all
- added helper function execute_cmd
- added reason to admin_ban. admin_ban <target> <[minutes]> <[reason]>
- added in admin_ban and admin_unban: function log_in_file(UserIndex,Command,Data,"addons/adminmod/config/log_banned.txt"),
if a player is successfully banned.
- added new function admin_timeban (bans player for 30 minutes)
- added new function admin_map_exec to change methode of changing map (changelevel or exec(changelevel...))
- added default_map.cfg in plugin_init which is loaded before map.cfg
- changed accesslevel of admin_userlist to ACCESS_TIMELIMIT (=2)
- changed admin_map to check map with valid_mapex
- moved exec commands from plugin_retribution to plugin_base
- moved all say commands to plugin_message
- moved all vote commands to plugin_vote
* plugin_cheat:
- added helper function convert_string_all
* plugin_fun:
- added helper function convert_string_all
- added more glow colors and a 'glow help' say command for list
* plugin_message:
- added helper function convert_string_all
- moved all say commands of plugin_base to plugin_message
- different messages can be set up in addons/adminmod/config/admin_motd.txt, which are displayed
randomly in admin_repeat_freq. If admin_motd.txt does not exist or is empty, admin_repeat_msg
is used.
- added function admin_set_timeleft to enable/disable say "timeleft"
- added function admin_set_nextmap to enable/disable say "nextmap"
- changed accesslevel of admin_messagemode to ACCESS_CHAT
* plugin_retribution:
- added helper function convert_string_all
- put all execclient to plugin base
- changed code (removed native censor_words()) of handle_say to avoid amx10 error till fixed in .dll/.so
* plugin_sound:(optional)
- all players can say ".stop" / ".stopsound" or ".play" / ".playsound". This option sets a setinfo "am_sound" "1" or "0"
in config.cfg. This can be used by other plugins to give player an option if he wants to hear customsounds
or he doesn't want to.
- menu message is displayed when player enters server, that he has enabled/disabled customsounds and how to change it.
- 3 commands available: admin_speak, admin_speakall, admin_speakteam <teamnumber> <msg>
* plugin_vote:
- all vote commands moved from plugin_base to plugin_vote
- added admin_vote_maps (starting a multi-map-vote)
- amv_enable_beta "menu1"
- file_access_read 1
- map names are loaded from addons/adminmod/config/map_vote.ini and are displayed in menu
- players can open menu using "votemaps" in chat to make their vote or to change their vote
- after x seconds, winning result appears. (x is set by admin_vote_time. Default: 30s)
- added admin_vote_time <seconds>: set vote time. Default 30s
- added admin_vote_read <file> (ACCESS_CONFIG) to load another mapfile then map_vote.ini
// MOD SPECIFIC PLUGINS
* plugin_CS:
- added helper function convert_string_all
- added <repeat> in admin_restart / restartround
- added a strtrim "." at the end of Data in function SetRestrictions, which is loaded from a map.cfg
- added strstripqoutes to admin_ct, admin_t
- added plugin_registercmd("close_menu","ClearMenu",ACCESS_ALL);
- changed admin_restrict player to use " not ', if playername has spaces.
- changed function SetRestrictions: delete map and delete default should work now
- changed admin_ct/admin_t "chooseteam" to jointeam 1 / jointeam 2
* plugin_TFC:
- added convert_string_all(HLCommand,HLData,HLUserName,Command,Data,User)
- added admin Dispenser and Sentry unblocker from plugin_unblock
//MAP VOTE PLUGINS using admin_vote_autostart
* plugin_hldsld_mapvote:
- replaced trim code for denymap with strtrim
* plugin_menu_mapvote:
- same commands like in plugin_hldsld_mapvote but:
- players make !nominations! for max. 8 maps in chat by saying "de_dust" or "extend" and after nomination time,
nominated maps are displayed in menu to vote for.
- say 'mapname' or 'extend' to make nomination
- say 'showmaps' to open menu (again) to make a vote/change your vote
- nomination time is set to 90 seconds
- hint message, that nomination has begun appears every 30 seconds
- every player can make more than one map nomination
- time for menu vote is set to 30 seconds.
https://github.com/APGRoboCop/halflifea ... 0.61-beta4