Scans configurations for potential issues and provides deeper analytics for NathanWolf's Magic plugin to ensure you have the cleanest, working-as-intended setup as possible.
To do
To do
There are several configuration options available for MagicScan. See here for the default config.yml with examples.
Each rule can be configured, enabled/disabled, etc. from the rules.yml
Key | Type | Description |
---|---|---|
scan_on_start | boolean | Whether or not the plugin should initiate a scan when the server starts. |
scan_hidden | boolean | Whether or not the plugin should scan hidden things. |
verbose | boolean | Whether or not the plugin should log loading messages. |
inactive_scan_timeout | integer | How long after creating a scan, in ticks, it should automatically be removed. |
interval | integer | How many ticks to wait between displaying text elements. |
default_rule_types | string list | Which RuleTypes should be scanned by default. |
A lot of MagicScan messages are configurable via the messages.yml.
Key | Class | Description |
---|---|---|
actions | SpellActionsRule | Checks if the spell has any parameters that cannot be matched to an action it uses. |
category | SpellCategoryRule | Checks if the spell has a valid spell category. |
cooldown | SpellCooldownRule | Checks if the spell has a cooldown greater than zero. |
description | SpellDescriptionRule | Checks if the spell has a description. |
icon | SpellIconRule | Checks if the spell has a primary icon. |
icon_disabled | SpellIconDisabledRule | Checks if the spell has a disabled icon. |
key | SpellKeyRule | Checks if the spell has an underscore, caps, or numbers besides denoting levels. |
levels | SpellLevelsRule | Checks if the spell has leveling/progression. |
mana_match_path | SpellManaMatchPathRule | Checks if the spell has casting/active mana costs. |
mana | SpellManaRule | Checks if the spell has casting/active mana costs. |
name | SpellNameRule | Checks if Magic's messages.defaults.yml file contains a name entry for the spell. |
path | SpellPathRule | Checks if the spell is contained in a path as a regular, required, or extra spell. |
upgrade_description | SpellUpgradeDescriptionRule | Checks if Magic's messages.defaults.yml file contains an upgrade_description entry for each leveled variant of a spell. |
MagicScan recognizes a couple of tags that can be attached to spells to manipulate or bypass rule behaviour on a per-spell basis. For example:
In your spells.yml
spellkey:
tags: noprogression
The above will not flag the SpellLevelsRule despite not having a second level.
The other tag offered so far is default
. It is intended for spells that don't appear in a path (like those that appear on base wands by default) so that they can bypass failing a SpellPathRule check.