All changes

Version 0.26.0

Breaks compatibility
  • The world is made again on the same seed, and new ground is made five to nine times faster: teleports and flights into unexplored land no longer freeze the server for half a minute.
  • The shape of the ground is exactly the same - every hill, cliff and cave where it was. Only where a few trees and ore veins land may differ.
  • The core of the world is generated in advance, and the generation steps aside whenever anybody is playing.
  • A bullet flying out of loaded ground no longer loads the ground in front of it; it is a miss. Gunfights between players are unchanged.
  • Several short hitches in the registry are gone: saving, the land and journal maps, and every hit in a fight between players.
The full list of changes

Making the ground

  • C2ME makes chunks on every core and compiles the terrain's functions; its compiler's built-in integrations stay off because they fail on this world's generator.
  • Every flat cache in the Dark Zone and climate generators now sits over a column cache, so the aquifer's look outside a chunk no longer recomputes the whole terrain.
  • A new built-in patch module makes the generator stop re-hashing its own tree for every chunk and share identical calculations; the terrain it produces is bit for bit the same.
  • ModernFix's world-generation map swap is switched off - it rehashed the whole generator on every resize.
  • Structure Layout Optimizer and Async Locator Refined: jigsaw structures laid with fewer tests, and structure searches off the server's main thread.

The tick

  • The registry snapshot is encoded on the server thread before it is sent, which closes a rare kick with "Failed to encode packet".
  • The registry is written to disk off the tick, and the last save still lands before the server stops.
  • The day-book keeps today and the last fourteen days in memory instead of reading them from disk on every map or journal request.
  • A hit between players checks only contracts that hold a non-aggression term.
  • Rooms past the wall are re-checked on staggered seconds instead of all at once every thirty seconds; the weight a player carries is sent only when it changes.
  • Let Me Despawn: a mob that picked something up still despawns, and drops it.