8ef3d9dd13
feat: add skill tree system with 2 branches per class
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 14:36:19 +09:00
05cf59c659
feat: add Bleed and Curse status effects, add Freeze handler
...
- Add StatusBleed and StatusCurse to the status effect enum
- Rewrite TickEffects with index-based loop to support Bleed value mutation
- Add Freeze tick message, Bleed damage (intensifies each turn), Curse message
- Update Heal() to reduce healing amount when cursed
- Add tests for Bleed stacking, Curse heal reduction, and Freeze tick message
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 14:21:46 +09:00
fa78bfecee
docs: add Phase 2 combat/dungeon implementation plan
...
10 tasks covering: status effects, skill trees, elite monsters, combos,
floor themes, random events, secret rooms, mini-bosses, seed-based
generation, and UI integration. Reviewed and corrected for all critical
issues (package visibility, loop structure, missing handlers, stats).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 14:18:54 +09:00
fc0c5edc38
feat: add chat emote system (/hi, /gg, /go, /wait, /help)
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 14:05:04 +09:00
083a895be2
fix: address review issues in screen extraction
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-25 14:01:55 +09:00
ba01c11d36
refactor: extract all screens from model.go into Screen implementations
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 13:26:47 +09:00
7cb9290798
feat: add Screen interface and Context for UI architecture
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 13:21:04 +09:00
afe4ee1056
feat: add structured logging with log/slog and panic recovery
...
Replace log.Printf/Println with slog.Info/Error/Warn across the codebase.
Initialize slog with JSON handler in main.go. Add panic recovery defer
in SSH session handler. Add structured game event logging (room created,
player joined, game started, game over, player inactive removed).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 13:18:06 +09:00
f85775dd3e
feat: replace all hardcoded constants with config values
...
Replace hardcoded game constants with values from the config system:
- GameSession now receives *config.Config from Lobby
- TurnTimeout, MaxFloors, SkillUses, InventoryLimit use config values
- combat.AttemptFlee accepts fleeChance param
- combat.ResolveAttacks accepts coopBonus param
- entity.NewMonster accepts scaling param
- Solo HP/DEF reduction uses config SoloHPReduction
- Lobby JoinRoom uses config MaxPlayers
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 13:08:52 +09:00
ad1482ae03
feat: wire config into main, server, and lobby
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 13:02:54 +09:00
0f524779c0
feat: add configuration package with YAML loading and defaults
...
Add config package that loads game settings from YAML files with
sensible defaults for server, game, combat, dungeon, and backup
settings. Includes config.yaml with all defaults documented.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 12:59:44 +09:00
089d5c76ed
docs: add Phase 1 foundation implementation plan
...
13 tasks covering config package, server wiring, constant replacement,
structured logging, UI Screen interface extraction, and emote system.
All reviewed and corrected for module paths, signatures, and coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 12:51:31 +09:00
7064544693
docs: fix boss naming and AoE pattern in spec
...
- Archfiend → Archlich (matches codebase)
- Clarify AoE pattern moves from Guardian to Archlich final boss
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 12:38:10 +09:00
dfdc18a444
docs: revise game enhancement spec after review
...
Fix critical issues from spec review:
- Correct model.go line count (712, not 19K) and adjust Phase 1-1 scope
- Acknowledge existing chat/freeze implementations, rescope accordingly
- Add data model definitions (structs, BoltDB schemas) for all new entities
- Move logging and config externalization to Phase 1 (foundation)
- Align floor themes with boss patterns
- Add testing strategy, data migration plan, and admin API contract
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 12:02:48 +09:00
07587b103e
docs: add game enhancement design spec
...
Comprehensive enhancement plan for Catacombs covering 4 phases:
UI refactoring, combat/dungeon expansion, retention systems, and
operational stability.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 11:58:34 +09:00
604ca00e8b
feat: session reconnect via SSH fingerprint on disconnect
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 15:43:08 +09:00
43a9a0d9ad
feat: nickname input screen for first-time players
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 15:42:06 +09:00
ef9a713696
feat: online player tracking and count display in lobby
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 15:33:19 +09:00
5c5070502a
feat: enhanced leaderboard with floor/gold rankings and class info
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 15:33:16 +09:00
fb0e64a109
feat: achievement system with 10 unlockable achievements
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 15:33:12 +09:00
57e56ae7a4
test: lobby, session, store tests — deep copy, logs, inventory, stats
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 15:07:51 +09:00
f396066428
test: comprehensive tests for player effects, monster, and combat
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 15:06:01 +09:00
afdda5d72b
feat: player statistics screen with run history
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 14:51:44 +09:00
0dce30f23f
feat: floor themes with color-coded walls (Stone/Moss/Lava/Shadow)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 14:50:40 +09:00
d3d7e2a76a
feat: status effects (poison/burn), boss patterns, new relics
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 14:49:55 +09:00
533e460968
feat: lobby shows player names and classes in room listing
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 14:47:53 +09:00
29387ebaa0
feat: help screen, detailed result screen, death/revive messages
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 14:44:03 +09:00
80c1988719
feat: party action status display and sequential turn result replay
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 14:23:44 +09:00
9221cfa7c6
refactor: replace goto with labeled break in RunTurn
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 13:46:33 +09:00
15199bd26f
feat: skill cooldown (3/combat), inventory limit (10), scaled event damage
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 13:46:17 +09:00
9ed71eeccd
feat: room counter, taunt turns, item labels, shop gold display
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 13:45:19 +09:00
1104c6e4e9
fix: lock SoloMode at start, shop feedback, dead player exploration block
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 13:44:43 +09:00
c555ff6e92
feat: add xterm.js web terminal frontend
...
WebSocket-to-SSH proxy on :8080. Browser connects via xterm.js,
server bridges to localhost:2222 SSH. Single HTML file, CDN deps.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 13:33:08 +09:00
09af632ed9
docs: web terminal frontend design spec
...
WebSocket-to-SSH proxy with xterm.js client.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 13:31:20 +09:00
a3bffbecb4
feat: gradient title screen with centered layout
2026-03-24 12:38:54 +09:00
a951f94f3e
feat: two-panel combat layout with colored log and 3-color HP bars
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 12:38:02 +09:00
7fc13a6a32
feat: add shared styles and monster ASCII art
2026-03-24 12:36:10 +09:00
84431c888a
docs: terminal visuals implementation plan
...
5 tasks: styles, ASCII art, colored log, combat layout, title screen.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 12:35:20 +09:00
1ea6db406e
docs: terminal visuals enhancement design spec
...
Monster ASCII art, combat layout redesign, color effects, title screen.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 11:34:54 +09:00
01edb488f7
fix: game balance — gold scaling, solo DEF, floor-scaled items, healer targeting, AI fallback
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 11:17:23 +09:00
ee9aec0b32
feat: add in-game chat with / key
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 11:06:29 +09:00
ce2f03baf5
feat: remove inactive players after 60s disconnect timeout
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 10:59:33 +09:00
46afd82060
fix: stop combatLoop goroutine and remove lobby room on session exit
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 10:56:23 +09:00
e8887cd69a
fix: use fingerprint as player ID to prevent name collision
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 10:50:21 +09:00
cd2013a917
feat: multiplayer flee marks player as out for current combat
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 10:47:38 +09:00
6f35bc1172
feat: show log messages for trap, blessing, and treasure events
2026-03-24 10:45:01 +09:00
15614b966a
fix: clamp target cursor when monsters die
2026-03-24 10:44:25 +09:00
b6c28ddd80
fix: set room status to Playing when game starts
2026-03-24 10:40:04 +09:00
4db3ba1fc5
fix: clear monster taunt when warrior is dead
2026-03-24 10:27:38 +09:00
e13e1e7a7d
fix: prevent duplicate SaveRun calls on game over
2026-03-24 10:27:12 +09:00