Game guide · source of truth
AI process

Game development guide (read first)

Accepted battle preparation — mana-consuming instant movement priority, researched per-skill locomotion, combo/refund rules, two cameras, mannequin and animation/VFX/world gates, entry-level hardware references, boss music and the first battle slice. Runtime and balance validation remain future work.

Direction recorded 2026-10-05. Documentation preparation only; the engine systems and tests below are future work. Movement-first is accepted in ADR-027. New numeric defaults live in packages/game-data/data/development-standards.json with "proposed": true. Existing skill, rig and quality contracts retain their authority. Project tuning values are not universal AAA standards.

◆1. Experience direction and authority

Target satisfying console action on PC: Metal Gear-style movement and camera polish, and Dynasty Warriors-style crowd combat and power, within Zoen's Unity client, authoritative Rust server and mobile/browser budgets. These are experience references; console publishing and new game modes are separate decisions.

Every task must serve:

  • Agency: a ready movement skill answers immediately during an attack; an animation never traps the player.
  • Physical credibility: feet carry weight, joints bend coherently, hands retain their grip, and head/body follow the action.
  • Readability: players recognize threats, footprints and escape routes amid a crowd.
  • Impact: pose, target reaction, effect and sound agree on contact and direction.
  • Fairness: quality tier, camera and feel settings never change server outcomes.
  • World quality: terrain, landmarks, lighting, vegetation, sound and encounters form a coherent place for battle.

Authority: owner direction → ADRs → canonical data → production docs. Read this guide before character, controls, skill or world work. The one-skill gate defines done. A wiki mannequin is previz, not proof of production rig quality or server correctness.

◆2. Controls: movement skill first

Required: a valid movement gem cancels an own attack in windup, active or recovery, including signatures and finishers. Superarmour, local hitstop and cinematic poses cannot delay it. Validate cooldown, resources, death, applicable hard control and gem destination rules first. Invalid movement leaves the attack running and gives feedback. Priority does not grant invulnerability: collision, travel and immunity windows remain specific to the gem's data.

◆What AAA research supports

There is no single AAA cancel rule. A PlatinumGames-hosted interview describes Bayonetta's Dodge Offset, and explains that Blade Wolf's light attacks in Metal Gear Rising can evade-cancel while certain heavy attacks cannot. This supports explicit tested policies rather than a blanket claim about all AAA attacks. PlatinumGames: Saurian Dash interview.

Dynasty Warriors: Origins pairs offense with evasion, parries and openings from reducing Fortitude; its official page does not publish frame-by-frame cancel rules. Koei Tecmo: combat systems.

Konami documents independent movement, aiming and a direction-controlled quick dive in Metal Gear Solid V. Its sneaking guide also keeps locomotion available across stances and cover. These sources support responsive directional control; they do not publish universal attack-cancel timings. Konami: Ground Zeroes controls, Konami: MGSV sneaking.

Dynasty Warriors 9 explicitly allows movement with the bow readied, distinguishes charged attacks from flow combos, and includes attacks that move toward a target. Koei Tecmo: DW9 attacks.

Applied Zoen direction (owner accepted): continuously sampled movement, mobile aiming/buffs where compatible, brief authored commitment for planted strikes, and directed skill travel. This is our design synthesis from the references, not a claim to reproduce their unpublished frames. Valid movement gems override every own attack phase. Combo continuity after movement is accepted; its starting memory window remains subject to playtesting.

◆Priority and arbitration

PriorityCommandRequired behavior
FirstMovement gem (Mouse2 / equivalent)Cancel any own attack phase when valid. Discard offensive inputs buffered before movement so they cannot fire unexpectedly afterward.
SecondExplicit action slot (Q E Z X C)At a legal combo window, beat held Mouse1. Cannot cancel another action's windup/active; may buffer briefly.
ThirdMouse1 Smart Chain / basicExisting slot order, cooldown skipping, finisher check and basic fallback. At most one new action per legal step.
ConcurrentWASD / stick / touch directionSample continuously and apply the current skill's locomotion policy. Direction is not an attack waiting behind Mouse1.

On the same sampled update, valid movement wins over offense. Among explicit action presses, the latest deliberate press replaces the older queued action; held Mouse1 cannot overwrite it. Release, menus, focus loss, death and device switches must not leave held inputs latched. Manual input takes over Auto-Hunt through the existing command path.

