How Creatures was built

Raw game files read

Processing

Every living entity gets a page, not just ones with drops. The roster is every concrete entity variant that declares the "health" server behavior -- traders, villagers, and locusts with no drop table still show up (with an empty Drops section) rather than being silently excluded. Non-creature utility entities with no health behavior (boats, thrown projectiles, elevators, armor stands, ...) are correctly left out.

Each entity file is variant-expanded (every concrete code a variantgroups/ allowedVariants combination can produce), then: death drops and harvestable-behavior drops are read (checking both a flat drops array and a glob-keyed dropsByType map -- some entities only define the latter); stats (max health, weight, hitbox size, tags) are resolved the same glob-aware way; spawn conditions are read from server.spawnconditions/spawnconditionsByType specifically, not any top-level field. Where a drop resolves to a "box" item using the ItemStackRandomizer mechanism (e.g. the Jonas Parts&Frames Stack randomizer), the actual possible contents of that box are shown as additional drop rows, not just the opaque container.

NPC dialogue (config/dialogue/*.json) is cross-referenced onto whichever entity's conversable behavior points at that file, flattened to two facts: every line the NPC side of the conversation can say, and every item its dialogue can hand over as a reward. The underlying files are genuine branching state machines (condition/jump graphs) -- that graph structure itself isn't rendered, only the flattened lines/rewards.

Tier is the highest damageTier/projectileDamageTier found anywhere in the entity's server behaviors (its attack AI tasks), resolved for that exact variant -- e.g. drifters run 0 (surface) to 4 (nightmare). The game compares it with armor's protection tier. The Game logic (C#) table lists the entity class, every behavior code and every aitasks[].code, linked through apps/vs-wiki/src/ingest/csharpClassMap.json where vssurvivalmod implements them.

Pipeline code