THUMBYROGUE

An Endless Voxel Descent
A real-time isometric hack-n-slash roguelike for the Thumby Color · 128×128 · RP2350
This guide covers the loot / inventory and level-generation systems implemented so far.
title
Title
dungeon
The Crypt — crystal shards mark the way down
lava
Lava pit & bridge

Controls

D-pad move (screen-relative) A attack — swing / fire B jump LB / RB rotate view ±90° MENU inventory

Walk down the down staircase to descend — crystal shards and rising teal motes mark its mouth. Walk up to the merchant's counter to shop. Walk onto chests to open them. The fog-of-war minimap lives on the MENU screen (it was too big to leave up during play).

Floating damage numbers rise from every hit — green for damage you deal, red for damage you take.

Cheat hold LB + RB together for ~5s to open a level-skip menu (jump to any depth).

Loot & Inventory (Diablo-4-lite)

The hero has no fixed class — the equipped weapon defines your playstyle (melee / ranged / caster), and a full 6-slot paperdoll of gear shapes the rest of your build. Loot vacuums into a 21-slot backpack; open MENU to compare, equip, salvage and socket. The paperdoll cells show each equipped item's icon, your live stats sit beside them, and the fog-of-war map tucks into the top-right.

inventory
Paperdoll + icon backpack + live stats & map
merchant stall
The merchant's stall — trade at the counter
shop
Merchant — buy / gamble / reroll / upgrade

Equipment slots

Wp Of Hl Ar Am Rg

SlotBasesRole
Weapon12 types — Dagger, Sword, Greatsword, Axe, Mace, Spear, Warhammer (melee) · Bow, Crossbow (ranged) · Wand, Scepter, Staff (caster)Sets attack style; base damage spans 14 → 52, with faster weapons hitting lighter
Off-handShield, Tome, CharmArmor / caster bonus
HelmCap, Helm, CrownArmor + affixes
ArmorTunic, Mail, PlateBulk of your armor
AmuletAmulet, PendantPowerful jewel affixes
RingRing, BandJewel affixes

Item icons

Every weapon type and item kind has its own glyph, drawn pixel-for-pixel by the game (rogue_item_draw_icon in rogue_inventory.c) and tinted by rarity so a legendary still reads at a glance. The same icons appear in the backpack grid and beside each merchant listing. These are the exact in-game icons:

Weapons — melee

Dagger
14 dmg · fast
Sword
24 dmg
Greatsword
46 dmg · wide
Axe
36 dmg · cleave
Mace
30 dmg
Spear
28 dmg · reach
Warhammer
52 dmg · slow

Weapons — ranged & caster

Bow
22 dmg
Crossbow
34 dmg · heavy bolt
Wand
16 dmg · fast
Scepter
26 dmg
Staff
34 dmg · slow

Gear, gems & consumables

Shield
Off-hand
Helm
Head
Chestplate
Body
Amulet
Neck
Ring
Finger
Gem
Socketable
Potion
Heals HP
Torch
Refuels light
Coin
Gold

Attack effects

Each weapon type also has its own swing animation, impact sparks and projectile, so combat reads differently the moment you pick something up — not just different numbers.

WeaponEffect
Daggerquick short forward stab + a few pale sparks
Swordclean wide cyan crescent, gold-white sparks
Greatswordhuge sweeping blue arc + a big blue spark burst
Axewide fiery orange cleave + ember sparks
Maceshort blunt arc + a grey dust shock-ring
Spearlong thin thrust with extra reach
Warhammerstubby heavy arc + a large dust shock-ring
Bowthin gold-wood arrow streak
Crossbowheavy steel bolt, longer & faster
Wandsmall fast cyan spark with a glittery trail
Sceptergolden holy mote with a sparkle trail
Staffbig purple arcane orb, glowing trail, larger impact

Magic detonates. Every wand / scepter / staff impact — wall, scenery or creature — fires a circular shockwave around a hot core burst and deals half-damage splash to everything within ~1.5 cells (staff blasts biggest). Piercing staves detonate on every enemy they punch through.

Rarity

Common
no affixes
Magic
1 affix
Rare
2–3 affixes · maybe a socket
Legendary
2–3 affixes + an Aspect + 1–2 sockets