Response target (proposed): visible local movement by the next presentation update after input is sampled, without waiting for the attack clip or server round trip. Measure sampling → state transition → first visible motion; record hardware/event-to-display latency separately. Cross-fades cannot conceal the response.

◆Movement resources and reuse

Every movement gem costs mana (owner, 2026-10-05). The server validates and consumes its positive cost once at accepted activation. Insufficient mana leaves the attack running, explains the failure and never stores a delayed dodge. Exact costs must be authored in canonical balance data before coding each gem; missing values are not treated as free.

GemOwner-suggested starting cooldownScope
Cairn Vault (jump)1.0 s, proposedExisting jump/traversal identity; tune distance, travel, landing and mana together.
Reed Rush (dash)0.3 s, proposedFast repeatable dash; measure sustained traversal, collision, input, mana drain and streaming.
Silk Roll (blue), Anchor Pull, Mirror Exchange, VeilstridePer-gem tuning requiredDo not copy the dash cooldown to immunity, pull, return or blink mechanics.

Cooldown is a reuse delay, not a startup delay. Begin valid movement immediately; start cooldown at accepted activation. Require a fresh press, completed previous travel and all eligibility checks; no overlapping movement, recursive movement-cancel, held-button auto-repeat or duplicate cost. Silk Roll retains only its listed evasion window; its blue classification/socket color agrees with the existing blue-gem immunity rule. The accepted legacy icon illustration is green; revise that artwork to blue during the asset-production pass without overwriting accepted originals. Test immunity uptime separately from dash responsiveness. Data: development-standards.json → input.movementReuseTargets and items.json.

Stun, sleep and knockdown block movement. Roots block displacement unless the specific gem explicitly declares a root escape. Blue color alone grants no root escape. Superarmour does not prevent the player cancelling their own attack.

◆Cancel, cost and network contract

  • Windup: no damage or attack mana charge before commit. Owner accepted a 50% attack cooldown refund as the starting policy; avoid free unlimited feints. The movement gem pays its normal cost/cooldown.
  • Active: resolved hits stand. Stop future cast-owned melee contacts, channel ticks and attached damage windows; no attack refund after commit. An already released independent projectile/field continues its defined lifetime. Cancellation must neither erase that entity nor spawn it twice.
  • Recovery: outcomes stand; no refund. Remove cancelled trails and owned future events, then blend from the actual pose into movement without snapping limbs.
  • Queues: invalid movement never fires later when cooldown expires. Action buffers use the existing proposed 150 ms starting window. A post-dodge action requires fresh input or deliberate held-chain input after movement ends. Owner accepted combo memory: start with 1.0 s after movement ends, resume at the next eligible chain step; after expiry restart the chain. Never replay interrupted hits. The duration remains a playtest target.
  • Authority: predict locally, validate on the server. Sequence IDs handle ordering/duplicates, but never allow client backdating or erasing resolved hits. Process an accepted cancel before creating new contacts for that cast in that tick. Define tie ordering in replay tests and reconcile rejected movement with logged reasons.

◆WASD during animation

Allow moving attacks where the pose supports them. A planted greatsword swing and a running buff need different rules. Unity supports masked upper-body actions over lower-body locomotion. Unity 6: Animation Layers.

Before authoring each skill, record its locomotion policy, steering window, speed curve, cancel windows and rationale in canonical data. This policy family is accepted; assigning and validating policies across the catalog is a future M2/M4 task. Canonical policy names are free, slowed, committed and skill_travel; the table uses short display labels.

PolicyUseWASD behavior
FreeSelf-buffs, toggles, compatible instant castsFull locomotion; upper-body mask; legs keep their gait.
SlowCompatible charges, channels, aimed skillsTuned fraction of speed; proposed start: charge 50%, channel/aim 40%. Test strafe and diagonal blends.
PlantWeighty planted meleeSample intent, allow contract-defined steering in windup, hold translation only through the authored contact/commit interval, resume at cancelableAfterS; never lock the entire clip by default.
TravelLunges, vaults and movement gemsValidated capsule travel; steering only where permitted; no duplicate displacement from root motion.

