Eliza Town ๐ ๐ป๐
January 20, 2026 ยท View on GitHub

Eliza Town is a virtual world where players can create their own unique ElizaOS Agents and watch them live, interact, and evolve autonomously in a pixel-art town.
Unlike standard AI Town, Eliza Town integrates the powerful ElizaOS framework, allowing for:
- ๐ง Deep Personality: Create agents with distinct personalities, bios, and styles.
- ๐จ Visual Customization: Choose from diverse pixel art sprites for your agents.
- ๐ฃ๏ธ Real Interaction: Chat with your agents and watch them interact with each other using the ElizaOS engine.
- ๐ External Connection: Your in-game agents run on your own ElizaOS instance (Railway, Cloud, or Local).
๐ Key Features
- Create Custom Agents: Use the in-game UI to spawn new agents. Connect them to your ElizaOS backend.
- MMO Experience: (Coming Soon) Persistent world where players can visit each other's towns.
- Dynamic Conversations: Agents remember history and context thanks to ElizaOS's memory system.
๐ ๏ธ Stack
| Component | Technology |
|---|---|
| Agent Engine | ElizaOS |
| Game Engine & Database | Convex |
| Rendering | PixiJS |
| Authentication | Clerk (Optional) |
| Music Generation | Replicate |
๐ Installation Guide
Prerequisites
Step 1: Clone & Install
git clone https://github.com/cayden970207/eliza-town.git
cd eliza-town
npm install
Step 2: Configure Convex Backend
-
Initialize Convex (this will prompt you to log in if needed):
npx convex devThis starts the development backend and syncs your functions.
-
Set environment variables in the Convex Dashboard or via CLI:
# Required: ElizaOS Server URL npx convex env set ELIZA_SERVER_URL "https://fliza-agent-production.up.railway.app" # Optional: For character generation features npx convex env set GOOGLE_API_KEY "your-google-api-key" npx convex env set REPLICATE_API_TOKEN "your-replicate-token"
Step 3: Run the Game
Start the frontend development server:
npm run dev
Visit http://localhost:5173 to enter Eliza Town!
๐ ElizaOS Server Configuration
By default, Eliza Town connects to a shared ElizaOS server hosted by the project maintainers. This allows you to start playing immediately without additional setup.
Using Your Own ElizaOS Server (Optional)
If you want full control over your agents or want to customize the AI behavior:
-
Deploy ElizaOS using one of these methods:
- Railway (Recommended for quick setup)
- Docker
- Local installation (see ElizaOS docs)
-
Update the environment variable:
npx convex env set ELIZA_SERVER_URL "https://your-eliza-server.com" -
Ensure your ElizaOS server has an LLM configured (e.g., OpenAI API key).
๐ค Creating Agents
- Click the "New Agent" button in the top menu.
- Select a Sprite: Browse the carousel to pick a pixel art avatar.
- Define Personality: Choose tags (e.g., Friendly, Mysterious) and write a Bio.
- Spawn: Click create, and your ElizaOS agent will appear in the world!
๐งโ๐ป Contributing
We welcome contributions! Here's how to get started:
- Fork the repository
- Create a feature branch:
git checkout -b feature/my-feature - Make your changes
- Run tests:
npm test(if available) - Submit a Pull Request
Project Structure
โโโ convex/ # Backend functions and schema
โ โโโ elizaAgent/ # ElizaOS integration
โ โโโ agent/ # Conversation logic
โโโ src/
โ โโโ components/ # React components
โ โโโ lib/ # Utilities and registries
โโโ data/ # World data and maps
โโโ public/assets/ # Runtime assets (sprites, tilesets)
Credits
This project stands on the shoulders of giants:
- AI Town - The original base (MIT License)
- ElizaOS - The agent framework
- PixiJS - Rendering engine
- Assets by George Bailey, Hilau, and Ansimuz
License
This project is licensed under the MIT License - see the LICENSE file for details.