Scripting return codes
Below is a list of the error codes that are returned by many script routines. Some scripts return different codes (such as variants), see those functions for more information. The English meaning (eg. "The world is already open") can also be obtained by calling the ErrorDesc script function. You can also write a function in Lua to check for errors automatically:
    function check (result)
      if result ~= error_code.eOK then
        error (error_desc [result] or
               string.format ("Unknown error code: %i", result),
               2) -- error level - whoever called this function
      end -- if
    end -- function check
If you pass an error code to the "check" function it will raise an error if the code is not valid (ie., not zero), with the appropriate error message.
Mnemonic/Value | Meaning
--- | ---
eOK (0) | No error
eWorldOpen (30001) | The world is already open
eWorldClosed (30002) | The world is closed, this action cannot be performed
eNoNameSpecified (30003) | No name has been specified where one is required
eCannotPlaySound (30004) | The sound file could not be played
eTriggerNotFound (30005) | The specified trigger name does not exist
eTriggerAlreadyExists (30006) | Attempt to add a trigger that already exists
eTriggerCannotBeEmpty (30007) | The trigger "match" string cannot be empty
eInvalidObjectLabel (30008) | The name of this object is invalid
eScriptNameNotLocated (30009) | Script name is not in the script file
eAliasNotFound (30010) | The specified alias name does not exist
eAliasAlreadyExists (30011) | Attempt to add a alias that already exists
eAliasCannotBeEmpty (30012) | The alias "match" string cannot be empty
eCouldNotOpenFile (30013) | Unable to open requested file
eLogFileNotOpen (30014) | Log file was not open
eLogFileAlreadyOpen (30015) | Log file was already open
eLogFileBadWrite (30016) | Bad write to log file
eTimerNotFound (30017) | The specified timer name does not exist
eTimerAlreadyExists (30018) | Attempt to add a timer that already exists
eVariableNotFound (30019) | Attempt to delete a variable that does not exist
eCommandNotEmpty (30020) | Attempt to use SetCommand with a non-empty command window
eBadRegularExpression (30021) | Bad regular expression syntax
eTimeInvalid (30022) | Time given to AddTimer is invalid
eBadMapItem (30023) | Direction given to AddToMapper is invalid
eNoMapItems (30024) | No items in mapper
eUnknownOption (30025) | Option name not found
eOptionOutOfRange (30026) | New value for option is out of range
eTriggerSequenceOutOfRange (30027) | Trigger sequence value invalid
eTriggerSendToInvalid (30028) | Where to send trigger text to is invalid
eTriggerLabelNotSpecified (30029) | Trigger label not specified/invalid for 'send to variable'
ePluginFileNotFound (30030) | File name specified for plugin not found
eProblemsLoadingPlugin (30031) | There was a parsing or other problem loading the plugin
ePluginCannotSetOption (30032) | Plugin is not allowed to set this option
ePluginCannotGetOption (30033) | Plugin is not allowed to get this option
eNoSuchPlugin (30034) | Requested plugin is not installed
eNotAPlugin (30035) | Only a plugin can do this
eNoSuchRoutine (30036) | Plugin does not support that subroutine (subroutine not in script)
ePluginDoesNotSaveState (30037) | Plugin does not support saving state
ePluginCouldNotSaveState (30037) | Plugin could not save state (eg. no state directory)
ePluginDisabled (30039) | Plugin is currently disabled
eErrorCallingPluginRoutine (30040) | Could not call plugin routine
eCommandsNestedTooDeeply (30041) | Calls to "Execute" nested too deeply
eCannotCreateChatSocket (30042) | Unable to create socket for chat connection
eCannotLookupDomainName (30043) | Unable to do DNS (domain name) lookup for chat connection
eNoChatConnections (30044) | No chat connections open
eChatPersonNotFound (30045) | Requested chat person not connected
eBadParameter (30046) | General problem with a parameter to a script call
eChatAlreadyListening (30047) | Already listening for incoming chats
eChatIDNotFound (30048) | Chat session with that ID not found
eChatAlreadyConnected (30049) | Already connected to that server/port
eClipboardEmpty (30050) | Cannot get (text from the) clipboard
eFileNotFound (30051) | Cannot open the specified file
eAlreadyTransferringFile (30052) | Already transferring a file
eNotTransferringFile (30053) | Not transferring a file
eNoSuchCommand (30054) | There is not a command of that name
eArrayAlreadyExists (30055) | That array already exists
eBadKeyName (30056) | That name is not permitted for a key
eArrayDoesNotExist (30056) | That array does not exist
eArrayNotEvenNumberOfValues (30057) | Values to be imported into array are not in pairs
eImportedWithDuplicates (30058) | Import succeeded, however some values were overwritten
eBadDelimiter (30059) | Import/export delimiter must be a single character, other than backslash
eSetReplacingExistingValue (30060) | Array element set, existing value overwritten
eKeyDoesNotExist (30061) | Array key does not exist
eCannotImport (30062) | Cannot import because cannot find unused temporary character
eItemInUse (30063) | Cannot delete trigger/alias/timer because it is executing a script
eSpellCheckNotActive (30064) | Spell checker is not active
You can copy the error codes from the appropriate section below and paste into the start of your script file, to predefine all known return codes. Error codes ready for use in VBscript programs
    const eOK = 0 ' No error
    const eWorldOpen = 30001 ' The world is already open
    const eWorldClosed = 30002 ' The world is closed, this action cannot be performed
    const eNoNameSpecified = 30003 ' No name has been specified where one is required
    const eCannotPlaySound = 30004 ' The sound file could not be played
    const eTriggerNotFound = 30005 ' The specified trigger name does not exist
    const eTriggerAlreadyExists = 30006 ' Attempt to add a trigger that already exists
    const eTriggerCannotBeEmpty = 30007 ' The trigger "match" string cannot be empty
    const eInvalidObjectLabel = 30008 ' The name of this object is invalid
    const eScriptNameNotLocated = 30009 ' Script name is not in the script file
    const eAliasNotFound = 30010 ' The specified alias name does not exist
    const eAliasAlreadyExists = 30011 ' Attempt to add a alias that already exists
    const eAliasCannotBeEmpty = 30012 ' The alias "match" string cannot be empty
    const eCouldNotOpenFile = 30013 ' Unable to open requested file
    const eLogFileNotOpen = 30014 ' Log file was not open
    const eLogFileAlreadyOpen = 30015 ' Log file was already open
    const eLogFileBadWrite = 30016 ' Bad write to log file
    const eTimerNotFound = 30017 ' The specified timer name does not exist
    const eTimerAlreadyExists = 30018 ' Attempt to add a timer that already exists
    const eVariableNotFound = 30019 ' Attempt to delete a variable that does not exist
    const eCommandNotEmpty = 30020 ' Attempt to use SetCommand with a non-empty command window
    const eBadRegularExpression = 30021 ' Bad regular expression syntax
    const eTimeInvalid = 30022 ' Time given to AddTimer is invalid
    const eBadMapItem = 30023 ' Direction given to AddToMapper is invalid
    const eNoMapItems = 30024 ' No items in mapper
    const eUnknownOption = 30025 ' Option name not found
    const eOptionOutOfRange = 30026 ' New value for option is out of range
    const eTriggerSequenceOutOfRange = 30027 ' Trigger sequence value invalid
    const eTriggerSendToInvalid = 30028 ' Where to send trigger text to is invalid
    const eTriggerLabelNotSpecified = 30029 ' Trigger label not specified/invalid for 'send to variable'
    const ePluginFileNotFound = 30030 ' File name specified for plugin not found
    const eProblemsLoadingPlugin = 30031 ' There was a parsing or other problem loading the plugin
    const ePluginCannotSetOption = 30032 ' Plugin is not allowed to set this option
    const ePluginCannotGetOption = 30033 ' Plugin is not allowed to get this option
    const eNoSuchPlugin = 30034 ' Requested plugin is not installed
    const eNotAPlugin = 30035 ' Only a plugin can do this
    const eNoSuchRoutine = 30036 ' Plugin does not support that subroutine (subroutine not in script)
    const ePluginDoesNotSaveState = 30037 ' Plugin does not support saving state
    const ePluginCouldNotSaveState = 30037 ' Plugin could not save state (eg. no state directory)
    const ePluginDisabled = 30039 ' Plugin is currently disabled
    const eErrorCallingPluginRoutine = 30040 ' Could not call plugin routine
    const eCommandsNestedTooDeeply = 30041 ' Calls to "Execute" nested too deeply
    const eCannotCreateChatSocket = 30042 ' Unable to create socket for chat connection
    const eCannotLookupDomainName = 30043 ' Unable to do DNS (domain name) lookup for chat connection
    const eNoChatConnections = 30044 ' No chat connections open
    const eChatPersonNotFound = 30045 ' Requested chat person not connected
    const eBadParameter = 30046 ' General problem with a parameter to a script call
    const eChatAlreadyListening = 30047 ' Already listening for incoming chats
    const eChatIDNotFound = 30048 ' Chat session with that ID not found
    const eChatAlreadyConnected = 30049 ' Already connected to that server/port
    const eClipboardEmpty = 30050 ' Cannot get (text from the) clipboard
    const eFileNotFound = 30051 ' Cannot open the specified file
    const eAlreadyTransferringFile = 30052 ' Already transferring a file
    const eNotTransferringFile = 30053 ' Not transferring a file
    const eNoSuchCommand = 30054 ' There is not a command of that name
    const eArrayAlreadyExists = 30055 ' That array already exists
    const eBadKeyName = 30056 ' That name is not permitted for a key
    const eArrayDoesNotExist = 30056 ' That array does not exist
    const eArrayNotEvenNumberOfValues = 30057 ' Values to be imported into array are not in pairs
    const eImportedWithDuplicates = 30058 ' Import succeeded, however some values were overwritten
    const eBadDelimiter = 30059 ' Import/export delimiter must be a single character, other than backslash
    const eSetReplacingExistingValue = 30060 ' Array element set, existing value overwritten
    const eKeyDoesNotExist = 30061 ' Array key does not exist
    const eCannotImport = 30062 ' Cannot import because cannot find unused temporary character
    const eItemInUse = 30063 ' Cannot delete trigger/alias/timer because it is executing a script
    const eSpellCheckNotActive = 30064 ' Spell checker is not active