Shift+attack-in-place suppresses ordinary locomotion and magnet steps; an explicit movement gem still wins. WASD cancels click-to-walk. Facing/aim limits are per-skill, not an arbitrary universal fraction of windup.

◆Required control self-tests

These are future engine acceptance tests, run against authority and presentation on keyboard/mouse, gamepad and touch. Sweep cancel inputs across boundaries, not just one convenient timestamp.

IDScenarioPass when
C1Movement in early/late windupNext-update response; no contact/mana commit; defined refund once.
C2Movement at first/middle/final active contactResolved hits stand; future cast-owned hits stop; no double damage.
C3Movement in early/late recovery or hitstopImmediate escape without animation-exit dependency.
C4Cooldown boundary, insufficient mana, fresh/repeated input and movement already in flightAttack continues when invalid; feedback; no stored dodge, overlapping travel or duplicate mana charge.
C5Stun/sleep/knockdown/root/death or invalid destinationHard control blocks; only declared root escape works; correct path rules; no exploit or stuck state.
C6Mouse1 chain → movement → Mouse1; repeat after memory expiresNext legal slot inside memory, restart after expiry; no replay of cancelled contacts.
C7Explicit action and held chain on same updateValid movement wins; otherwise explicit legal action wins; one new action.
C8Action near buffer expiry/recovery boundaryFires once inside window; expired input never fires later.
C9WASD through each policyContract speed/facing/translation and correct stop on release.
C10Run/strafe diagonally while buffingCoherent gait; no skating, torso twist or speed boost.
C11Attack-in-place, click travel, WASD and gemModifier/takeover rules hold; movement gem retains priority.
C12Wall, corner, ledge, slope, water, moving obstacleSwept path valid; no tunnelling, penetration or unintended fall.
C13Projectile/field released immediately before cancelIndependent entity persists once; cast-owned effects stop.
C14Cancel → stun → death; disconnect/reconnectQueues, windows, trails and pools clean up; no ghost attack.
C15Latency, jitter, loss, duplicates, reordered packetsNo retroactive erasure/duplicate cost/hit; prediction errors logged.
C16Target dies, leaves range or is occluded mid-chainCorrect fallback; no stale-entity attack or through-wall hit.
C17Remap/focus/device/Auto-Hunt; V/R3/touch view toggle and optional lock-onNo latched input; R3 only switches views; stable target/aim, release/switch works, no hidden threats in either camera.
C18Seeded random-input soakNo illegal state, stuck action or exception; proposed 60 minutes at milestone gates.

Capture phase bars, command sequence, cast/hit IDs, resource changes and response timestamps. Use existing performance/network budgets; a browser preview is not an authority test.

◆Two camera views and optional lock-on

Owner accepted: close third person like Dynasty Warriors / Metal Gear, and a zoomed-out tactical view like Silkroad / Path of Exile. Keep the existing camera presets in controls.json; tactical remains the default. R3 switches these two views only (desktop V, touch camera control); recenter and lock-on must not share that press. Wheel/pinch can zoom between presets. Both views preserve controls, targets, telegraphs, HUD and authoritative outcomes.

Optional close-view boss/elite lock-on is accepted for the first slice: opt in, acquire/release deliberately and switch targets without losing movement freedom. Release invalid/dead/out-of-range or persistently occluded targets; never pull the capsule through an obstacle or alter damage. Choose its separate remappable binding during input UX validation. Test boss framing, off-screen threat cues, camera collision/fade, narrow spaces and rapid dodges in both views.

◆3. Standard mannequin and animation review

Establish a versioned Zoen mannequin before skill clips or production bodies. Follow the exact rig contract: named deform bones/sockets, export metres, +Y up / +Z forward, recorded rest pose and in-place clips. The gameplay capsule is independent of cosmetic height. Match hierarchy, joint pivots, bone rolls, bind matrices and socket orientation, not just names.

Use an untextured body, distinguishable left/right limbs, ground grid, joint axes, capsule, grip markers and weapon sweep overlay. Validate Humanoid mapping and deformation; no zero-weight vertices or missing body chains. AI meshes and library clips pass the same checks. Unity retargeting requires configured Humanoid Avatars; import success alone does not prove compatibility. Unity 6: Retarget Humanoid animations.

