Alpha Omega Arcade is a Python 3.12+, discord.py 2.x, button-first Discord gaming platform. It is designed as a premium MMO-style arcade with persistent views, PostgreSQL progression, Redis-backed sessions, owner/admin panels, reusable game engines, and playable Dungeon Raid.
- Python 3.12+
- Docker Desktop or Docker Engine
- PostgreSQL and Redis via
docker compose - A Discord bot token
- Required Discord bot scopes:
bot applications.commands - Required bot permissions: Send Messages, Embed Links, Use Application Commands, Read Message History
- Required intents: Guilds. Member intent is not required for the current launch flow.
python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e .[dev]
cp .env.example .env
# edit .env and set DISCORD_TOKEN
docker compose up -d postgres redis
alembic upgrade head
python scripts/seed_database.py
python scripts/bootstrap_owner.py
python -m app.botpy -3.12 -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -e .[dev]
Copy-Item .env.example .env
# edit .env and set DISCORD_TOKEN
docker compose up -d postgres redis
alembic upgrade head
python scripts\seed_database.py
python scripts\bootstrap_owner.py
python -m app.bot- Invite the bot with
botandapplications.commandsscopes. - Start the bot.
- As owner
ntmhaha(1417262684990083142), run/arcade setup-panelin the target channel. - The posted Discord View uses stable custom IDs and is re-registered on restart.
The owner can run /arcade health to verify:
- Discord token shape
- Owner ID/display configuration
- PostgreSQL connection
- Redis connection
- Panel readiness
Home → Games → Dungeon Raid → Start Tier 1 → Strike/Shield/Revive → Claim Rewards
Dungeon Raid uses Redis-backed sessions, interaction locks, reconnect-ready state, procedural rooms, elite enemies, boss rooms, combat logs, and loot rewards.
alembic upgrade head
python scripts/seed_database.py
python scripts/bootstrap_owner.pyFor local reset only:
python scripts/reset_dev_db.py
python scripts/seed_database.py
python scripts/bootstrap_owner.pyReplace YOUR_CLIENT_ID with your Discord application client ID:
https://discord.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&scope=bot%20applications.commands&permissions=2147485696
Some hosted coding environments block PyPI with errors like Tunnel connection failed: 403 Forbidden or fail while fetching setuptools. This is environment-specific, not an Alpha Omega Arcade code issue.
Local fixes:
python -m pip install -e .[dev]
# or
python -m pip install -r requirements.txtIf your network uses a private mirror:
python -m pip install -e .[dev] --index-url https://pypi.org/simple
python -m pip config set global.index-url https://pypi.org/simpleCorporate networks may require HTTPS_PROXY / HTTP_PROXY environment variables or an internal package index URL.
DISCORD_TOKEN is required: copy.env.exampleto.envand set a real token.PostgreSQL check failed: rundocker compose up -d postgresand verifyDATABASE_URL.Redis check failed: rundocker compose up -d redisand verifyREDIS_URL.- Slash command missing: restart the bot and check startup logs for command sync errors.
- Panel buttons expired after code changes: rerun
/arcade setup-panel.

