AMX Mod X 1.8.0 Changes
AMX Mod X 1.8 is a large feature release with many changes, both to the development API and user-mode features.
Contents
Changelog
Overall Changes
- Added a new module, Ham Sandwich, for hooking virtual CBaseEntity functions in mods.
- Command flags are now initially dumped to disk and can be edited via configs/cmdaccess.ini.
- Added am48738: Romanian translation from X-5173.
- Added am50741 and am43830: per-map plugins files can now be prefixed based.
- Added amb17: New menu rendering is now more consistent; non-consistent controls are deprecated.
- Added amb32: The server console commands "amxx cvars" and "amxx cmds" can now filter by plugin.
- Added amb122: Log file names now include a four-digit year.
- Fixed amb18: New menus are now properly destroyed if overridden.
- Fixed amb46: is_user_bot had some false positives.
- Fixed amb69: Fixed Metamod trying to reload AMX Mod X against a poorly configured clock.
- Fixed amb207: New menus now display "0" instead of "10."
- Fixed amb208: New menus did not reset callback results after each call.
- Fixed amb200: Dynamic/fake natives were not re-entrant.
- Fixed amb244: Run-time errors blocked forwards.
- Fixed amb305: Core crashed on mods that removed the standard mp_timelimit cvar.
- Fixed many various internal new menu rendering and item selection bugs.
Scripting Changes
- Added natives for dynamic global arrays.
- Added a new, magic any tag from SourceMod.
- Added a charsmax operator for safe sizeof(string)-1 usage.
- Added set_pcvar_string().
- Added LookupLangKey().
- Added SQL_QuoteString().
- Added [g|s]et_pdata_cbase[_safe]() to the Ham Sandwich module.
- Added geoip_code[2|3]_ex(), which address a serious issue in the now deprecated geoip_code[2|3]().
- Added lookup_sequence(), set_controller(), set_pev_string(), and pev_serial() to Fakemeta.
- Added ns_get_user_team.
- Added a menu property to change the numbering color.
- Added amb27: SQL_Rewind().
- Added amb37: cs_[g|s]et_user_submodel().
- Added amb38: cs_[g|s]et_user_lastactivity().
- Added amb39: cs_[g|s]et_hostage_lastuse() and cs_[g|s]et_hostage_nextuser().
- Added amb63: floatmin(), floatmax(), and floatclamp().
- Added amb76: Formatting functions can now use %x or %X for hexadecimal numbers.
- Added amb92: create_tr2() and free_tr2().
- Added amb205: cs_[g|s]et_c4_explode_time().
- Added amb216: SQL_MakeStdTuple() now has a timeout parameter.
- Added amb237: Fakemeta can now call "ServerPrint."
- Added amb242: cs_[g|s]et_user_hostagekills().
- Added amb245: precache_sound now returns a precache index.
- Added amb261: has_flag() and has_all_flags().
- Added amb291: cs_[g|s]et_c4_defusing().
- Added amb673: regex_compile() and regex_match_c for pre-compiling expressions.
- Added am46213: player_menu_info() now returns a page number.
- Added am51064: Some parameters to get_plugin are now optional.
- Added am50610: Some parameters to get_user_weapon are now optional.
- Added am48841: tfc_is_user_feigning().
- Added am45664: tfc_is_team_ally().
- Fixed am49337: get_pcvar_float() malfunctioned on high numbers.
- Fixed amb78: get_concmdsnum could return an incorrect result.
- Fixed amb85: Tag mismatches on ShowSyncHudMsg().
- Fixed amb90: set_native_filter() did not work in rare cases.
- Fixed amb107: socket_open() didn't return an error by reference.
- Fixed amb110: socket_change() could return 1 on certain failures.
- Fixed amb116: DispatchKeyValue() did not work on worldspawn (entity 0).
- Fixed amb149: register_event with the "e" flag could catch incorrect players.
- Fixed amb230: radius_damage() didn't kill players on all mods.
- Fixed amb257: get_user_origin() mode 4 had false positives.
- Fixed amb343: TFC_ClearModel() did not function as documented.
- Fixed amb421: get_user_weapons() could omit a weapon on Day of Defeat.
- Fixed amb437: dod_set_user_kills() and dod_set_user_score() could mess up the scoreboard.
- Fixed amb519: geoip_code[2|3]() buffer overflowed on error.
- Fixed amb736: find_entity() was defined twice.
- Fixed a memory leak in SortCustom1D().
- Fixed a crash bug in fwrite_blocks().
Plugin Changes
- There is no longer a hardcoded limit to the number of admins.
- There is no longer a hardcoded limit to the map list.
- There is no longer a hardcoded limit to the number of "imessages."
- Added amb34: There are now plugin command/cvar menus.
- Added am45044: amx_banmenu now prints the ban time length.
- Added am43757: amx_addadmin now writes a comment with the player's name.
- Added am29353: amx_plugins now prints paginated output.
- Added am50742: admin.sma now supports prefix based per-map configs.
- Added amb28: statscfg.sma can now use translations.
- Added amb30: csstats_rankbots prevents bots from showing on /top15.
- Added amb31: plmenu.sma ban and slap options are now configurable.
- Added amb42: Added new values for amx_show_activity.
- Added amb51: amx_vote can now take more than two options.
- Added amb64: amx_voteban autodetects whether it should IP ban.
- Added amb307: amx_addban now caches the last ten connections.
- Added amb311: mapcycle file now ignores .bsp extensions.
- Added amb340: amx_ban/amx_banip now display a reason in the activity.
- Added amb427: Additional weapons to dod_[g|s]et_user_ammo().
- Fixed amb29: pausecfg.sma did not translate two phrases.
- Fixed amb91: miscstats.sma truncated some language translations.
- Fixed amb94: amx_psay sometimes sent truncated messages.
- Fixed amb109: mapsmenu.sma now checks mapcyclefile before reverting to mapcycle.txt.
- Fixed amb118: amx_help would not list ADMIN_ADMIN commands.
- Fixed amb130: Various menus did not take ADMIN_ALL or ADMIN_ADMIN into account.
- Fixed amb183: plmenu.sma did not work on Natural Selection.
- Fixed amb196: amx_modules did not handle invalid modules properly.
- Fixed amb222: cl_rebuy could exploit CS weapon restrictions. This also makes CZ bots obey restrictions.
- Fixed amb228: amxmod_compat could cause set_user_hitzones() to break.
- Fixed amb350: traceline_set_float from the AMX Mod Compat layer was broken.
- Fixed amb467: conmotd.txt is now removed.
- Fixed amb633: Immune admins can now target themselves.
- Fixed a potential exploit in adminslots.sma.
- SQL cvars are now protected.