chore: rename repo references and build presets to modbison
checkpoint / checkpoint (push) Successful in 5m59s
checkpoint / checkpoint (push) Successful in 5m59s
This commit is contained in:
@@ -0,0 +1,39 @@
|
|||||||
|
# ModBison (Project & Agent Guidelines)
|
||||||
|
|
||||||
|
> **CRITICAL REBRANDING NOTICE**
|
||||||
|
> - **Game Name**: **ModBison** (formerly `agp-game`).
|
||||||
|
> - "ModBison" represents a play on game modification and the 1960s British "mod" subculture, adhering to the user's "bison" project naming convention (e.g. host machine `cloudbison`, Windows client machine `pinkbison`, social platform `WiseBison`).
|
||||||
|
> - **In-Game Currency**: **Buffalo Chips** (formerly `Credits` / `CR`).
|
||||||
|
> - Named playfully after bison poop. Displayed throughout all UI menus, wallet, marketplace, and creator payout screens as "Buffalo Chips".
|
||||||
|
> - **Git Repository**:
|
||||||
|
> - Local clone path: `/home/daddy/modbison` (symlinked as `/home/daddy/agp-game-dev` for backwards compatibility).
|
||||||
|
> - Gitea repository name: `modbison`
|
||||||
|
> - Clone URL: `http://localhost:3000/daddy/modbison.git`
|
||||||
|
> - Web UI: `https://git.cloudbison.duckdns.org/daddy/modbison`
|
||||||
|
> - **Binaries & Exports**:
|
||||||
|
> - Windows: `modbison.exe` (legacy alias `agp-game.exe` maintained for backwards compatibility)
|
||||||
|
> - Linux: `modbison.x86_64`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Architecture Overview
|
||||||
|
|
||||||
|
1. **Client**: Godot 4.6.2 (GDScript).
|
||||||
|
- Headless engine binary located at `~/godot/godot`.
|
||||||
|
- Export presets defined in `export_presets.cfg`.
|
||||||
|
- Main scenes in `res://scenes/` (`main_menu.tscn`, `world_3d.tscn`, `wallet_ui.tscn`, `marketplace_ui.tscn`, `selling_payout_ui.tscn`, etc.).
|
||||||
|
- Scripts in `res://scripts/`.
|
||||||
|
|
||||||
|
2. **Backend**: FastAPI + SQLAlchemy (asyncpg) + Alembic in `backend/`.
|
||||||
|
- Python environment: `/home/daddy/agp/venv` (or project `.venv`).
|
||||||
|
- Runtime game server supervisor allocates headless Godot instances per active world session under `/tmp/modbison-game-servers`.
|
||||||
|
|
||||||
|
3. **Orchestration & Playtesting (`/home/daddy/agp`)**:
|
||||||
|
- PM Dashboard: `http://localhost:7070` (`agp-dashboard.service`).
|
||||||
|
- Checkpoint system: `pm/checkpoint_ops.py` controls playtest instances (`PC1` through `PC4`).
|
||||||
|
- Current active checkpoint: **PC4** (backend on `http://192.168.58.138:28004`, postgres on `25544`).
|
||||||
|
- Building Windows package: `PYTHONPATH=. /home/daddy/agp/venv/bin/python3 -c "import pm.checkpoint_ops as ops; ops.build_exe('PC4')"`
|
||||||
|
|
||||||
|
4. **Testing Protocols**:
|
||||||
|
- Headless smoke tests: `AGP_API_BASE_URL=http://127.0.0.1:28004 ~/godot/godot --headless --path . --script res://scripts/smoke_test_<name>.gd`
|
||||||
|
- Backend pytest: `PYTHONPATH=. /home/daddy/agp/venv/bin/pytest backend/tests`
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
# ModBison Guidelines for Claude Code
|
||||||
|
|
||||||
|
See [AGENTS.md](AGENTS.md) for full project conventions.
|
||||||
|
|
||||||
|
### Quick Reference:
|
||||||
|
- **Game Name**: ModBison (formerly agp-game)
|
||||||
|
- **Currency**: Buffalo Chips (formerly Credits / CR)
|
||||||
|
- **Repo URL**: `http://localhost:3000/daddy/modbison.git` (`https://git.cloudbison.duckdns.org/daddy/modbison`)
|
||||||
|
- **Working Tree**: `/home/daddy/modbison` (or `/home/daddy/agp-game-dev`)
|
||||||
|
- **Windows Executable**: `modbison.exe`
|
||||||
|
- **Linux Executable**: `modbison.x86_64`
|
||||||
|
|
||||||
|
### Commands:
|
||||||
|
- **Run tests**:
|
||||||
|
- Backend: `PYTHONPATH=. /home/daddy/agp/venv/bin/pytest backend/tests`
|
||||||
|
- Godot UI smoke tests: `AGP_API_BASE_URL=http://127.0.0.1:28004 ~/godot/godot --headless --path . --script res://scripts/smoke_test_<name>.gd`
|
||||||
|
- **Rebuild PC4 Windows package**:
|
||||||
|
- `PYTHONPATH=. /home/daddy/agp/venv/bin/python3 -c "import pm.checkpoint_ops as ops; ops.build_exe('PC4')"`
|
||||||
@@ -1,3 +1,3 @@
|
|||||||
# agp-game
|
# ModBison
|
||||||
|
|
||||||
Agentic Game Platform - Godot game built by autonomous agents
|
ModBison (formerly agp-game) - Godot 4 multiplayer game with customizable avatars, world building, social features, and virtual economy (Buffalo Chips).
|
||||||
@@ -84,7 +84,7 @@ class GameServerSupervisor:
|
|||||||
self._servers: dict[str, _WorldServer] = {}
|
self._servers: dict[str, _WorldServer] = {}
|
||||||
self._lock = asyncio.Lock()
|
self._lock = asyncio.Lock()
|
||||||
self._reaper: asyncio.Task | None = None
|
self._reaper: asyncio.Task | None = None
|
||||||
self._runtime_dir = Path(tempfile.gettempdir()) / "agp-game-servers"
|
self._runtime_dir = Path(tempfile.gettempdir()) / "modbison-game-servers"
|
||||||
self._runtime_dir.mkdir(parents=True, exist_ok=True)
|
self._runtime_dir.mkdir(parents=True, exist_ok=True)
|
||||||
|
|
||||||
# ── lifecycle ────────────────────────────────────────────────────────
|
# ── lifecycle ────────────────────────────────────────────────────────
|
||||||
|
|||||||
+2
-2
@@ -9,7 +9,7 @@ custom_features=""
|
|||||||
export_filter="all_resources"
|
export_filter="all_resources"
|
||||||
include_filter="*.json"
|
include_filter="*.json"
|
||||||
exclude_filter=""
|
exclude_filter=""
|
||||||
export_path="export/linux/agp-game.x86_64"
|
export_path="export/linux/modbison.x86_64"
|
||||||
encryption_include_filters=""
|
encryption_include_filters=""
|
||||||
encryption_exclude_filters=""
|
encryption_exclude_filters=""
|
||||||
encrypt_pck=false
|
encrypt_pck=false
|
||||||
@@ -40,7 +40,7 @@ custom_features=""
|
|||||||
export_filter="all_resources"
|
export_filter="all_resources"
|
||||||
include_filter="*.json"
|
include_filter="*.json"
|
||||||
exclude_filter=""
|
exclude_filter=""
|
||||||
export_path="export/windows/agp-game.exe"
|
export_path="export/windows/modbison.exe"
|
||||||
encryption_include_filters=""
|
encryption_include_filters=""
|
||||||
encryption_exclude_filters=""
|
encryption_exclude_filters=""
|
||||||
encrypt_pck=false
|
encrypt_pck=false
|
||||||
|
|||||||
+3
-3
@@ -12,7 +12,7 @@
|
|||||||
# - godot on PATH (or set GODOT_BIN below)
|
# - godot on PATH (or set GODOT_BIN below)
|
||||||
#
|
#
|
||||||
# Usage: scripts/build.sh
|
# Usage: scripts/build.sh
|
||||||
# Output: export/linux/agp-game.x86_64, export/windows/agp-game.exe
|
# Output: export/linux/modbison.x86_64, export/windows/modbison.exe
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
cd "$(dirname "$0")/.."
|
cd "$(dirname "$0")/.."
|
||||||
@@ -32,10 +32,10 @@ echo "Godot version: $("$GODOT_BIN" --version)"
|
|||||||
mkdir -p export/linux export/windows
|
mkdir -p export/linux export/windows
|
||||||
|
|
||||||
echo "=== Exporting Linux/X11 ==="
|
echo "=== Exporting Linux/X11 ==="
|
||||||
"$GODOT_BIN" --headless --path . --export-release "Linux" export/linux/agp-game.x86_64
|
"$GODOT_BIN" --headless --path . --export-release "Linux" export/linux/modbison.x86_64
|
||||||
|
|
||||||
echo "=== Exporting Windows Desktop ==="
|
echo "=== Exporting Windows Desktop ==="
|
||||||
"$GODOT_BIN" --headless --path . --export-release "Windows Desktop" export/windows/agp-game.exe
|
"$GODOT_BIN" --headless --path . --export-release "Windows Desktop" export/windows/modbison.exe
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "Build artifacts:"
|
echo "Build artifacts:"
|
||||||
|
|||||||
Reference in New Issue
Block a user