- Fix class skill names: Game now reads from class_skills table (what admin edits) instead of legacy class_skill_names table
- Add per-hit targeting mode for multi-hit skills (configurable in admin)
- Music now attempts autostart on page load
- WASD keyboard controls auto-enable test mode (like on-screen buttons)
- Update CLAUDE.md with Docker restart vs rebuild documentation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Add Utility Skills section with dedicated table showing effect type, value, duration, cooldown
- Add "Add Utility Skill" button with pre-configured defaults
- Filter utility skills out of main combat skills table
- Fix updateSkill() to handle both snake_case and camelCase field names
- Add getUtilitySkillConfig() for database lookup of utility skill settings
- Replace hardcoded BUFF_CONFIGS in server.js with dynamic database lookup
- Support effect types: HP/MP regen multipliers, ATK/DEF boosts, XP multiplier
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add toast notification system with CSS animations for user feedback
- Add WebSocket broadcast for admin panel changes (monsters, skills, settings)
- Client auto-refreshes when admin makes changes
- Add HP/MP regen settings to admin panel (intervals, percentages, home multipliers)
- Fix SQL parameter mismatch in saveRpgStats (data_version = excluded.data_version)
- Implement optimistic updates in admin panel for immediate feedback
- Add broadcastAdminChange helper with client count logging
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add on-screen WASD control pad for movement testing
- Implement hold-to-move for continuous movement on direction buttons
- Add music system with 5 tracks: overworld, battle, victory, death, homebase
- Music pauses/resumes instead of restarting when switching tracks
- Add home base reset button in admin panel
- Implement double-tap for home base placement on mobile
- Fix WASD controls visible when dead (z-index above death overlay)
- Add MP regeneration while walking
- Clear monsters when entering home base area
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add classes table (base stats, stat growth per level)
- Add class_skills table (skill assignments with unlock levels, choice groups)
- Seed 4 classes: Trail Runner (enabled), Gym Bro, Yoga Master, CrossFit Crusader
- Seed Trail Runner skills with level-up choices at levels 2 and 3
- Add API endpoints for class and class skill CRUD
- Add Classes section to admin panel with full editor UI
- Skills grouped by unlock level with choice group indicators
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Fix death system: add clearMonsterEntourage(), set HP to 0 on death
- Add movement-based monster spawning (configurable distance)
- Add admin-editable spawn settings (interval, chance, distance)
- Add home base HP/MP regeneration when player is nearby
- Update character sheet to show damage range, accuracy, MP cost
- Change WASD test step from 11m to 1m
- Fix monster spawning after respawn
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add visual status/buff overlays on combat sprites (100x100px full overlay)
- Monster skills can now have custom names per monster
- Skills admin page for full skill CRUD
- Fix monster buff skills (defend) to properly buff instead of damage
- Fix custom skill names appearing in combat log
- Auto-copy default images when creating new monsters
- Add monster toggle endpoint fix
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Clone copies all monster data with modified key/name
- Auto-generates unique key suffix (_copy, _copy1, etc.)
- Cloned monster is disabled by default for review
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add admin.html with monster/user/settings management UI
- Add admin API endpoints with adminOnly middleware
- Add game_settings table for configurable settings
- Replace emoji monster icons with PNG images (50px map, 100px battle)
- Add mapgameimgs/ directory with default fallback images
- Fix mobile geocache tap by checking for markers before preventDefault
- Increase geocache marker touch target to 64x64px
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>