enum abstract PolymodErrorCode(String)
package polymod
from String to String
import polymod.Polymod
Represents the particular type of error that occurred. Great to use as the condition of a switch statement to provide special handling for specific errors.
Variables
inlineread onlyAPPEND:String = cast "append_error"
There was a warning or error attempting to perform an append operation on a file. - Check the source and target files are correctly formatted and try again.
inlineread onlyBAD_CUSTOM_FILESYSTEM:String = cast "bad_custom_filesystem"
You passed a bad argument to Polymod.init({customFilesystem}).
- Ensure the input is either an IFileSystem or a Class
inlineread onlyDEPENDENCY_CHECK_SKIPPED:String = cast "dependency_check_skipped"
Polymod was configured to skip dependency checks when loading mods, and that mod order should not be checked. - Make sure you are certain this behavior is correct and that you have properly configured Polymod. - This is a warning and can be ignored.
inlineread onlyDEPENDENCY_CYCLICAL:String = cast "dependency_cyclical"
Polymod attempted to load a mod, but one of its dependencies created a loop.
For example, Mod A requires Mod B, which requires Mod C, which requires Mod A.
- This is a warning if skipDependencyErrors
is true, the problematic mods will be skipped.
- This is an error if skipDependencyErrors
is false, no mods will be loaded.
- Inform the mod authors that the dependency issue exists and must be resolved.
inlineread onlyDEPENDENCY_UNMET:String = cast "dependency_unmet"
Polymod attempted to load a mod, but one or more of its dependencies were missing.
- This is a warning if skipDependencyErrors
is true, the problematic mod will be skipped.
- This is an error if skipDependencyErrors
is false, no mods will be loaded.
- Make sure to inform the user that the required mods are missing.
inlineread onlyDEPENDENCY_VERSION_MISMATCH:String = cast "dependency_version_mismatch"
Polymod attempted to load a mod, and its dependency was found,
but the version number of the dependency did not match that required by the mod.
- This is a warning if skipDependencyErrors
is true, the problematic mod will be skipped.
- This is an error if skipDependencyErrors
is false, no mods will be loaded.
- Make sure to inform the user that the required mods have a mismatched version.
inlineread onlyDIRECTORY_MISSING:String = cast "directory_missing"
Polymod tried to access a directory that was not found. - Make sure the directory exists before attempting to access it.
inlineread onlyFAILED_CREATE_BACKEND:String = cast "failed_create_backend"
Polymod could not create an instance of the class you provided for params.customBackend
.
- Check that the class extends IBackend, and can be instantiated properly.
inlineread onlyFILE_MISSING:String = cast "file_missing"
Polymod tried to access a file that was not found. - Make sure the file exists before attempting to access it.
inlineread onlyFRAMEWORK_AUTODETECT:String = cast "framework_autodetect"
Indicates what asset framework Polymod has automatically detected for use. - This is an info message, and can either be logged or ignored.
inlineread onlyFRAMEWORK_INIT:String = cast "framework_init"
Indicates what asset framework Polymod has been manually configured to use. - This is an info message, and can either be logged or ignored.
inlineread onlyFUNCTIONALITY_DEPRECATED:String = cast "functionality_deprecated"
You attempted to use a functionality of Polymod that has been deprecated and has/will be significantly reworked or altered. - New features and their associated documentation will be provided in future updates.
inlineread onlyFUNCTIONALITY_NOT_IMPLEMENTED:String = cast "functionality_not_implemented"
You attempted to use a functionality of Polymod that is not fully implemented, or not implemented for the current framework. - Report the issue here, and describe your setup and provide the error message: https://github.com/larsiusprime/polymod/issues
inlineread onlyLIME_MISSING_ASSET_LIBRARY_INFO:PolymodErrorCode = "lime_missing_asset_library_info"
On the Lime and OpenFL platforms, if the base app defines multiple asset libraries,
each asset library must be assigned a path to allow mods to override their files.
- Provide a frameworkParams.assetLibraryPaths
object to Polymod.init().
inlineread onlyLIME_MISSING_ASSET_LIBRARY_REFERENCE:PolymodErrorCode = "lime_missing_asset_library_reference"
On the Lime and OpenFL platforms, if the base app defines multiple asset libraries,
each asset library must be assigned a path to allow mods to override their files.
- All libraries must have a value under frameworkParams.assetLibraryPaths
.
- Set the value to ./
to fetch assets from the root of the mod folder.
inlineread onlyMERGE:String = cast "merge_error"
There was a warning or error attempting to perform a merge operation on a file. - Check the source and target files are correctly formatted and try again.
inlineread onlyMISSING_ICON:String = cast "missing_icon"
A mod with the given ID is missing an icon file.
- This is a warning and can be ignored. Polymod will still load your mod, but it looks better if you add an icon.
- The default location for icons is _polymod_icon.png
.
inlineread onlyMISSING_META:String = cast "missing_meta"
You requested a mod to be loaded but its mod folder is missing a metadata file. - Make sure the mod folder contains a metadata JSON file. Polymod won't recognize the mod without it.
inlineread onlyMISSING_MOD:String = cast "missing_mod"
You requested a mod to be loaded but that mod was not installed. - Make sure a mod with that ID is installed. - Make sure to run Polymod.scan to get the list of valid mod IDs.
inlineread onlyMOD_LOAD_DONE:String = cast "mod_load_done"
We have successfully completed loading a particular mod. - This is an info message. You can log it or ignore it if you like. - This is also a good trigger for a UI indicator like a toast notification.
inlineread onlyMOD_LOAD_FAILED:String = cast "mod_load_failed"
We couldn't load a particular mod. - There will generally be a warning or error before this indicating the reason for the error.
inlineread onlyMOD_LOAD_PREPARE:String = cast "mod_load_prepare"
We are preparing to load a particular mod. - This is an info message. You can log it or ignore it if you like.
inlineread onlyPARAM_MOD_VERSION:String = cast "param_mod_version"
One of the version strings you provided to Polymod.init is invalid. - Make sure you're using a valid Semantic Version string.
inlineread onlyPARSE_API_VERSION:String = cast "parse_api_version"
The app's API version string (passed to Polymod.init) could not be parsed. - Make sure the string is a valid Semantic Version string.
inlineread onlyPARSE_MOD_API_VERSION:String = cast "parse_mod_api_version"
The mod's API version string could not be parsed. - Make sure the metadata JSON contains a valid Semantic Version string.
inlineread onlyPARSE_MOD_META:String = cast "parse_mod_meta"
The mod's metadata file could not be parsed. - Make sure the file contains valid JSON.
inlineread onlyPARSE_MOD_VERSION:String = cast "parse_mod_version"
The mod's version string could not be parsed. - Make sure the metadata JSON contains a valid Semantic Version string.
inlineread onlyPOLYMOD_NOT_LOADED:String = cast "polymod_not_loaded"
You attempted to perform an operation that requires Polymod to be initialized. - Make sure you call Polymod.init before attempting to call this function.
inlineread onlyUNDEFINED_CUSTOM_BACKEND:String = cast "undefined_custom_backend"
You configured Polymod to use the CUSTOM
asset framework, then didn't provide a value for params.customBackend
.
- Define a class which extends IBackend, and provide it to Polymod.
inlineread onlyVERSION_CONFLICT_API:String = cast "version_conflict_api"
The mod has an API version that conflicts with the application's API version.
- This means that the mod needs to be updated, checking for compatibility issues with any changes to API version.
- If you're getting this error even for patch versions, be sure to tweak the POLYMOD_API_VERSION_MATCH
config option.
inlineread onlyVERSION_CONFLICT_MOD:String = cast "version_conflict_mod"
An installed mod is looking for another mod with a specific version, but the mod is not of that version. - The mod may be a modpack that includes that mod, or it may be a mod that has the other mod as a dependency. - Inform your users to install the proper mod version.