A build that is yours. A world that fights back.
Thornmarrow is a top-down fantasy PvPvE Battle Royale. Fight regional monsters, mini-bosses and bosses while building a set of automatic weapons. Players eventually compete for survival as five safe-zone phases close across a 15-minute match.
Movement, positioning and reward choices are your controls. No manual aiming, attack buttons or hotbar casting.
Keep moving.
- W A S D / ↑ ← ↓ →
- Move and dodge
- Mouse wheel
- Smooth camera zoom
- B
- Open your build and Fusion panel
- Mouse
- Select class, rewards and UI choices
- Esc
- Cancel a pending Fusion preview
All equipped weapons attack independently while you move. Desktop Chrome with a keyboard and mouse is recommended.
Choose your opening strength.
Warrior begins with Sword Cleave, Mage with Arcane Bolt, Rogue with Twin Daggers, and Archer with Bow Shot. Their starting HP, speed, armor and critical chance differ.
Compare the current class stats →Four skills. Endless decisions.
Enemy kills award XP and score. Normal level-ups present three randomized, server-validated choices; choose exactly one. There is no draft time limit and no automatic selection, even when many levels are queued. Only the player chooses an offer. Drafts wait while dead and resume after respawn.
- Equip up to four Auto-Skills.
- Each skill holds up to two compatible, independently leveled support modifiers.
- Two Character Passive slots are separate from skills and supports.
- Every third earned level adds a separate three-card passive draft.
New-skill discovery drafts offer two skills from your class and one eligible external-class skill where available. Upgrade/support drafts can develop your existing cross-class build. When a completed build has too few valid options, its ordinary opportunities are banked until the build changes.
Your movement continues during selection. The server owns targets, cooldowns, hits, damage, health, XP and results.
Combine. Confirm. Evolve.
Open B, drag one equipped skill onto another compatible skill, then review and explicitly confirm the server-issued Fusion preview. Either drag direction works. No minimum source level is required.
Fusion permanently consumes both source skills and all their supports. The result starts on its own level-one progression, occupies one slot and frees another. Character passives remain unchanged. An incompatible drop consumes nothing; Esc cancels the preview.
An evolved weapon offers a different tactical profile. It does not guarantee higher total damage than its two ingredients.
Read the actual recipes →The forest gives fewer second chances.
Before 10:00, death grants an eight-second respawn retaining your build, XP, score and pending drafts. A respawn earned before 10:00 still completes after that cutoff.
At 10:00 and later, death permanently eliminates you. This cutoff is based on match time, not the zone phase number. Late arrivals can register for NEXT MATCH; they cannot join or spectate the active round. Moving outside the shrinking safe zone causes authoritative damage. A round that starts with one human does not end simply because that player is alone. Monsters, progression and normal match termination still apply.
Be there at the end.
At 10:00 and later, a standard round can end early when exactly one living eligible survivor remains; pending earned respawns still count. Before 10:00, one remaining player does not trigger an early win. At the deadline, the highest-score living participant wins. Ties use HP, XP, kills and peer ID. If nobody survives, the server ranks recorded participants by the same criteria. If there are no recorded candidates, there is no winner. Results last approximately eight seconds before reset. Current server scoring: normal monster 10, elite 30, mini-boss 100, boss 300; a lethal PvP hit awards 25 points and one PvP kill, including during the respawn period. Monster score goes to the last hitter. Zone/environment deaths do not award a PvP kill. These are implemented values, not a promise of final competitive balance; final PvP scoring and anti-farming policy are TBD.
Match history and wallet-linked permanent hero progression are not yet stored.
Your signature opens the gate.
Connect a compatible Solana wallet on the website and sign the readable, expiring login message. The Arena reuses that verified game session; wallet connection alone is not authentication. The backend verifies it before creating a session and admitting your connection with a single-use ticket. Connecting without signing does not grant access.
No transaction, SOL balance, private key or seed phrase is required. Devnet testing uses off-chain identity only. Entry fees, escrow and prizes are not implemented.
Account change or logout ends your session. An expired or revoked session requires a new login signature. Reconnection creates a new game peer under the existing lobby/spectator rules; it does not restore a persistent hero.
Open Arena →How the current lobby starts.
The current public testing configuration is minimum 1 player, maximum 40, with a mandatory 30-second server countdown. The first registration starts the countdown; additional players never shorten or restart it. If everyone leaves, it is cancelled. The server revalidates the minimum immediately before starting. The future minimum is 20 players, NOT active yet. One arena and a separate upcoming roster are used; both rosters are capped at 40. Configured limits are not a load-capacity guarantee.
Each lobby and match displays a durable, increasing Match # and internal unique ID. A late arrival registers for NEXT MATCH, without receiving the active game as a spectator. After results, existing queued players are promoted in FIFO order and receive a fresh 30-second lobby. Previous participants must explicitly click NEXT MATCH; there is no automatic requeue. LEAVE QUEUE preserves wallet login. Repeated registration is idempotent; QUEUE FULL rejects registration without ending the wallet session.
No bots or spectator mode are implemented. Disconnecting removes queue position or ends the current run; reconnecting cannot restore it and requires a new registration. Persistent numbering survives deployment and process restart, while waiting rosters are not durable. Future bot/event/financial rules remain TBD and are separate from this free testing configuration.
Combat reference.
These tables show current source definitions, not final balance or measured DPS. Skill levels, supports, Fusion, attack patterns and class stats modify actual damage and timing. Multi-hit, area, periodic and projectile attacks must not be compared by base damage alone.
XP & damage
Level L requires 2 + floor(0.5 × L) additional XP (L1: 2; L2: 3; L10: 7; L20: 12). XP is cumulative; spent XP tracks level costs. Level advancement banks XP if no valid progression remains. Enemy XP is split among living contributors with at least 5% of the recorded damage; shares are proportional, with rounding remainder assigned by contribution rank. Score and XP therefore use different attribution rules.
Incoming player damage is amount × (1 − applicable defense). Physical hits use physical defense (and penetration where present); magical hits use magic defense. Ordinary monster contact hits share a 0.45-second per-player grace window. Boss attacks, hazards and PvP do not use that shared ordinary-contact grace. Zone damage directly drains HP and ignores armor.
Safe zone
At the standard 15-minute duration, phase 1 is 0:00–3:45 (no radius shrink), phase 2 is 3:45–7:30, phase 3 is 7:30–11:15, phase 4 is 11:15–13:45, and phase 5 is 13:45–15:00. Shrinking begins at 3:45. Center and radius interpolate during each phase; the final radius reaches zero at 15:00. Outside-zone damage is the greater of the phase floor and a fraction of maximum HP: phases 1–4 use 8/12/18/25 HP per second or 8%/10%/14%/20% maximum HP per second; phase 5 ramps from 35 to 100 HP per second or 25% to 60%. Continuous time outside multiplies this by 1 + min(2, seconds outside / 10), reaching triple pressure after 20 seconds. Returning inside resets the exposure multiplier. Healing mechanics remain unchanged. The 10:00 death/early-win cutoff is independent of this zone schedule.
Status effects
Ignite, poison and bleed tick every 0.5 seconds for power × stacks × 0.5 damage. Poison stacks up to three; other stored statuses use one stack. Bleed is physical; ignite and poison are magical. The default status duration is three seconds, with skill-specific overrides. Damage-over-time ticks do not trigger further procs. Chill slows players by at most 25% for at most 1.5 seconds, and monsters by at most 50% for at most three seconds. Shock and other marks/reactions depend on the equipped skill/support; final balance and any undocumented interaction are TBD.
Regional monsters, mini-bosses & bosses — current definitions
| Enemy / region | Type | HP | Base damage | Interval (s) | XP | Attacks |
|---|---|---|---|---|---|---|
| Forest Sprite · forest | NORMAL | 32 | 5 | 1.1 | 1 | MELEE |
| Mushroomling · forest | NORMAL | 36 | 3 | 2.8 | 1 | SHOOT |
| Emerald Slime · forest | NORMAL | 40 | 5 | 1.1 | 1 | MELEE |
| Ancient Treant · forest | MINI_BOSS | 180 | 16 | 3.8 | 8 | SLAM |
| Emerald Forest Guardian · forest | BOSS | 600 | 24 | 3.8 | 24 | SLAM, HAZARD |
| Wild Bee · meadows | NORMAL | 32 | 5 | 1.1 | 1 | MELEE |
| Thornling · meadows | NORMAL | 36 | 3 | 2.8 | 1 | SHOOT |
| Meadow Beast · meadows | NORMAL | 40 | 5 | 1.1 | 1 | MELEE |
| Giant Hornet · meadows | MINI_BOSS | 180 | 16 | 3.8 | 8 | RING |
| Solar Bloom Colossus · meadows | BOSS | 600 | 24 | 3.8 | 24 | RING, VOLLEY |
| River Crab · river | NORMAL | 32 | 5 | 1.1 | 1 | MELEE |
| Water Wisp · river | NORMAL | 36 | 3 | 2.8 | 1 | SHOOT |
| Lesser Water Elemental · river | NORMAL | 40 | 5 | 1.1 | 1 | MELEE |
| River Serpent · river | MINI_BOSS | 180 | 16 | 3.8 | 8 | VOLLEY |
| Tidal Leviathan · river | BOSS | 600 | 24 | 3.8 | 24 | VOLLEY, HAZARD |
| Arcane Wisp · mystic | NORMAL | 32 | 5 | 1.1 | 1 | MELEE |
| Crystal Spider · mystic | NORMAL | 36 | 3 | 2.8 | 1 | SHOOT |
| Mystic Fungus · mystic | NORMAL | 40 | 5 | 1.1 | 1 | MELEE |
| Crystal Sentinel · mystic | MINI_BOSS | 180 | 16 | 3.8 | 8 | RING |
| Arcane Behemoth · mystic | BOSS | 600 | 24 | 3.8 | 24 | RING, SLAM |
| Ember Fox · autumn | NORMAL | 32 | 5 | 1.1 | 1 | MELEE |
| Wild Boar · autumn | NORMAL | 36 | 3 | 2.8 | 1 | SHOOT |
| Autumn Spirit · autumn | NORMAL | 40 | 5 | 1.1 | 1 | MELEE |
| Ember Wolf · autumn | MINI_BOSS | 180 | 16 | 3.8 | 8 | CHARGE |
| Autumn Warden · autumn | BOSS | 600 | 24 | 3.8 | 24 | CHARGE, RING |
| Skeleton Guard · ruins | NORMAL | 32 | 5 | 1.1 | 1 | MELEE |
| Stone Construct · ruins | NORMAL | 36 | 3 | 2.8 | 1 | SHOOT |
| Cursed Sentinel · ruins | NORMAL | 40 | 5 | 1.1 | 1 | MELEE |
| Ruined Knight · ruins | MINI_BOSS | 180 | 16 | 3.8 | 8 | SLAM |
| Ancient Moss Golem · ruins | BOSS | 600 | 24 | 3.8 | 24 | SLAM, VOLLEY |
| Skeleton · graveyard | NORMAL | 32 | 5 | 1.1 | 1 | MELEE |
| Ghost · graveyard | NORMAL | 36 | 3 | 2.8 | 1 | SHOOT |
| Zombie · graveyard | NORMAL | 40 | 5 | 1.1 | 1 | MELEE |
| Grave Wraith · graveyard | MINI_BOSS | 180 | 16 | 3.8 | 8 | HAZARD |
| Crypt Necromancer · graveyard | BOSS | 600 | 24 | 3.8 | 24 | HAZARD, VOLLEY |
| Stone Crawler · highlands | NORMAL | 32 | 5 | 1.1 | 1 | MELEE |
| Cave Bat · highlands | NORMAL | 36 | 3 | 2.8 | 1 | SHOOT |
| Crystal Beast · highlands | NORMAL | 40 | 5 | 1.1 | 1 | MELEE |
| Stone Brute · highlands | MINI_BOSS | 180 | 16 | 3.8 | 8 | CHARGE |
| Mountain Titan · highlands | BOSS | 600 | 24 | 3.8 | 24 | CHARGE, SLAM |
Attack patterns can scale this base value: volley projectiles use 65%, ring projectiles 55%, and hazard ticks 18%. Regular melee variants use 5 damage and a 1.1-second interval. Windup, range, projectile caps and the contact grace also affect received damage.
Auto-Skills — level-one base definitions
| Auto-Skill | Damage type | Base damage | Interval (s) | Range (world units) | Status |
|---|---|---|---|---|---|
| Sword Cleave | PHYSICAL | 22 | 0.85 | 115 | — |
| Shield Bash | PHYSICAL | 24 | 1.6 | 100 | — |
| Ground Slam | PHYSICAL | 34 | 2.2 | 155 | — |
| Whirlwind | PHYSICAL | 9 | 3.2 | 150 | — |
| Heavy Strike | PHYSICAL | 48 | 2.4 | 115 | — |
| Shield Throw | PHYSICAL | 25 | 1.8 | 390 | — |
| Spear Thrust | PHYSICAL | 25 | 1.1 | 200 | — |
| Battle Axe Sweep | PHYSICAL | 36 | 1.8 | 140 | — |
| Hammer Quake | PHYSICAL | 42 | 2.6 | 280 | — |
| War Banner | PHYSICAL | 8 | 5 | 260 | — |
| Counterstrike | PHYSICAL | 32 | 3.5 | 130 | — |
| Executioner Strike | PHYSICAL | 38 | 2.8 | 120 | — |
| Arcane Bolt | MAGICAL | 20 | 0.8 | 400 | — |
| Fireball | MAGICAL | 26 | 1.8 | 420 | ignite |
| Frost Nova | MAGICAL | 15 | 2.4 | 165 | chill |
| Chain Lightning | MAGICAL | 19 | 1.7 | 340 | shock |
| Poison Cloud | MAGICAL | 6 | 3.2 | 330 | poison |
| Meteor | MAGICAL | 55 | 4.2 | 460 | ignite |
| Ice Shards | MAGICAL | 12 | 1.5 | 390 | chill |
| Flame Wall | MAGICAL | 9 | 4 | 350 | ignite |
| Thunderstorm | MAGICAL | 14 | 4.6 | 430 | shock |
| Arcane Orb | MAGICAL | 12 | 3 | 450 | — |
| Void Rift | MAGICAL | 9 | 4.5 | 370 | — |
| Crystal Lance | MAGICAL | 36 | 2 | 560 | — |
| Twin Daggers | PHYSICAL | 11 | 0.36 | 100 | — |
| Throwing Knives | PHYSICAL | 15 | 0.9 | 360 | — |
| Fan of Knives | PHYSICAL | 10 | 2 | 260 | — |
| Poison Blades | PHYSICAL | 12 | 0.55 | 105 | poison |
| Bleeding Cut | PHYSICAL | 19 | 0.85 | 115 | bleed |
| Shuriken | PHYSICAL | 18 | 1.2 | 350 | — |
| Shadow Slash | PHYSICAL | 21 | 1.2 | 190 | — |
| Smoke Bomb | PHYSICAL | 3 | 5 | 180 | — |
| Venom Trap | MAGICAL | 20 | 3.5 | 260 | poison |
| Ricochet Dagger | PHYSICAL | 17 | 1.2 | 380 | — |
| Blade Flurry | PHYSICAL | 9 | 1.25 | 115 | — |
| Assassin's Mark | PHYSICAL | 14 | 2.5 | 230 | mark |
| Bow Shot | PHYSICAL | 19 | 0.95 | 560 | — |
| Rain of Arrows | PHYSICAL | 10 | 3.5 | 520 | — |
| Piercing Shot | PHYSICAL | 30 | 1.8 | 620 | — |
| Channel Shot | PHYSICAL | 65 | 3.6 | 620 | — |
| Magic Arrow | MAGICAL | 20 | 1.1 | 530 | — |
| Explosive Arrow | PHYSICAL | 23 | 1.7 | 520 | — |
| Scattershot | PHYSICAL | 12 | 1.5 | 450 | — |
| Ricochet Arrow | PHYSICAL | 20 | 1.5 | 510 | — |
| Marked Shot | PHYSICAL | 20 | 1.7 | 570 | mark |
| Net Arrow | PHYSICAL | 12 | 2.3 | 500 | chill |
| Homing Arrow | PHYSICAL | 21 | 1.3 | 520 | — |
| Storm Arrow | MAGICAL | 24 | 1.8 | 540 | shock |
What remains TBD.
Bot fill and future event matchmaking; final competitive scoring and anti-farming rules; prizes, entry fees, payout splits, eligibility, anti-abuse enforcement and Mainnet rollout are TBD. They are not live promises. Current wallet login is off-chain Devnet identity only; no transactions or SOL requests. Server authority and secure login already exist, but are not a claim of complete anti-cheat or anti-abuse coverage.