Error codes ready for use in JScript programs
    var eOK = 0; // No error
    var eWorldOpen = 30001; // The world is already open
    var eWorldClosed = 30002; // The world is closed, this action cannot be performed
    var eNoNameSpecified = 30003; // No name has been specified where one is required
    var eCannotPlaySound = 30004; // The sound file could not be played
    var eTriggerNotFound = 30005; // The specified trigger name does not exist
    var eTriggerAlreadyExists = 30006; // Attempt to add a trigger that already exists
    var eTriggerCannotBeEmpty = 30007; // The trigger "match" string cannot be empty
    var eInvalidObjectLabel = 30008; // The name of this object is invalid
    var eScriptNameNotLocated = 30009; // Script name is not in the script file
    var eAliasNotFound = 30010; // The specified alias name does not exist
    var eAliasAlreadyExists = 30011; // Attempt to add a alias that already exists
    var eAliasCannotBeEmpty = 30012; // The alias "match" string cannot be empty
    var eCouldNotOpenFile = 30013; // Unable to open requested file
    var eLogFileNotOpen = 30014; // Log file was not open
    var eLogFileAlreadyOpen = 30015; // Log file was already open
    var eLogFileBadWrite = 30016; // Bad write to log file
    var eTimerNotFound = 30017; // The specified timer name does not exist
    var eTimerAlreadyExists = 30018; // Attempt to add a timer that already exists
    var eVariableNotFound = 30019; // Attempt to delete a variable that does not exist
    var eCommandNotEmpty = 30020; // Attempt to use SetCommand with a non-empty command window
    var eBadRegularExpression = 30021; // Bad regular expression syntax
    var eTimeInvalid = 30022; // Time given to AddTimer is invalid
    var eBadMapItem = 30023; // Direction given to AddToMapper is invalid
    var eNoMapItems = 30024; // No items in mapper
    var eUnknownOption = 30025; // Option name not found
    var eOptionOutOfRange = 30026; // New value for option is out of range
    var eTriggerSequenceOutOfRange = 30027; // Trigger sequence value invalid
    var eTriggerSendToInvalid = 30028; // Where to send trigger text to is invalid
    var eTriggerLabelNotSpecified = 30029; // Trigger label not specified/invalid for 'send to variable'
    var ePluginFileNotFound = 30030; // File name specified for plugin not found
    var eProblemsLoadingPlugin = 30031; // There was a parsing or other problem loading the plugin
    var ePluginCannotSetOption = 30032; // Plugin is not allowed to set this option
    var ePluginCannotGetOption = 30033; // Plugin is not allowed to get this option
    var eNoSuchPlugin = 30034; // Requested plugin is not installed
    var eNotAPlugin = 30035; // Only a plugin can do this
    var eNoSuchRoutine = 30036; // Plugin does not support that subroutine (subroutine not in script)
    var ePluginDoesNotSaveState = 30037; // Plugin does not support saving state
    var ePluginCouldNotSaveState = 30037; // Plugin could not save state (eg. no state directory)
    var ePluginDisabled = 30039; // Plugin is currently disabled
    var eErrorCallingPluginRoutine = 30040; // Could not call plugin routine
    var eCommandsNestedTooDeeply = 30041; // Calls to "Execute" nested too deeply
    var eCannotCreateChatSocket = 30042; // Unable to create socket for chat connection
    var eCannotLookupDomainName = 30043; // Unable to do DNS (domain name) lookup for chat connection
    var eNoChatConnections = 30044; // No chat connections open
    var eChatPersonNotFound = 30045; // Requested chat person not connected
    var eBadParameter = 30046; // General problem with a parameter to a script call
    var eChatAlreadyListening = 30047; // Already listening for incoming chats
    var eChatIDNotFound = 30048; // Chat session with that ID not found
    var eChatAlreadyConnected = 30049; // Already connected to that server/port
    var eClipboardEmpty = 30050; // Cannot get (text from the) clipboard
    var eFileNotFound = 30051; // Cannot open the specified file
    var eAlreadyTransferringFile = 30052; // Already transferring a file
    var eNotTransferringFile = 30053; // Not transferring a file
    var eNoSuchCommand = 30054; // There is not a command of that name
    var eArrayAlreadyExists = 30055; // That array already exists
    var eBadKeyName = 30056; // That name is not permitted for a key
    var eArrayDoesNotExist = 30056; // That array does not exist
    var eArrayNotEvenNumberOfValues = 30057; // Values to be imported into array are not in pairs
    var eImportedWithDuplicates = 30058; // Import succeeded, however some values were overwritten
    var eBadDelimiter = 30059; // Import/export delimiter must be a single character, other than backslash
    var eSetReplacingExistingValue = 30060; // Array element set, existing value overwritten
    var eKeyDoesNotExist = 30061; // Array key does not exist
    var eCannotImport = 30062; // Cannot import because cannot find unused temporary character
    var eItemInUse = 30063; // Cannot delete trigger/alias/timer because it is executing a script
    var eSpellCheckNotActive = 30064; // Spell checker is not active