After mannequin review, repeat on every supported lineage/body profile, height extreme, grip and representative armour. Quadrupeds/nonhumanoids use family rigs; never force them onto the mannequin.

◆Physical plausibility checklist

PartSelf-check
Feet/legsClear plant, toe/heel roll and lift; no floating, sinking, sliding, knee inversion or IK snap. Check slopes, stairs, stops and pivots.
Hips/bodyWeight transfer supports the action; no unexplained pelvis jump or corkscrew. Airborne/lunge balance may leave the support area when momentum explains it.
Arms/handsCorrect elbow axis, shoulder/clavicle deformation and grip; no body/weapon penetration.
Head/neckGaze follows threat or intentional preparation; no neck flip, detached head or sudden twist on aim/cancel.
Secondary partsCape, hair, tail and antenna settle without clipping/exploding or pulling the body.
Whole motionPreparation → contact → follow-through → settle; no extra swing, hidden step, mirrored grip or unintended before/after action.

Use rig-specific swing/twist limits and reference motion, not the earlier unsourced clinical joint-angle table. Local axes, combined joints, stylization and proportions matter. Mark intentional smears and review them. Automated checks catch timing, drift and discontinuities; the agent must still inspect the full motion for natural movement.

Existing limits: contact ±1 authoring frame, planted-foot slide <2 cm, hand/weapon drift <1 cm. Measure sliding only inside marked planted intervals. New proposed ground-penetration tolerance: 1 cm. Calibrate joint-pop/intersection thresholds per rig using recorded reference poses before enforcement; never invent a passing threshold after a failure.

◆Multi-angle self-test before owner review

For every skill and transition, review full speed, slow scrub and loops. Who checks what (ADR-029): an agent reads frames and numbers, not motion. Its self-review is (1) metrics over every frame (contact frame, planted-foot slide, ground penetration, hand and weapon drift, joint limits, joint-speed spikes), (2) one contact sheet of the eight views at the four poses plus one strobe strip of the swing, and (3) crops of only the frames a metric flagged. The owner reviews the motion clips. Capture standard:

  • Eight views: front, back, left, right and four diagonals. Capture preparation, contact, follow-through and recovery end in each; add a side strip every third authoring frame. Stills do not replace continuous motion review.
  • Tactical and close cameras; left/right strafe; starts from idle/walk/run and exits to locomotion, chain skills and all movement gems. Include windup/active/recovery interruption snapshots.
  • Floor, slope and stairs with ground/capsule/weapon overlays; representative armour and body extremes.

Save pass / fail / not applicable with reason for feet, knees, hips, shoulders, elbows, hands, head, clipping and unwanted action, citing frame/time. Fix and re-render before owner signature review. Missing views/tests remain unverified.

◆4. Rich skill VFX with measured budgets

Riot's clarity guidance emphasizes matching effects to hitboxes and giving important abilities appropriate prominence. This supports Zoen's threat-first hierarchy. Riot Games: Clarity in League. Epic identifies overdraw, material cost, ticking, draw calls and bounds as major costs; particle count alone is insufficient. Apply those principles while profiling Unity. Epic: VFX Optimization Guide.

Zoen requires a complete visual sentence, not a minimum emitter count. Use cue, release, motion/footprint, impact, aftermath and status where relevant. A shader or mesh can serve multiple roles. The VFX pipeline sets technique/palette; each skill's presentation.vfx sets identity.

Skill typeRequired rolesOptional richness within budget
Basic meleeWeapon motion, material contact, clean endGlint, sparks, dust.
Chain attackAnticipation, release/motion, hit feedback, dissipationSlash/core/glow, debris, short decal.
ProjectileCast cue, clear directional body, impact, despawn/endRibbon, sparks, material splash.
AoE/controlReadable footprint, cue/release, impact, expiry; status if appliedShockwave, ground fracture, ring detail, mist.
MovementImmediate startup cue, travel/direction, landing/endAfterimages, dust, streaks; never hide landing or delay escape.
Buff/aura/healCast acknowledgment, recognizable status, expiryGentle glyph, localized glow/pulse; no false hostile warning.
Signature/finisherApplicable roles above with distinct anticipation/contact/aftermathLight/debris/screen treatments scaled to importance and accessibility.