Rarity is deliberately stingy early so the descent feels like progression — at depth 1 a drop is only ~0.5% legendary / ~2.9% rare (mostly common & magic); by depth 20 that climbs to ~6% / ~18%. Affix magnitudes scale with both depth and rarity too.

Affixes

+Damage flat
+% Damage
+Life
+Armor
+% Crit Chance
+% Crit Damage
+% Attack Speed
+% Move Speed
+Life on Hit
+% Resist
+Fire / +Frost / +Poison element
+Lightning / +Holy element
+Shadow / +Void / +Force element

All equipped affixes aggregate into your character: max life, armor (a diminishing-returns damage-reduction curve), crit (base 5% / 150%), attack & move speed, life-on-hit and resist.

Elements

An elemental affix (or an elemental gem socketed into your weapon) gives the weapon an element — a gameplay effect on every hit, and a full colour identity: projectile body, trail, impact bursts, the magic shockwave and melee sparks all take the element's palette.

ElementEffect on hit
Firebonus burn damage
Frostchills the victim — 45% movement for 1.4s, icy motes shimmer off them
Poisondamage over time — venom ticks every half-second for 3s, green bubbles
Lightningthe bolt arcs to the nearest other enemy for full element power — a jagged spark line joins the victims
Holysmites the unholy — double power vs skeletons, zombies, archers & demons, with a golden flare
Shadowdrains life — a slice of element power returns to you as healing
Voidimplodes — drags the victim toward the impact instead of knocking it away
Arcane Forcea massive 1.2-cell launch — shove enemies off bridges, into chasms, into the lava
fire staff blast
A fire-staff bolt detonates against the wall

Legendary Aspects

The build-defining powers — gameplay modifiers, not just numbers:

AspectEffect
ChainingMelee hits add a cleave AoE around the hero
PiercingProjectiles pass through enemies, re-hitting as they fly
Nightstalker+40% damage while your torch is out (in darkness)
VampiricHeal a fraction of your melee damage on hit
ThornsReflect a chunk of damage back at melee attackers

Item detail page

Press B on any item (equipped or in the bag) to open its detail page — the full damage/armor, every affix, the legendary aspect, and its sockets. All item management lives here:

item detail page
B opens the item page — stats, sockets & actions

Sockets & Gems

Rare and legendary gear roll sockets. Gems drop into your backpack; open an item's detail page (B) and choose Socket a gem to slot one into a free hole.

Ruby
+20 Life
Sapphire
+8% Resist
Emerald
+4% Crit
Topaz
+10 Armor
Fire Opal
Fire
Glacite
Frost
Venomstone
Poison
Stormcrystal
Lightning
Sunstone
Holy
Nightstone
Shadow
Voidpearl
Void
Aetherite
Arcane Force

The classic four grant their stats in any socket. The elemental eight imbue a weapon with their element when socketed there; in armor sockets they grant +4% elemental warding (resist) instead.

Economy — salvage & the merchant

Salvage unwanted gear into gold from its detail page (B → Salvage → confirm). Each floor has a real merchant's stall — a gold-trimmed counter, the shopkeeper behind it on his gold-tiled alcove, and a wares-packed shelf wall at his back. Walk up to the counter to trade:

Provoke him at your peril Hit the shopkeeper — even by accident — and he turns into a blink-casting battle wizard: huge HP, fans of three arcane bolts, and a teleport whenever you corner him. Kill him and his unsold stock spills onto the floor as free pickups… but the guild remembers: every shopkeeper for the rest of the run attacks on sight, and trading is over. The grudge only dies with you.

Level Generation

Every floor is carved fresh into a static 64×64×64 voxel space and rendered through a DDA raycaster at a fixed isometric tilt. The layout is a BSP partition — each split carves a corridor between its two halves, so the room graph is always fully connected and the down-stairs is always reachable. Every permadeath floor is solvable.

platforms
Moving platforms & depth scaling
frostvault
Frostvault band reskin
death
Permadeath run summary

Depth bands

