Entities, Movement, Placement & Attributes
2.1 World position
struct Transform {
position: WorldCoord, // x, y, z, w, t
yaw: f32, // facing, radians or degrees 0–360° (server canonical)
pitch: f32, // optional: look up/down, climb, fly (default 0)
}
- Server authoritative — clients send intent; sim integrates position
- z from world strata (
01): surface, underwater, underground, sky
2.2 Facing vs movement direction (decided)
| Concept |
Field |
Meaning |
| Facing |
yaw |
Where the model/intent “front” points — attacks, interactions, FOV cone center |
| Movement direction |
velocity (vx, vy) or move_yaw |
Where the body is actually going |
They differ when strafing, backing up, knockback, sliding, mounted:
facing (yaw) ──►
┌───┐
│ P │──► velocity (may be 45° off while strafing)
└───┘
- Move intent:
(forward, strafe) in local space → world velocity via yaw
- Network: replicate
position, yaw, velocity (or last intent) @ tick rate in AOI (06)
- NPC behavior — controllers set
move_yaw / yaw (19 §8)
2.3 Rotation for items & objects
| Object kind |
Placement |
| Dropped item |
x,y,z + yaw (flat on ground); optional pitch for slopes |
| Placed furniture / stall |
Full yaw; snap to grid optional per item template |
| Projectiles |
yaw + pitch for trajectory |
| Corpse |
yaw at death facing |
Items use single yaw by default (degree value on instance or template default). Structures may lock rotation to 90° steps if authored — template flag rotation_snap: 90.
2.4 Omnidirectional world vs FOV
- Cartography / map reveal — 360° around character (
06) — exploration is not cone-limited
- Combat detection, stealth, “see NPC” — FOV cone from
yaw ± fov/2 (attribute)
- Hearing — sphere (radius attribute), ignores FOV unless muffled
This split avoids tunnel vision on the map while keeping tactical facing matter.
3. Movement attributes
| Attribute |
Role |
move_speed_walk |
Base m/s on foot |
move_speed_run |
Sprint; drains stamina |
move_speed_swim |
Underwater (01 strata) |
move_speed_fly |
Sky band when flight allowed |
move_speed_climb |
Vertical surfaces |
acceleration |
How fast velocity reaches target |
turn_rate |
Degrees/sec — how fast yaw catches desired facing |
encumbrance_factor |
From carry mass vs Strength — multiplies speeds |
All modifiable via buffs, terrain, zones, mounts.
Auto-nav / AI pathfinding uses the same terrain move_speed_mult for Fastest (true ETA) vs Direct (shortest walkable geometry). See 51-pathfinding-route-modes.html.
4. Primary attributes (core stats)
Six primaries plus Charisma at launch are the main inputs to derived stats and skill checks. Internal scale 1–1000; UI displays 1–100. Skills use 10 achievable tiers (configurable breakpoints).
| Attr |
Code |
Typical uses |
| Strength |
STR |
Carry mass (08), melee damage, knockback, bash, mining power |
| Dexterity |
DEX |
Ranged accuracy, dodge, lockpick, fine crafting, attack speed (light weapons) |
| Intelligence |
INT |
Spell damage, mana pool, recipe complexity, identification, magical crafting |
| Stamina |
STA |
Stamina pool size, run duration, fatigue resistance, gathering endurance |
| Vitality |
VIT |
Health pool, poison/disease resist, breath hold, resurrection penalty recovery |
| Wisdom |
WIS |
Mana regen, perception, mental resist, healing received, soul-bind success |
| Charisma |
CHA |
NPC prices, faction, stall traffic, aggro soften (10) |
5. Resource pools (secondary)
Full tick rules, hunger/thirst, damage, durability: 15-active-stats-survival-and-damage.html.
| Pool |
Regen driven by |
Depleted by |
| Health (HP) |
VIT, rest, food, sleep, magic |
Damage; starvation/dehydration |
| Stamina |
STA, rest, sleep |
Run, dodge, block, combat, overload |
| Mana (MP) |
WIS, INT, rest, meditation |
Spells, rituals |
| Hunger |
Food, food stands |
Time, run, combat, cast, biome |
| Thirst |
Drink, wells, stands |
Time, exertion, combat, biome |
| Breath |
VIT |
Underwater (01) |
6. Derived combat & perception attributes
Computed each tick from primaries + gear + modifiers; cached until dirty.
6.1 Offense
| Derived |
Typical formula driver |
attack_power |
STR + weapon |
spell_power |
INT + implement |
crit_chance |
DEX + luck |
crit_multiplier |
DEX, weapon |
hit_chance |
DEX vs target evasion |
attack_speed |
DEX, weapon weight, weapon skill (12) |
cast_haste |
INT, spell school skill (12) |
cast_mobility_bonus |
INT, WIS — mitigates spell complexity movement penalty (12) |
max_target_slots |
WIS, DEX, Targeting skill, gear — parallel combat target bindings (12) |
armor_pen |
STR, weapon |
6.2 Defense
| Derived |
Driver |
armor_physical |
Equipment |
evasion |
DEX |
block_chance |
STR, shield |
parry_chance |
DEX, weapon |
resist_* |
VIT, WIS, gear (fire, cold, lightning, poison, arcane, holy, dark, physical) |
6.3 Perception & awareness
| Derived |
Driver |
Use |
fov |
Base 90°–360°, WIS, gear |
Cone of sight for entities (not map fog) |
sight_range |
WIS, DEX, light level |
Max distance to see targets in FOV |
hearing_range |
WIS, STA |
Detect unseen entities |
stealth |
DEX, armor weight |
Reduces chance to be detected |
trap_sense |
WIS, DEX |
Interact with hidden objects |
FOV is a stat — e.g. base 120°, eagle helm +15°, blind debuff −80°. Omnidirectional cartography unchanged (06).
7. Physical & survival attributes
| Attribute |
Role |
carry_mass_max |
f(STR), modifiers (08) |
hunger / thirst |
Long-term pools; affect STA regen, eventually HP |
temperature_comfort |
Cold/heat biomes (01 zones) |
fall_safe_height |
VIT, STR |
swim_depth_rating |
STA, VIT — pressure in deep ocean |
8. Mental & social (optional depth)
| Attribute |
Role |
willpower |
CC duration resist, fear |
luck |
Loot rolls, crit margin, craft proc — hidden from players (server-only displays) |
reputation |
Per faction — not primary, but attribute-like |
morale |
Party buffs, flee threshold for NPCs |
evil |
Unjustified NPC/worker kills; prayer/jail/PvE reduce (14) |
9. Item & object attributes
Every item is a unique instance (18). Templates define schema; rolled stats live on the instance at mint.
9.1 Universal item properties
| Property |
Spec |
instance_id |
Global UUID — permanent identity (18) |
mint_source, minted_at, provenance |
Audit trail (18) |
base_mass, base_volume |
Template base; instance may vary slightly via roll |
packable, can_soul_bind, enchantable |
08, 07, 17 |
durability / max_durability |
wear — repair or permanent destroy (15 §8, 18 U6) |
rotation_yaw |
placement §2.3 |
soul_bound |
instance 07 |
quantity |
1 for equipment/meals; splittable lots for ore/coins (18 §4.2) |
9.2 Equipment combat stats (per instance)
| Stat |
Weapons / armor |
damage_min, damage_max |
Rolled at mint — two “longswords” differ (18) |
damage_type |
slash, pierce, blunt, elemental |
attack_speed |
weapon base; scaled in combat by skill (12) |
reach |
melee range_max_m base on weapon |
scaling_skill |
weapon skill id for basic attacks (12) |
armor_value |
armor |
resist_* |
armor, jewelry |
stat_bonuses |
+STR, +DEX, … (modifiers) |
fov_modifier |
helmets, masks |
move_speed_modifier |
boots, encumbrance |
9.3 Tools & stations
| Stat |
Role |
tool_tier |
Which recipes usable (09) |
tool_speed |
Craft time multiplier |
station_fuel_rate |
forge, kiln |
9.4 Consumables
| Stat |
Role |
heal_amount, mana_restore |
potions |
buff_modifiers[] |
food, elixirs — base recipe stats |
enchantments[] |
Optional — extra effects on consume (17 §10.1) |
duration |
temporary effects (base + enchant may stack) |
10. Skills (separate from primaries but linked)
Skills are trained values (0–100+) used for checks and unlocks; often gated by primary minimums. 10 tiers of mastery (display + unlock breakpoints); internal precision on 1–1000 scale.
| Category |
Examples |
| Combat |
swords, axes, bows, unarmed, blocking, targeting, evocation, restoration, … — each scales related ability attrs (12) |
| Magic |
evocation, inscription, soul-bind, enchanting (17) |
| Gathering |
mining, logging, fishing, herbalism |
| Crafting |
smelting, cooking, weaponsmith (09), essence prep (17) |
| World |
cartography (06), riding, swimming |
| Social |
trading, haggling (10) |
Skill XP modifies effective skill level; primaries may cap skill training speed.
11. Modifier interaction (recap)
All attributes, derived stats, FOV, and move speeds use the shared modifier model (08 §6):
- Spells, potions, equipment, auras, zone effects, death sickness (
07)
Modifier.target examples: attr.strength, derived.evasion, move_speed_run, fov, item.mass
Recompute derived cache on equip, buff, or primary change.
12. Server & protocol notes
- Replicate in AOI:
position, yaw, velocity, essential combat state
- Interest: entities outside
sight_range ∩ FOV may be omitted from combat awareness but region sim still runs AI globally in shard
- Placement validation: collision mesh from chunk terrain (
01); reject invalid spawn
- Item drop: find floor
z + valid yaw from dropper facing
13. the terminal client / agent
flatland status # primaries, pools, key derived
flatland attr list --json
flatland move --forward 1 --strafe 0 # local to facing
flatland face --yaw 270
flatland place item <id> --yaw 45
14. Phasing
| Phase |
Scope |
| 1 |
Position, yaw, velocity, walk speed |
| 2 |
Primaries STR/DEX/INT/STA/VIT/WIS + HP/stamina pools |
| 3 |
FOV, sight range, stealth; item yaw on drop |
| 4 |
Full combat derived; resist table |
| 5 |
Swim/fly/climb speeds per strata; breath |
16. Quick reference — attribute families
PRIMARY STR DEX INT STA VIT WIS [CHA]
POOLS HP Stamina Mana Breath
MOVEMENT walk run swim fly climb turn_rate
PERCEPTION fov sight_range hearing stealth
COMBAT attack_power spell_power crit hit evasion armor resists
PHYSICAL carry_max hunger thirst
ITEM mass volume durability damage armor stat_bonuses
SKILL (trained, linked to primaries)
Coordinates & AOI: 06. Carry mass: 08. Death penalties: 07.