Commit Graph

3 Commits

Author SHA1 Message Date
a22e5407ab world: distinct names, richer NPC dialog, reduced-motion (4.2.0)
- each logged-out player gets a random fantasy name (Bold Dwarf, Lucky
  Elf...) stored in localStorage; click the name badge to set your own
- NPC dialog is now multi-line, advanced with E/tap (the patrons have
  flavor to share); movement freezes while a dialog is open
- NPC idle bustle holds still under prefers-reduced-motion
- verified: random name badge, 3-line dwarf dialog advancing then closing

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 15:17:59 +08:00
84531acf55 online: multiplayer presence in the tavern (4.1.0)
- backend: in-memory public presence lobby — POST/GET /agents/presence
  (id,name,x,y,dir,frame,sheet; 6s TTL; POST returns other live players)
- RpgTavern: broadcast my position ~600ms, render other visitors'
  chibi avatars (smooth-interpolated) with name labels, depth-sorted;
  a '👥 N in the tavern' counter
- verified: two browsers each show the other's named avatar walking, both
  report 2 online

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 15:05:44 +08:00
b5283aba99 rpg: a playable top-down tavern replaces the static hero (4.0.0)
Per user pivot — the home is now an actual Pokemon-style 2D RPG, not a
static illustration. src/RpgTavern.jsx: canvas top-down tavern (LPC tiles
+ 64px chibi character sheets), a controllable player (arrows/WASD + an
on-screen dpad/A button on phones) with 4-dir walk animation and tile
collision, depth-sorted NPCs, and proximity interactions — walk up to the
barkeep (sign in / Legion), elf host (tour), roster board (Browse), banner
(Legion) or estate door (Mansion) and press E; patrons have flavor dialog.
Verified: movement, collision, prompt, and E->opens-feature all work.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 14:54:55 +08:00