The theme shifts every 4 floors — reskinning blocks, swapping the enemy roster, and ending on a champion mini-boss. Each band has a distinct identity and includes a ranged threat (archer or fire sprite) plus, where it fits, a flyer (bat); together the five bands use all 11 enemy types. After the last band the sequence loops while enemy stats keep climbing: an endless descent. Each band reskins the floor, walls, pillars and the surrounding terrain:

crypt
The Crypt — a looted library, bones underfoot
caverns
The Caverns — earthy dirt & tan rock
fungal
Fungal Deep — bioluminescent spores
frostvault
Frostvault — flagstone, ice & snow
inferno
The Inferno — charred obsidian
BandFloor / WallThemeRoster
The CryptWood plank / CobbleVermin & risen deadRat · Bat · Skeleton · Skeleton Archer
The CavernsDirt / Cave rockCave beasts & raidersSpider · Kobold · Goblin · Bat · Slime
Fungal DeepMycelium / Fungal wallToxic spore horrorsSlime · Zombie · Fire Sprite · Spider · Kobold
FrostvaultFlagstone / IceFrozen undeadSkeleton · Skeleton Archer · Zombie · Bat
The InfernoObsidian / CobbleHell's legionsDemon · Fire Sprite · Goblin · Skeleton Archer · Kobold

What's in a floor

Rooms & corridors
BSP partition; thin 1-block ruined walls with ~18% gaps, not solid mazes
Flagstone floors
4 scattered flagstone variants for texture variety; brick (cobble) walls
Background terrain
a low green grass lip rings the dungeon — a colour contrast, kept short so it never occludes the iso camera
Organic lava chasms
instant death for you, a fast burn for enemies knocked in (fire creatures are immune) — organic lakes spanned by a safe cross-bridge
Dank water
shallow murky-green pools you wade through (slowed) — translucent (the floor shows through) and a rippling animated surface, crypt water, not clear blue
Moving platforms
oscillating slabs — the only crossing to a marooned bonus-chest island over lava, not an optional shortcut
Elevated pedestals
chests you must jump onto (height-gated to open)
Torches
Minecraft-style wall/floor torches are the room light sources (lightmap BFS)
Spike traps
telegraphed floor spikes, contact damage scaling with depth
Chests & merchant stall
more loot containers per floor + a built shop: counter, shopkeeper and shelf wall
Loot beams
dropped gear projects a vertical light beacon coloured by rarity (Diablo-style)
Real staircases
a walled stone stairwell rises at the entrance; the way down is a 2-wide staircase cut into the floor, vanishing under a stone hood — flanked by glowing shards and rising teal motes

Enemies

Cuboid creatures with wander → chase → telegraphed wind-up → strike AI (every hit is fair — foes flash white-hot before they swing). Both stats and numbers scale with depth — the floor spawns 5 + depth enemies (up to 20) — and each type drops a different kind of loot, not just gold. Ranged foes fire projectiles and kite; flyers ignore the floor.

FoeBehaviourDrops
RatFast, weak swarmergold
SlimeSlow tanky hopperpotion
SkeletonSturdy meleegear
SpiderFast meleegold
BatFlyer, very fast, fragilegold
KoboldQuick skirmishergear
GoblinSturdy bruisergear
ZombieVery slow, very tankypotion
Skeleton ArcherRanged — fires arrows & kitesgear
Fire SpriteRanged flyer — lobs firegem
DemonBig, hard-hitting eliterare gear
ShopkeeperPeaceful trader — until hit. Then: blink-casting battle wizardhis stock!

Enemies respect the terrain too: anything knocked into lava burns down fast (fire sprites and demons shrug it off; flyers stay above it) — force-element weapons turn chasm rooms into kill zones.

Champion — 3× HP, 1.7× size, boss floors Rosters vary per depth band, so deeper floors mix in the deadlier foes.

Tension systems

Light as a resource
a smooth torch glow that dims & shrinks as fuel drains, with wall-blocked shadows for real depth; out of fuel, foes sense you farther & hit harder
Lava = lethal terrain
touching lava kills you outright — and burns enemies knocked into it; chasms are crossed only by the bridge or a moving platform
Permadeath
one life — gear & gold lost on death; depth is your score
Suspend & resume
an in-progress run auto-saves on descent (host file / device flash) and resumes on launch; wiped on death