Timing: cue announces commitment, release follows motion, impact aligns with authoritative contact, aftermath fades without popping. Cancelled casts stop owned cues/trails/future bursts; released independent entities keep their effects. Misses never produce confirmed hit flashes, sounds or damage numbers. Online, the strict and the predicted-contact impact modes are both built and judged at G2 (ADR-031).

Look: dominant silhouette/arc, focal point, controlled palette, bright/dark contrast and material response. Differentiate friendly/hostile with shape/pattern as well as color. Bloom, fog, smoke and distortion cannot erase danger boundaries.

◆Project starting caps, not industry standards

Existing Zoen planning caps from the VFX pipeline, subject to reference-device feasibility profiling. These are maxima, not a target to fill. Performance and crowd totals also apply.

Per effectLowMidHigh
Chain live particles3080200
Signature live particles120350900
Emitters246
Draw calls3610
Full-screen-equivalent overdraw0.51.01.5

Web uses compatible Low/Mid effects; native High/Ultra may add GPU/screen treatments. Ultra's presentation multiplier never overrides frame-wide caps. Keep identity, footprints, threat timing and party utility on Low. Reduce distant/other player decoration first; never cull boss/monster telegraphs.

Self-review Low/High side by side, normal speed, grayscale, reduced flashes and supported color-blind palettes. Test close camera, bright/dark terrain, and the 100-dummy field plus a boss telegraph. Log CPU/GPU cost, overdraw, draw calls, particles, allocations and pool return after the existing 1,000-cast leak test. All required beats/readability/cleanup must pass; extra layers cannot compensate for a failed footprint.

◆5. Map generation and environment direction

Guerrilla's Horizon Zero Dawn presentation covers artist-directed procedural placement of vegetation, sound, effects, wildlife and gameplay. That supports a comprehensive pipeline; Zoen need not copy its GPU algorithms. Guerrilla: GPU-Based Procedural Placement.

Follow the 11-stage environment pipeline. Generate from world.json, versioned seed and generator version; layer authored landmarks/encounters. Identical complete inputs produce identical hashes. Preserve authored overrides on regeneration; share collision/walkability with the server.

◆Area brief before generation

Record biome/story purpose, ground palette, skyline/landmark, roads/waypoints, sightlines, encounter spaces, safe approaches, escape routes, verticality, lighting/fog, material sounds, vegetation/wind, wildlife, ambient accents, streaming boundaries, asset/texture/instance budgets and captures. Deepen existing Amber Basin identities rather than generating unrelated biomes.

LayerRequired direction and acceptance
Terrain/navigationConnected roads, slopes, bridges, banks, water and ledges; no seams, holes, floating props or unreachable spawns. Test movement gems as well as walking.
Battle spacesRoom for the largest planned attack footprint, dodge landing and reactions; approaches/escape routes. Proposed camp slope cap 15° is a heuristic, validated per encounter.
Cover/occlusionGrass, fog, props and transparency cannot mask warnings; camera collision/fades work in corners/narrow passages.
CompositionRecognizable hero landmark and supporting interests; existing 30–60 s quiet travel rhythm; sightlines orient players in both cameras.
Materials/lightConsistent scale, texel density, roughness and contact; sun/IBL, fog/grade and silhouettes. Test salt glare, ash, dusk and reflections with telegraphs.
Vegetation/lifeBiome-specific clustered scatter, wind, birds/insects, caravans and accents; road/spawn clearance, collision, pooling/LOD and platform caps.
AudioMaterial footsteps, distant landmarks, local emitters and quiet accents. ADR-026: town/GM music and engaged boss themes; ordinary outdoors uses environment sound.
StreamingPrefetch by movement/camera; collision ready before entry; stable seams; no missing ground after dash/mount/teleport. Test maximum permitted travel speed.

"All out" means each layer has authored intent and a tested budget. Require bot road/spawn walks, deterministic hashes, movement/camera obstruction checks, the existing 12 story views, fly-through and streaming metrics. Review a representative camp per biome on Low/High before mass dressing. Gameplay hazards, destruction and weather remain proposals until designed.

◆6. Accepted battle foundations

