Dev Log

Notes from the engine room — the unglamorous work of running 8.6 on a modern stack. Lua 5.4, MySQL, a 91 MB map, and whatever broke this week.

Bringing the Annihilator back to 8.6

When the 8.6 downgrade datapack arrives, the map is usually the least finished part. Our fork of MillhioreBT's TFS 1.x downgrade shipped with a real map but a lot of the world in the wrong state — spawns missing, houses in odd places, and a few rooms that simply didn't exist anymore. The Annihilator room was one of them: the quest chain referenced it, but the room itself had to be rebuilt tile by tile and patched back into the map.

The first surprise was smaller and more annoying. The bundled items.otb had server-side IDs that didn't match the client's items.xml pairing — every temple floor in the world rendered as a trapdoor until we swapped in a client-id paired set. That's the kind of thing that makes an "engine-only" 8.6 base not quite download-and-run, no matter what the README implies.

From there it was a lot of small, careful work: spawn placement verified against the 8.6 spawn data, houses patched back in (978 of them), and the quest geography checked so that chains like Annihilator and Pits of Inferno actually play out correctly. All map edits go through a scripted patch tool with a verify-and-rollback step — nothing hand-edits the OTBM directly, because one bad byte in a 91 MB map is a weekend of debugging.

The quest log works in the 8.60 client, which is more than the base datapack gave us. Annihilator is done. Demon Oak and Queen of the Banshees are next in line, then the long chains — Inquisition and Wrath of the Emperor. The goal is simple: the 8.6 world as it was, with nothing missing that a 2010 player would remember.

← Back to home

Information
Status● Online
Players0
Record7
Exp Rate7× staged
PvPOpen
MapReal 8.6
Servergo.infernian.com
Port7171
Version8.60
An unhandled error has occurred. Reload

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.