Documentation

info.toml reference

The info.toml file specifies important metadata for a plugin. It has a number of possible options you can set. The format of this file is toml.

Meta table

The required [meta] table contains basic metadata information about the plugin.

Key Type Required Description
version String Yes The version of the plugin. Openplanet will read this as 1.0 when not provided, but it is required for successful submission on the website.
name String Recommended The name of the plugin. When not provided, this defaults to the identifier of the plugin.
author String Recommended The author of the plugin.
category String Recommended The category of the plugin. When not provided, this defaults to Uncategorized. It's recommended to use category names that other plugins are also using, so that they can be grouped together in a nice way.
blocks String array A list of plugin identifiers to block from loading if this plugin is loaded. You shouldn't include this if you don't need to block any plugins. This is useful when a plugin needs to block an older version of a plugin with a different identifier.
perms String Permissions required to run this plugin. This is mostly an older value that should be avoided. You should use Permissions.as instead. Possible values for this setting are free, paid, and full.
siteid Integer The ID for this plugin on the Openplanet website. This is used to check for updates. You don't have to manually add this to your file, as the review process will do this automatically for you.

Game table

The optional [game] table contains game-specific options for the plugin.

Key Type Description
min_version String The minimum version of the game that is required to use this plugin. The format must be either a date or full date & time. For example, 2022-02-03 will match any game build from February 3rd, 2022. A specific time may also be provided in 24 hour format, for example: 2022-02-03 18:03 will only match game builds made on or after 6:03 PM UTC, builds made before that time are not matched.
max_version String The maximum version of the game that is required to use this plugin. See min_version for format.

Script table

The optional [script] table configures the script runtime for the plugin.

Key Type Description
timeout Integer The timeout time for callback execution in milliseconds. Set this to 0 to disable the timeout, which will also remove the overhead of keeping track of execution time. When disabled, the plugin can potentially cause infinite loops when coded incorrectly. It's recommended to set this to 0 only if you need a bit more performance and if you're certain you're not causing infinite loops. Sometimes loading big fonts or textures can cause script timeouts as well, in which case this value can be increased or set to 0.
imports String array Script filenames to include into the plugin module, located in Openplanet's Scripts folder. You can find a list of scripts shipped with Openplanet here.
exports String array List of files to export to dependent plugins. These exported scripts will be compiled into dependent plugins, but not this plugin. See also the plugin dependencies tutorial.
shared_exports String array List of files to export to dependent plugins. This is the same as exports, except these scripts are also compiled into this plugin. See also the plugin dependencies tutorial.
dependencies String array List of plugin identifiers to depend on. These plugins are required dependencies, meaning if they are not installed, the plugin won't load. See also the plugin dependencies tutorial.
optional_dependencies String array List of plugin identifiers to depend on. These plugins are optional dependencies, meaning if they are not installed, the plugin will still load, but without including exported scripts or the DEPENDENCY_x define. See also the plugin dependencies tutorial.
defines String array A list of precompiler options to have defined during compilation. This can be useful during development.
module String Forces a specific module name. When this is not provided, the plugin identifier is used as the module name. This is only important when you intend to export functions to dependent plugins.

Page updated 8 months ago by Miss