Combat¶
Combat resolves one swing at a time as a d100 endroll: the attacker's Attack Strength against the defender's Defensive Strength, plus a weapon-versus-armor modifier. The same math governs players and creatures. There is no PvP — only hostile creatures are valid targets.
Starting and targeting¶
KILL <creature> attack (aliases: ATTACK, HIT, SWING)
KILL 2.kobold the second kobold, when several share a name
AMBUSH <creature> open from hiding (see Stealth)
Every swing applies roundtime the instant it is made, hit or miss.
The endroll¶
endroll = d100 + (attacker AS − defender DS) + AvD
A hit lands when endroll > 100. Exactly 100 is a miss.
The d100 is open-ended: a roll of 96–100 rolls again and adds (and can chain), a roll of 1–5 rolls again and subtracts. About one swing in ten leaves the 1–100 range — a rare inspired stroke can clear any defense (d100 roll: +138), and even a master can truly whiff. The average is unchanged; only the extremes gain drama.
Margin is endroll − 100. It drives both damage and critical severity.
A hit with margin 1–10 is a graze: the blow connected at a bad angle and glances off — damage equal to the margin, no critical, and a line naming where it skipped (The blow glances off your shoulder.). Real wounds start at margin 11.
A stunned defender is treated as having the worst possible defensive stance, loses dodge and parry entirely, and takes an additional −20 DS — which makes a stunned target extremely vulnerable.
Attack Strength (AS)¶
For a player, offense is all training, stats, and steel — level never enters it:
AS = trunc( offFactor × (weaponSkillBonus + CManRanks÷2 + STRbonus + weaponBonus) ) + postureMod + effects
- weaponSkillBonus — the bonus from your weapon skill ranks (Edged/Blunt/etc.), via the skill bonus curve.
- CManRanks÷2 — Combat Maneuvers ranks lend half a point each, rounded up.
- STRbonus — your Strength bonus (combat uses the bonus, not the raw stat).
- weaponBonus — the weapon's own AS bonus (enchantment, material).
- offFactor — the offensive multiplier from your stance (below).
Creatures additionally carry a level-scaled base (10 + level × 2) in place of a trained skill sheet — a higher-level beast swings harder by nature.
Defensive Strength (DS)¶
baseDS = 5 + level × 2
DS = baseDS + round( defFactor × (dodgeBucket + shieldBucket + parryBucket) ) + armorBonus + postureMod + effects
| Bucket | Formula |
|---|---|
| dodgeBucket | Dodging ranks + AGI bonus |
| shieldBucket | shield's DS bonus + (Shield Use bonus ÷ 3) |
| parryBucket | (weapon-skill bonus ÷ 3) + (STR bonus ÷ 4) + (DEX bonus ÷ 4) — 0 while prone |
Note that Dodging contributes its raw ranks (1:1) plus your Agility bonus — not Dexterity. A stunned defender loses the dodge and parry buckets, and the shield bucket is halved.
The world fights too¶
Light and weather shift every defender's DS — yours and the creature's alike, outdoors where the sky can reach:
| Condition | Defender DS |
|---|---|
| Night | +20 (an aurora overhead softens it to +10) |
| Fog or blizzard white-out | +30 |
| Heavy snow | +15 |
| Heatwave glare on a clear day | −10 |
Night fog stacks to +50 — swings whiff into the murk. Interiors are lamplit and weatherproof, though some authored places (a crypt, an unlit cellar) are dark at any hour, and a lamplit street is never dark. Plan your hunts: the same beast is measurably harder to pin down in the dark, and easier under a blazing sky.
Desperation: a badly wounded attacker swings worse — AS −10 below 75% of max health, −20 below 50%, −30 below 25%. It cuts both ways: press a bloodied creature and its flailing gets wilder, but limp into a fight yourself and your own arm betrays you. Retreat, TEND, eat your herbs.
Stance¶
STANCE scales offense against defense. Each stance is a percentage that sets two multipliers:
offFactor = 1.00 − 0.005 × pct · defFactor = 0.80 + 0.005 × pct
| Stance | pct | offFactor | defFactor | Abbrev. |
|---|---|---|---|---|
| Offensive | 0 | 1.00 | 0.80 | off |
| (Advanced) | 20 | 0.90 | 0.90 | GM-only — not selectable in play |
| Forward | 40 | 0.80 | 1.00 | fwd |
| Neutral | 60 | 0.70 | 1.10 | neu (default) |
| Guarded | 80 | 0.60 | 1.20 | guard |
| Defensive | 100 | 0.50 | 1.30 | def |
STANCE with no argument shows your current stance. Stance can be changed during roundtime.
Posture¶
POSTURE sets body position, which modifies combat and changes healing rate:
| Posture | AS mod | DS mod | Parry | Heal rate |
|---|---|---|---|---|
| Standing | 0 | 0 | yes | 5% / tick |
| Kneeling | −10 | −50 | yes | 10% / tick |
| Sitting | −20 | −50 | yes | 10% / tick |
| Prone | −30 | −50 | disabled | 15% / tick |
Lower postures heal faster but cripple defense (a flat −50 DS for any non-standing posture, plus a growing AS penalty, and prone disables parry). Rest low when safe; stand to fight.
Armor versus Damage (AvD)¶
AvD is a flat modifier added to the endroll, based on the attacker's weapon class against the defender's armor group. The implemented table:
| Weapon ↓ / Armor → | cloth | leather | scale | chain | plate |
|---|---|---|---|---|---|
| unarmed | 10 | 5 | 0 | −5 | −10 |
| sword | 30 | 20 | 10 | 5 | 0 |
| dagger | 25 | 15 | 5 | 0 | −5 |
| mace | 20 | 15 | 10 | 8 | 12 |
| axe | 25 | 15 | 10 | 5 | 0 |
A sword excels against light armor (+30 vs cloth) but loses its edge against plate (0). A mace is the heavy-armor weapon — it is the only one that gains against plate (+12). Match your weapon to what you hunt.
Damage¶
On a hit:
damage = weaponRoll + (margin ÷ 20) + max(0, STRbonus ÷ 2) − armorDR + critBonus
- weaponRoll — a random value between the weapon's minimum and maximum damage.
- margin ÷ 20 — larger margins increase damage.
- STRbonus ÷ 2 — half your Strength bonus.
- armorDR — the defender's flat damage reduction from armor.
- critBonus — added after reduction (see below).
Critical hits¶
A hit may land a critical — a wound to a specific location with extra effects. Severity (rank 0–9) is set by the margin, a small random jitter, the body location, armor, and any crit-rank bonus:
rawRank = max(0, (margin − 5) ÷ 11)
rank = clamp( rawRank + jitter + locationMod − armorPadding + rankBonus, 0, 9 )
- jitter: the attacker's luck roll — +1 if low (≤15), −1 if high (≥86), else 0.
- locationMod: head/neck/eyes +1; arms/hands −1; torso/legs 0.
- armorPadding: scale +1, chain +1, plate +2 — heavier armor lowers incoming crit rank.
Rank 0 produces no critical (a clean hit). Otherwise:
| Field | Formula |
|---|---|
| Bonus damage | rank × (2 + weaponMaxDamage ÷ 4) |
| Bleeding | rank ≥ 3 → bleed rate of (rank − 2) HP/tick |
| Stun | rank ≥ 4 → (rank − 3) stun rounds (5s each) |
| Instant death | rank ≥ 8 and location is head, neck, or eyes |
Hit-location table¶
| Location | Weight | Rank mod |
|---|---|---|
| chest | 20 | 0 |
| abdomen | 14 | 0 |
| right leg | 9 | 0 |
| left leg | 9 | 0 |
| back | 10 | 0 |
| head | 8 | +1 |
| right arm | 8 | −1 |
| left arm | 8 | −1 |
| right hand | 4 | −1 |
| left hand | 4 | −1 |
| neck | 4 | +1 |
| eyes | 2 | +1 |
Aimed strikes (see Stealth & Ambush) can also name a specific eye — AMBUSH <target> LEFT EYE — which never comes up on the random table: the crit lands at the eye you called (with the eyes' +1 rank modifier, and yes, it's instant-death territory), while healing treats both eyes as the one wounded area.
The same rules apply to creatures, so a deep cut can leave a beast bleeding out or stunned and easily finished. EFFECTS lists everything currently afflicting you.
Worked example
You hit with an endroll of 145 → margin 45. rawRank = (45 − 5) ÷ 11 = 3. The blow lands on the chest (mod 0), the defender wears leather (padding 0), jitter 0 → rank 3: bonus damage 3 × (2 + weaponMax/4), plus a bleed of rate 1. Had the same margin landed on the head against an unarmored foe, the +1 location mod would make it rank 4 — adding a 1-round stun.
Roundtime¶
Armed base: 5.0 s · Unarmed base: 3.0 s
An under-trained weapon lengthens roundtime. Expected ranks grow with level (max(5, level × 2)); each rank short of that adds +5% RT, capped at +50%. Final RT is clamped between the base and 20 seconds.
Encumbrance also lengthens roundtime: carrying past half your Strength-based capacity adds +1s to +5s per swing as the load climbs. Check it with WEIGH. See Weight & encumbrance.
Keep your weapon skill near your level to avoid the penalty. RT shows the remaining time.
Combat maneuvers (CMAN)¶
Stamina-fueled tricks layered over the swing, gated by Combat Maneuvers ranks. CMAN alone lists them with your ranks and stamina; use CMAN <maneuver> [target] or the bare verb (TRIP, HEADBUTT, SWEEP…).
Most maneuvers are a contested roll: an open-ended d100 + 2×CM ranks + (STR+AGI bonus)÷2, against 65 + the mark's CM ranks + half its Dodging + a quarter of its Physical Fitness + AGI + a stance term. A stunned or downed mark resists far worse; a big win (margin 35+) lands harder; a deep loss can fumble.
| Maneuver | Ranks | Stamina | What it does |
|---|---|---|---|
| Feint | 1 | 9 | The mark's guard falls open (−DS for a time). |
| Trip | 2 | 12 | Knocks them prone; a big win stuns too. |
| Hamstring | 3 | 12 | Cuts a leg open — a bleed that drains them down. |
| Dirtkick | 4 | 10 | Grit in the eyes: their swings suffer (−AS). |
| Tackle | 4 | 15 | Prone + stunned. Fumble it and you eat the dirt. |
| Shield Bash | 4 | 12 | Stuns (shield in hand required). |
| Headbutt | 5 | 12 | Stuns in the open. Fumble it and you ring your own bell. |
| Disarm | 6 | 15 | Strikes the weapon from their grip to the ground. |
| Haymaker | 6 | 15 | Real damage with the whole arm behind it. Bare hands only. |
| Bull Rush | 7 | 15 | Drives them bodily out of the room — or into the wall (prone + stun) when cornered. |
| Subdue | 8 | 12 | A heavy stun — from hiding, or on a foe already reeling. |
| Sweep | 8 | 18 | One low arc contested against every foe here. Multi Opponent Combat training sharpens it. |
| Surge | 9 | 20 | Calls up strength: your own swings hit harder for a time (+AS). |
| War Cry | 10 | 20 | Every foe present flinches (−AS to all of them). |
| Berserk | 12 | 25 | +AS, −DS: all attack, no defense. |
| Coup de Grace | 14 | 20 | A merciless finishing stroke — only against a stunned or downed foe — swung as a real attack with a heavy AS and crit bonus. |
QUICKSTRIKE primes your next attack (within 10s) to come 2s faster. Draining your stamina to zero triggers overexertion: ten minutes of no maneuvers and weakened swings — watch the pool.
Creature behavior¶
Creatures use the same AS/DS/endroll math and have their own drives:
- A wounded creature may flee rather than fight to the death.
- Some are casters and can bolt you from range (a GM can flag any mob a caster).
- Bleeding and stun affect creatures exactly as they affect you — a creature can bleed to death.
- To keep low-level mobs threatening, a mob's offensive inputs are floored at
6 + level, so even an unskilled creature lands blows on a fresh character. Players are never floored. (This floor is the main combat tuning lever.)
Named creatures such as the warren chief never flee and may enrage at low health.
Boss tells — telegraphed attacks¶
The most dangerous named creatures fight in tells: a readable windup line, a reaction window of several seconds, then the blow. The windup names its answer —
The warren chief heaves the great cleaver high overhead, muscles bunching for a killing blow!
(React: DODGE — about 6 seconds!)
- Countering: type the named verb inside the window —
DODGE(aliasEVADE), or a combat maneuver the tell calls for (TACKLE,SBASH,BULLRUSH, …). A counter is a reflex, not an action: it works even in roundtime and costs no stamina. Answering in time negates the blow — except the rare attack marked as unavoidable, which a clean counter still halves. - Uncountered, the blow lands through the normal damage funnel, heavy, and may stun.
- Interrupting: a boss mid-windup is committed. Stun it — a shield bash, a heavy crit, a spell — and the attack breaks entirely. That is the interrupt play, and the fight's reward for reading it.
- Telegraphs replace the boss's normal swing for that beat, so the rhythm is learnable: each fight cycles its tells, and a smart, well-read fighter beats a monster that outweighs them. The first counter you ever land is itself a feat.
HELP DODGE in-game covers the same ground.
Ranged & thrown weapons¶
Bows and crossbows fight at the eye's reach: FIRE <creature> (or plain KILL with the bow wielded) looses a shot. You need ammunition somewhere on you — arrows for bows, bolts for crossbows, whether held or stowed in any carried pouch — and both hands free of shields. The shot aims with DEX and Ranged Weapons training, and nothing parries an arrow: only footwork, armor, and a shield answer it. Crossbows punch armor harder but span slowly (7s to a bow's 5s). Spent missiles sometimes survive where they fall — LOOK after the fight and GET them back. Firing from hiding springs a full ambush.
THROW <creature> (HURL) sends your wielded weapon itself — it resolves on Thrown Weapons training and lands on the ground, hit or miss. Javelins, darts, throwing knives and axes fly true; hurling a broadsword is desperation and aims like it (−15 AS). Spears, halberds, pikes, and tridents now train Polearm Weapons, their rightful home.
MSTRIKE — fighting the crowd¶
MSTRIKE alone delivers one real swing against every foe in reach — reach grows with Multi Opponent Combat training (up to four). MSTRIKE <creature> focuses the flurry instead: extra swings on one foe at 10 and 30 ranks. Stamina pays for each blow past the first, and the roundtime lands once, at the end, longer for each swing.
See also¶
- Health & Wounds · Death & Respawn · Stealth
- Skills & Training — weapon, dodge, shield, and maneuver skills
- Armor & Weapons — weapon classes and armor groups