Game Server components - Yukariin/D3Emu GitHub Wiki

Game Server components

DRLG

Dungeon Random Level Generator. This is a server-side process for generating random dungeons. The world SNO files contain DRLG parameters. These parameters define the ruleset for generating a dungeon: how many entrances/exits must be placed, how tiles can attach to other tiles, etc. Although this process happens on the server, it appears the client also contains DRLG-specific code.

SNO

Game asset files. Groups of SNO files are organized and stored in CASC container files. SNO files each have unique integer IDs that allow SNO files to reference each other. The file format is unique to each type of SNO file, although it appears to always be a binary format.

ACD

Actor Common Data. Represents all "in-game" actors, which includes in-world actors plus inventory items, equipped items, item drops, and more.

BBE

Appears to be a compiled language, possibly for unique power/item effects.

GBID

Game Balance ID. A 32-bit integer created by hashing a string.

ACD (ActorCommonData) objects have a GBID field which can be used to resolve in-world items to GameBalance SNO structures, and determine attributes such as item type, quality, etc.

WORLD

Both an SNO file type and an in-world concept, a world contains multiple scenes, NPCs, monsters, quests, random dungeon generation parameters, and more. Each world also has a unique coordinate space, making it impossible to walk from one world into another.

SCENE

A small square of space inside a world. Each scene has a series of navmesh/navcells attached to it defining the collision geometry and walkable areas inside the scene.