A Tibia 8.60 real-map server built toward a population made mostly of autonomous players. The aim is a persistent world where bots use the same game mechanics as humans rather than a separate simulation. Bots run inside the server as database-backed Player objects: no graphical client, network connection, external bot API, renderer, or dedicated thread is required for each bot.
The development stack controls one seeded character, Bot One, a level 8 Knight in Carlin. It can choose map-derived hunting regions, navigate, fight, heal, eat, loot owned corpses, use depots, sell loot, buy supplies and equipment, bank money, learn and cast supported spells, claim supported container rewards, recover after death, and continue from persisted player state.
This is a prototype, not a simulated population. Navigation combines whole-map routing with local pathfinding and NPC travel. Unsupported transitions, search limits, and changing obstacles can still prevent a journey. Quest support is narrow, and focused gameplay tests do not establish reliable unattended progression. Multiple bots, personalities, relationships, parties, guilds, and generated population behavior are planned rather than implemented. See Playerbots for the capability and evidence boundaries.
Requirements:
- PowerShell 7+ (
pwsh) - Docker Desktop on Windows, or Docker Engine with Compose v2 on Linux
- Windows: GitHub CLI authentication when the pinned private client executable must be downloaded
- Linux: a locally built
client/otclient
From the repository root:
pwsh -File scripts/bootstrap-client.ps1
docker compose -f server/compose.yaml up --build --detach
docker compose -f server/compose.yaml logs --tail 100 --follow serverLaunch client/launch-angelion-redemption.cmd on Windows. On Linux, run (cd client && ./otclient) from a POSIX shell. The server listens only on 127.0.0.1:7171 and 127.0.0.1:7172.
| Account | Password | Characters |
|---|---|---|
admin |
admin |
GOD Admin, Rook Tester |
bot-one |
bot-one |
Bot One |
A human client cannot control Bot One while the server owns it. Local database and world state are disposable. This command deletes them:
docker compose -f server/compose.yaml down --volumes| Task | Documentation |
|---|---|
| Understand behavior and limits | Playerbots |
| Choose and run checks | Testing |
| Install or update the client runtime | Client runtime |
| Contribute changes | Contributing |
| Follow repository maintenance rules | AGENTS.md |
Current plans and temporary findings belong in GitHub issues. Configuration and code own tunable values; pull requests and Git history own implementation history.
The repository integrates Giorox Angelion TFS 1.5 downgrade branch 8.60 under server/ and OTClient Redemption branch main under client/. Both are squashed Git subtrees, not submodules. Pinned baselines are recorded in .subtree/; review and test upstream updates before merging them into master.
