Wyrd -- Install & Run
There are two ways to play, and a build for every platform on the downloads page.
- Desktop (
wyrd-desktop-*) -- the full 3D / retro-pixel client with mouse support. Pick this to just play. - CLI (
wyrd-cli-*) -- the terminal version. The same binary can play locally or host a public server (web + telnet). Pick this for a lightweight terminal game or to run your own server.
Which file?
| Your machine | Desktop | CLI |
|---|---|---|
| Windows | wyrd-desktop-windows-amd64.exe |
wyrd-cli-windows-amd64.exe |
| macOS (Intel or Apple Silicon) | wyrd-desktop-macos-universal-*.dmg |
wyrd-cli-macos-universal |
| Linux x86-64 | wyrd-desktop-linux-amd64 |
wyrd-cli-linux-amd64 |
| Linux ARM64 (Raspberry Pi, Apple Silicon VM) | wyrd-desktop-linux-arm64 |
wyrd-cli-linux-arm64 |
Desktop
Windows -- download the .exe and double-click it. (It's unsigned, so
SmartScreen may warn: More info -> Run anyway.)
macOS -- open the .dmg and drag Wyrd to Applications. The app is unsigned,
so the first launch needs right-click -> Open (or System Settings -> Privacy &
Security -> Open Anyway).
Linux -- make it executable and run it. You need OpenGL/X11 runtime libs, which any desktop already has.
chmod +x wyrd-desktop-linux-amd64
./wyrd-desktop-linux-amd64
The desktop client stores your save, name, and high scores in one per-user folder:
- macOS --
~/Library/Application Support/Wyrd/ - Linux --
~/.config/wyrd/ - Windows --
%AppData%\Wyrd\
CLI -- play locally
The CLI binary with no flags is the terminal game, right in your shell.
chmod +x wyrd-cli-linux-amd64 # macOS/Linux: mark executable once
./wyrd-cli-linux-amd64
On Windows, run wyrd-cli-windows-amd64.exe from a terminal (Windows Terminal or
PowerShell recommended for colors).
CLI -- run a server
The same CLI binary hosts the game over the browser and/or telnet -- this is exactly how playwyrd.net runs.
# web (browser) on :8080 and telnet on :2323
./wyrd-cli-linux-amd64 -webserve :8080 -serve :2323
Then open http://localhost:8080, or telnet localhost 2323.
Useful flags:
| Flag | What it does |
|---|---|
-webserve :8080 |
serve the browser client on this address |
-serve :2323 |
serve telnet on this address |
-savedir DIR |
where per-player saves are stored (default wyrd-saves) |
-dist DIR |
serve a folder of build artifacts at /downloads (operator use) |
Put it behind a reverse proxy (Caddy, nginx) for TLS, and run it under your init system (systemd, etc.) so it survives reboots.
Wyrd -- Player's Guide
A terminal dungeon crawl. Each run, you're given a randomly chosen quest: descend 15 levels into the dark, recover the quest item waiting at the very bottom, then climb all the way back to the surface to win. The way out is harder than the way down -- the dungeon's guardians muster against you once you hold the prize.
Death is permanent. The map starts dark and reveals as you explore.
Getting started
When you launch, a title screen shows your quest's story and goal. Press any key to begin your descent.
Your goal every run:
- Descend via down-stairs (
>) to the bottom level (depth 15). - Find and step onto the quest item there (it glows like an
$). You'll sense it when you arrive on the level and again as you get close. - Climb back to the surface (depth 1) and ascend off the top -- reinforcements will hunt you the whole way up.
Controls
| Key | Action |
|---|---|
h j k l |
Move left / down / up / right (or use arrow keys) |
y u b n |
Move diagonally up-left / up-right / down-left / down-right |
> |
Descend stairs (when standing on >) |
< |
Ascend stairs (when standing on <) -- wins the game on the surface if you hold the quest item |
, |
Pick up the item under you. Standing on a stack of loot? A chooser opens and stays up -- press each item's letter to take it, and Esc (or any other key) when you're done. |
e |
Eat edible food under you straight off the floor (no need to pick it up first) |
D |
Drink from a fountain ( = ) you're standing on -- usually refreshing, occasionally not. Each fountain works only once. |
O |
Offer a corpse on an altar ( _ ) you're standing on -- the deity may heal you or bless your weapon. Each altar accepts a few sacrifices. Carrying several corpses? A chooser lets you pick which one to sacrifice. |
c |
Close an open door ( / ) next to you -- pick a direction. A closed door ( + ) blocks line of sight both ways, so slamming one breaks a chasing monster's view (it'll spend a turn opening it). Walk into a closed door to open it. |
i |
Open inventory -- items are grouped by type (weapons, armor, potions, scrolls, food). Press an item's letter to use or equip it, or any other key to close. |
d |
Drop items -- opens the grouped inventory and stays open; press a letter to drop each one, and Esc (or any other key) when done. Closes itself once your pack is empty. |
. |
Wait one turn (let monsters move) |
t |
Throw an item -- pick its letter, then a direction (the map stays visible while you aim) |
? |
Open this guide in-game (scroll with j/k or space; q/Esc closes) |
S |
Save and quit (resume later from where you left off) |
Q |
Abandon the run (deletes your save and quits) |
q |
Quit without saving |
Sound (off by default): launch with -sound and the game beeps your terminal
on key events -- one beep for something good (a hit, a kill, a pickup, a
level-up), a quick triple-beep when you take damage, and a longer flurry on death
or victory. It works locally and over telnet (and drives the PC speaker on real
old hardware).
Your game auto-saves only when you press S, then quits; relaunch to resume.
There is one save slot. The save is deleted on death or victory (no
save-scumming) and by abandoning with Q. Quitting with lowercase q leaves any
existing save untouched.
Combat: there's no attack key -- just move into a monster to attack it (a "bump"). Movement, attacking, picking up, using an item, and waiting each take a turn, after which all monsters act.
Reading the screen
The map shows only what you can currently see or have already explored:
- Bright tiles are in your line of sight right now.
- Dimmed grey tiles are remembered but out of sight (monsters and items there are hidden until you can see them again).
- Blank space is unexplored.
| Glyph | Meaning |
|---|---|
@ |
You |
# |
Wall |
. |
Floor / corridor |
< > |
Up / down stairs |
~ |
Lava -- deadly, impassable |
= |
Fountain |
_ |
Altar |
$ |
The quest item (on the bottom level) or a pile of gold |
r b g o O T W |
Monsters (see below) |
! ? ) [ % |
Items on the floor (potion, scroll, weapon, armor, food) |
The status bar below the map reads:
HP: 12/15 Lv: 2 XP: 28 AC: 6 Gold: 40 Wp: Short Sword Ar: Leather Armor [Dungeon Level 3]
- HP current / maximum hit points (0 = death).
- Lv your character (experience) level; XP experience earned.
- AC armor class -- lower is better (harder for monsters to hit you).
- Wp / Ar your wielded weapon and worn armor.
Below the status bar is the message log -- combat results and events, color-coded (green = good, red = you're hurt, amber = blocked/warnings).
How combat works
Every attack rolls a 20-sided die (d20):
A hit lands when: d20 + attacker's to-hit bonus >= 10 + defender's AC.
On a hit, damage dice are rolled and subtracted from HP.
- Your to-hit = your base (improves as you level) + your weapon's bonus.
- Your damage = 1d6 + your weapon's bonus + a small bonus from your level.
- Your AC = 6 base, lowered (improved) by your armor and by leveling.
Smart play: fight in corridors so only one monster can reach you at a time. In the open, deep monsters will swarm and overwhelm you. Retreat, heal, and pick fights one at a time.
Leveling up
Killing monsters earns XP. Reaching the next threshold levels you up, granting:
- +5 maximum HP
- +1 to-hit every 2 levels
- -1 AC (better) every 3 levels
- a partial heal (about a third of your max HP -- not a full heal, so manage your health between fights)
XP needed rises each level (level 2 at 20 XP, level 3 at 60, level 4 at 120, ...).
Monsters
Tougher monsters appear deeper, and every monster is a little stronger the deeper you find it. Lower AC is harder to hit.
Monsters move at different speeds. Most keep your pace, but bats are fast (they act more often than you -- hard to escape, and they get extra attacks), while ogres, trolls, and snapping turtles are slow -- you can back away from them and open up distance to heal, reposition, or reach a door. And a badly wounded ordinary monster may lose its nerve and flee, so you don't always have to finish a fight to be safe.
| Glyph | Monster | HP | AC | Attack | XP | Appears |
|---|---|---|---|---|---|---|
r |
Rat | 2 | 3 | 1d4 | 5 | Shallow -- weak swarm fodder |
b |
Bat | 3 | 4 | 1d3 | 8 | Shallow -- fast and flighty |
s |
Snake | 4 | 5 | 1d4+1 | 12 | Shallow -- slippery, venomous bite |
f |
Feral cat | 5 | 5 | 1d4+1 | 10 | Shallow -- quick; throw a rat corpse to tame it |
g |
Goblin | 6 | 5 | 1d6+1 | 15 | Early -- a real fight at level 1 |
o |
Orc | 10 | 6 | 1d8+2 | 25 | Mid-depths -- hits hard |
O |
Ogre | 18 | 7 | 1d10+3 | 45 | Depth 8+ -- heavy hitter |
T |
Troll | 26 | 8 | 2d6+3 | 70 | Depth 11+ -- tough and brutal |
W |
Wraith | 22 | 9 | 2d8+2 | 90 | Depth 13+ -- deadly, accurate |
Monsters chase you when they can see you and wander otherwise; they get more alert (longer sight) the deeper you go. They won't path perfectly around walls, so you can often break line of sight to lose a pursuer.
Taming a cat. Offer a feral cat a rat corpse and it may decide you're a
friend. Either throw ( t ) the corpse at it, or -- while it can see you -- drop
( d ) a rat corpse nearby and let the cat creep over and eat it (eating wins it
over a little more reliably). A tamed cat sticks close, hunts and tears into your
enemies, follows you up and down stairs, and snacks on any corpse it finds to
heal a little. It only draws an enemy's attention once it joins the fight, and it
can be wounded and killed -- so a cornered companion may need rescuing.
Items
Items aren't labeled by effect until you use them -- drinking an unknown potion or reading an unknown scroll is a gamble. Pick up everything; decide what to risk.
Potions ( ! )
| Potion | Effect | From depth |
|---|---|---|
| Healing Potion | Restore 5 HP | 1 |
| Murky Potion | Poison if drunk -- but throw ( t ) it to poison a monster! |
1 |
| Potion of Vigor | Restore 15 HP | 3 |
| Potion of Vitality | +5 maximum HP, plus a small heal | 4 |
| Potion of Full Healing | Restore HP to full | 6 |
Scrolls ( ? )
| Scroll | Effect | From depth |
|---|---|---|
| Scroll of Teleportation | Blink to a random spot on the level | 1 |
| Scroll of Magic Mapping | Reveal the whole level's layout and item locations | 1 |
| Scroll of Enchant Weapon | +1 to your wielded weapon (fizzles if unarmed) | 2 |
| Scroll of Enchant Armor | +1 to your worn armor (fizzles if unarmored) | 2 |
| Scroll of Fire | Burn adjacent monsters -- but it singes you too | 4 |
Weapons ( ) ) -- apply (a) to wield
| Weapon | Bonus | From depth |
|---|---|---|
| Dagger | +1 | 1 |
| Short Sword | +2 | 1 |
| Mace | +3 | 3 |
| War Hammer | +4 | 5 |
| Long Sword | +5 | 7 |
| Battle Axe | +6 | 10 |
The weapon bonus adds to both your to-hit and your damage. Wielding a new
weapon replaces the old one (the old one stays in your pack). In your inventory,
unequipped weapons and armor show how they'd compare to what you have equipped,
e.g. Long Sword (+4 if equipped) or Rusty Knife (-1 if equipped).
Daggers stack. They're light throwing weapons, so identical daggers pile into
one slot (Dagger (x3)) -- handy for hurling a volley. Wielding one splits it off
to use in melee, leaving the rest stacked to throw. (Daggers of different
enchant don't merge -- a +1 and a +0 are not interchangeable.)
Gear wears out. Every so often a connecting hit dulls your weapon (or a blow
frays your armor), dropping its enchant by 1 -- a +2 blade slowly becomes +1,
+0, even -1. Wear bottoms out at -2, so neglected gear is weak but never
useless. An Enchant Weapon/Armor scroll does double duty: read on worn gear
it repairs the wear, and on pristine gear it pushes the enchant higher. Keep a
scroll or two for upkeep, or swap to a fresh weapon when yours gets dull.
Armor ( [ ) -- apply (a) to wear
| Armor | AC bonus (lower AC = better) | From depth |
|---|---|---|
| Leather Armor | -1 | 1 |
| Ring Mail | -2 | 3 |
| Chain Mail | -3 | 5 |
| Plate Mail | -4 | 9 |
Food ( % ) and Gold ( $ )
- Food Ration (big) / Apple (small) -- eaten with
ato restore hunger. Eating also has a chance to heal a little HP. Keep some food on hand. - Corpses (
%) -- most kills leave an edible corpse, but only about half do, so a fresh kill is a real eat-it-now-or-leave-it call. A corpse feeds less than a full ration and rots after a while (rotten meat just makes you sick). - Gold -- picked up automatically into your purse, doesn't take an inventory slot.
Hunger is always shown on the status bar as a word -- Satiated, Fed, Hungry, Starving, Fainting -- and your nutrition drains as you act. Food is deliberately scarce, so plan your meals on a long descent; at empty you take damage each turn and will eventually die.
Eating corpses is risky beyond rot. Some flesh is dangerous:
- Bats are diseased -- a bat corpse may sicken you (HP loss, little food).
- Wraiths and golems are inedible -- a human won't eat undead flesh or animated stone; you'll refuse and keep the corpse. Don't count on those kills for food.
A starving player can still gamble on a questionable corpse -- sometimes that's the only meal in reach.
Your inventory holds up to 26 items (slots a-z). When it's full, pickups fail.
Throwing ( t )
Press t, pick an item, then a direction (8-way: h/j/k/l + y/u/b/n, or
arrows) -- it flies until it hits the first monster or a wall. A throw rolls to
hit (helped by an aiming bonus, hurt a little by distance), so close shots are
reliable and long ones are a gamble. Murky (poison) Potions are far better
thrown than drunk: they shatter on a foe and poison it. Weapons thrown deal
damage and drop to the floor where they land, so you can pick them back up.
Beneficial potions just shatter harmlessly if thrown.
Careful what you leave lying around: a thrown weapon that misses lands on the floor, and a capable foe (goblins, orcs, ogres, trolls -- not mindless beasts) standing on it may, rarely, snatch it up and hurl it right back at you.
Special rooms
Some levels contain a special room, announced when you enter:
- Sacred Pool -- holds fountains (
=). - Forgotten Temple -- holds an altar (
_). - Sealed Vault -- extra, gear-biased loot, watched by a stone golem vault guardian ( grey
G): a slow but deeply tanky, hard-hitting sentinel scaled to the depth. Kite it and chip it down. - Shop -- wares for sale, watched by a shopkeeper ( amber
@).
Shopping
A shop's wares sit on the floor with prices. Step onto one to see its price,
then press , to buy it -- if you have the gold, it's deducted and the item
is yours; if not, it stays on the shelf. To sell, stand inside the shop and
drop ( d ) an item from your pack: the keeper pays you half its value.
The shopkeeper is peaceful -- but tough. Don't attack it. Strike the keeper and it turns hostile and hunts you with brutal force for the rest of the level.
Strategy tips
- Level up before going deep. Clearing the early floors makes the deadly lower levels survivable. The deepest 2-3 levels are genuinely hard.
- Hoard healing. Save Full Healing and Vigor potions for the deep swarms and the climb out. Murky Potions are a poison gamble -- don't quaff at low HP.
- Fight in corridors, never in the open, once ogres and trolls appear.
- Enchant your best gear. Enchant scrolls make a wielded/worn item stronger; wield/wear before reading them.
- Plan the escape. Once you grab the quest item, the dungeon repopulates with fresh, tougher monsters on every level above you. Be strong, healed, and stocked before you take the prize. The way out is the real test.
Score & Hall of Fame
Every run is scored when it ends, win or lose:
score = depthx1000 + XPx10 + killsx50 + gold (+10000 for victory)
So progress and combat matter most, with a big reward for actually escaping. The
end screen shows your score, your rank, and the Hall of Fame -- the top runs
so far. Local games keep a personal table (~/.wyrd-scores.json); a telnet
server keeps one shared leaderboard for everyone who plays on it. Depth and a
win beat hoarding gold, so dive deep and claim the prize.
Good luck, adventurer. The light is a long way up.
WYRD alpha v0.1.0