pipelines/PIPE_ANIMATION_2026-07-29.md
Status: RESEARCH DOSSIER, web-verified 2026-07-29. Every model claim below carries a source URL and a
named licence, or is marked UNVERIFIED-EXCLUDED. Nothing here is repo canon until the director lands it.
The two search-AI leads in the brief (ARDY, Kimodo) are BOTH CONFIRMED REAL — see §1. Neither
appears anywhere in docs/ today (grep -rn -i "ardy\|kimodo\|text-to-motion" docs/ = 0 hits outside
unrelated words), so this lane is net-new to the corpus.
**SUPERSEDED IN PART — 2026-08-05, the anatomy law. Josh ruled (verbatim): "Humans must be
shaped like humans, bodies must move like actual bodies, animals and creatures and insects and
everything anatomically correct and everything have joints and movement ranges etc its not all
just one block or shape."** This dossier researches HOW motion is produced — text-to-motion,
video-to-mocap, retarget, runtime — and never once states what a body IS. That omission is
now closed, and the closure BINDS this lane: every solver, retarget and generated clip answers to
build/3d/schema/anatomy_reference/, which is law for this lane in the same wayPIPE_3D
is law for the mesh lane.
- The reference table, rendered from harness/asset_factory/anatomy_data.py: seven census
body plans plus HUMANOID, 18 sub-plans, 70 joints with ROM ranges, each either a published
measurement, a limit that follows from morphology with the citation saying why, or the word
UNMEASURED with a reason. 50 sources, 6 declared gaps, no invented numbers. The sign convention
is stated per joint, because veterinary goniometry measures the angle between segments while
flight and gait kinematics measure excursion about neutral, and this dossier's retarget section
assumes one convention without naming it.
- What this changes for the retarget row. "UE IK Rig + IK Retargeter" is ADOPTED here on
licence and scriptability alone. It is now additionally constrained: a retarget chain whose
target skeleton disagrees with the target archetype's roster, segment count or per-joint ROM is
a FINDING, not a style choice. The avian hindlimb is the standing example — the visible
backward-bending joint is the ANKLE, the knee is inside the body wall, and a humanoid-to-bird
retarget that maps knee-to-knee produces a bird that walks like nothing alive.
- What this changes for the text-to-motion rows. Kimodo and ARDY are trained on HUMAN mocap
and emit human-shaped motion. That is fine for HUMANOID and useless for the other seven plans,
which is not a defect in the models but a scope statement this dossier never made. The
archetype solvers own everything non-human, and the reference table is their specification.
- THE TOOTH: harness/asset_factory/check_anatomy_conformance.py, wired into
verify_landed.py as T7, mutation-proven in both directions on every invocation (16
fixtures). Its must-fire fixture is this project's own historical defect — the CR_0002
previz rig that shipped eleven vertebral joints in a coiled 150x148x40 cm python, because
chain_along() slices along the longest horizontal axis and slicing X across a spiral averages
both arms of every turn. The reference's LIMBLESS minimum of 22 is DERIVED and not chosen: a
1.5-turn coiled bind pose needs 540 degrees of cumulative lateral curvature and the measured
per-joint ceiling at the zygosphene-zygantrum joint is 25 degrees.
- Armed against the live engine, via build/3d/schema/creature_archetype_map.json: it names
SK_CR_0001's absent tail chain and SK_CR_0002's surviving rod, both carried as a RATCHETED
backlog in build/3d/schema/anatomy_conformance_baseline.json where an unwaived finding fails
and a waiver matching nothing also fails.
Nothing in the stack table below is retracted. What is superseded is the dossier's SILENCE on
anatomy: motion production was fully specified and motion CORRECTNESS was not specified at all.
The open text-to-motion literature (MDM, MoMask, MotionGPT, T2M-GPT) trains on HumanML3D, which is
rebuilt from AMASS and cannot be redistributed, and represents bodies as SMPL/SMPL-X — whose model
licence is *"available under a Software Copyright License for non-commercial scientific research purposes"*
with commercial use requiring a Meshcapade licence
(https://smpl-x.is.tue.mpg.de/modellicense.html · https://github.com/EricGuo5513/HumanML3D). **That entire
class is EXCLUDED from any shipped-asset path.** What changed in 2026 is that NVIDIA trained on
commercially licensed studio mocap ("Bones Rigplay 1", 630-700 h, production optical capture with text
labels) and shipped the weights under a commercial-permitting licence. That is the only reason a local
text-to-motion lane is legally viable for a shipping game at all.
| Job | PRIMARY | Licence (code / weights) | Fallback | Verdict |
|---|---|---|---|---|
| Text→motion, offline bulk | NVIDIA Kimodo (nv-tlabs/kimodo, v1.1 2026-04-10) | Apache-2.0 / NVIDIA Open Model License (SOMA + G1 ckpts); NVIDIA R&D Model License on Kimodo-SMPLX-RP-v1 | Rokoko Create Text-to-Motion (cloud) | ADOPT — SOMA checkpoints only |
| Text→motion, interactive/streaming | NVIDIA ARDY (nv-tlabs/ardy, SIGGRAPH 2026, ckpts 2026-07-10) | Apache-2.0 / NVIDIA Open Model Agreement, card states *"ready for commercial or non-commercial use"*, intended use names *"game animations"* | Kimodo | EVAL ONLY (see the Llama rider) |
| Video→mocap | none open | — | Rokoko Vision / Move.ai / DeepMotion (cloud, paid, commercial rights) | open class EXCLUDED |
| Retarget | UE IK Rig + IK Retargeter + Control Rig (Python-scriptable) | UE EULA | Blender + Auto-Rig Pro | ADOPT — already VERIFIED in repo |
| Locomotion runtime | UE Motion Matching + Game Animation Sample (500+ anims) | *"UE-Only Content"* — usable only with UE-based products | — | ADOPT; flag against the engine-reuse goal |
| Hand-tuned craft accelerator | Cascadeur 2026.1 (AutoPhysics · AutoPosing · Root Motion · AI in-between) | Indie $19/mo or $96/yr under $100k/yr; annual converts to perpetual after 1 yr; FBX/Collada/USD; UE5 Live Link | Blender only | ADOPT — the one paid seat |
| Bulk baseline library | Mixamo (free, Adobe) | *"no licensing or royalty fees, for unlimited commercial or non commercial use"*; no redistribution as asset packs | Fab / ActorCore | ADOPT as a corpus, never as a dependency (unmaintained; multi-day outage June 2025) |
Sources — https://github.com/nv-tlabs/kimodo · https://research.nvidia.com/labs/sil/projects/kimodo/ ·
https://github.com/nv-tlabs/ardy · https://huggingface.co/nvidia/ARDY-Core-RP-20FPS-Horizon40 ·
https://research.nvidia.com/labs/sil/projects/ardy/ · https://arxiv.org/abs/2607.08741 ·
https://www.nvidia.com/en-us/agreements/enterprise-software/nvidia-open-model-license ·
https://dev.epicgames.com/documentation/en-us/unreal-engine/game-animation-sample-project-in-unreal-engine ·
https://www.cgchannel.com/2026/04/nekki-releases-cascadeur-2026-1/ ·
https://helpx.adobe.com/creative-cloud/faq/mixamo-faq.html · https://www.rokoko.com/pricing ·
https://github.com/zju3dv/GVHMR (research/non-commercial) · https://github.com/yufu-wang/tram
joint pos/rot · 2D waypoints · dense 2D paths · end-effector constraints. Output NPZ (joint positions,
rotation matrices, foot contacts, root trajectory); AMASS-NPZ for SMPL-X; MuJoCo qpos CSV for G1.
No BVH or FBX export in-repo. VRAM ~17 GB full-GPU, <3 GB with TEXT_ENCODER_DEVICE=cpu.
*"developed on Linux, though Windows should work especially if using Docker."* Tested 3090/4090/A100.
(posed_joints world-space + local/global rotations + root + foot contacts). Ubuntu 22.04 / RTX 4090 /
driver 575 / Py 3.11 / PyTorch ≥2.4; CMake ≥3.15 + C++17 extensions. **THE RIDER: the text encoder is
meta-llama/Meta-Llama-3-8B-Instruct — an HF-GATED model under Meta's Llama 3 Community License, ~14 GB
bf16.** The repo's own standing posture (Q3 §3.2, quoted in runbook 5.3) is that Llama's 700M-MAU +
attribution + policy-propagation overhead means *"no longer any reason to reach for them."* Recommend
Kimodo primary so the question stays moot for the shipped path.
lewdineer/Kimodo_Blender_Bridge (Blender 4.0+/4.4/5.1, runs Kimodo **fullylocal** via a persistent subprocess, fuzzy bone auto-match, per-bone retarget mode, bakes keys at 30 fps,
needs 8+ GB VRAM): licence UNREAD → UNVERIFIED, do not depend on it. A "Kimodo Importer" UE Editor
plugin is listed on Fab (imports Kimodo BVH, ships UE5 retarget assets) — the listing exists but Fab
returned HTTP 403 to fetch, so price and terms are UNVERIFIED-EXCLUDED.
josephkirk/UE_BVHImporter handles Y-up→Z-up on 5.6). **UAF (Unreal Animation Framework) is EXPERIMENTAL
in 5.8 per Epic's own GASP tech blog — build nothing load-bearing on it this cycle. ML Deformer** ships
a sample + docs but Epic states no 5.8 production-ready status → post-slice.
Environment lane (D-1 input). This lane needs none of what forces WSL2: no nvdiffrast, no
Linux-only CUDA extension chain, no ComfyUI. It is PyTorch + CUDA + a HF text encoder. **Recommendation:
native-Windows per-lane venvs, Python 3.11, PyTorch cu128 wheels** (matching the ruled 12.8 pin; wheel
availability is a day-one verify, not an assumption). The one Windows risk is ARDY's CMake/C++17 extension
build — MSVC Build Tools land in Stage 3 anyway; if it fights, Kimodo's own README sanctions Docker.
This lane must NOT be folded into the ComfyUI install (Stage 6b) — that is the image lane.
Disk placement, per the RULED layout. Gen4 D: — venvs D:\ai\anim\{kimodo,ardy}, repos, and all HF
weights (already redirected by HF_HOME/HUGGINGFACE_HUB_CACHE at runbook 1.5, no new mechanism). Gen5 C:
— only the UE project side (imported .uasset AnimSequences/Montages, DDC). 8TB E: — E:\anim_gen\ for
raw NPZ/BVH/FBX generation archive (bulky, regenerable, archival: exactly the drive's ruled role).
Install ORDER (each step gated on the previous): (1) venv + PyTorch cu128 → `python -c "import torch;
print(torch.cuda.is_available())"; (2) pip install -e` Kimodo, pull SOMA checkpoints only, generate one
clip → NPZ on disk; (3) write Tools/npz_to_bvh.py (§3) and prove one BVH; (4) Blender headless bake →
FBX; (5) UE import + IK Retargeter to Manny → one AnimSequence plays; (6) *only then* ARDY, as an eval
lane; (7) Cascadeur + Mixamo batch, last.
Thursday-night download list (sizes marked UNVERIFIED are honest unknowns to record on the night):
| Item | GB | Note |
|---|---|---|
| PyTorch cu128 + CUDA runtime wheels | ~3 | per venv; pip cache already on D: |
Kimodo repo + SOMA ckpts (Kimodo-SOMA-RP-v1.1, -SEED-v1.1) | UNVERIFIED (budget 3-6) | README publishes no sizes |
ARDY repo + ARDY-Core-RP-20FPS-Horizon40/8 | ~1.5 | 326 M params ×2 variants |
meta-llama/Meta-Llama-3-8B-Instruct (ARDY only) | ~16 | GATED — needs Josh's HF acceptance (§5) |
| Blender 5.x | ~0.4 | headless FBX bake host |
| Cascadeur 2026.1 | ~1.5 | UNVERIFIED size |
| UE Game Animation Sample (Fab) | UNVERIFIED (budget 4-8) | 500+ anims, UE-Only Content |
| Mixamo starter batch | 0.05-0.2 | hand-picked, per batch |
Do NOT download: Kimodo-SMPLX-RP-v1 (R&D licence), any SMPL/SMPL-X body model, GVHMR/WHAM/TRAM
checkpoints. Licence-read-before-first-GPU-hour is satisfied by §1 for everything on the list.
The honest gap first: animation is NOT one of DR-2's eleven asset classes. ASSET_DROPIN_CONTRACT.md
§2's table has no animation/montage row, and the lens wave already found the matching engine hole — PC-5:
FHumanityAttackRow carries WindupSeconds/ActiveSeconds/RecoverySeconds as bare floats with **no
montage or notify field, and Source/Humanity greps to 6 montage/AnimBP hits in 2 files**, all the one
stock ABP_Unarmed bind (HumanityCharacter.cpp:138-150). So the contract work is:
Animation / montage | canon id = ability/attack ability_id **+ presentation_tier_ref** | placeholder = the stock ABP_Unarmed bind | drop path
/Game/Animations/<class>/AM_<ability_id> | path takeover | tooth = the PC-5 notify-vs-row check.
presentation_tier_ref), fallback walking DOWN to the nearest authored tier— §7's ruled shape, reused verbatim, no new machinery.
asset_licence_ref on the assetgen block, landing at Batch 0 in the same commit as generation_tier / decay_bearing / presentation_tier_ref (one baseline re-emit). It records the
generating model + checkpoint name + licence per asset. This is the licence law made mechanical: an
R&D-licensed checkpoint that ever touches a shipped asset becomes a query, not an archaeology dig.
generation_prompt_hash covers prompt text + seed + checkpoint name + skeleton + retarget profile, so a checkpoint bump sets regeneration_required through the existing trigger (§6.3's mechanism).
E:) → BVH via our own Tools/npz_to_bvh.py → FBX (Blender headlessbake) → UE AnimSequence via IK Retargeter → AnimMontage with notifies. Write the exporter ourselves:
the NPZ already carries a fixed joint hierarchy + local rotations + root translation, which is BVH's
data model. ~1 file, licence-clean, deterministic, and ENGINE-class under the reuse directive — game
#2 inherits it. It also removes the dependency on both unverified third-party bridges.
montage is retimed to it.** Without it, a generated 1.4 s windup silently rewrites a 0.9 s canon row, 200
times. The tooth: optional montage_ref + notify_windup/active/recovery on FHumanityAttackRow, and a
QT-5 check that FAILS when a bound montage's notifies differ from its row beyond a declared tolerance —
ships now as a must-not-fire fixture with zero montages bound, arms itself the day the first one lands.
Significance Manager (ENGINE_OPTIMIZATION_DOCTRINE §5.3 C3, the 3.0 ms animation row's enforcement), and
realm-class assets inherit region budgets as their FLOOR until benchmark day.
under the standing visual-verification directive — **no animation quality claim ships without a capture
behind it.**
Dispatch. The director never hand-types a worklist. A script emits rows where
generation_status='pending' on animation-bearing ids, joins the prompt fields, and writes a batch manifest;
the lane consumes it and writes back through the T0.13 cross-repo manifest (game repo stays read-only against
canon; fidelity baseline refreshed in the same commit).
Unattended (overnight, the lane's real value). Bulk **traversal / locomotion / idle / ambient-NPC /
persona-behaviour** motion — high volume, low canon risk, exactly what a persona-per-entity world needs and
what nobody will ever hand-key. Generate → BVH → FBX → import → capture. This is the lane that makes
"every entity has a detailed persona" affordable in motion as well as text.
Attended, always. (a) Anything on a care-gated id — §17.1 item 4's reference-built guard applies
directly here: a living-tradition ceremonial or ritual movement is a care surface, and a text prompt is
exactly the wrong instrument. (b) Any hero beat. (c) Any key in the 248/372 presentation ladder.
Promote/demote. A checkpoint is PROMOTED to unattended on its class after N consecutive capture-critic
passes (never one green run — the standing frame-claim rule). DEMOTED on any care flag or any QT-5 notify
failure. Because asset_licence_ref records checkpoint-per-asset, a demotion has a computable blast radius.
Scheduling class + budget. Kimodo in CPU-text-encoder mode (<3 GB VRAM) = ALWAYS-ON-CAPABLE — it
co-resides with a 12-20 GB UE renderer inside the 32 GB card, bought with slower text encoding. That is the
honest concurrency win and it should be the default. **Kimodo full-GPU (~17 GB) and ARDY (~14 GB encoder) =
WINDOWED / OVERNIGHT ONLY** — serialized per Stage 5's law, since a resident heavy lane plus a real renderer
does not fit and an OOM there would be a *false* hardware-upgrade trigger. RAM: trivial against 128 GB;
Blender bake + FBX export are CPU-bound and belong in the same overnight window.
1. HF gated-model acceptance for meta-llama/Meta-Llama-3-8B-Instruct (his account, his licence
acceptance) — needed only if ARDY is adopted. Recommendation: Kimodo primary → this becomes optional.
2. One ruling, briefed not bare: does the Llama-3-8B encoder dependency clear the repo's standing
anti-Llama posture? Recommendation — Kimodo primary, ARDY eval-only, which retires the question.
3. One paid seat if the craft tier is adopted: Cascadeur Indie $96/yr (converts to perpetual after
one year). Optional second: Rokoko Studio for cloud fallback ($120/yr text-to-motion tier).
4. Fab download of the Game Animation Sample (his Epic account). Skip the Fab "Kimodo Importer" — we
write the exporter.
5. Nothing else. No credential, no payment, no account is needed for the Kimodo primary path.
1. Is Kimodo's text encoder also a gated Llama? The 17 GB → <3 GB delta is ~14 GB, which is exactly an
8B bf16 — strongly suggestive, unconfirmed. Measure both modes; record the CPU-encoder latency tax.
2. Windows-native vs Docker for each repo — do the CMake/C++17 extensions build under MSVC?
3. The register question that decides the lane's ceiling: does Bones-Rigplay-trained output produce
anything usable for *stylized combat* motion, or only grounded human locomotion/gesture? A/B against a
Mixamo baseline and a Cascadeur hand-block, judged by capture critics.
4. SOMA 77-joint → UE5 Manny retarget fidelity through IK Retargeter: foot sliding, root-motion accuracy,
finger channels, and whether 30 fps bake survives the 60 fps target.
5. Round-trip minutes per clip (prompt → playable AnimSequence). This single number decides overnight-bulk
vs interactive.
6. Constraint precision: can ARDY/Kimodo's keyframe + end-effector constraints hit an *authored telegraph
pose at frame N*? If yes — and only if yes — generation can touch the presentation ladder as a first-pass;
if no, the ladder stays 100% hand craft and the lane's honest scope is the ambient/traversal library.
7. Peak VRAM co-residency with a live UE editor session (the 32 GB law), measured, not estimated.
8. Can generated clips be ingested into Motion Matching pose-search databases — the difference between a
clip library and a real traversal system.
Generation CAN honestly supply: the ambient/traversal/idle/persona motion library at volume; cinematic
participant body performance (the retarget_participants.py hole PIPELINE_READINESS_ROADMAP line 80 and
BUILD_PLAN_END_TO_END line 725 both name, which those docs assume must be *purchased* — this lane
partially closes it with commercially-licensed local generation); first-pass blocking and reference for hero
beats; and constraint-guided in-betweens between authored key poses (Cascadeur's 2026.1 lane).
Generation CANNOT supply, and this stays hand-tuned UE craft: the 248 live / 372 clamp presentation
ladder keys. Those are timing-critical, notify-bound, element-signature, per-mastery-tier *polish deltas* on
an authored base — and the ruling is explicit that *"parametric interpolation is permitted only INSIDE an
authored tier's polish pass, never instead of one."* A text prompt cannot author a tier variant, and any
plan that claims otherwise is over-promising into a Josh-ruled requirement. The lane's contribution to the
ladder is upstream: a real base motion + a real timing to start hand-authoring from, instead of nothing.
APPEND-ONLY addendum, added under the pipe-dossiers-bind law after Josh's 2026-08-05 question "what about
their pipelines?" — the comparator program had studied the teachers' OUTCOMES and never their PRODUCTION
METHODS. Scope of this addendum: how Capcom authors a monster's moveset, how the combat-feel teams
(Santa Monica, id, 343) iterate and validate feel. The ability-VFX half of the same research lands on
PIPE_ART_2026-07-29.md §7; the creature asset/rig infrastructure half on PIPE_3D_2026-07-29.md §7.
Sources are public trade press, developer blogs and conference coverage; **every claim carries its URL, and
the four GDC Vault videos behind these talks were NOT watched — the claims come from written coverage and
are marked accordingly.** Nothing here is repo canon until the director lands it.
Capcom's lead monster animator on Monster Hunter Rise: Sunbreak, Ken Yamazaki (interviewed by Koichi
Shibata), describes a five-step cadence per monster:
1. Game designers hand the animators a spec naming the gameplay they envision and the attacks they want.
2. Animators build TEMP animations from that spec plus the character concept — explicitly to test the
gameplay and to give a visual impression of the monster's motion.
3. The game director and art director review the temp pass for the monster's characteristics and its
uniqueness.
4. The animation is then tweaked IN THE GAME alongside the game design AND the VFX, with modifications
flowing back into the animation.
5. Only once gameplay and visuals are settled does the final brush-up phase begin.
Source — https://news.capcomusa.com/2023/04/07/animating-the-monsters-of-sunbreak/
What it teaches OURS. Our order today is animation first, ability/impact VFX afterwards (wave 7 sits
downstream of the creature work). Capcom puts VFX in the loop at step 4, BEFORE final polish, because the
effect changes what the animation has to be. ADOPTED AND ROUTED: the creature moveset lane gains a
temp-stage checkpoint where the cue VFX (even placeholder) is present in the same in-game pass as the
animation and the encounter design, and the final brush-up is gated behind it. This is a cadence change,
not a tool change, and it costs nothing to adopt now — it costs a re-do if adopted after volume authoring.
Second teach, same source: motion capture is treated as MATERIAL, not as delivery — the finished
animation often differs substantially from the capture while retaining its detailed movement and
expression. This VALIDATES this dossier's HONEST SUPPLY STATEMENT above: generated motion (ARDY/Kimodo)
is the same class of input as their mocap, and the comparator's own practice is that the capture is a
starting point for hand craft. Capcom captures even flying creatures, with actors using their arms as
wings, and quadrupeds with actors on all fours.
Monster Hunter Wilds sourced animation three ways: modifying motion data from prior Monster Hunter titles,
new motion capture, and full-scratch hand animation.
Source — https://blogs.autodesk.com/media-and-entertainment/2026/04/23/the-production-infrastructure-behind-capcoms-monster-hunter-wilds/
ADOPTED AND ROUTED: every creature move row declares its source (reuse / generated / hand). We
already hold the honest-tier register habit; this is the same discipline one level down, and it is what
makes the "how much of this roster is actually hand-authored" question answerable without a re-audit.
Before 2018 all Monster Hunter monster animation was keyframed; the series pivoted to motion capture with
World, and the Wilds-era RE ENGINE improvement is that captured motion appears in engine in real time
during the shoot, with sound effects and background music playable into the same scene, so animators
polish while capturing. Capcom runs at least three capture studios; the demonstration studio has 36
wall-mounted infrared cameras, and a Kyobashi facility has 150. Named: animator Naohiro Taniguchi
(real-time visualization), monster-animation lead Kenji Yamaguchi (iteration speed).
Source — https://www.digitaltrends.com/gaming/monster-hunter-wilds-capcom-studio-tour/
NO-ADOPT (infrastructure): we have no capture stage and will not have one; nothing here changes the
ARDY/Kimodo primary. ADOPTED (principle): the review surface must show the motion IN CONTEXT WITH ITS
AUDIO at authoring time, not after. For us that is the previz/proving map with the cue audio already
wired — the same map §7.5 of PIPE_ART proposes for VFX. One proving map, both lanes.
God of War's axe recall was one of the earliest combat prototypes, wanted since 2014-2015, and was still
being finished MONTHS BEFORE the 2018 ship — years of tuning on a single mechanic. The first
implementation returned the axe in a straight line at maximum speed, which made the return time scale
with distance and was frustrating in combat; that was found and fixed by iteration, not by design.
Lead systems/combat designer Vincent Napoli is the named author of the mechanic.
Sources — https://www.pushsquare.com/news/2018/04/heres_why_recalling_kratos_leviathan_axe_in_god_of_war_feels_amazing ·
https://www.gamerevolution.com/originals/525661-god-of-war-axe-origins-anniversary ·
https://powerup-gaming.com/2018/05/03/recalling-leviathan-axe-god-of-war/ (HTTP 403 to our fetcher — listed, not read)
Supporting feel mechanics, from the Santa Monica / Naughty Dog / Team Ninja / Sucker Punch round-table:
hit stop (both Kratos and the target freeze briefly in the hit pose on connection); large swing arcs with
heavy follow-through; impact audio built as low-end effort followed by a high-frequency slash; a closer
camera with REDUCED shake, with the legibility cost paid back in animation and audio. One participant's
summary of the method: relentless iteration on a ruthlessly polished action-reaction loop rather than
added complexity.
Source — https://blog.playstation.com/2022/10/04/game-developers-explain-what-makes-god-of-war-2018s-combat-tick/
Jason McDonald's GDC 2019 talk "Taking an Axe to God of War Gameplay" frames the whole problem as
preserving a core feel while changing controls, camera, core weapon, enemy cast and ability set;
shorter axe combos to make the weapon read as punchy, the axe sticking into enemies, and synchronized
Kratos-and-enemy animation to sell power. [VIDEO NOT WATCHED — written coverage only.]
Sources — https://www.gdcvault.com/play/1026023/Taking-an-Axe-to-God ·
https://www.neogaf.com/threads/gdc-taking-an-axe-to-god-of-war-gameplay-deep-dive-into-gow-combat.1605947/
What it teaches OURS. Our wave discipline closes a mechanic when its band goes green. The comparator
evidence says a SIGNATURE mechanic is not closable that way — the axe recall stayed open for three-plus
years under one named owner. ADOPTED AND ROUTED: a signature-mechanic register that stays OPEN across
waves with a named owner and a band that TIGHTENS wave over wave, distinct from the feature gates that
close. The first entries are the cast-delivery projectile and the committed-swing window (FG-01/FG-11).
id Software's game director Hugo Martin on DOOM Eternal: animation windup times were roughly halved
and the Mancubus area-blast became almost instant, while the design explicitly preserved a strong tell
for player readability. Enemies are treated as chess pieces whose AI must react at the speed of the
player's new mobility; an early build where new player abilities trivialized combat was described as a
simple, child-like puzzle that engaged nobody, and fixing it cascaded into level size, enemy behaviour
and animation timing.
Source — https://www.gamedeveloper.com/design/q-a-evolving-the-combat-design-of-id-software-s-i-doom-eternal-i-
DOOM (2016)'s push-forward rules, from Kurt Loudy and Jake Campbell's GDC 2018 talk: never build
a reason for the player to disengage (hide, retreat, wait for recovery); recovery comes from player
ACTIONS, not from arena pickups (glory kill = health, chainsaw = ammo, flame belch = armour); and each
weapon carries a tactical role against particular enemy types instead of being balanced by ammo scarcity
— which in turn frees level architecture from having to litter supply caches. [VIDEO NOT WATCHED.]
Sources — https://www.gamedeveloper.com/game-platforms/pushing-push-forward-combat-with-gameplay ·
https://www.youtube.com/watch?v=2KQNpQD8Ayo
ADOPTED AND ROUTED: "windup shrinks, tell survives" is directly measurable against the FG-01 attack
phase machine, whose real windup measured 0.146 s. The QA loop can run it as an A/B — halve a creature's
windup, then check that the telegraph is still identified by the critic read at the same rate. That is a
better instrument than a fixed windup band, because it measures the thing the band is a proxy for.
NO-ADOPT: DOOM's resource-loop-replaces-pickups design is a genre-specific answer to a scarcity
problem we do not have; it is noted as a comparator fact, not routed.
343's Halo Infinite sandbox team, with named ownership (Quinn DelHoyo lead sandbox designer;
David Price lead weapons designer, owning weapon tuning and the health model; Tim Temmerman
equipment; Brian Berryhill vehicles; Elan Gleiber and Kevin Stocker sandbox designers), works
role-first: start from the high-level roles and playstyles the player should experience, then work
backward to which specific tool fills that niche. Their gate structure is a "Sandbox Shelf Playtest" for
pre-commit work, followed by internal campaign and multiplayer playtests; the studio treats its own staff
as the test playerbase; and the loop is explicitly feedback → implement → COMMUNICATE the reasoning, even
when the outcome is one some will disagree with. Feel is validated daily on BOTH controller and mouse.
Vehicle feedback is worked by root cause — distinguishing acceleration from momentum retention from turn
radius — before a change is submitted for broader testing.
Source — https://www.halowaypoint.com/en-us/news/inside-infinite-january-2021
ADOPTED AND ROUTED: two things. (a) The SHELF PLAYTEST as a pre-commit gate: a creature moveset or an
ability does not enter the wave's commit until it has been played in the proving map and the critic read
recorded — our QA loop is the playerbase, exactly as 343's staff was theirs. (b) Root-cause decomposition
before tuning: "the fight feels bad" is not a finding; "the recovery window, not the windup" is. This is
the same instrument as our band discipline, applied to critic prose.
Breaking Barriers) were NOT watched. Claims are from written coverage; a director who wants a number
quoted in a gate should watch the source first.
Accessibility in God of War Ragnarök",
https://sms.playstation.com/media/documents/GOWR_Adam_Oliver_BreakingBarriers_GDC23_mNM0xRD.pdf)
returned an empty body to our fetcher. UNREAD — it is the single most on-target public source for
telegraph/readability structure and should be the first re-fetch. Combat designer **Stephen
Oyarijivbie**'s framing (the hard part is the line between frustrating and engaging, not the technical
implementation) is from press coverage, not the deck.
camera staff and animators working together and deliberately did not depend on mocap alone — reached us
only as a search-engine summary of CGWorld's FF7R feature series. UNVERIFIED; the source to read is
https://cgworld.jp/feature/202012-ffvll-01.html before it is used for anything.
Every adoption above is a cadence or discipline transfer, never a headcount transfer.