2007/??/?? 1.6.0: - Metamod:Source has no received a large internal rewrite to improve coding standards and to separate internal logic from engine specifics. - Added API for getting highest supported IServerPluginCallbacks interface version. - Added OnUnlinkConCommandBase to IMetamodListner to notify when Metamod:Source is about to remove a concommand or convar. - The output of the "meta list" command has been reformatted in order to allow more space for plugins' name, version, and author fields. 2007/06/26 1.4.2: - Fixed a bug where unloading all plugins could crash if one plugin had child plugins. 2007/05/16 1.4.1: - The client version of the "meta" command should now work with games using the latest Source beta (srcds0407). - Fixed amb233 (VSP listener didn't work with Steam dedicated version). - Fixed amb277 (failed to get user message list in Kreedz Climbing). 2007/04/05 1.4.0: - Added API functions for retrieving User Message info without potentially crashing. - Added API functions for letting SourceMM plugins use Valve Server Plugin callbacks. - Added plugin status to client version of "meta list" command. Previously, it did not differentiate between running and paused plugins. - An experimental automatic gameinfo.txt fixer is now available. - Changed version numbering to include the build number (SVN revision). - Fixed amb93 (improved mod path detection). - Fixed various rare string inconsistencies. 2006/11/29 1.3d: - Updated Metamod:Source to recognize the latest Source Engine version (ServerGameDLL006) 2006/09/06 1.3a: - Fixed a building issue on Linux which caused unresolved symbol errors when trying to load Metamod:Source on a game using an older set of engine libraries. This fix should now allow Metamod:Source to run with The Ship on Linux. 2006/08/16 1.3: - Added SourceHook support for functions that return references. - Added some extra information to the "meta game" command: Description and Interface. For example, CS:S would display "Counter-Strike: Source" and "ServerGameDLL004." - Added some extra functionality to ISmmPluginManager. - Added compiling support for MSVC 8.0 (Visual Studio 2005) and GCC 4.x. - Added another API helper function for formatting and searching for interfaces. - Updated project files and source tree to use the latest HL2SDK. - Updated the sample plugins to be a bit cleaner and use newer API. - Fixed bug where Metamod:Source could load the wrong GameDLL and/or load more than one GameDLL. This issue occured in HL2 CTF, SourceForts, or any other mod that relied on files from another mod directory. - Fixed bug where ISmmAPI::MetaFactory() would return the wrong interface when trying to retrieve ISmmPluginManager. - Fixed bug where returning false in Load() after adding a Metamod event listener or hooking a function could cause a crash instead of rejecting the plugin. - Fixed bug where trying to load Metamod:Source a second time as a SourceMM or Valve server plugin could cause a crash. - Fixed a bug in FormatIface() that caused InterfaceSearch() to infinite loop. 2006/06/14 1.2.3: - Added SourceHook API for manual recalls: RETURN_META_(VALUE_)MNEWPARAMS - Added support for ServerGameDLL005 (latest HL2DM update) 2006/05/25 1.2.2: - Added the ability to "alias" plugin names in metaplugins.ini. - Added "meta alias" command. - Added SourceHook API for manual callclasses. - Added support for the latest Source engine (ServerGameDLL005). - Added API for printing text in a client's console with ClientConPrintf. This does the same thing as IVEngineServer::ClientPrintf except that it allows string formatting. - Added client version of "meta" command in order to allow clients to view version information and a list of loaded plugins. - Fixed a bug causing old mods on newer engines to fail loading. - Fixed issues with SourceHook's SH_CALL and reference parameters. - Fixed a bug where the mm_pluginsfile cvar was being ignored. - Fixed a memory leak when using ISmmAPI::InterfaceSearch. 2006/02/15 1.2.1: - Fixed bug where returning newparams in a post hook would cause infinite recursion. - Fixed bug where "meta load" could load the same plugin multiple times. - Fixed bug where unloading a plugin could crash internal hook states. - Fixed bug where unhooking a single hook would clear the hook chain. 2006/01/07 1.2: - Added SourceHook API for modifying parameters in the hook chain. - Added SourceHook API for declaring and hooking manual vtable hooks. - Added better API for querying an interface factory. - Added API for formatting an OS-independent path. - Added Listen Server Launcher to the graphical installer. - Fixed bug where failed plugins could crash the plugin list. - NOTE: SourceHook changes may require plugins to be recompiled against the new API. 2005/12/06 1.1.2: - Added interface overriding/sharing examples to sample plugins. - Added API to help guessing at Valve interface versions. - Fixed various memory leaks. - Fixed memory corruption bug on vector copying. - Fixed other various template bugs. 2005/10/21 1.1.1: - Fixed a bug where AllPluginsLoaded() was not called after DLLInit(). 2005/10/21 1.1: - Rewrote GameDLL loading code to be API version generic. As such, SourceMM will now easily support new API releases without an SDK release, such as the case with Day of Defeat:Source. - Added more flexibility to plugin control by supplying an event system. - Removed dependency on libstdc++.so by supplying a small template library. - SourceHook internal API is now interface-based, meaning that future updates to the API will not break older plugins. This update, however, breaks older plugins. - SourceHook is now re-entrant. - Added a basic automated installer (by Basic-Master). - Fixed a bug where games with changing game names would not work. - Fixed various bugs, including a cvarlist corruption bug on unloading plugins. 2005/07/07 1.00-RC2: - Added API for dealing with ConCommandBase registration (cvars/concmds). This is to fix the fact that Valve API provides no way to unlist a cvar/cmd. - Added two new commands - "meta cmds" and "meta cvars". - Added API calls for correctly printing to the console such that rcon will also receive messages that a plugin prints. This problem was mentioned on hlcoders and Valve offered no reply. - Added event hooking and cvar samples to sample_mm. - Added new cvar, mm_pluginsfile, which defaults to "addons/metamod/metaplugins.ini". - Fixed a bug where multiple vtable patches on the same hook were not re-patched when removed. This caused a crash when two hooks were declared on one function, the first was removed, and the original function was then called. - Fixed "meta clear" not unloading all plugins. - Fixed Metamod:Source loading plugins with a higher current API version. - Fixed whitespace being parsed in metaplugins.ini. - Fixed bug where SourceHook tried to patch already destroyed/unavailable memory. - Bumped Plugin API version to 6. 2005/05/06 1.00-RC1: - Initial release.