The owner accepted the foundations below and a small optional KO/combo display for the first battle slice. Acceptance sets direction; implementation, per-encounter values and gameplay verification remain future work.

PriorityAccepted workRequired proof
FoundationCombat timeline debugger/replay captureInputs, phases, cancels, hits, reactions, effects and reconciliation on one reproducible timeline.
FoundationStarts/stops/pivots/strafe, foot IK, pose-aware blendsConvincing movement through every attack/cancel transition.
FoundationCamera collision, optional close-view lock-on/switching, off-screen cuesPlayer/escape routes visible in both views; no forced rotation or unavoidable unseen hit.
FoundationServer-owned enemy engagement coordinatorAttack tokens by role, difficulty, encounter and visibility; crowds reposition/flank/telegraph/support instead of standing inert. No universal attacker cap; release tokens on completion/interruption/death/leave.
FoundationEnemy roles and boss punish windowsGrunts/flankers/ranged/elites create decisions; signalled openings and validated escapes.
FoundationAccessibility and training arenaRemapping, hold/toggle, shake/flash/haptics controls, clear cues and safe chain/cancel practice.
First sliceCombo memory after movementNext-slot continuity inside the proposed window, reset after expiry; no duplicate damage or hidden queue.
First sliceCrowd reactions and reaction LODPowerful nearby hits; cheaper distant animation preserves deaths, cues and gameplay.
First sliceTelemetry and structured playtestsMeasure response, accidental casts, dodge failures, time-to-kill and target loss; record why failures felt fair.
First sliceOptional cosmetic encounter KO/combo displayLightweight legible feedback; toggleable; no new reward/damage/leaderboard mechanic or screen clutter.
DeferredPerfect-dodge rewards, hit-confirm cancels, gameplay hazards and destructionSeparate design and validation after the movement/battle foundation succeeds.

Special boss music is allowed (ADR-026 amendment). Named engaged boss encounters may have their own theme; outside an encounter the area returns to its quiet bed/emitters/accents. The audio pipeline defines state transitions and warning ducking. Boss themes are production briefs, not generated or listening-approved assets.

◆7. Work order and evidence gates

This guide prepares development; it does not start M0 or complete engine milestones. Keep toolchain/feasibility work first; the roadmap adds M2 preparation gates:

  1. G0 — Contract readiness: rig version, phases/cost/cancel rules, locomotion/steering, VFX roles and area brief recorded.
  2. G1 — Movement foundation: mannequin deformation and movement cancels pass; C1–C18, collision/prediction verified before expanding skills.
  3. G2 — One polished skill: Horizon Cleave passes animation views/transitions, VFX/audio/reactions, budgets and replay invariants on mannequin/representative bodies. Owner reviews the whole experience.
  4. G3 — Battle slice: small chain, all movement gems, grunt/elite/representative placeholder boss and one camp; all input devices, both cameras, Low/High and reference-device performance reviewed.
  5. G4 — Scale content: only then expand skills/bodies/areas, each with its own production gate.

Accepted companions (owner, 2026-10-06, ADR-028 to ADR-030): the AAA detail catalog lists the small hit-feel, camera, effect, sound, world and optimisation details with the stage each is due, and Speed and token efficiency holds the token rules and tools/ctx.mjs context packs.

Before implementation, task cards identify contracts, assumptions, acceptance tests, platforms and evidence paths. Save captures, measurements and the checklist in logs/evidence/<task>/. Automated checks and agent self-review precede owner review. Failed requirements block that item; missing platform tests stay unverified. Pipeline example commands are planned tools unless the executables exist.

◆Test platforms

