Difference between revisions of "SourceMod 1.4.0 Release Notes"

From AlliedModders Wiki
Jump to: navigation, search
m (User Changes)
(Developer Changes)
Line 86: Line 86:
 
*Provided native interface for basecomm ({{bz|2594}}).
 
*Provided native interface for basecomm ({{bz|2594}}).
 
*Client language detection is too late. ({{bz|3714}}) ([https://forums.alliedmods.net/member.php?u=6136 Tony A. "GoD-Tony"]).
 
*Client language detection is too late. ({{bz|3714}}) ([https://forums.alliedmods.net/member.php?u=6136 Tony A. "GoD-Tony"]).
*Added ServerCommandEx native to execute server command and retrieve output ({{bz|3873}}).
+
*Added <tt>ServerCommandEx</tt> native to execute server command and retrieve output ({{bz|3873}}).
 
*Added ability to update clientprefs cookies values on clients not currently connected ({{bz|3882}}) ([https://forums.alliedmods.net/member.php?u=54648 databomb]).
 
*Added ability to update clientprefs cookies values on clients not currently connected ({{bz|3882}}) ([https://forums.alliedmods.net/member.php?u=54648 databomb]).
 
*Added library "matchmaking_ds" support to gamedata lookups ({{bz|4158}}).
 
*Added library "matchmaking_ds" support to gamedata lookups ({{bz|4158}}).
 
*Rooted menu handles to callbacks ({{bz|4353}}).
 
*Rooted menu handles to callbacks ({{bz|4353}}).
*Fixed corner cases with ExplodeString ({{bz|4629}}). ([https://forums.alliedmods.net/member.php?u=46596 Michael "LumiStance"]).
+
*Fixed corner cases with <tt>ExplodeString</tt> ({{bz|4629}}). ([https://forums.alliedmods.net/member.php?u=46596 Michael "LumiStance"]).
 
*Fixed return omission with else-after-return ({{bz|4852}}).
 
*Fixed return omission with else-after-return ({{bz|4852}}).
*Added OnConditionAdded and OnConditionRemoved forwards to TF2 extension ({{bz|4851}}).
+
*Added <tt>OnConditionAdded</tt> and <tt>OnConditionRemoved</tt> forwards to TF2 extension ({{bz|4851}}).
 
*Added new natives and forward to the cstrike extension ({{bz|4732}}, {{bz|4985}}) ([https://forums.alliedmods.net/member.php?u=26021 Dr!fter]).
 
*Added new natives and forward to the cstrike extension ({{bz|4732}}, {{bz|4985}}) ([https://forums.alliedmods.net/member.php?u=26021 Dr!fter]).
 
*Added WaitingForPlayers forwards to the TF2 extension ({{bz|4704}}) ([https://forums.alliedmods.net/member.php?u=31784 CrimsonGT]).
 
*Added WaitingForPlayers forwards to the TF2 extension ({{bz|4704}}) ([https://forums.alliedmods.net/member.php?u=31784 CrimsonGT]).
 
*Updated and added more TF2 condition, weapon, and damagecustom defines (multiple bug#s).
 
*Updated and added more TF2 condition, weapon, and damagecustom defines (multiple bug#s).
*Fixed TF2_RemoveCondition not always removing conditions ({{bz|4981}}).
+
*Fixed <tt>TF2_RemoveCondition</tt> not always removing conditions ({{bz|4981}}).
*Fixed maxClients not being updated correctly in some places with SourceTV or replay active ({{bz|4986}}).
+
*Fixed <tt>MaxClients</tt> not being updated correctly in some places with SourceTV or replay active ({{bz|4986}}).
 
*Fixed some vars not being marked for init on first compile pass ({{bz|4643}}).
 
*Fixed some vars not being marked for init on first compile pass ({{bz|4643}}).
 
*Increased symbol name limit to 63 characters ({{bz|4564}}) ([https://forums.alliedmods.net/member.php?u=53673 javalia]).
 
*Increased symbol name limit to 63 characters ({{bz|4564}}) ([https://forums.alliedmods.net/member.php?u=53673 javalia]).
Line 105: Line 105:
 
*Added error on declaring arrays that the compiler is too buggy to handle ({{bz|4977}}).
 
*Added error on declaring arrays that the compiler is too buggy to handle ({{bz|4977}}).
 
*Removed reliance on gamedata for multiple SDKTools functions in ep2 and later ({{bz|4899}}).
 
*Removed reliance on gamedata for multiple SDKTools functions in ep2 and later ({{bz|4899}}).
*Added InvalidateClient and ReconnectClient natives to SDKTools ({{bz|4931}}) ([https://forums.alliedmods.net/member.php?u=59521 Brian "Afronanny" Simon]).
+
*Added <tt>InvalidateClient</tt> and <tt>ReconnectClient</tt> natives to SDKTools ({{bz|4931}}) ([https://forums.alliedmods.net/member.php?u=59521 Brian "Afronanny" Simon]).
 
*Added ability to lookup and set values on the gamerules class ({{bz|4983}}.
 
*Added ability to lookup and set values on the gamerules class ({{bz|4983}}.
*BaseComm now uses AddCommandListener for chat hooks ({{bz|4991}}).
+
*BaseComm now uses <tt>AddCommandListener</tt> for chat hooks ({{bz|4991}}).
 
*Fixed shutdown bug in SDKTools ({{bz|5063}}).
 
*Fixed shutdown bug in SDKTools ({{bz|5063}}).
 
*Fixed MM-enabled extensions continuing to load after failing MM attach ({{bz|5042}}).
 
*Fixed MM-enabled extensions continuing to load after failing MM attach ({{bz|5042}}).
*Added GetDistGainFromSoundLevel native to SDKTools ({{bz|5066}}) ([https://forums.alliedmods.net/member.php?u=53673 javalia]).
+
*Added <tt>GetDistGainFromSoundLevel</tt> native to SDKTools ({{bz|5066}}) ([https://forums.alliedmods.net/member.php?u=53673 javalia]).
*Added CheckAccess native to check an AdminId's command access ({{bz|5083}}).
+
*Added <tt>CheckAccess</tt> native to check an AdminId's command access ({{bz|5083}}).
*Fixed GetEntProp not sign-extending unsigned values less than 32 bits ({{bz|5105}}).
+
*Fixed <tt>GetEntProp</tt> not sign-extending unsigned values less than 32 bits ({{bz|5105}}).
*Fixed crashing when calling CreateEntityByName or CreateFakeClient when no map is running (now errors) ({{bz|5119}}).
+
*Fixed crashing when calling <tt>CreateEntityByName</tt> or <tt>CreateFakeClient</tt> when no map is running (now errors) ({{bz|5119}}).
 
*Fixed erring in kick function (e. bad translation) causing client to become unkickable until disconnect ({{bz|5120}}).
 
*Fixed erring in kick function (e. bad translation) causing client to become unkickable until disconnect ({{bz|5120}}).
*Fixed KickClientEx not immediately kicking client if client was in kick queue ({{bz|5120}}).
+
*Fixed <tt>KickClientEx</tt> not immediately kicking client if client was in kick queue ({{bz|5120}}).
*Added IsClientSourceTV and IsClientReplay natives ({{bz|5124}}).
+
*Added <tt>IsClientSourceTV</tt> and <tt>IsClientReplay</tt> natives ({{bz|5124}}).
 
*Added support for getting and setting individual array elements with Get/Set EntProp functions ({{bz|4160}}).
 
*Added support for getting and setting individual array elements with Get/Set EntProp functions ({{bz|4160}}).
*Added support for threaded query handles to SQL_GetInsertId and SQL_GetAffectedRows ({{bz|4699}}) ([https://forums.alliedmods.net/member.php?u=36223 Nephyrin]).
+
*Added support for threaded query handles to <tt>SQL_GetInsertId</tt> and <tt>SQL_GetAffectedRows</tt> ({{bz|4699}}) ([https://forums.alliedmods.net/member.php?u=36223 Nephyrin]).
*Added a GetGameRules function to ISDKTools for extensions to easily get the GameRules class pointer ({{bz|4707}}).
+
*Added a <tt>GetGameRules</tt> function to <tt>ISDKTools</tt> for extensions to easily get the GameRules class pointer ({{bz|4707}}).
*Added GetMessageName to IUserMessages ({{bz|4573}}) ([http://forums.alliedmods.net/member.php?u=28227 Zach "theY4Kman" Kanzler])
+
*Added <tt>GetMessageName</tt> to <tt>IUserMessages</tt> ({{bz|4573}}) ([http://forums.alliedmods.net/member.php?u=28227 Zach "theY4Kman" Kanzler])
*Added HintTextMsg to IGameHelpers ({{bz|4950}}).
+
*Added <tt>HintTextMsg</tt> to <tt>IGameHelpers</tt> ({{bz|4950}}).
 
*Added ProcessTargetString simple filter API ({{bz|4404}}).
 
*Added ProcessTargetString simple filter API ({{bz|4404}}).
 
*Moved much functionality from core bins to logic bin ({{bz|4406}}, {{bz|4402}}).
 
*Moved much functionality from core bins to logic bin ({{bz|4406}}, {{bz|4402}}).
Line 129: Line 129:
 
*Enhanced nominations API ({{bz|4677}}) ([https://forums.alliedmods.net/member.php?u=31784 CrimsonGT]).
 
*Enhanced nominations API ({{bz|4677}}) ([https://forums.alliedmods.net/member.php?u=31784 CrimsonGT]).
 
*Added Linux support for profiling natives ({{bz|4927}}).
 
*Added Linux support for profiling natives ({{bz|4927}}).
*Added a new ValveCallType that allows for arbitrary |this| parameters, as well as associated features in gamedata and for reading/writing memory ({{bz|3520}}) ([https://forums.alliedmods.net/member.php?u=195 Downtown1]).
+
*Added a new <tt>ValveCallType</tt> that allows for arbitrary |this| parameters, as well as associated features in gamedata and for reading/writing memory ({{bz|3520}}) ([https://forums.alliedmods.net/member.php?u=195 Downtown1]).

Revision as of 13:42, 25 October 2011

This page is a work-in-progress as SourceMod 1.4.0 is not yet released.

SourceMod 1.4. is a major update with many new features and bug fixes.

Overview for Admins

  • New Game Support - SourceMod now runs on Bloody Good Time and E.Y.E. Divine Cybermancy and and added support for Nuclear Dawn.
  • Added support for the third-party mods International Online Soccer: Source and Half-Life 2 Capture the Flag.
  • Support for Mac OS X. (both listen servers and srcds_osx).
  • Updated gamedata for many games and mods.
  • Reserved slot hiding recently broken from updates in Source 2009 games with SourceTV and/or replay active has been fixed.
  • Lots of stability fixes.

Overview for Developers


Compatibility Issues

TODO Compat issue 1:

Some text. Known plugins affected:

  • hi
  • hihi


In future versions of SourceMod, TODO.


Translations

SourceMod 1.4 comes with the following languages translated, thanks to community translators:

  • Brazilian Portuguese
  • Chinese Simplified
  • Chinese Traditional
  • Czech
  • Danish
  • Dutch
  • Finnish
  • French
  • German
  • Hungarian
  • Italian
  • Japanese
  • Korean
  • Latvian
  • Lithuanian
  • Norwegian
  • Polish
  • Russian
  • Slovak
  • Spanish
  • Swedish
  • Turkish


Changelog

User Changes

  • Added support for Max OS X (bug 4392).
  • Added support for Bloody Good Time (bug 4780).
  • Added support for E.Y.E Divine Cybermancy (bug 5035).
  • Added gamedata for Nuclear Dawn.
  • Added gamedata for International Online Soccer: Source (bug 5019).
  • Added gamedata for Half-Life 2 Capture the Flag (bug 5114).
  • Updated mapchooser and other base plugins with Nuclear Dawn specific fixes (bug 5117).
  • Fixed ServerLang value not being read properly on startup (bug 4675).
  • Added support for aliases in languages.cfg (bug 4858).
  • Added output display to sm_rcon command (bug 5018).
  • Flood protection bypass access can now be overridden with command name sm_flood_access (bug 4584).
  • Added a reset argument to sm cvars command to revset cvar values to default (bug 5043).
  • Fixed incorrect language identifiers for Chinese (both Trad. and Simplified) and Brazilian Portuguese not matching cl_language values (bug 5067).
  • Added translation support for Bulgarian (bg).
  • Fixed incorrect number of slots being hidden for reserve with sm_hideslots on Source 2009 with SourceTV or replay (bug 5094).
  • sm_hideslots changes now take effect immediately instead of waiting until a client joins or leaves (bug 5094).
  • Fixed sv_visiblemaxplayers getting stuck at previous max clients in some cases with reserves and SourceTV or replay (bug 5094).
  • Removed error logging if an optional extension is not found (bug 5112).
  • Fixed bots with semicolon in name being unkickable (bug 5120).
  • Changed strings in ice-related funcommands to be translatable (bug 4540).
  • Changed Bintools extension to use a single build for every engine (bug 4548).

Developer Changes

  • Provided native interface for basecomm (bug 2594).
  • Client language detection is too late. (bug 3714) (Tony A. "GoD-Tony").
  • Added ServerCommandEx native to execute server command and retrieve output (bug 3873).
  • Added ability to update clientprefs cookies values on clients not currently connected (bug 3882) (databomb).
  • Added library "matchmaking_ds" support to gamedata lookups (bug 4158).
  • Rooted menu handles to callbacks (bug 4353).
  • Fixed corner cases with ExplodeString (bug 4629). (Michael "LumiStance").
  • Fixed return omission with else-after-return (bug 4852).
  • Added OnConditionAdded and OnConditionRemoved forwards to TF2 extension (bug 4851).
  • Added new natives and forward to the cstrike extension (bug 4732, bug 4985) (Dr!fter).
  • Added WaitingForPlayers forwards to the TF2 extension (bug 4704) (CrimsonGT).
  • Updated and added more TF2 condition, weapon, and damagecustom defines (multiple bug#s).
  • Fixed TF2_RemoveCondition not always removing conditions (bug 4981).
  • Fixed MaxClients not being updated correctly in some places with SourceTV or replay active (bug 4986).
  • Fixed some vars not being marked for init on first compile pass (bug 4643).
  • Increased symbol name limit to 63 characters (bug 4564) (javalia).
  • Fixed crash when dynamic arrays run out of memory (bug 4632).
  • Fixed a crash that could happen from looking up out-of-bounds edict or entity indexes (bug 5080).
  • Fixed client serials not getting cleared on disconnect (bug 5121).
  • Added error on declaring arrays that the compiler is too buggy to handle (bug 4977).
  • Removed reliance on gamedata for multiple SDKTools functions in ep2 and later (bug 4899).
  • Added InvalidateClient and ReconnectClient natives to SDKTools (bug 4931) (Brian "Afronanny" Simon).
  • Added ability to lookup and set values on the gamerules class (bug 4983.
  • BaseComm now uses AddCommandListener for chat hooks (bug 4991).
  • Fixed shutdown bug in SDKTools (bug 5063).
  • Fixed MM-enabled extensions continuing to load after failing MM attach (bug 5042).
  • Added GetDistGainFromSoundLevel native to SDKTools (bug 5066) (javalia).
  • Added CheckAccess native to check an AdminId's command access (bug 5083).
  • Fixed GetEntProp not sign-extending unsigned values less than 32 bits (bug 5105).
  • Fixed crashing when calling CreateEntityByName or CreateFakeClient when no map is running (now errors) (bug 5119).
  • Fixed erring in kick function (e. bad translation) causing client to become unkickable until disconnect (bug 5120).
  • Fixed KickClientEx not immediately kicking client if client was in kick queue (bug 5120).
  • Added IsClientSourceTV and IsClientReplay natives (bug 5124).
  • Added support for getting and setting individual array elements with Get/Set EntProp functions (bug 4160).
  • Added support for threaded query handles to SQL_GetInsertId and SQL_GetAffectedRows (bug 4699) (Nephyrin).
  • Added a GetGameRules function to ISDKTools for extensions to easily get the GameRules class pointer (bug 4707).
  • Added GetMessageName to IUserMessages (bug 4573) (Zach "theY4Kman" Kanzler)
  • Added HintTextMsg to IGameHelpers (bug 4950).
  • Added ProcessTargetString simple filter API (bug 4404).
  • Moved much functionality from core bins to logic bin (bug 4406, bug 4402).
  • Fixed bogus asserts in sp compiler (bug 4486, bug 4487).
  • Greatly improved sp compiler performance (~5x overall speedup) (bug 3820, bug 4493, bug 4495).
  • Changed entity output detours to use CDetour (bug 4416).
  • Enhanced nominations API (bug 4677) (CrimsonGT).
  • Added Linux support for profiling natives (bug 4927).
  • Added a new ValveCallType that allows for arbitrary |this| parameters, as well as associated features in gamedata and for reading/writing memory (bug 3520) (Downtown1).