• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

PyOT, reborn — a full rewrite under ArkEngine

~X~

LoA Founder
Joined
Oct 30, 2007
Messages
434
Reaction score
99
Location
USA
GitHub
VielNexus
ChatGPT Image Jul 8, 2026, 03_52_25 PM.webp

Hi there! Many on the OTA Discord and other discords have probably already heard, but I own and run Ark Studios. A little of my background first...

I'm Josh — an old forums creeper from way back in the golden 7.4 era of Tibia. I played Mu Online as my first online game, back when we still had dial-up. Along with a bunch of other games, I've been taking a crack at making my own for a while now. I've run plenty of Open Tibia servers, Mu Online servers, WoW servers, Blade Online, and a handful of others — with some luck, I should mention! I'm a middle-aged guy with ADHD and a bit of a screw-you attitude at times, but I mean nothing by it.
On the hardware side: I own a complete server system with multiple Dell blade servers and 3 ISP providers running 2.5G links up and down on each. I've got over 90 petabytes of storage along with a pile of other networking gear. I'm a heavy AI user too — I run my own local models alongside Claude and Codex/ChatGPT. Jarvis? Yeah, I've got that: Atlas, with Cosmo, Orion, and Titan. They're a team of AI models that run the way Jarvis did in the movies, just a bit more logical and realistic. Some might not believe it, but I've got 20+ years in computers — coding, hardware, networking, security, and a handful of other things.


Now onto the main reason I'm posting...

PyOT!

....................Yepa — I picked it up and worked on it alongside my AI models. (For anyone who doesn't know it, PyOT is an open-source Python Open Tibia server engine.) Some folks showed love, others thought it was a lost cause. I felt it could work — just not in the previous build. I took some time off to work on my 3D MMO, ArkenFall, and once I hit the milestones I needed for this month and last, I thought: why not give that old PyOT a breath of fresh air? So Atlas and I rewrote the whole thing.

Here's what it looks like now. Note that it falls under my privately owned and operated MMO engine, ArkEngine.

Core engine​


  • Python 3.12, fully typed (pyright strict), ~7k lines
  • asyncio + uvloop networking; fixed 20 Hz world tick; per-session batched writes
  • SQLAlchemy Core + Alembic — SQLite for dev, MySQL/Postgres by config; argon2id password hashing
  • Custom binary map format (32×32 sectors, lazy-loaded; 6M+ tiles), A* pathfinding, XTEA/RSA session crypto
  • Planned M4: Rust (PyO3) drop-ins behind the existing interfaces for the map serializer, pathfinding, tile store, and frame codec

Measured capacity​

A built-in load harness spawns hundreds of protocol-speaking bots and measures whether the 20 Hz tick keeps its 50 ms budget. The current pure-Python engine, single core, worst-case clustered density: comfortable to ~500–800 concurrent depending on how much of the world is active. A spatial spectator index keeps player broadcasts cheap when players spread out; the remaining cost is active-monster count. Rust hotpaths and world sharding target several thousand.
Real numbers, not guesses.

Where it's headed​

The short version: a modern, fully-typed, async Python OT engine that doesn't fall over under load — with Rust hotpaths landing next to push it into the thousands. It's the same engine backbone I'm building ArkenFall on, so it's going to keep getting attention rather than being another abandoned repo.

What I'm looking for​

I'd love feedback, testers, and anyone who wants to poke holes in it. If you've worked with PyOT or OT servers before and have thoughts on the architecture, the load numbers, or where the Rust drop-ins should land first, I'm all ears. If you just want to follow along, that works too.


Fire away — good, bad, or brutal. Yepa. Oh! btw below are screen shots of some stuff.... You can find more images and videos at Arkenfall 2D



rareitems.webpquickloot.webpLoyalty.webpDailyrewards.webp
 
Last edited by a moderator:
Back
Top