Design spells, attacks, and skill progression.
Abilities & Skills
Abilities
Abilities are the actions characters use in combat — attacks, spells, buffs, and special moves.

Ability Properties
| Property | Description |
|---|---|
| Name / Description | What the player sees |
| Type | Instant, Cast (charge-up), or Channel |
| Damage Type | Physical, Magic, or True (ignores defense) |
| Element | Optional — Fire, Ice, etc. Feeds the element effectiveness matrix; separate from Damage Type |
| Base Damage | Flat damage value |
| Scaling Stat | Which stat multiplies damage (Attack, Magic Power, etc.) |
| Scaling Ratio | How much of the stat applies (0.5 = 50%) |
| Cooldown / GCD | Per-ability cooldown, plus the shared global cooldown (gcdMs) |
| Cast Time | Charge-up time (0 = instant) |
| Mana / Stamina Cost | Resources consumed on use |
| Range | Maximum distance in tiles |
| Target Mode | Enemies, Allies, All, or Self |
| Class / Weapon / Skill requirements | Optional gates on who can use it |
Damage from a stat alone
An ability's damage is Base Damage + (Scaling Stat × Scaling Ratio). You can leave
Base Damage at 0 and let the stat do all the work — a spell that hits for
four times your Magic Power is Base Damage 0, Scaling Stat Magic Power,
Scaling Ratio 4. That is exactly how an RPG Maker formula like a.mat * 4 imports.
A spell authored this way is a damage spell in every respect: it fires as a skill shot at the cursor, its Projectile Count volley fires every projectile, and a ranged area bursts where you aim — with or without a target selected.
1. Database → Abilities → pick the ability → Basics. 2. Set Base Damage to 0. 3. Pick the Scaling Stat and set the Scaling Ratio (4 = 400% of the stat). 4. Save and publish.
Gotchas:
- A status-only spell needs a Scaling Ratio of 0. A stun or silence with Base
- Heals stay negative. A heal is a negative Base Damage; a 0-base spell aimed at
AoE Shapes
Abilities can hit multiple targets using 9 area-of-effect shapes. The column that decides how a shape behaves is Centred on — whether the area sits on the caster or on the point the ability lands.
| Shape | Centred on | Description |
|---|---|---|
| None | — | Single target only |
| Circle | Aim point | All targets within a radius of where it lands |
| Cone | Caster | Fan-shaped area, pointed at the aim |
| Line | Caster | Narrow beam from the caster out to its range |
| Rectangle | Caster | Rectangular band from the caster toward the aim |
| Ring | Aim point | Donut — outer radius with a hole in the middle |
| Cross | Aim point | Plus-shaped (+) pattern |
| Nova | Caster | A burst covering the ground around the caster |
| Wave | Caster | Expanding arc, pointed at the aim |
Making a blast centred on yourself
Use nova. It is the shape that means "everything around me".
The trap is that circle looks like it should do this if you set the range low enough. It does not: a circle is centred on the aim point, so with a range of 0 or 1 it still lands on whatever you are aimed at or locked to, and it catches only what is near them — which reads as the spell doing nothing to the enemies packed around you.
To author one:
1. AoE Shape → nova. 2. AoE Radius → how far the burst reaches, in tiles. This is the number that matters; the ability's Range does not size a nova. 3. Aiming → Free aim if the spell should fire whenever it is pressed. On Locked, a nova still demands a selected target and is refused with "This ability requires a target" when there is none.
The shape diagram in the editor shows which anchor is in force, and warns you when you have picked an aim-point shape at a range short enough that you probably meant a nova.
To hit several targets one after another instead of all at once — chain lightning, a ricocheting arrow, a cascading heal — see Chaining Abilities.
Where an ability lands: Aiming
Abilities → (pick one) → Targeting & AoE → Aiming.
| Mode | Where it lands |
|---|---|
| Auto | Your selected target if you have one; otherwise wherever the cursor points. The both-worlds option. |
| Free aim | Always the cursor. A selected target is ignored entirely — the spell is a pure skill shot. |
| Locked | Must have a target. With nothing selected it refuses with "This ability requires a target" — it never fires at bare ground, even with the cursor sitting on an enemy. |
Abilities authored before this dropdown existed keep the behaviour of their old Requires Target checkbox until you pick a mode: checked behaves as Auto, unchecked as Free aim. Nothing changes until you choose.
Gotchas:
- Free aim really does ignore your target. If your fireball keeps flying
- Locked can never be ground-cast. A ground-target AoE authored Locked
Channelled abilities
An ability whose Type is Channel runs while the key is held: pressing starts the channel immediately, and its Cast Time is the maximum channel duration. With a Channel Tick Interval authored, the effect lands over and over for as long as the key stays down — letting go stops the ticks, and you keep everything already delivered. Without a tick interval, the effect fires once when the channel completes; releasing early interrupts it (and refunds the mana, since nothing was delivered).
Mana, cooldown and the GCD are paid once, when the channel starts — ticks are free, and stopping a channel that already landed ticks does not refund.
Knockback and pull
Abilities → (pick one) → Effects → Knockback / pull.
| Direction | What happens to the victim |
|---|---|
| Away (knockback) | Pushed the set distance straight away from you. |
| Toward (pull a set distance) | Dragged the full set distance along the line — deliberately, even past you. A 10-tile pull on something standing next to you yanks it through and out the other side, which is a tool in its own right (throw an enemy behind you, into your group, off a ledge). |
| To the caster (pull all the way in) | Lands one tile in front of you, however far away it was — never behind you. There is no distance to set; the ability's Range still decides who can be hit at all. This is the one to use for a hook that should deliver the enemy to your feet. |
| Field | What it does |
|---|---|
| Direction | Away, Toward or To the caster — see above. |
| Distance (tiles) | How far Away and Toward move the victim, 1–10. Ignored by To the caster. |
| Also apply CC tag | Makes the push crowd control: it obeys knockback immunity, invulnerability and diminishing returns. On by default. |
Gotchas:
- Walls stop every push and pull. The victim travels the line only as far
- Also apply CC tag turns the push into hard crowd control. The fourth
- The Knockback status effect pushes on its own. Use it when a status —
- A rooted target is still moved. Root stops a unit walking by itself, not
- Roll the server after editing — ability definitions load at boot.
Convert a resource (HP into MP, and back)
Abilities → (pick one) → Costs & Effects → + Add action → Convert resource.
Pays one of the caster's own pools into another: spend health to restore mana, burn mana for stamina, turn stamina back into health. RPG Maker's Equilibrium ("HP drained = MAT, MP gained = the same") is this action.
1. Open Database → Abilities and create or edit the ability. Set Target Mode to Self (it also works with nothing selected on any other mode). 2. Leave Base Damage and Scaling Ratio at 0 unless the spell should also hit something. 3. On Costs & Effects, pick + Add action → Convert resource. 4. Set Take from and Restore — for Equilibrium, Health and Mana. 5. Set how much is taken: a Flat amount, a Scaling stat with a **Scaling ratio, or both. Equilibrium is Scaling stat Magic Power, ratio 1**. 6. Save. The editor refuses to save a conversion into the pool it takes from, or one with no amount.
| Field | What it does |
|---|---|
| Take from | The caster's pool that pays: Health, Mana or Stamina. |
| Restore | The caster's pool that is filled. Must be a different pool. |
| Flat amount | A fixed amount taken on every cast. Blank = 0. |
| Scaling stat | A caster stat added to the amount — Magic Power, Attack, Max HP… |
| Scaling ratio | How much of that stat: 1 = all of it, 0.5 = half. |
| Gained per point taken | Blank = 1: take 40, restore 40. At 2 you restore double what you paid. |
| Leave at least | The paying pool never drops below this. Blank = 1 for Health, 0 for Mana and Stamina. |
The amount taken is Flat amount + (Scaling stat × Scaling ratio), rounded down.
Gotchas:
- Health never drops below 1. A conversion can never kill its caster, whatever
- A cast with nothing to take is refused, and costs nothing. At 1 health the
- A full pool is still paid for. Casting Equilibrium at full mana takes the
- Monsters have no mana or stamina, so a monster casting a conversion into
Summoning minions
Abilities → (pick one) → Costs & Effects → + Add action → Summon.
Calls one or more of your world's creatures to fight for the caster — a wolf, a skeleton, a swarm of bats. The minion is the creature you pick in **Mob to summon**, with its own abilities, look and stats, fighting on the caster's side.
1. Author the creature in Database → Mobs first (its abilities decide how it fights). 2. Open Database → Abilities and create or edit the spell. Target Mode can stay as it is — a summon works with nothing selected. 3. On Costs & Effects, pick + Add action → Summon and choose the Mob to summon. 4. Set Count, Duration, Max active per caster and a Control mode. 5. Save.
| Field | What it does |
|---|---|
| Mob to summon | The creature that appears. |
| Control mode | Assist: attacks what the caster attacks, then whatever attacks the caster or its minions. Defensive: only fights what attacks the caster or its minions. |
| Summon at | The caster (ringed around them), The cursor tile (clamped to the spell's range) or The selected target. Every minion lands on walkable ground; an unreachable aim falls back to the caster. |
| Count | How many appear per cast, 1–5. |
| Duration (sec) | How long they stay. 0 = until killed (or dismissed). |
| Max active per caster | How many of this spell's minions one caster may have at once, 1–20. |
| Link max to the ability's skill level | The cap grows with the caster's level in the spell's linked skill, up to the max above. |
| HP % of base | The minion's health as a share of the creature's. Blank = 100%. |
| Damage % of base | The minion's attack and magic power as a share of the creature's. Blank = 100%. |
| Inherit caster level | The creature's stats are rescaled to the caster's level before the percentages apply, and it shows the caster's level. |
How minions behave:
- They follow. With nothing to fight a minion heels a few tiles behind its caster.
- They fight near the caster — only within 14 tiles of them — and only what the
- Creatures fight them. Wild creatures attack a player's minions like they attack
- A creature's summons fight for the creature. When a monster casts a summon, its
- They show whose they are. Every minion wears its nameplate with its caster's name
Gotchas:
- The cap dismisses the oldest. Casting past Max active per caster replaces the
- Minions are worth nothing. Killing one — yours or anyone's — gives no XP, no loot and
- What they kill is the caster's kill. Damage a minion deals counts as its caster's for
- They leave with their caster — when the caster dies (or is downed), logs out or
- Raise dead uses the same rules for the creatures it raises.
Invisibility
Abilities → (pick one) → Costs & Effects → + Add action → Invisibility.
Hides yourself, or the ally you have selected, for a set time. It is real invisibility, decided by the server: players who can't see the unit stop receiving it at all, so no client — modified or not — knows where it is.
1. Open Database → Abilities and create or edit the ability. For a self vanish set Target Mode to Self; to hide a party member set it to Allies. 2. Leave Base Damage at 0 unless the spell should also hit something. 3. On Costs & Effects, pick + Add action → Invisibility. 4. Pick Who turns invisible and a Duration. 5. Tick what reveals the unit early, and set a Move speed while hidden if it should creep or sprint. 6. Save.
| Field | What it does |
|---|---|
| Who turns invisible | The caster, or The selected ally — a party, raid or guild member, or your own minion or pet. Never an enemy. |
| Duration (sec) | How long the unit stays hidden. At least 0.5 seconds. |
| Move speed while hidden | A multiplier on move speed: 1 = unchanged, 0.7 = 30% slower, 1.2 = 20% faster. Blank = 1. |
| Attacking reveals | A basic attack or any damaging ability ends it. |
| Casting reveals | Casting any other ability that isn't aimed at yourself — a heal on an ally, a debuff, a summon — ends it. Self casts (a blink, a self buff, recasting Invisibility) never do. |
| Taking damage reveals | Any damage the hidden unit takes ends it — a hit, an area, a burn ticking. |
What everyone experiences while a unit is hidden:
| Who | What they see |
|---|---|
| The hidden unit | Itself, faded. |
| Its party (and raid) | The unit as normal, but faded — they always know where their friend is. |
| Every other player | Nothing. The unit vanishes from their screen, can't be clicked, selected, auto-attacked or aimed at, and doesn't appear as an edge-of-screen blip. A teleport or blink it makes isn't announced to them either. |
| Creatures and NPCs | They drop it the moment it vanishes — chase, threat and all — and can't pick it back up while it stays hidden. |
When it ends — the duration runs out, or something reveals it — the unit reappears for everyone straight away.
Gotchas:
- Areas still hit a hidden unit. Nobody can target it, but an explosion
- "The selected ally" needs an ally selected. With an enemy or nothing
- It is the Invisible status effect. A status definition of type
- Guild-mates outside your group don't see you. Only your party, raid or
Dash and dodge roll
Abilities → (pick one) → Costs & Effects → + Add action → Dash / dodge roll.
Carries the caster a short distance in a straight line over a short time — a dodge roll, a lunge, a backstep. It is a real slide, not a teleport: everyone watches the character roll there.
1. Open Database → Abilities and create or edit the ability (Dodge Roll is a good start). Set Target Mode to Self — or leave it, a dash works with nothing selected on any mode. 2. Leave Base Damage at 0 for a pure dodge. 3. On Costs & Effects, pick + Add action → Dash / dodge roll. 4. Pick a Direction, a Distance and a Duration. A 3-tile, 250 ms roll with 250 ms of invulnerability is a classic dodge. 5. Save.
| Field | What it does |
|---|---|
| Direction | Toward the cursor (your facing when there is no aim), The way I face, Away from my target (a backstep; with nothing selected it backs away from your facing, and you keep facing forward), or The way I'm moving (your facing when standing still). |
| Distance (tiles) | How far with nothing in the way, 0.5–12. |
| Duration (ms) | How long the slide takes, 50–2000. 200–300 reads as a roll. |
| Invulnerable for (ms) | Damage immunity from the moment the dash starts — i-frames. Blank or 0 = none. Up to 3000. |
| Pass through units | Slide straight through creatures and players. Off, the dash stops in front of the first one in its way (your own minions and pets never block you). |
Gotchas:
- Walls stop it. The dash walks the same rules as your feet: a wall, a cliff, a
- You can't dash while you can't move. Rooted, stunned, asleep or feared, the
- A root, stun, sleep or fear landing mid-dash stops it where you stand.
- The animation. The dash plays your sheet's roll animation (or dodge,
- Invulnerability still dodges when a wall eats the distance — the i-frames start
When actions run: before or after the damage
Abilities → (pick one) → Costs & Effects → Actions run. Appears once the ability has at least one world action.
| Setting | What happens |
|---|---|
| After the damage (default) | The classic order: the hit resolves first, then the actions — a pull lands after the damage, a summon appears after the strike. |
| Before the damage | The actions commit first, and the damage resolves from wherever they leave you. A blink moves you and then the shot fires — from where you land, so a piercing beam sweeps from your destination and an area centres on it. |
Before the damage is the order for gap-closers: blink to the enemy, then strike. After the damage is the order for finishers: hit them, then yank them in.
A blink that also deals damage will not pick fights for you
If an ability carries a Teleport / blink, Dash, Summon, Raise dead, Convert resource or self Invisibility action, its damage half is optional:
- Nothing selected — the ability skips its damage entirely and just does
- A protected unit selected — a player in a PvP-safe zone, a protected
- A live enemy you may attack selected — both halves run: the damage
This only applies to actions that work without a victim. Knockback / pull acts on the target, so an ability whose only action is a pull keeps the full targeting rules — it still refuses when the selected unit cannot be attacked.
Status Effects on Hit
Abilities can apply status effects with a configurable chance. For example, a fire spell might have a 25% chance to apply "Burn" (damage over time).
Visual Effects & Telegraphs
Every ability can point at authorable VFX definitions for each moment of the cast:
- Telegraph VFX — a ground indicator drawn while the ability winds up, sized to its AoE shape, so players can dodge. Unset = the editable engine default (
default.telegraph). - Cast / Projectile / Impact / Channel VFX — the wind-up flare, the traveling projectile, the on-hit burst, and any sustained channel beam.
Ability Slots
Characters have a mixed action bar:
- equipment-driven slots for primary attack and gear-specific abilities
- 4 configurable hotbar slots for player-chosen abilities or supported consumables
Who can cast what
Players can only cast what they have learned, or what their gear grants them. The server checks this on every press, before any mana, cooldown or global cooldown is spent, so an ability a player has no claim to simply refuses with *"You haven't learned that ability."*
An ability is castable when it is either:
| Source | How the player gets it | Kept when? |
|---|---|---|
| Learned | The class or character template's starter abilities, a skill book read from the bag, a trainer NPC, a quest or event command, or an admin grant | Permanently, until they forget it |
| Granted by gear | The equipped weapon type's basic attack and Q/W, the weapon item's E, a head/chest/boots piece's slot ability, or the Unarmed fallback | Only while that item is equipped and unbroken |
A gear-granted ability costs no learned slot — a sword's arts are the sword's, and they go away with it. A player who unequips mid-fight loses those buttons immediately, including a cast they were already holding.
This is why a boss's kit is safe to author on the boss. Monster, NPC, pet and mount abilities are never reachable by a player, and neither are the engine's own follow-ups — an ability's on-hit follow-up, a chain bounce and each tick of a channel all fire from the engine, so the follow-up does not have to be something the caster learned.
Gotchas:
- Author the way in. A spell no starter kit, trainer, skill book, quest or event
- Ability requirements gate learning, not casting. Once a player has earned a
How many abilities a player can learn
Combat → Player Combat → Max Learned Abilities (default 10).
Gear-granted abilities do not count against it — only abilities the player has actually learned. When the list is full, learning another means forgetting one first, and trainers and skill books both refuse with *"You can only learn N abilities. Forget one first."*
Gotchas:
- Lowering it never confiscates anything. Players already over the new cap keep
- The number players see follows this setting. The Skills panel's *Learned
Skills
Skills represent long-term progression — Mining, Woodcutting, Cooking, Swordsmanship, Fishing, etc. Each one levels independently, and a character's player level is the average of all skill levels (skills they haven't trained count as level 1), so broad progress raises your level rather than one grinded skill. You can also author your own skill categories (name, color, sort order) — the in-game Skills panel tabs follow them.
Reading the player XP bar
The slim rail under the hotbar is player level progress, and it counts skill levels — not experience points. Because your level is the average of every skill, one player level costs as many skill levels as there are skills in your world. A world with 16 skills shows 0 / 16 on a fresh character (every skill at level 1), and the bar fills by exactly 1 each time any skill levels up.
So the rail does not creep upward as a player kills things — it steps. If it looks frozen, the player is gaining skill XP but hasn't leveled a skill yet; the per-skill bars in the Skills panel are the ones that move continuously.
What floats over the player
XP and looted silver rise over the player's own character, the way damage numbers rise over what they hit — so a kill's payout is visible without opening a panel.
| Line | When it shows |
|---|---|
| +18 XP | Every award. One line per kill, not one per skill: the pool a weapon splits across its linked skills is added back up before it is shown |
| +18 XP (+50%) | Something is boosting the player. The percentage is measured against your world's own XP rate, so a world authored at 2× does not flash "+100%" forever — only what the player is carrying counts |
| Premium +25% Event +25% | The smaller line under a boosted award, naming what got them there. Sources today: a running world event's XP boost, premium membership, and passives with an xpGain bonus |
| +47 silver | A coin pile picked up |
| -2 guild tax (5%) | Under the silver, when the looter's guild takes a cut |
Players who don't want the numbers turn off Settings → Gameplay → Show XP and silver gains; damage numbers have their own separate toggle. Both are off in the low graphics preset.
"Every kill gives 1 XP"
If kills pay far less than the XP Reward you authored on the mob, the game server now writes the reason to its log the first time it happens (and again after each publish, since publishing may have fixed it). There are five places the number shrinks:
| Cause | What to change |
|---|---|
| XP Reward is 0 | Mobs → the mob → XP Reward |
| Damage share | Kill XP splits by damage dealt — a mob someone else mostly killed pays a fraction |
| Trivial mob | A mob 10+ levels below the killer pays only 10% of its reward. This is the one that looks like a bug: any reward of 10 or less collapses to the 1 XP minimum, so 5, 8 and 10 all read as "1 XP" and nudging the number up does nothing. Raise the mob's Level, tick Scale with player, or raise XP Reward well past 10× |
| No skill links | The weapon (or its weapon type) and the ability both grant no skills, so there's nothing to receive the XP. Set Granted Skills on the weapon type |
| Split across skills | The pool is divided across every linked skill, floored at 1 each. Link 20 skills to a weapon worth 10 XP and each gets exactly 1 — link fewer, or raise the reward |
Every successful cast trains its skill
Casting an ability — a heal, a buff, a stun, a blink, a fireball — pays its Linked Skills XP of its own, on top of any damage and kill XP. How much, when it pays, and how to retune it are all on Cast XP.
Skill Properties
| Property | Description |
|---|---|
| Name / Description | What the player sees |
| Category | Gathering, Refining, Crafting, Combat, or Utility |
| Max Level | This skill's own ceiling. Left at the default (100), the skill follows the world-wide cap instead — see below |
| XP Curve | How much XP each level costs — the world's curve, or the skill's own shape, Base XP and Growth. See The XP curve below |
| Discovery Trigger | Action that first unlocks the skill |
| Prerequisites | Other skills required at specific levels |
The XP curve
Where: Database → Skills → a skill → XP Curve for one skill; Combat → Skill & XP → Skill XP Base / Skill XP Growth for the world's default.
Every skill levels on a curve that says what each level costs. By default a skill uses the world's curve: each level costs Base × Growth^level XP, with the world's Skill XP Base (default 100) and Growth (default 1.15). That's the curve every skill has always used, so a skill you never touch levels exactly as before.
To give one skill its own curve:
1. Open the skill and go to XP Curve. 2. Turn off Use the world's curve. The fields start from the world's values. 3. Pick a Shape and set Base XP/Lv and Growth. The graph redraws as you type, with the world's curve as a dashed line to compare against. 4. Save. Players on the live server level on the new curve from their next XP gain.
| Field | What it does |
|---|---|
| Use the world's curve | On: this skill follows Combat → Skill & XP. Off: it has its own curve (the three fields below) |
| Shape | Linear: each level costs the same amount more than the last. Exponential: each level costs a percentage more than the last, so high levels get very slow. Logarithmic: climbs early, then flattens out, so high levels barely cost more than middle ones |
| Base XP/Lv | The size of a level before growth. Level 1 costs Base × Growth whatever the shape |
| Growth | 1.15 means 15%. Linear adds 15% of Base every level. Exponential makes each level 15% dearer than the last. Logarithmic adds 15% of Base each time the level doubles. 1 makes every level cost exactly Base |
The graph is RPG Maker's EXP curve: one bar per level, up to the skill's Max Level. To next level shows what each level costs on its own; Total shows the running sum a player has earned by the time they reach it. Hover a bar to read its numbers; the table under it lists levels 1, 10, 25, 50 and so on up to the cap.
Gotchas:
- Changing a curve never takes levels away. Players keep the level they're at, and only the cost of the next levels changes. XP already banked toward the next level stays banked.
- The world's curve is always exponential. Combat → Skill & XP carries only Base and Growth. For a linear or logarithmic curve, set it on the skill.
- The fields check their range when you leave them: Base 1 to 1,000,000, Growth 1 to 3.
- Connected players' XP bars pick up a changed curve the next time skills are published, or when they log in. The level-ups themselves use the new curve straight away.
- Before this release these fields did nothing: the skill editor always showed 100 and Exponential whatever you saved, and the world's Base and Growth were never read.
How the level cap is decided
Two settings decide how far a skill can be trained, and they're designed to layer:
1. Combat → Skill & XP → Max Skill Level is the world-wide cap. Raise it to 200 and every skill still on the default Max Level goes to 200 — you don't have to edit each skill. 2. A skill's own Max Level overrides that world cap, up or down. Set a skill to 250 and it beats a world cap of 200; set it to 5 and it stops at 5 no matter how high the world cap goes.
A skill left at the default 100 is treated as "follow the world" rather than "stop at 100" — so the one number you'd expect to raise everything does. The engine clamps any resolved cap to 1000.
Guests train less far
Combat → Skill & XP → Guest Max Skill Level caps guest accounts (default 10) so a trial player is nudged toward registering. Set it to 0 to let guests train as far as anyone else. Admin, GM and superadmin sessions are never capped, even when signed in as a guest.
When a player reaches any cap, they're told once per skill — "Mining has reached its maximum level (200)", or the guest version that points at registering. If a skill has quietly stopped gaining XP, that message is the first thing to look for; the second is which of the two caps above is actually in force.
What each action pays
Database → Skills → XP Rewards is the table behind the actions themselves: one row per action, with the skill it trains, its Base XP and a Tier Multiplier (a T3 ore vein pays three times a T1 one). Two rows do more than their own action:
- cast_spell — its Base XP is the base of every ability's automatic Cast XP.
- craft — the XP a recipe pays when it authors none of its own.
Skill Discovery
Skills are hidden until the player performs a specific action for the first time:
- Chop a tree → discover Woodcutting
- Mine ore → discover Mining
- Cook food → discover Cooking
- Catch a fish → discover Fishing
Per-Level Bonuses
Each skill level can grant:
- Increased gathering yield
- Faster crafting speed
- Higher critical chance
- New recipe or ability unlocks
Absorb — life, mana and stamina drain
Abilities → Costs & Effects → Absorb.
An absorbing ability takes a resource off whoever it hits and hands it to the caster. Drain Life, Mana Burn, a stamina-sapping poison.
One dropdown decides both ends, because you drain what you restore: a life drain takes health and gives health, a mana drain takes mana and gives mana.
| Field | What it does |
|---|---|
| Drains | The pool this ability takes and returns. Nothing (the default), Health, Mana or Stamina. |
| Restores (%) | How much of what was drained reaches the caster. 100 = a true drain, 25 = a lifesteal trickle, 0 = a pure burn that destroys the resource and gives you nothing. |
| Max Drain per Hit | Ceiling on one hit's drain, before the restore share is taken. 0 = uncapped. This is what stops a crit on a full-mana target refilling you in one press. |
| Only the main target feeds you | Area abilities only. Off, a drain thrown into a pack restores once per victim. |
| Take health when the target has no mana/stamina | Mana and stamina drains only. See "Things that have no mana" below. |
Health drains are not the same as mana drains
- Health — the hit lands as normal damage, and you are healed for a
- Mana / Stamina — the ability's damage comes out of **that pool instead of
Want an ability that does both — real damage and a mana burn? Author the burn as its own ability and attach it to the damaging one as an On-hit ability.
Setting one up
1. Open Database → Abilities and edit (or create) an ability. 2. Go to the Costs & Effects tab and find Absorb. 3. Set Drains to Health, Mana or Stamina. 4. Set Restores (%) — start at 100 for a drain, 20–30 for lifesteal on a weapon skill. 5. Leave Max Drain per Hit at 0 unless the ability crits for a lot. 6. Save. The field beneath the cap previews what one average hit returns.
You only ever drain what was there
A 400-damage drain on a mob with 5 health left heals you for 5, not 400. Draining 200 mana from someone holding 30 takes 30 and gives you 30. The number on the ability is what it tries to take; what you get is what the victim had.
The same applies at your end — a drain never overfills you, and the overflow is not banked.
Things that have no mana
Mobs carry health and nothing else. No mana, no stamina. So a mana drain aimed at a wolf would do nothing at all, which is why **Take health when the target has no mana** is on by default: the drain comes out of the wolf's health instead, and still restores your mana.
Turn it off for a strictly anti-caster utility ability that should be a no-op against beasts — the editor warns you when you do, because it is easy to author that by accident and then wonder why nothing happens in a playtest.
Gotchas
- Damage-over-time never feeds you. Only direct hits drain. A drain that
- A pure burn still needs damage. The drain is sized from the ability's
- Area drains are strong. A drain with an AoE shape restores from every
- In-game the numbers are colour-coded: mana moves in blue, stamina in
Piercing
Abilities → Targeting & AoE → Pierces through targets.
Normally a shot stops at the first thing it touches. A piercing ability cuts a line instead, and everything standing in that line is hit — beams, rail shots, a spinning blade thrown through a crowd.
| Field | What it does |
|---|---|
| Extra Targets | Further bodies the shot passes through after the first. 0 = unlimited, which is what a beam is. |
| Damage Falloff (%) | Lost per additional body, compounding. 0 = every victim takes it in full. |
| Beam Width (tiles) | How far either side of the line a target can stand and still be caught. Blank uses 1.2 tiles. |
Piercing and areas together
Pierce governs the journey; the AoE shape still governs the landing. With no AoE shape set, the ability is a pure beam: everything in the line, once each. Add a shape and you get the same beam plus a burst where it lands.
Nobody is hit twice. The landing burst only catches whoever the beam missed — otherwise a target standing exactly where you aimed would take the beam and the explosion, doubling its damage in a way no number on the page would show you.
Indicators
Abilities → Targeting & AoE → Indicator.
Every ability draws an aim preview: a reach ring around the caster, and a footprint showing what will be hit. This is where you style this ability's.
| Field | Blank means |
|---|---|
| Colour | Automatic — red for damage, green for heals and ally spells. Set it for a movement ability, where red reads as danger to the player using it. |
| Style | Inherit the world's — ring, filled or dashed. |
| Marker | Automatic. What is drawn besides the area: nothing, a landing marker, a flight path, or both. |
| Line Thickness | Inherit the world's. |
| Show an indicator at all | On. The master switch: off hides everything drawn while aiming this ability — reach ring, footprint, landing marker and flight path. The ability still aims and fires exactly the same. This is the one to use for a blink. |
| Show the reach ring | On. Turn it off where reach is obvious and the ring is just noise — the footprint and marker stay. |
Custom artwork
Pick a ground decal to draw inside the footprint. It is laid flat on the floor, so it skews with the isometric view automatically — author it flat, not pre-skewed.
| Fit | For |
|---|---|
| Stretch to fit | Circles and cones — art drawn to match the shape |
| Along the path | Beams: stretched down the aim axis with the width held |
| Centre at native size | Dash reticles and landing markers |
Keep artwork around 256–512px. It is redrawn while the player aims, and a 4K image scaled down to a three-tile circle costs the same as one drawn at size.
The one thing you cannot change
Size and shape are not style options. They come from the ability's range and AoE fields — the same values the server hits with — so the preview can never promise something the ability will not do.
That is also why the real boundary is still drawn over your artwork by default. Nothing stops a narrow cone image being attached to a circular ability, and when that happens the outline makes it look wrong rather than letting players trust it. Art only turns the outline off for art drawn to the exact geometry; from then on, accuracy is yours to guarantee.