Veep Roadmap
✅ Completed
- Time-based stat decay (per-second, 6 decimal precision)
- Adopt now stores catalog_id + seeds stats correctly
- Pet action buttons respect 99-cap at load
- Play button disables correctly at full happiness
- Cron-based decay service operational
- Expanded pet stats — HP, Hygiene, Energy, XP, Level, Strength, Speed with species ranges (Aug 2025)
- Shop system
- Item purchase works with coins deducted
- Items immediately added to inventory
- Item images + rarity pills styled
- Responsive layout
- Inventory system
- Items displayed in card format (matching shop)
- Quantity handling & auto-delete on 0
- Clickable card to “use” item (no extra button clutter)
- Item effects (hunger, happiness, hygiene, energy, xp, hp, strength, speed) applied as floats
- Mobile Navigation
- Hamburger menu working
- Header/nav properly floats above panels (fixed z-index)
- Responsive dropdown menu styling
🎮 Games
- Coin Grab — competitive tap-to-collect game with leaderboard, coin rewards, and save system (Aug 2025)
- Coin Catcher — arcade style with levels, bombs, and powerups (Aug 2025)
- Games hub page — list of games in same two-column layout as
mypet.php
with account sidebar (Aug 2025)
- Recent scores feed — limited to 10, with time display in seconds/minutes/hours/days (Aug 2025)
- Dynamic score feed text — shows “Reached Level” if the game has levels, otherwise “Scored” (Aug 2025)
- Use of
games_list
table — drives game list, includes level flag, and joined with game_scores
for feeds (Aug 2025)
- Store game include paths in
games_list
table so play pages can dynamically load games from DB (Aug 2025)
👤 Accounts & Settings
- Account Deletion (request → confirm email → soft delete → 7-day purge cron)
- Session Enhancements: “Remember me” persistent tokens + auto-login
- Login hardening: exclude deleted accounts in
get_user_by_username()
- Inline “Remember me” and “Privacy Policy” checkboxes (mobile-friendly)
- Gear icon in top nav → Account Settings
- Account Settings page with:
- Account overview (username, email, join date)
- Profile fields: birthday (write-once), region + state dropdowns, mute sounds
- Change Password form
- Update Email flow:
- Confirm link to new email
- Cancel link to old email
- Resend pending link in settings
- Notify both old & new addresses
- Delete Account button
- Wallet card with coin balance + disabled Transaction History link
- Database:
- Added
birthday
, region
, state
, mute_sounds
- Added
pending_email
, email_change_token
, email_change_cancel_token
- Ensured
users.email
has a unique index
🚧 In Progress
- Transactions
- Database model for coin transactions (earn/spend, timestamps, reason/source)
- Hook into actions (daily login bonus, shop purchases, quests)
- Transaction History
- Transaction History page linked from Wallet card
- Paginated list of transactions (date, type, amount, balance after)
- Export/print support (future)
📌 Planned