Skip to content

LogicalGuy77/rpg-verse-agentic

Repository files navigation

SuriVerse

AI-powered multiverse—where MMORPG meets Web3,

An MMORPG game made using RPG JS framework which showcases global chat and NPCs powered by AI Agent. Every AI Agent is made using Coinbase AgentKit framework which can not only chat but execute custom actions based on prompts. All agents have the capabilities to manage their wallets.

We have made specialized AI Agents to communicate with popular Web3 services like AAVE and Uniswap.

Chat responses from the AI Agents are recorded and first 16 characters are hashed with SHA-256 and uploaded to EigenDA which provides randomness generated through AI and user interaction available for any service to use.

Demo Video

Watch the video

Usage

Use arrow keys to move around the map. Use space near an NPC to get it's description.

Click on an NPC to open chat prompt and start using the AI Agent.

  • AAVE NPC : Works on Eth Sepolia testnet. Can connect with AAVE and execute the functionalities provided by AAVE.
  • Uniswap NPC : Swap tokens
  • Simple NPC : Works on Base Sepolia testnet. Can mint ERC20 and NFTs and interact with it.
  • EigenDA NPC : Works on Eigen DA Holesky testnet. Even though EigenDA randomness uploading works in the background, this NPC showcase that capability manually. Send the string you want upload, at max 16 characters of the string will be uploaded. Wait for a few minutes and the response will show the details of the uploaded blob.

Infrastructure

RPG JS provides with the game server. The AI Agents are hosted as API services and are invoked on NPC interactions.

Agent Workflow

Eigen Workflow

Installation

After git cloning the project with the submodules, install all node modules using npm i.

To start the agents locally, go to general-coinbase-agent, aave_agent, uniswap_agent and EigenDA_connector : -

  1. Fill .env for each directory
CDP_API_KEY_NAME
CDP_API_KEY_PRIVATE_KEY
OPENAI_API_KEY
NETWORK_ID=sepolia #or base-sepolia for general agent
USER_PRIVATE_KEY
OPENAI_API_BASE
SEPOLIA_RPC_URL
PORT
  1. Run the command npm start or npm run dev according to the package.json for each directory in a single terminal. Now go to the ./src/game/main/gui/tooltip.vue and change all the API endpoints as necessary.

Now go to root directory and run npm run dev to start the project.

Team

Acknowledgements

About

AI-powered multiverse—where MMORPG meets Web3

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •