SourceMod Changelog ---------------------------- SourceMod 1.2.0 [2009-03-05] URL: http://wiki.alliedmods.net/SourceMod_1.2.0_Release_Notes Major Features: * Left 4 Dead Support * Dark Messiah Support * New and Improved Updater Changes: - Added Left 4 Dead support (bug 3414). - Added Dark Messiah game support (requires Metamod:Source 1.7.1 or higher). - Added sm_name command (bug 2150). - Added extension-level dynamic hooking to bintools (bug 2616). - Added client validation API to replace passing userids asynchronously. - Added cURL extension, available to other extensions (bug 3560). - Added parsing of custom gamedata files (bug 3644). - Added case insensitivity search to ReplaceString (bug 3639, Fyren). - Added more detail to certain player-oriented menu titles (bug 2740, Fyren). - Added sv_tags API (bug 3677). - Greatly improved admin-sql-prefetch performance for large tables (bug 3354, FLOOR_MASTER). - Exposed IServer address to extensions (bug 3545). - New gamedata organization; files are now smaller and per-game (bug 3546). - Split sound functions into a new plugin, sounds.smx. - Fixed slap and slay on Insurgency (bug 2560). - Fixed blank admins being created from invalid admin file lines (bug 3431). - Fixed basetriggers not working on Insurgency (bug 3497). - Fixed client preferences missing some clients (bug 3616). - Improved database fallback mechanism in clientprefs (bug 3564). - Improved timer handling in funcommands (bug 3498). - Improved compile.sh to take filenames (bug 3550, jonasfietz). - sm_kick now shows the kick reason when available. - Fixed MsgPostHook (ex MsgSentNotify) callbacks not firing on intercept hook (bug 3631). - Note: SourceMod now adds "sourcemod" to the sv_tags cvar. ---------------------------- SourceMod 1.1.2 [2009-02-26] URL: http://wiki.alliedmods.net/SourceMod_1.1.2_Release_Notes Changes: - Fixed critical hits being permanently disabled (bug 2674) ---------------------------- SourceMod 1.1.1 [2009-02-25] URL: http://wiki.alliedmods.net/SourceMod_1.1.1_Release_Notes Changes: - Added Age of Chivalry support (bug 3366, IceMatrix). - Added Obsidian Conflict support (bug 2699, The DOO). - Fixed compatibility issues with latest TF2 update. - Fixed crash when an event handler fired an event of the same name (bug 3468). - Fixed rare crash in the event manager on post hooks (bug 3548). - Fixed formatting error with zero precision floats (bug 3447). - Fixed various Insurgency offsets (bug 3544). - Fixed admin menu (topmenu) categories being selectable when not usable (bug 3256). - Fixed sm_sql_addgroup not working (bug 3578). - Fixed memory leak when events were hooked as EventHookMode_Post. - Fixed nextmap trigger showing wrong output with end-of-map voting disabled and sm_trigger_show set to zero (bug 3597, mr.e.unk). ---------------------------- SourceMod 1.1.0 [2008-12-28] URL: http://wiki.alliedmods.net/SourceMod_1.1.0_Release_Notes Major features: * New map management plugins. * New reserved slot type. * GameData updates are retrieved remotely * Client Preferences extension for per-client "cookies" * New incremental and independent JIT Changes: - Added new client preferences extension (API in clientprefs.inc, bug 1925). - Added new gamedata auto-update functionality (bug 2602). - Revamped and greatly expanded map management plugins and their functionality (bug 2201). - Debug mode is now always on; as there is no longer a performance loss, there is no non-debug mode. - The timeleft trigger can now handle mp_winlimit, mp_fraglimit, and mp_maxrounds (bug 2344). - Translations can now be in separate files and placed in language-unique folders. - The leading "STEAM_0:" or "STEAM_1:" in SteamIDs can now be omitted from admin files. - Added sm_revote command so clients can participate in a vote that fell off their screen (bug 2156). - Added Core API for creating stack structures (adt_stack.inc, bug 2441). - Added API for extending mapchooser (mapchooser.inc, bug 2201). - Added Core API for map transition control and history (nextmap.inc). - Added TF2 forward for overriding how critical hits are calculated. - Added SetClientInfo() native for modifying how a server sees a client's setinfo properties. - Added CreateDirectory() native (bug 3253). - Added "magic" MaxClients variable to replace slower GetMaxClients() call. - Added support for three-letter language codes (bug 3526). - Functions to control client versus client mic listening now work as described (bug 2498). - Fixed SDKTools not being reloadable, and fixed a related bug in Handle type removal (bug 2753). - Rewrote internal translation handling. Extensions now have access to an ITranslator API (bug 2535). - Rewrote internal handling of dependencies (especially relating to native providers) (bug 2466). - Added user config hooks to IGameConfigManager, for parsing user-defined sections. - Revamped SourcePawn API. Removed and deprecated many structures and functions accidentally exposed publicly. - Revamped SourcePawn structure, it is now separable from SourceMod for other projects. - Renamed basefuncommands.phrases.txt to funcommands.phrases.txt (bug 2485). - Renamed basefunvotes.phrases.txt to funvotes.phrases.txt (bug 2485). - Added IDBDriver API call for extensions to handle IDBDriver dependencies properly. - Usermessage natives now validate clients to prevent crashing. - Fixed OnConfigsExecuted not working on listen servers. - Fixed out-of-handle conditions in CreateTimer() causing crashes (bug 3381). - Fixed accessing invalid Handles causing crashes (bug 3359). - Fixed memory corruption with MySQL + FetchString (bug 3352). - Fixed ReadFileString ignoring its fourth parameter (bug 3459). - Fixed sm_sql_addadmin reading the immunity field as a password (bug 3395). - Fixed ReadFile sign-extending instead of zero-extending (bug 3449). ---------------------------- SourceMod 1.0.4 [2008-09-14] Changes: - Fixed amb1986: Format() with very long strings could crash if the input and output buffers overlapped. - Fixed amb1938: The compiler ate too many characters in preprocessor macros. - Fixed amb1935: Topmenu child names were not uncached when a category was deleted. - Fixed amb1929: Banning via the console threw a runtime error. - Fixed amb1918: Ban menu should compare userids, not client indexes - Fixed amb1916: Threaded query delay is now 50ms instead of 500ms. - Fixed amb1899: Duplicate maps in auto generated maplists. - Fixed amb1891: Basechat didn't check for blank message in private says. - Fixed amb1853: Ternary operators with string assignments could chop strings off. - Fixed amb1815: Custom admin menu wasn't escaping input. - Fixed amb1808: KickClient() is now delayed to prevent crashes, use KickClientEx for old functionality. - Fixed amb1802: Possible crash when a client disconnected. - Fixed amb1801: Improved bot detection, and fixed bots crashing if inside an OrangeBox server.cfg. - Fixed amb1780: admin-sql-threaded had a debug spew turned on. - Fixed amb1779: Crash in GetTeamName() on mods that don't support it. - Fixed amb1763: Function call status is now cleared on a new function call. - Fixed amb1749: Updated and improved DoD:S SDKTools coverage. - Fixed team native crashes in SDKTools for mods like Insurgency. - Fixed various file handle leaks. ---------------------------- SourceMod 1.0.3 [2008-06-21] Changes: - Fixed SDKTools compatibility for latest TF2 update. - Fixed amb1750: OnAutoConfigsBuffered() inserted before "exec server.cfg". - Fixed a logic bug where OnConfigsExecuted() could be executed before "exec server.cfg" finished. - Fixed a rare crash in the event manager that manifested on Zombie Panic! Source. ---------------------------- SourceMod 1.0.2 [2008-05-31] Changes: - The admin menu is now user-modifiable (the "Dynamic Admin Menu"). - Added a TF2 extension with Team Fortress functions. - Added a RegEx extension with regular expression functions. - Added functions to SDKTools for hooking entity outputs. - Added preliminary support for the DoD:S Orange Box beta. - Added a forward for map config plugins for preventing race conditions. - Added a %b format specifier for binary printing. - Added sm_dump_datamaps command (SDKTools) for enumerating datamap properties. - Added sm_dump_admcache command for debugging the admin cache. - Added amb1715 - TraceHull functions to SDKTools (complementing TraceRay). - Added amb1694 - FindCharInString() function. - Added amb1685 - GetTickInterval() function. - Added amb1620 - ActivateEntity() function to SDKTools (for Orange Box particle system). - Added amb1610 - StripQuotes() function. - Added amb1558 - Compiler now has __BINARY_PATH__ and __BINARY_FILE__ macros. - Fixed amb1686 - ReplaceString* with an empty search string crashed; it now throws an error. - Fixed amb1684 - Blank passwords required an empty but set password. - Fixed amb1595 - Extension load failures did not show a platform error message. - Fixed amb1583 - MySQL string fetch from prepared queries returned corrupted data. - Fixed amb1358 - Timeleft did not reset on TF2 restarts. - Fixed cases where the JIT was too cautious in space optimizations. - Fixed TF2/Cstrike extensions being loadable on incompatible games. - Fixed various documentation inconsistencies and typos. - Fixed internal bugs with file extension handling. Notes: There is a possible compatibility regression from amb1684. SetAdminPassword() has been modified to remove any set password when given an empty string. Previously, a blank password ("") would force an admin to use "setinfo" to set an empty password, but this functionality was deemed unuseful and unintended. Blank passwords now remove any set password. ---------------------------- SourceMod 1.0.1 [2008-05-20] Changes: - Fixed SDKTools compatibility for latest TF2 update. - Removed GivePlayerItem from TF2 (TF2 update broke functionality). - Fixed amb1688: GivePlayerItem offset was wrong for DoD:S Linux. - Fixed amb1657: Server console did not see admin version of sm_who. - Fixed amb1648: Stack corruption from GetClientEyeAngles() on Windows. - Fixed amb1646: NetFlow_Both did not work for client network statistics. - Fixed amb1601: Vote FF menu reading from sv_alltalk cvar instead of mp_friendlyfire. - Fixed amb1591: Fixed listen server crashes on mods like IOS:S which pre-add more than one bot. - Fixed amb1586: GetTeamName() could crash the server if called on load. - Fixed mapchooser's round counting for TF2. - Fixed a bug where an RTE on plugin load would throw a message referring to the plugin as "-1". - Symbols are no longer stripped on Linux. - Minor SourceMod SDK fixes. Notes: The extension interface version has been bumped. Any extensions compiled against 1.0.1 will require 1.0.1 or higher to run. Extensions against 1.0.0 will continue to run normally.