Error codes ready for use in PerlScript programs
    my $eOK = 0; # No error
    my $eWorldOpen = 30001; # The world is already open
    my $eWorldClosed = 30002; # The world is closed, this action cannot be performed
    my $eNoNameSpecified = 30003; # No name has been specified where one is required
    my $eCannotPlaySound = 30004; # The sound file could not be played
    my $eTriggerNotFound = 30005; # The specified trigger name does not exist
    my $eTriggerAlreadyExists = 30006; # Attempt to add a trigger that already exists
    my $eTriggerCannotBeEmpty = 30007; # The trigger "match" string cannot be empty
    my $eInvalidObjectLabel = 30008; # The name of this object is invalid
    my $eScriptNameNotLocated = 30009; # Script name is not in the script file
    my $eAliasNotFound = 30010; # The specified alias name does not exist
    my $eAliasAlreadyExists = 30011; # Attempt to add a alias that already exists
    my $eAliasCannotBeEmpty = 30012; # The alias "match" string cannot be empty
    my $eCouldNotOpenFile = 30013; # Unable to open requested file
    my $eLogFileNotOpen = 30014; # Log file was not open
    my $eLogFileAlreadyOpen = 30015; # Log file was already open
    my $eLogFileBadWrite = 30016; # Bad write to log file
    my $eTimerNotFound = 30017; # The specified timer name does not exist
    my $eTimerAlreadyExists = 30018; # Attempt to add a timer that already exists
    my $eVariableNotFound = 30019; # Attempt to delete a variable that does not exist
    my $eCommandNotEmpty = 30020; # Attempt to use SetCommand with a non-empty command window
    my $eBadRegularExpression = 30021; # Bad regular expression syntax
    my $eTimeInvalid = 30022; # Time given to AddTimer is invalid
    my $eBadMapItem = 30023; # Direction given to AddToMapper is invalid
    my $eNoMapItems = 30024; # No items in mapper
    my $eUnknownOption = 30025; # Option name not found
    my $eOptionOutOfRange = 30026; # New value for option is out of range
    my $eTriggerSequenceOutOfRange = 30027; # Trigger sequence value invalid
    my $eTriggerSendToInvalid = 30028; # Where to send trigger text to is invalid
    my $eTriggerLabelNotSpecified = 30029; # Trigger label not specified/invalid for 'send to variable'
    my $ePluginFileNotFound = 30030; # File name specified for plugin not found
    my $eProblemsLoadingPlugin = 30031; # There was a parsing or other problem loading the plugin
    my $ePluginCannotSetOption = 30032; # Plugin is not allowed to set this option
    my $ePluginCannotGetOption = 30033; # Plugin is not allowed to get this option
    my $eNoSuchPlugin = 30034; # Requested plugin is not installed
    my $eNotAPlugin = 30035; # Only a plugin can do this
    my $eNoSuchRoutine = 30036; # Plugin does not support that subroutine (subroutine not in script)
    my $ePluginDoesNotSaveState = 30037; # Plugin does not support saving state
    my $ePluginCouldNotSaveState = 30037; # Plugin could not save state (eg. no state directory)
    my $ePluginDisabled = 30039; # Plugin is currently disabled
    my $eErrorCallingPluginRoutine = 30040; # Could not call plugin routine
    my $eCommandsNestedTooDeeply = 30041; # Calls to "Execute" nested too deeply
    my $eCannotCreateChatSocket = 30042; # Unable to create socket for chat connection
    my $eCannotLookupDomainName = 30043; # Unable to do DNS (domain name) lookup for chat connection
    my $eNoChatConnections = 30044; # No chat connections open
    my $eChatPersonNotFound = 30045; # Requested chat person not connected
    my $eBadParameter = 30046; # General problem with a parameter to a script call
    my $eChatAlreadyListening = 30047; # Already listening for incoming chats
    my $eChatIDNotFound = 30048; # Chat session with that ID not found
    my $eChatAlreadyConnected = 30049; # Already connected to that server/port
    my $eClipboardEmpty = 30050; # Cannot get (text from the) clipboard
    my $eFileNotFound = 30051; # Cannot open the specified file
    my $eAlreadyTransferringFile = 30052; # Already transferring a file
    my $eNotTransferringFile = 30053; # Not transferring a file
    my $eNoSuchCommand = 30054; # There is not a command of that name
    my $eArrayAlreadyExists = 30055; # That array already exists
    my $eBadKeyName = 30056; # That name is not permitted for a key
    my $eArrayDoesNotExist = 30056; # That array does not exist
    my $eArrayNotEvenNumberOfValues = 30057; # Values to be imported into array are not in pairs
    my $eImportedWithDuplicates = 30058; # Import succeeded, however some values were overwritten
    my $eBadDelimiter = 30059; # Import/export delimiter must be a single character, other than backslash
    my $eSetReplacingExistingValue = 30060; # Array element set, existing value overwritten
    my $eKeyDoesNotExist = 30061; # Array key does not exist
    my $eCannotImport = 30062; # Cannot import because cannot find unused temporary character
    my $eItemInUse = 30063; # Cannot delete trigger/alias/timer because it is executing a script
    my $eSpellCheckNotActive = 30064; # Spell checker is not active