Owner direction (2026-10-11, ADR-032): every client milestone is tested on Web (Chrome on the Mac and on the phone), the Android APK (the owner's nubia phone) and Windows (a Mono x86_64 player built on this Mac; the owner runs it on his Windows PC with the WIN-01 smoke kit and returns the results). macOS and iOS are paused: not built or tested in milestone work; their code stays, unmaintained. Feel and keyboard/mouse review: Chrome on the Mac (Low–Mid) and the Windows PC (High); touch on the phone; gamepad stays unverified until one is connected. The release targets are unchanged (ADR-024).

◆8. Low-end baseline and validation

Owner direction: use contemporary entry-level hardware as the development floor, checked 2026-10-05. Selected references are Galaxy A07 4G / Helio G99 / 4 GB, iPhone SE (2020) / A13, and Intel N150 / integrated graphics / 8 GB / Windows 11. This is a practical cross-platform baseline choice, not the slowest device on the market or a published minimum requirement. Manufacturer sources, exact configurations and pending probe evidence are in reference-devices.json and Performance: reference hardware.

Prove the existing Low 30 fps frame/memory targets in both views on physical units, native and supported browsers. Use the sustained camp/crowd/boss session, rapid mana-limited dash/jump paths and thermal/streaming checks. Record exact SKU/OS/driver/API and p50/p95/p99 timings; average FPS alone does not prove smooth response. The owner's Windows PC (High; unprobed until WIN-01) and the M3 Mac (Chrome, the editor) are secondary development references. Physical measurements are pending; wiki/browser tests do not verify game support.

◆9. Player settings and world state

Owner direction (2026-10-06, ADR-028): a feel default is a choice, so it is a setting. Camera shake defaults to 70%.

  • A setting changes presentation only: never a server outcome, a hit shape, a timing or a telegraph.
  • Defaults live in data. controls.json → settings is the options list and feel-quality.json → settings holds the feel sliders. Where both name a setting the defaults must match (a data test checks camera shake).
  • Decided defaults: camera shake 70% (the close view uses 60% of the value), other players' damage numbers off, and no blood (no setting). New: Reduce camera motion, off by default. Every other default is in the data.
  • Every setting applies live and is reachable in the GM arena, next to the time and weather buttons.

◆Time of day and weather

Owner direction (2026-10-06, ADR-030): in from day one, with a toggle in the GM arena. Contract and starting values: time-weather.json.

  • Look and sound only. The server owns the clock and each area's weather, so a channel shares one sky.
  • Build it into the first client scene (M0-12). Author and capture every area, character and effect across the review matrix (day, night, a hazy dusk, the area's heaviest weather), not in one lighting state.
  • Telegraphs, ground previews and nameplates must pass the contrast check in every state on Low. Weather may shorten the view of decoration, never of a threat.
  • Weather particles and layers live inside the existing tier totals. Low keeps every state through grade, fog and sky.

◆10. Decisions and next steps

  • Owner decisions 2026-10-06: the AAA detail catalog is the polish standard (ADR-028); token rules, agent self-review and the order of work (ADR-029); day/night and weather from day one (ADR-030).

  • Owner decisions 2026-10-07 (ADR-031): both impact modes are built and judged at a simulated 80 ms round trip; voices are non-verbal; catalog round 2 is accepted. The agents make the action AAA; the owner gives feedback later.

  • Owner decision 2026-10-11 (ADR-032): test on Web, Android and Windows; macOS and iOS are paused (Test platforms).

  • Owner direction: wiki preparation; mannequin first; multi-angle self-review; movement priority through every attack phase; mana-consuming movement, low jump/dash reuse targets, CC eligibility, combo/refund rules, per-skill WASD, both cameras/optional lock-on, enemy coordination and the first-slice foundations; blue Silk Roll; Low baseline and boss music.

  • Proposed tuning: combo memory, moving-cast speeds, response target, capture sampling, ground penetration, soak duration and camp slope. Record tuning evidence in the standards data; these are not industry norms.

  • Before each skill is coded: choose locomotion/steering and damage-entity ownership; extend its contract/tests. Do not bulk-edit 144 skills by guessing movement behavior from names.

  • Deferred: perfect-dodge rewards, hit-confirm cancels, hazards and destruction. Console releases and new modes need separate scope decisions. Per-gem mana/cooldown/travel and per-skill locomotion are authoring/balance tasks, not permission to guess final values; mark starting values proposed and validate them.

  • Next after toolchain readiness: follow M2 preparation tasks in roadmap.json and the skill gate. This documentation task does not execute game runtime, production animation or VFX acceptance tests.

Research checked 2026-10-05. Sources support the specific practices beside their links; Zoen's policies/tuning are explicit design choices. Riot's legacy VFX Style Guide URL redirects, so the accessible Clarity in League article is used.

Source: zoen/docs/process/GAME_DEV_GUIDE.md · 4,892 words · edit the Markdown, not this page.