DEVLOG · 02

What Combat Is Made Of

July 11, 2026

With one character moving and hitting things properly, Dreadmark got its combat spine: a generator/spender resource called Vigor, five skills, and a HUD to hold them.

Vigor builds from basic attacks and is spent by strong skills, which is the classic ARPG loop. The design rule that keeps it in check is the wet-noodle rule. A generator ability must hit hard in its own right, and it should never be a wet noodle, or a chore you grind through to reach the spenders. Slash, the starting generator, keeps the full hit-feel stack and meaningful damage, so the Vigor it builds is a bonus on top of an attack worth using anyway. Skills follow a deliberate cost grammar. A skill may cost Vigor only (spam it if you can afford it), cooldown only (utility, gated by time), or both. Every skill deals X% weapon damage + Y. Weapon damage is the single scaling stat that future itemization will feed, and every tooltip prints the live formula, color-coded.

The kit has five skills, each with its own job:

  • Slash is the generator. It swings in wide arcs with four randomized animations, never the same twice in a row, and builds Vigor per enemy hit.
  • Cleave is the payoff. It cuts one clean, huge 180° frontal arc.
  • Reaping Spin is a held whirlwind that drains Vigor per second while you steer it. It has no animation clip at all. The game freezes a mid-swing pose and spins the character in code, and the sword trail draws the ring.
  • Lunge is a cooldown gap-closer. You dash to the cursor with i-frames, and the strike lands as you arrive.
  • Consecrated Ground is a sanctified gold circle at the cursor that burns the undead standing in it and heals you for doing the same.

Spenders got their own visual language, in which amber effects mean "this cost Vigor." Their sword trails, cast bursts, and shockwaves are all amber.

Mid-fight with the kit: damage numbers popping over a skeleton pack
Damage numbers, the health/Vigor cluster, and a pack that regrets approaching.

The HUD is a compact cluster sitting just under the character. It stacks the health bar over the Vigor bar over a row of square skill slots with proper cooldown sweeps, plus dodge-charge pips. The elements are flat, crisp rectangles sharing single divider lines, after an early attempt with rounded corners read as mush at gameplay scale. The HUD is also fully player-configurable from day one. An unlock mode gives you a fullscreen grid with per-element dragging, snapping, resize, and rotation, all persisted. Skills can be rebound by drag-and-drop, and hover tooltips are generated from live skill data.

Then came the monsters. Dreadmark's first roster is three skeletons with three jobs, and they all obey a single sacred rule, which is that a telegraph must never lie.

  • Skeleton is the trash melee. It shambles in and swings, deliberately untelegraphed, because at this tier the animation is the readability. Skeletons come in packs and they flank, each on its own curved, sideways-biased path, so a pack fans out and arrives from several directions instead of forming a polite conga line.
  • Skeleton Ranger is the ranged pressure. It holds distance, and every shot has a quick aim-line telegraph, a thin red line that tracks you until release. Then the bolt flies at where you were. Sidestepping during the aim beats it, so getting hit should always feel like a read you missed.
  • Skeleton Heavy is the elite. It has 300 health and never flinches, and its big swing paints a red ground sector that fills over a long wind-up. The fill is the timer. When it completes, the blow lands, and dodging out is the intended dance.

The law sounds simple, but in practice most of the roster's development went into catching the ways a telegraph can lie. The heavy's sector used to vanish a beat before impact and sucker-punch anyone who trusted it. Now the fill completes at the exact moment of the blow, wind-up and swing travel included. It also used to keep turning through its wind-up, which made walking out mathematically impossible. The arc now freezes in place the moment it's drawn, and not even knockback can slide the committed zone off its snapshot. The ranger once fired the frame it spawned, an unavoidable opening hit in every single test. It now needs almost a second to acquire you, as if it just noticed you were there. And when it's chased relentlessly, it no longer backpedals forever. After a stretch of retreat it plants its feet and takes the shot, even point-blank, so divers get punished.

Each step up the ladder, from trash to ranged to elite, is bigger, slower, and better telegraphed. That ladder is the pattern the rest of the roster, and the first boss, will climb.

Next: the monster-testing problem, solved by teaching a bot to play.

All entries