How to utilize OBMM.

This page updated on May 29 2017 CST

Script History

This page contains a list of all OBMM script functions (version 1.1.11 as of this writing) and what version of OBMM they were introduced and/or were fully stable. This is helpful in determining if your script needs an OBMM version check.

Note however, this does not make an attempt to keep up with C#, VB or Python scripting.

OBMM Version Check (Abort)

This script will check for a required version of OBMM and cause the installation to abort if the requirements are not met.

The Code:

OBMM Version Check (Warn)

This script will check for a specific version of OBMM and warn the player of possible install problems or missing install features due to an older version of OBMM.

The Code:

Functions Stable Since OBMM 0.6.10

Purpose: The functions listed here have always available and stable since OBMM was released with the VersionLessThan and VersionGreaterThan functions. If your scripts use only functions listed in this section, there is no need to place an OBMM version check at the top of your scripts.

  • DialogYesNo (Existed since 0.4.4)
  • DontInstallDataFile (Existed since 0.4.4)
  • EditINI (New in 0.5.0)
  • FatalError (Existed since 0.4.4)
  • If,Else,EndIf (Existed since 0.4.4)
  • IfNot,Else,EndIf (Existed since 0.4.4)
  • InstallAllDataFiles (Existed since 0.4.4)
  • InstallAllPlugins (Existed since 0.4.4)
  • LoadAfter (Existed since 0.4.4)
  • LoadBefore (Existed since 0.4.4)
  • Message (Existed since 0.4.4)
  • RegisterBSA (Existed since 0.4.4, Stable in 0.5.0)
  • SetDeactivationWarning (New in 0.5.0)
  • SetGMST (New in 0.6.0)
  • UncheckESP (New in 0.5.0)
  • UnregisterBSA (Existed since 0.4.4)
  • VersionLessThan (New in 0.5.0, Stable in 0.6.10)
  • VersionGreaterThan (New in 0.5.0, Stable in 0.6.10)

Functions Requiring A Specific Version of OBMM

If your script needs to use any of the following functions, it would be wise to include an OBMM version check at the top of your script.

Example #1: If your script uses the CopyPlugin and DisplayImage scripts, you need to include an OBMM version check for 0.8.11 which is the lowest version of OBMM that will allow your scripts to work properly.

