Skip to content

feat: AquaPrime voice RPG + wallet ability (server-side rewrite)#204

Open
Bradymck wants to merge 12 commits intoopenhome-dev:devfrom
Bradymck:feat/aquaprime-fading-v2
Open

feat: AquaPrime voice RPG + wallet ability (server-side rewrite)#204
Bradymck wants to merge 12 commits intoopenhome-dev:devfrom
Bradymck:feat/aquaprime-fading-v2

Conversation

@Bradymck
Copy link
Copy Markdown

Summary

Complete rewrite of the AquaPrime: The Fading voice RPG ability, replacing the old client-side game engine with a server-side architecture. Supersedes #196.

  • Server-side game engine — All mechanics (D20, movement, encounters, loot, economy) resolved by UnifiedTurnService on the AquaPrime server. The ability is a thin voice client.
  • Real Ethereum wallets — Privy embedded wallets created automatically for each device. Players hear their truncated ETH address at connection and can ask for it mid-game.
  • Memory system — 5 persistent memory containers with experiences, skill grants, sacrifice choices, and critical failure erasure (scars).
  • Live 3D map — Room code lets players watch their ship at platypuspassions.com/stream-view
  • Cardinal direction navigation — Grid-based movement with regions, drift distances, and battery economy

New: aquaprime-wallet companion ability

Standalone wallet lookup — say "what's my address" or "my wallet" anytime without starting a game session. Creates a wallet on first call, returns existing on subsequent.

Changes from PR #196

  • Complete rewrite — Old standalone D20 engine replaced with server-side API calls
  • Privy wallets — Real embedded Ethereum wallets instead of no wallet support
  • Memory system — Persistent across sessions, sacrifice mechanics, scars
  • config.json added — Proper hotword configuration (was missing)
  • Companion ability — Separate aquaprime-wallet for address queries outside game

Test plan

  • Trigger game via "play aquaprime" hotword
  • Verify room code and ETH address announced at connection
  • Move in cardinal directions (north/south/east/west)
  • Ask "what's my address" mid-game — should respond without consuming a turn
  • Say "stop" — graceful exit with summary
  • Trigger wallet ability via "my wallet" — should speak address without starting game
  • Verify resume_normal_flow() fires on all exit paths

🤖 Generated with Claude Code

ARI and others added 3 commits March 10, 2026 15:03
…ewrite)

Rewrites the AquaPrime ability with accurate lore from the Obsidian vault.
Fixes all CI issues from PR openhome-dev#169: removes files outside community/,
replaces raw open() with register_capability tag, fixes E741 lint errors.

The game is now correctly set in a post-digital metaverse of airships and
moonstone mining (not underwater). Regions, factions, encounters, and skills
all match the canonical AquaPrime universe.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ator

The ability validator does naive string matching for blocked imports.
"redistribution" contains "redis" as a substring, triggering a false positive.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…lets

Complete rewrite of the AquaPrime: The Fading voice RPG ability:

- Server-side game engine via UnifiedTurnService (all mechanics resolved server-side)
- Real Ethereum wallets via Privy embedded wallets (replaces pseudo-addresses)
- Memory system with 5 containers, sacrifice choices, critical fail erasure
- Cardinal direction navigation on a grid with regions
- Battery economy, Sand Dollar rewards, loot drops
- Live 3D map at platypuspassions.com/stream-view (enter room code)
- Mid-game wallet address queries ("what's my address")
- config.json with trigger hotwords

New companion ability: aquaprime-wallet
- Standalone wallet lookup — ask "what's my address" anytime without starting a game
- Idempotent registration — creates wallet on first call, returns existing on subsequent

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@Bradymck Bradymck requested a review from a team as a code owner March 10, 2026 21:06
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 10, 2026

✅ Community PR Path Check — Passed

All changed files are inside the community/ folder. Looks good!

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 10, 2026

🔀 Branch Merge Check

PR direction: feat/aquaprime-fading-v2dev

Passedfeat/aquaprime-fading-v2dev is a valid merge direction

@github-actions github-actions bot added the community-ability Community-contributed ability label Mar 10, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 10, 2026

🔍 Lint Results

__init__.py — Empty as expected

Files linted: community/aquaprime-fading/main.py community/aquaprime-wallet/main.py

✅ Flake8 — Passed

✅ All checks passed!

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 10, 2026

✅ Ability Validation Passed

📋 Validating: community/aquaprime-fading
  ✅ All checks passed!

📋 Validating: community/aquaprime-wallet
  ✅ All checks passed!

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@Bradymck Bradymck force-pushed the feat/aquaprime-fading-v2 branch from f217874 to 2d2662c Compare March 11, 2026 00:54
Copy link
Copy Markdown
Contributor

@uzair401 uzair401 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @Bradymck, great work on this! Could you record a quick Loom demo walking through the ability? It'll help other developers get a clear picture of how it works and make it much easier for them to understand and build on top of it. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

community-ability Community-contributed ability

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants