Difference between revisions of "Upgrading SourceMod"

From AlliedModders Wiki
Jump to: navigation, search
m
(Added note to shut down game server before updating)
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
When upgrading SourceMod, backwards compatibility is guaranteed except in rare cases.  To completely upgrade, you should:
 
When upgrading SourceMod, backwards compatibility is guaranteed except in rare cases.  To completely upgrade, you should:
  
 +
*Ensure your game server is completely stopped and not running as you cannot update some files while they are still in use.
 
*If you are upgrading to a stable release (not a nightly build), check its release notes for any specific instructions.
 
*If you are upgrading to a stable release (not a nightly build), check its release notes for any specific instructions.
 
*Upgrade all <tt>.so</tt>/<tt>.dll</tt> binaries in the following folders:
 
*Upgrade all <tt>.so</tt>/<tt>.dll</tt> binaries in the following folders:
 
**<tt>sourcemod/bin</tt>
 
**<tt>sourcemod/bin</tt>
 
**<tt>sourcemod/extensions</tt>
 
**<tt>sourcemod/extensions</tt>
**<tt>sourcemod/extensions/auto.1.ep1</tt>
 
**<tt>sourcemod/extensions/auto.2.ep2</tt>
 
 
*Upgrade all of the <tt>.txt</tt> files in the <tt>sourcemod/gamedata</tt> folder.
 
*Upgrade all of the <tt>.txt</tt> files in the <tt>sourcemod/gamedata</tt> folder.
 
*Upgrade all of the <tt>.txt</tt> files in the <tt>sourcemod/translations</tt> folder.
 
*Upgrade all of the <tt>.txt</tt> files in the <tt>sourcemod/translations</tt> folder.
 
*Upgrade all of the default <tt>.smx</tt> binaries in the <tt>sourcemod/plugins</tt> folder.
 
*Upgrade all of the default <tt>.smx</tt> binaries in the <tt>sourcemod/plugins</tt> folder.
 +
*Read the release notes to see if there were any configuration files that got new features.  If so, you should look and see if you want to tweak those new settings.  You may want to use a program such as [http://www.scootersoftware.com/ Beyond Compare] or [http://winmerge.org/ WinMerge].
  
It is not necessary to upgrade any third party plugins, unless in rare cases where SourceMod was not able to maintain backwards compatibility.  If a plugin stops working due to a SourceMod upgrade, file a bug report and the development team will assess the situation.
 
  
On the other hand, third party extensions may be broken through nightly builds.  Although it is unusual to do so, breaking changes are sometimes made to the C++ API for API which is either not documented or is not known to be used by third parties.  If an extension breaks from a SourceMod update, contact the author for a new version.  (So far, this scenario has not happened as far as we know.)
+
'''Note:''' If a plugin stops working due to a SourceMod upgrade, file a bug report and the development team will assess the situation.
  
 
'''Note:''' It is extremely important to update all <tt>gamedata</tt> files, as those specify how SourceMod interacts with mod-specific properties.   
 
'''Note:''' It is extremely important to update all <tt>gamedata</tt> files, as those specify how SourceMod interacts with mod-specific properties.   
 +
 +
'''Note:''' As of SourceMod 1.2.2, the "auto" folders for SourceMod extensions are no longer used by default. Third party extensions, however, may still use them.
  
 
'''Note:''' If you update your base SourceMod plugins, you must update your translation files (and vice versa).  If you absolutely don't want to update your SourceMod base plugins, you should at least update the <tt>core.phrases.txt</tt> translation file.
 
'''Note:''' If you update your base SourceMod plugins, you must update your translation files (and vice versa).  If you absolutely don't want to update your SourceMod base plugins, you should at least update the <tt>core.phrases.txt</tt> translation file.
  
'''Note:''' You only need to update the .inc files if you are a plugin developer.
+
'''Note:''' You only need to update the .inc files if you are a plugin developer.  If you do update .inc files, you must update the compiler (spcomp.exe for Windows, spcomp for Linux) as well.
  
 
[[Category:SourceMod Documentation]]
 
[[Category:SourceMod Documentation]]

Revision as of 11:48, 11 August 2012

When upgrading SourceMod, backwards compatibility is guaranteed except in rare cases. To completely upgrade, you should:

  • Ensure your game server is completely stopped and not running as you cannot update some files while they are still in use.
  • If you are upgrading to a stable release (not a nightly build), check its release notes for any specific instructions.
  • Upgrade all .so/.dll binaries in the following folders:
    • sourcemod/bin
    • sourcemod/extensions
  • Upgrade all of the .txt files in the sourcemod/gamedata folder.
  • Upgrade all of the .txt files in the sourcemod/translations folder.
  • Upgrade all of the default .smx binaries in the sourcemod/plugins folder.
  • Read the release notes to see if there were any configuration files that got new features. If so, you should look and see if you want to tweak those new settings. You may want to use a program such as Beyond Compare or WinMerge.


Note: If a plugin stops working due to a SourceMod upgrade, file a bug report and the development team will assess the situation.

Note: It is extremely important to update all gamedata files, as those specify how SourceMod interacts with mod-specific properties.

Note: As of SourceMod 1.2.2, the "auto" folders for SourceMod extensions are no longer used by default. Third party extensions, however, may still use them.

Note: If you update your base SourceMod plugins, you must update your translation files (and vice versa). If you absolutely don't want to update your SourceMod base plugins, you should at least update the core.phrases.txt translation file.

Note: You only need to update the .inc files if you are a plugin developer. If you do update .inc files, you must update the compiler (spcomp.exe for Windows, spcomp for Linux) as well.