Example #2: If your script uses DontInstallDataFolder, your script needs to check for at least version 0.8.15 since that is the version that the function became stable.

  • 1.1.11 - LoadEarly (New in 1.1.11)
  • 1.1.2 - SelectWithDescriptions (New in 0.9.7)
  • 1.1.1 - SetPluginByte (New in 1.1.1)
  • 1.1.1 - SetPluginShort (New in 1.1.1)
  • 1.1.1 - SetPluginInt (New in 1.1.1)
  • 1.1.1 - SetPluginLong (New in 1.1.1)
  • 1.1.1 - SetPluginFloat (New in 1.1.1)
  • 1.1.1 - ConflictsWithRegex (New in 1.0.7)
  • 1.1.1 - DependsOnRegex (New in 1.0.7)
  • 1.0.4 - PatchPlugin (New in 0.9.7)
  • 1.0.0 - AllowRunOnLines (New in 1.0.0)
  • 1.0.0 - fGreaterThan (New in 1.0.0)
  • 1.0.0 - GreaterThan (New in 1.0.0)
  • 1.0.0 - fGreaterEqual (New in 1.0.0)
  • 1.0.0 - GreaterEqual (New in 1.0.0)
  • 1.0.0 - Equal (New in 1.0.0)
  • 1.0.0 - GoTo (Re-added in 1.0.0)
  • 1.0.0 - Label (Re-added in 1.0.0)
  • 0.9.24 - EditXMLLine (New in 0.9.24)
  • 0.9.24 - EditXMLReplace (New in 0.9.24)
  • 0.9.21 - ScriptExtenderNewerThan (New in 0.8.5)
  • 0.9.21 - Substring (New in 0.9.21)
  • 0.9.21 - RemoveString (New in 0.9.21)
  • 0.9.21 - StringLength (New in 0.9.21)
  • 0.9.21 - iSet (New in 0.9.21)
  • 0.9.21 - fSet (New in 0.9.21)
  • 0.9.18 - .esm (Load Order Corrections new in 0.9.16)
  • 0.9.15 - SetGlobal (New in 0.6.0)
  • 0.9.13 - Select,Case,EndSelect (New in 0.7.0)
  • 0.9.11 - SelectString (New in 0.9.11)
  • 0.9.11 - ExecLines (New in 0.9.0)
  • 0.9.7 - CombinePaths (New in 0.9.7)
  • 0.9.7 - For Each DataFolder (New in 0.9.7)
  • 0.9.7 - For Each DataFile (New in 0.9.7)
  • 0.9.7 - For Each PluginFolder (New in 0.9.7)
  • 0.9.7 - For Each Plugin (New in 0.9.7)
  • 0.9.7 - GetDirectoryName (New in 0.9.7)
  • 0.9.7 - GetFileName (New in 0.9.7)
  • 0.9.7 - GetFileNameWithoutExtension (New in 0.9.7)
  • 0.9.7 - InputString (New in 0.9.7)
  • 0.9.7 - PatchDataFile (New in 0.9.7)
  • 0.9.7 - Return (New in 0.9.7)
  • 0.9.7 - SelectWithDescriptionsAndPreviews (New in 0.9.7)
  • 0.9.7 - SelectManyWithDescriptions (New in 0.9.7)
  • 0.9.7 - SelectManyWithDescriptionsAndPreviews (New in 0.9.7)
  • 0.9.3 - InstallDataFile (Existed since 0.4.4)
  • 0.9.2 - SetDeactivationWarning (New in ?.?.?)
  • 0.9.2 - CopyPlugin (New in 0.8.0)
  • 0.9.2 - CopyDataFile (New in 0.5.0)
  • 0.9.2 - CopyDataFolder (New in 0.8.11)
  • 0.9.1 - SelectVar (New in 0.9.1)
  • 0.9.1 - ReadINI (New in 0.9.1)
  • 0.9.1 - ReadRendererInfo (New in 0.9.1)
  • 0.9.1 - InstallDataFolder (New in 0.9.1)
  • 0.9.1 - EditShader (New in 0.9.1)
  • 0.9.0 - For, EndFor (New in 0.9.0)
  • 0.9.0 - SetVar (New in 0.9.0)
  • 0.9.0 - DontInstallDataFolder (New in 0.8.9)
  • 0.8.12 - SelectManyWithPreview,Case,EndSelect (New in 0.8.0)
  • 0.8.12 - SelectMany,Case,EndSelect (New in 0.8.0)
  • 0.8.9 - OblivionNewerThan (New in 0.8.9)
  • 0.8.7 - InstallPlugin (Existed since 0.4.4)
  • 0.8.7 - DontInstallPlugin (Existed since 0.4.4)
  • 0.8.6 - SelectWithPreview,Case,EndSelect (New in 0.8.0)
  • 0.8.5 - ScriptExtenderPresent (New in 0.8.5)
  • 0.8.3 - DontInstallAnyDataFiles (Existed since 0.4.4)
  • 0.8.3 - DontInstallAnyPlugins (Existed since 0.4.4)
  • 0.8.0 - DisplayImage (New in 0.8.0)
  • 0.8.0 - DisplayText (New in 0.8.0)
  • 0.7.14 - DependsOn (Existed since 0.4.4)
  • 0.7.14 - ConflictsWith (Existed since 0.4.4)
  • 0.7.0 - Break (New in 0.7.0)
  • 0.7.0 - DataFileExists (Existed since 0.4.4)

Functions No Longer Supported

Purpose: These functions no longer exist in the current version of OBMM.

  • EditXML (New in 0.5.0, Removed in 0.8.0)
  • GoTo (Removed in 0.8.0, Added back in 1.0.0)
  • Label (Removed in 0.8.0, Added back in 1.0.0)