cropped-legend-quest-logo.png

Skill Configuration

Skills.yml contains the “default” settings for skills. Classes and Races skill settings override these defaults.

Each skill config or permskill config consists of one ore more skill definitions like this..

permskills:
    fly:
        skillname: fly
        description: "Fly for 1 minute"
        type: ACTIVE
        level: 10
        requires: SomeSkill
        requiresOne: 
          - listOfSkills
          - oneOfWhich
          - mustBeOwned
        cost: 0
        manaCost: 10
        buildup: 1000
        delay: 1000
        cooldown: 60000
        duration: 60000
        pay: 1000
        xp: 100
        karmaCost: 0
        karmaReward: 10
        karmaRequired: 1000
        needPerm: someperm.possibly.from.quest.reward
        consumes: FEATHER
        consumesqty: 2
        perm: essentials.fly
        startcommand: "fly on"
        endcommand: "fly off"

The above uses all the possible setting to make a complete, if rather dubious in application, skill. And here’s a smaller example of config for a LegendQuest Skill.

 skill:
    summonpiggy:
        skillname: summon
        level: 5
        cost: 0
        manaCost: 100
        cooldown: 60000
        vars:
            qty: 2
            entity: pig
    hatching:
        skillname: summon
        level: 15
        cost: 0
        manaCost: 100
        cooldown: 60000
        vars:
            qty: 10
            entity: chicken

Here’s what all the parts do.

The two sections skill: and permskills: are for two different types of skill. skill: is for LegendQuest skills consisting of custom .jar files in the /plugins/LegendQuest/skills/ folder.permskills: allows you to assign permissions and run regular plugin commands for a player to use them as skills.

Each skill has a name, for now these must be unique – but in future where the same name is re-used then the skill will be “upgraded” the the higher level/cost as you level up.

Inbuilt skills in the skill: section have a skillname value. This is the name of the skill file to use for this skill in the /skills/ folder, allowing you to have several implementations for the same skill, like the above example with two instances of the summon skill.

skill: section also allows a var: section to hand settings over to override the skills defaults. The values of these vary per skill and can be found in the skill defaults page.

Description
Description of the skill as seen in /skill <name> info.
level
The level at which this skill ‘unlocks’ use 0 for always available skills.
cost
The number of skill points needed to buy this skill. Skills with 0 cost unlock at their level. Skills with cost and level are only available to “buy” once the level has been first reached.
requires
If listed, all of the skills in this list must be owned before this skill is unlocked.
requiresOne
If listed, one of the skills in this list must be owned before this skill is unlocked.
type
One of PASSIVE, ACTIVE or TRIGGERED. Passive skills are always on and ignore buildup, delay, duration and cooldown. Active skills are triggered by events, Triggered skills by linked items or the /skill command. PermSkills require this, native skills only read this if they have dual type ability.
manaCost
The amount of mana expended to use this skill. This mana is paid when the skill enters the active phase (after any build up or delay).
consumes
This is a Material type that is required to use the skill. Which is removed when the skill becomes active.
consumesqty
This is the amount of the Material type that is required to use the skill.
pay
Amount of cash to pay to use this skill.
xp
Amount of XP awarded for using this skill.
karmaCost
Amount of karma to lose to use this skill
karmaReward
Amount of karma to recieve when using this skill.
karmaRequired
Amount of karma required before using this skill. If negative then current karma must be bellow this figure.
needPerm
Set a requirement for having a permissions node to use this skill.
buildup
The amount of time (in milliseconds) that the player must stand still before the skill triggers. Moving during this time cancels the skill.
delay
Amount of time (in milliseconds) to wait before triggering the skil. Note that the skill triggers AFTER this delay (and any buildup) so be aware that skills that use line of sight for targeting will trigger after this delay and use the LoS at that time – not when the skill is first triggered.
duration
Amount of time (in milliseconds) that the skill is active for. At the start of this time manaCostand consumes are paid, and the command or startcommand is executed. During the duration time period the perm (if any) permission node is applied to the player.
cooldown
Amount of time (in milliseconds) before skill can be reused. At the start of this time period, anyperm is removed and endcommand is executed.
perm
The permissions node to add to the player during the duration. (or permanently if type is set to PASSIVE).
perms
A list of permissions nodes to add to the player during the duration. (or permanently if type is set to PASSIVE).
command/startcommand
These are interchangeable. This is the command to be run as the player on start of the duration period.
endcommand
This is the command to be run as the player on end of the duration. This allows for on/off toggle skills to be used.