Error codes ready for use in Python programs
    eOK = 0 # No error
    eWorldOpen = 30001 # The world is already open
    eWorldClosed = 30002 # The world is closed, this action cannot be performed
    eNoNameSpecified = 30003 # No name has been specified where one is required
    eCannotPlaySound = 30004 # The sound file could not be played
    eTriggerNotFound = 30005 # The specified trigger name does not exist
    eTriggerAlreadyExists = 30006 # Attempt to add a trigger that already exists
    eTriggerCannotBeEmpty = 30007 # The trigger "match" string cannot be empty
    eInvalidObjectLabel = 30008 # The name of this object is invalid
    eScriptNameNotLocated = 30009 # Script name is not in the script file
    eAliasNotFound = 30010 # The specified alias name does not exist
    eAliasAlreadyExists = 30011 # Attempt to add a alias that already exists
    eAliasCannotBeEmpty = 30012 # The alias "match" string cannot be empty
    eCouldNotOpenFile = 30013 # Unable to open requested file
    eLogFileNotOpen = 30014 # Log file was not open
    eLogFileAlreadyOpen = 30015 # Log file was already open
    eLogFileBadWrite = 30016 # Bad write to log file
    eTimerNotFound = 30017 # The specified timer name does not exist
    eTimerAlreadyExists = 30018 # Attempt to add a timer that already exists
    eVariableNotFound = 30019 # Attempt to delete a variable that does not exist
    eCommandNotEmpty = 30020 # Attempt to use SetCommand with a non-empty command window
    eBadRegularExpression = 30021 # Bad regular expression syntax
    eTimeInvalid = 30022 # Time given to AddTimer is invalid
    eBadMapItem = 30023 # Direction given to AddToMapper is invalid
    eNoMapItems = 30024 # No items in mapper
    eUnknownOption = 30025 # Option name not found
    eOptionOutOfRange = 30026 # New value for option is out of range
    eTriggerSequenceOutOfRange = 30027 # Trigger sequence value invalid
    eTriggerSendToInvalid = 30028 # Where to send trigger text to is invalid
    eTriggerLabelNotSpecified = 30029 # Trigger label not specified/invalid for 'send to variable'
    ePluginFileNotFound = 30030 # File name specified for plugin not found
    eProblemsLoadingPlugin = 30031 # There was a parsing or other problem loading the plugin
    ePluginCannotSetOption = 30032 # Plugin is not allowed to set this option
    ePluginCannotGetOption = 30033 # Plugin is not allowed to get this option
    eNoSuchPlugin = 30034 # Requested plugin is not installed
    eNotAPlugin = 30035 # Only a plugin can do this
    eNoSuchRoutine = 30036 # Plugin does not support that subroutine (subroutine not in script)
    ePluginDoesNotSaveState = 30037 # Plugin does not support saving state
    ePluginCouldNotSaveState = 30037 # Plugin could not save state (eg. no state directory)
    ePluginDisabled = 30039 # Plugin is currently disabled
    eErrorCallingPluginRoutine = 30040 # Could not call plugin routine
    eCommandsNestedTooDeeply = 30041 # Calls to "Execute" nested too deeply
    eCannotCreateChatSocket = 30042 # Unable to create socket for chat connection
    eCannotLookupDomainName = 30043 # Unable to do DNS (domain name) lookup for chat connection
    eNoChatConnections = 30044 # No chat connections open
    eChatPersonNotFound = 30045 # Requested chat person not connected
    eBadParameter = 30046 # General problem with a parameter to a script call
    eChatAlreadyListening = 30047 # Already listening for incoming chats
    eChatIDNotFound = 30048 # Chat session with that ID not found
    eChatAlreadyConnected = 30049 # Already connected to that server/port
    eClipboardEmpty = 30050 # Cannot get (text from the) clipboard
    eFileNotFound = 30051 # Cannot open the specified file
    eAlreadyTransferringFile = 30052 # Already transferring a file
    eNotTransferringFile = 30053 # Not transferring a file
    eNoSuchCommand = 30054 # There is not a command of that name
    eArrayAlreadyExists = 30055 # That array already exists
    eBadKeyName = 30056 # That name is not permitted for a key
    eArrayDoesNotExist = 30056 # That array does not exist
    eArrayNotEvenNumberOfValues = 30057 # Values to be imported into array are not in pairs
    eImportedWithDuplicates = 30058 # Import succeeded, however some values were overwritten
    eBadDelimiter = 30059 # Import/export delimiter must be a single character, other than backslash
    eSetReplacingExistingValue = 30060 # Array element set, existing value overwritten
    eKeyDoesNotExist = 30061 # Array key does not exist
    eCannotImport = 30062 # Cannot import because cannot find unused temporary character
    eItemInUse = 30063 # Cannot delete trigger/alias/timer because it is executing a script
    eSpellCheckNotActive = 30064 # Spell checker is not active
See also ... Script information Scripting functions list See Also ... Topic Scripting (Help topic: general=errors) Documentation contents page