States: done in the code and tested; check done, not yet seen in a running game; doing; queued; owner waiting on you; noted.
doing
Animations: "go over those again" (the motion reference folders and the animations Opus 5.5 organised; "he might have discarded some movements that we could actually use"), check what he made, improve it, "make the movements really good and then apply them to the game ... very performative, very smooth, very realistic"; save review videos in a folder the owner's Grokbot can forward from (or Google Drive)
State and notes
doing (survey first: what exists, what was used / discarded and why)
Motion refs are private (private folder): only videos of our own units go in the review folder, never the reference footage.
check
"the ability to block a percentage of hits if the unit has a shield and possibly block with their weapon too but with a much smaller percentage chance ... not sure how to work that in with how the melee looks and plays but see what you can do" (and again: melee fighting must "look and feel heavy and realistic like they're hitting each other")
State and notes
check (mirror, rules 117, not committed, not played). FOUND: shield block was already in since rules 104 with the owner's 11-04/05 numbers (Heavy Guard, Skeleton Warrior, Footman catch 25% of frontal blows, a caught blow keeps 30% damage; Heavy Guard stops 60% of frontal missiles; big beasts unblockable) and was left as it is. NEW: weapon parry 8% for Clubman, Spear Warrior, Chieftain, Grunt, Brute, Berserker, Warchief, Abomination (frontal hand blows only). No parry animation yet (small recoil, sparks, "PARRY"). local file: REPORT.txt. Engage sprint: check (rules 116). War Charge: owner left the pick to the lead ("Great keep going"); full version BUILT, check (mirror, rules 118, not committed, not played): researches Spear Rush / Blood Rush / Grave Leap; 150% pace from up to 10 m, first blow +50%, 0.98 m shove, 0.4 s stagger (front-line victims 0.4 m / 0.2 s by the owner's 11-02 rule), 10 s cooldown; no ranged matchup flipped; 3 icons owed; no Ghoul leap animation yet. local file: REPORT.txt, clips in ingame.
Starting design: shield units block about 25% of blows and arrows that come from their front (no damage, shield raised, clang); units with only a weapon parry about 8% of melee blows from the front; nothing is blocked from behind, while stunned or mid-swing; big beasts and siege hits cannot be parried and a shield only halves them. Rolls from the sim's own deterministic random (as crits do). Existing pieces: Block clips on heavy_guard and skeleton_warrior (v0.9.44), staged BLOCK-2 clips. Rules bump; balance measured before/after; numbers reported to the owner.
check
"when a catapult shot hits the ground and or units or buildings can you improve the effect ... more cool and substantial. I'd assume some particles dust kick up on grownd maybe a ground impact wound on ground impact, buildings idk I'll let you imagine it"
State and notes
check (mirror, presentation only, rules stay 118, not committed, not played or heard): ground = dust ring + hanging plume + clods and stones + the stone breaking up + a crater mark for about 5 minutes + pressed grass + tremor, different on sand / snow / ash / mud / water; units = same plus grit and victims rocking away from the impact; buildings = planks / thatch / stone / bone debris by faction and role, dust down the wall, dent; Meat Wagon = wet burst (weakest: blood dominates). Cost not measurable (10 catapults, 141 impacts). 14 new tests pass; one failing test not on the known list: CurrentBuildingArrowProfileTests (not baselined). Existing sounds only; 9 new siege sounds recommended (REPORT.txt). local file: siege_impact, clips in local file: 08_siege_impact.
Plan: ground hit = dust burst + thrown dirt clods and stones + a scorch / crater decal that fades + a short camera tremor when near (off with the camera-shake setting); unit hit = bodies knocked from the impact point, dust and debris; building hit = splinters / thatch / stone chips by the building's material, a dust puff, the building rocking, a lingering dust curl; heavier boom + debris patter from existing sounds. Presentation only, no rules change; fps measured in a siege scene. Applies to Catapult, Stone Thrower, Meat Wagon.
check
"make archer arrow shots look smoother and more realistic ... when a unit is hit by an arrow or spear are you able to add impact from it? ... when a unit dies from arrows and spears are you able to have the arrows stay in the body and ... have the body hit by the arrow be hit back and into the ground and if it's a spear would it be able to impale them to the ground with the momentum of the spear"
State and notes
check (mirror, rules 119, not committed, not played): arrows 28 -> 50 m/s (+79 %; tower / crossbow 30 -> 54), full-range flight 0.40 -> 0.20 s; arc at 3 / 6 / 10 / 12 m was 0.80 / 0.80 / 1.20 / 1.44 m, now 0.03 / 0.09 / 0.76 / 1.42 (close shots flat, far shots lobbed); bowman tilts his bow for long shots; spears, axes, stones leave the hand; missiles stick and jolt the struck part; arrow death = thrown on his back about 1.5 m with the arrows in him; spear death = carried back about 1.7 m and staked, shaft quivers; big beasts not shoved. No matchup flipped at 50 m/s (8 seeds). 23 new tests pass; new unfixed failure CannotRecoverProbeTests.RunDuels at 119. Weak: thrown-axe tumble barely visible; sling stones give no jolt (needs one sim event); string snap not done. local file: missile_impact, clips in local file: 11_arrows_spears. (Earlier note:) Owner added 11-09: "the arrows might need to go through the air a little bit faster ... see them whish through the air a bit quicker" = the one sim change in this job: arrow flight speed up about 40-60 % (bows and tower arrows only; spears, axes, stones unchanged), rules 119, balance measured before/after.
Plan: arrow leaves the string on the release frame from the bow hand, true arc with the shaft turning along its path, slight wobble and a faint trail, no pop at launch or landing; a hit jolts the victim along the missile's direction (spear more than arrow) and the missile stays stuck in him; a killing arrow knocks the body back and down along the shot with the arrows left in the corpse; a killing spear carries him back and pins him to the ground with the shaft standing. Presentation only (damage and timing unchanged); big beasts take the missiles without being thrown.
owner
"please update the ground textures of our maps so they are high quality and still fit in the world we are creating"
State and notes
ROUND THREE DONE 11-10 (mirror, presentation only): green share of the ground Classic / before / after: volcanic base 18/10/28, open 15/4/19, the owner's river bank 31/14/29, zoomed out 29/12/36; desert base 4/1/11; temperate base 91/67/83; tropic base 93/72/86. V5 and D5 re-baked as grass with earth showing; volcanic and desert reuse Classic's green signals (cells Classic paints green that the new ground also greens: 71-87 % -> 95-99 %). Snow ripple broken up; hall apron fades within about 4 m, narrower paths; ore halos weaker and one-sided; desert calmer; lava on a smooth contour with a crust ring. Still short: paths show as brown lines on temperate / tropic bases; green halos have a firmer edge than Classic's from afar; basalt net calmer not gone; lava edge still crisp. Sheets local file: round3.
OWNER on the in-game sheets 11-10: "i do enjoy the new ground ... it looks better its elevated the game", wants to play a match on it before deciding; BUT "a lot less random green grass areas" (circled a river bank on the volcanic map that was green and is now dirt with a few weeds); "partly green partly dirt" materials read as dirt. Round three = doing (green where Classic is green, snow ripple, yard plaza, ore rings, busy desert, lava edge). A playable copy of the test build for him: local file: Primeval.exe.
IN THE GAME 11-10 (mirror, presentation only, not committed): new ground on by default on all five map types, placement by reason with a meandering path network, wide soft transitions; Settings > Graphics "Ground: New / Classic" (applies at the next match), -groundLayers classic
new; Classic stills match today's. Memory per map 12-17 MB (classic 0-48); frame rate within noise; map load within 10 %; map hashes unchanged. Sheets: local file: ground_new. Short of the previews: snow shows a regular wind-wave grain; desert busy round bases; hall yards merge into a big plaza; small ore clusters read as rings zoomed out; faint basalt net on Emberfall; old stepped lava overlay harsh beside the soft ground. local file: REPORT.txt. Owner to look.
ROUND TWO DONE 11-09 (previews only, not in game): G10-G15 grass set, T4, fixes to V1/V2/V3/S3/S5/T1/T2/D2, desert warm + pale colourways, soft 3-8 m transitions (28 m in the open), placement rules with a path network proved on a mock start (temperate_placement_design.jpg, snow_placement_design.jpg; <biome>_ground_v2.jpg). Rules and blend formula: INTEGRATION_NOTES.txt section v2. Weak: long path too straight, V1 grainy, no trampled-snow / packed-ash material, G10 flowers invisible. Next: owner's look, then the Unity integration job (New / Classic setting).
OWNER 11-09: "the desert ground blended really well ... but not for all grass maps please find a good way to have the game blend all those new ground textures so we get really nice looking maps that seem intentional". So placement by REASON, not noise: meadow in the open, dry grass on rises and round rock, trampled aprons and paths from each start to its wood, resources and exits, forest floor under the canopy, rocky ground hugging cliffs and ore, damp banks along water; tight height-aware transitions per pair. Design + proof picture being made (temperate_placement_design.jpg), then implemented in GroundLayers.
OWNER 11-09 on the previews: "the new ground texture is great can you keep the old ones as like backup or like maybe an option like old textur ... it's still kinda smooth on some of the maps but I want to use and improve the new ones". So: new ground becomes the default, the old ground stays as a Settings > Graphics option (Ground: New / Classic, like the trees), and round two of the materials is being made (grass-map set G10-G15, fixes to the weak ones, desert in warm and pale colourways, tropic grass T4).
doing (materials made and previewed, NOT in the game; integration is a code job waiting for the owner's look and a free Unity). 16 procedural materials staged in local file: Ground (no downloads): desert D1-D5, volcanic V1-V5 (+ ember emission mask), snow S2/S3/S5, tropic T1-T3. Would ship: D1-D5, V2, V4, V5, S2, T3; with reservations V1, V3, S3, S5, T1; hold T2. Finding: features must repeat every 6-10 m to read at the 34 m camera (1 m = 32 px); the scanned grass at 2 m is sub-pixel; rescaling S1 snow to 6 m is a cheap win, grass needs new materials (none made yet). New sand is paler and yellower than today's orange (owner's call). Previews: local file: <biome>_ground_new.jpg; INTEGRATION_NOTES.txt.
Known: temperate and snow already use the layered ground from the owner-approved CC0 materials (10-21, G2, M1-M6, S1, S4; in main); desert and volcanic still use the old painted ground; tropic to be checked. New source materials would be downloads, which need the owner's OK (name, source, size) first. local file: ground_upgrade.
check
AUDIO: "utilize our 11 labs api ... keep voices consistent but we need new voice lines. A lot of units re use voice lines please update so every unit is unique ... more believable Dino sounds ... make sure everything in thr game has a nice crisp sound. Addicting sounds ... for things like dropping off materials ... Selecting a building should have a memorable sound"
State and notes
check (generated and STAGED, not installed, not wired; nobody has listened: judged by measurement only). Audit: 46 units, only the 3 workers had their own lines; 43 shared three "soldier" sets. Staged 894 clips: 557 spoken lines (41 units with their own voice and lines, 4/4/4/2, heroes more), 70 non-verbal clips for the 5 Undead animals that used to speak English, 129 building selects (43 buildings x 3), 12 deposits, 23 interface, 103 dinosaur. About 32,000 credits. Weak: unit_trained remake held back; brachiosaur / quetzalcoatlus / protoceratops calls and T-rex idle still muffled; 10 building selects raised 20 dB (may hiss). Captioned listening videos for the owner: local file: new_voices_<faction>.mp4, new_sounds_*.mp4 (also in local file: Primeval_review). Wiring owed after the owner approves (INSTALL.md, about 150 lines).
local file: audio_pass (AUDIT.md, PLAN.md, staged, CREDITS.txt, INSTALL.md); listening page for the owner local file: index.html (old vs new). Credit cap for this pass about 200,000. Nothing installed until the owner has listened; per-building select and per-resource deposit sounds need code wiring after that.
queued
NEW UNIT: "You can keep the raptor claw axe for a orc shield worrier id like to make a tanky warrior that uses the raptor claw weapon as his main hand and a shield for offhand"
State and notes
queued (design sheet + look preview for the owner first; then model, animations, rules, AI, icon, voice)
Orc tank: Raptor Claw axe (axe option A from local file: berserker_axes) in the main hand, shield in the off hand. Starting idea: built on the grunt's body with heavier hide-and-iron armour and a big bone / hide shield; slow, high health and armour, shield block like the Tribe Heavy Guard (25% of frontal blows, part of frontal missiles), modest damage; trained at the Orc War Camp; fills the Orcs' missing "anvil" next to the Brute. New unit role in the Orc block = rules, saves and AI work. Name to be confirmed by the owner.
doing
"our game often struggles to give those nice arc attacks using a normal attack angle see if you can make it look better" (and "look at how dual axes look in any popular game as a reference")
State and notes
doing: berserker chop made (staged; option A being installed in the mirror with the edge-down axes). Measured: current attack is an upright hack (plane 17 deg from upright) whose edge ends at waist height 2 cm short of the body; new chop sweeps 239 deg on a 54 deg diagonal and the edge is 10 cm inside the upper chest on the impact frame; 0 frames inside his own body. Still wrong: wind-up too fast to feel heavy (a 32-frame clip suggested), tip path doubles back at the top of the wind-up, edge 46 deg off its travel at impact, forearm 4 cm from his torso at impact, drive comes after contact. Recipe for the other units: local file: ATTACK_METHOD.md. local file: 09_berserker_chop.
Every melee swing must travel a clean, wide arc on a natural line (diagonal chop, side cut, thrust), driven by hips and shoulders: wind-up away from the target, the weapon head sweeping through the target's body at the impact frame, follow-through past it, recovery. Check per clip: the weapon tip's path drawn as a curve (no kinks, no straight up-down hack, no arm-only poke), its plane and angle, where it crosses the target, and the on-screen swing trail following the same curve.
check
Melee group behaviour (owner watching orcs vs humans): "in real life you would see a lot more circling around, like the bigger group would circle around ... You wouldn't want them to get stuck or like awkwardly slide ... a certain spacing and a certain spreading out ... depending on the positions of the enemies ... Definitely would need your input on this"
State and notes
check (mirror, rules 120, not committed, not played; owner said build it if it is cheap). A = surround (Catalog.MeleeSurround): 4 places round a man, 7 round a triceratops, up to 12, spread all round; nearest enemy with a free place; a place kept at least 3 s; overflow steers round the outside; explicit attack orders keep their target. B = reach slack (Catalog.MeleeTightSlack): the 1.2 m lunge only during a wind-up, step back in beyond 0.3 m, building reach at most 1 m. Each switchable. Cost: none measurable (4v4 sim avg 1.672 -> 1.671 ms). Balance: only Grunt vs Spear Warrior moved (4/8 -> 7/8); many-cheap units do slightly WORSE (they lose over-the-shoulder hits). Two existing tests now fail because of it and need updating (engage sprint "six take separate places"; War Charge shove). RunDuels failure = a fault in the forfeit check, reshuffled by any rules change. Wrap-around reads only partly in the clips. local file: melee_surround.
Existing pieces: melee attackers already take places 30 degrees apart round a target and fighters shuffle apart (rules 48); block / parry never work from behind, so flanking already pays. Sim change = rules bump + balance check (bigger groups will win faster).
owner
AUDIO ROUND TWO DONE 11-09 (staged, not installed, nobody has listened): 146 rejected clips moved aside; 748 survivors = local file: APPROVED_FOR_INSTALL.csv (owner has heard these); 171 new = ROUND2_NEEDS_LISTEN.csv: recasts (Berserker -> Edward + all-new crazy lines, Warchief -> the Raptor Bone Rider's voice, Axe Thrower, Chieftain, Bowman, Heavy Guard, Skeleton Warrior, Net of the Drowned), 22 remade dinosaur takes, 27 siege sounds. Listening: local file: round2_please_listen.mp4 + index.html (round two first). Weak: siege earth-debris measures as hiss; Berserker, Heavy Guard, Drowned Net read slowly. Wiring into the game still owed (INSTALL.md).
State and notes
OWNER REVIEW at the PC 11-09 (audio page + berserker): axes approved, but in the walk and run they must HANG DOWN from the hands (he drew lines straight down; idle fine) = doing. Audio verdict recorded in full in local file: OWNER_FEEDBACK_2026-11-09.md ("anything i didnt comment on let it stay in. things i said are bad remove"): build_complete rejected; allosaur all bad and a list of dinosaur death / hurt / roar takes rejected; recast Berserker (crazy, funny-psycho, new lines), Axe Thrower, Bowman, Heavy Guard, Chieftain (more heroic), Skeleton Warrior, Net of the Drowned fisher; Warchief re-recorded with the Raptor Bone Rider's voice = round two doing. "what are these yellow things?" (a yellow slab on the ground beside a kill) = being identified. Owner also: delegate routine work to Opus workers and save data.
doing
queued
Berserker chops: "a and b are great use those the win by far" = use BOTH, alternating. A is installed. B needs a second attack slot: the game plays one Attack clip per unit today (no Attack2 anywhere in the code), so: add an "Attack2" clip to his model + import entry + animator state, and have the presentation alternate A and B per swing (visual only, same timing and impact frame). Build it as a general feature so every unit can have attack variety. Queued for Unity after the arrow job. Yellow slabs = hero trophies (Frill Charm) drawn as gold placeholder blocks (TrophyRenderer): proper small models + glow + hover name queued.
State and notes
queued
check
More walk notes 11-09: axe thrower "make the axe point down when he walks"; warchief "walks with the axe down like the original one but use your new upgraded motion"; peon "the worst walk of all the ones u did. it looks stiff like a old man but its better then the original. see if you can improve it"; overall "so far most of what you did is good", fuller review to come.
State and notes
check (staged + installing in the mirror; not seen in game): berserker and axe thrower axes hang down (haft 6-14 deg from vertical) BUT with their grip the cutting edge faces BACKWARD and the wrists bend 89-135 deg (hidden by bracers); edge-forward needs the axes re-seated in the fists (model job, owner to decide); berserker file also carries Attack2 (chop B). Warchief: original axe hold on the new walk (within 3.7 cm). Peon: looser walk. Undead A (skeleton warrior, skeleton archer, ghoul, acolyte) idle / walk / run done and installing; Tribe B running. local file: 14_berserker_axes_down, 13_undead_a_idle_walk_run.
owner
MELEE CONTACT: "make sure that they actually look like they're making contact ... they're at least 1 to 2 people length away from the target sometimes ... it's showing as if they're hitting them"
State and notes
OWNER 11-10: berry bush v2 "great I approve" (added to the trees / water build). "let me know what we should work on next ... animation is the largest task currently and probably needs my final visual look over. We also need to update the story at some point like the campaign." = lead to propose the next-work list when the tree build reports; campaign / story update queued (needs the owner's direction on the story first).
queued
queued
OWNER 11-10: "can you add larger maps as an option when playing? ... choose if we want a small medium large and extra large map when we start the multiplayer"
State and notes
queued (after the trees / water build; rules + net job)
Checked: the lobby has no map-size choice today; size comes from the map and the format. Plan: a Map size option (Small / Medium / Large / Extra large) in the Versus and multiplayer lobbies for random maps (fixed maps keep their designed size), sent to every peer by the host; resources, herds, camps and start distances scaled with area; AI and performance checked on the largest size. Needs a NetProtocol bump.
queued
owner
OWNER 11-10: workers whose resource runs out "go across the map to get more of that type ... Other rts don't do this ... they just stop and go idle ... we can't have them leaving the area and becoming really vulnerable ... maybe a mode called search out more of this resource ... a toggle ... and maybe we limit the range they go still when it's toggled on".
State and notes
owner (lead's proposal given 11-10; build after his OK, rules + net job)
Proposal: default = look only close by (same resource within about 15 m of where they worked and inside the base's drop-off reach), otherwise stop, go idle and raise the idle-worker alert with a short message; a "Search further" toggle on the worker command card (per worker, off by default, remembered for new workers per player) that allows a capped search (about 40 m), never into unexplored ground or toward known enemies; the AI keeps its own rules.
noted
OWNER 11-10: three ChatGPT images made from the prompts (local file: Primeval_art_2026-11-10, copied to local file: generated_art_2026-11-10: spear rush icon, Orc Shield Warrior sheet, Tribe Clubman sheet). 'The orc looks a lot like a Warcraft orc face we have to use our faces so the orcs are not copying'.
State and notes
noted; models queued
Shield Warrior is built on OUR existing Orc body and head (grunt / brute family), taking only gear, shield, axe and silhouette from the sheet; future orc prompts say to attach our own orc as the face reference.
doing
OWNER 11-10: 'push what updates we know are good and make a version I can upload to itch.io cus I want to try what we have' = explicit OK for a release build + commit. Also: Shield Warrior second pass 'Yes'; wants T-Rex tree-size pictures (sent: trex_tree_sizes.jpg; pick of 1.2 / 1.35 / 1.5 pending).
State and notes
doing (install worker continues into the release: local file: art_install_1110; local file: RELEASE_v<ver>.txt)
Release from the mirror by the last release's route, version bumped, signed zip in local file: itch, owner uploads himself; safe-keeping commit on a new branch fable/release-v<ver> only (main and local file: Primeval untouched). Not in this version: Shield Warrior, workers-go-idle, map sizes.
doing
OWNER 11-10: 'have codex upload all review videos to a website it creates so I can easily see and review from anywhere'.
State and notes
doing (Opus worker builds the site folder; Codex / owner hosts it)
Fable cannot drive the owner's Codex or sign in to a host, so: a complete static site (index.html + web-sized videos + CODEX_UPLOAD.md) in local file: Primeval_review_site, unlisted, private reference library excluded; owner tells Codex to upload that folder.
doing
OWNER 11-10 Clubman: 'You can use our assets for the tribe units just change the weapon by making a club for him'.
State and notes
doing (Opus worker, staged, local file: tribe_clubman)
Existing Tribe unit as the base, weapon swapped for a club; no new character. Orc Shield Warrior model also doing (local file: orc_shield_warrior), our own orc face.
noted
OWNER 11-10 game direction (first answers; rest later): gore IN, more Scouring than Warcraft, wants realistic gore 'parts coming off the enemies ... if possible'; humour on par with Warcraft (balanced); magic big and flashy; realistic leaning but still Warcraft-stylized; colours: keep current; dinos: keep feathered bright designs; fights: men die to a handful of arrows, big creatures longer, tanks and sustainable battles (ongoing balance).
State and notes
noted (memory primeval-game-vibe); dismemberment gore = new item to scope
doing
OWNER 11-10 answers: berserker axes "hanging properly makes sense ... use your best judgement" = re-seat the axes in his hands (staging, local file: berserker_reseat); workers idle "Yes ... do the processes" = build the 15 m / 40 m "Search further" proposal (queued behind the tree build: rules + net job); War Charge icons "Yes" and Raptor Claw trophy rework "Yes" (staging, local file: icons_trophy_fix).
State and notes
doing / queued
doing
OWNER 11-10 on trees_before_after.jpg: "I noticed your proposing a new game camera ... it does look better the trees being bigger in comparison ... let's go with it". No camera change was proposed; the preview panels are Blender renders where trees stand larger next to people.
State and notes
doing (tree build worker, local file: trees_water_install)
Read as: he wants that PROPORTION (towering trees vs units). Worker measures preview vs game tree-to-person ratio, scales drawn trees to match (presentation only; collision, chopping, map hashes unchanged), guards unit visibility / fps, shows CLASSIC vs NEW today's scale vs NEW larger with units in shot; one tunable scale per tree family. Camera itself NOT changed unless he asks after seeing it.
owner
TROPHIES IN GAME 11-10 (mirror, presentation only; local file: trophies_install): six models lying on the ground, each turned differently; pulsing lavender disc + twinkle every 3 s (faster in the last 30 s); hover label with name and effect; old gold shape as fallback; no forbidden builders run (Art/Trophies + TrophyModelsBuilder). No biome / team tint. Short: glow faint on snow at 55 m, a bit strong on grass; Raptor Claw reads as a feather bundle; not seen in a real match. New failure not on the known list: BugHunt4Tests.TheApplyScriptTakesOnlyTheModelTheEditWasMadeOn (villager FBX identity; from the approved villager animation install, to triage).
State and notes
OWNER 11-10 on the tree / plant / water previews: "All the rest of your graphics are great for the environment stuff and plant stuff" = APPROVED except the berry bush ("berries look as tho they hang practically off the bush and the bush itself is small maybe make the actual bush more bushy and the berries are all clumps of 3 ... ok with a random circle here and there") = berry bush v2 being made (local file: berry_bush_v2.jpg). Trees for all five map types, undergrowth, grass-tuft colouring and water are being built into the mirror with a Classic option, performance measured for real (local file: trees_water_install).
doing
owner
TREES / BUSHES / WATER AUDIT + PREVIEWS DONE 11-10 (local file: trees_water: AUDIT.txt, trees_before_after.jpg, bushes_berries_before_after.jpg, water_proposal.jpg, grass_tufts_before_after.jpg; nothing in game). FOUND: the tree kit approved 11-02 was built out to 48 models for all five map types (local file: v2) but NEVER imported; no Classic / New tree setting exists. Weaknesses: volcanic = the temperate wood, desert = green jungle on sand, snow conifers white on white, conifer canopy a faceted carpet with no trunks, MegaKit broadleaf flat lime blobs costing 30 % of triangles for 13 % of trees, berry bush half-picked looks empty and picked looks full, water one flat colour and turquoise even on snow; grass tufts fine (follow the new ground, stay off paths). Proposal: upgraded conifers on the same mesh with a palette per map type, the 11-02 kit trees in place of MegaKit, a berry bush with real states, per-map undergrowth, modest water work. Estimated forest triangles DOWN (colour 3.63M -> 3.37M; shadows 5.50M -> 2.88M per pass), not measured in game. Owner to approve, then the Unity build job with a Classic / New setting. Also: owner noted the grass tufts ("pretty decent ... improve unless no need") and said the round-three ground "looked really good".
State and notes
OWNER 11-10: trophies "Yes, build them" = doing (local file: trophies_install). "can you also improve the tree models and the graphics of all the trees and bushes and the berry bushes as well and see if you can improve the water or if there's any need to" = doing (audit + previews first, Opus worker; local file: trees_water; build on existing models, Classic kept; first find out what became of the tree style approved 11-02).
doing
doing
AUDIO INSTALLED 11-10 (mirror, presentation only, not heard by anyone; local file: audio_install): all 748 approved clips in and wired (hash-checked; none of the 171 round-two or 292 rejected files present). 38 units have their own lines; the 8 recast units keep today's lines until round two is approved. Playback now: nothing within 1.5 s of the last line, a repeated order within 4 s is silent half the time else a grunt, never one of the last two lines, one voice at a time, annoyed line at most every 8 s (20 quick orders gave 3 lines, was about 20). Per-building select sounds; per-resource deposit sounds, at most 3 at once. +100 MB memory, +0.26 s loading. 68 of 69 tests pass. Round two later = copy files + Build Sound Bank. HERO TROPHIES: six models previewed (local file: hero_trophies), owner to approve; read only at the closest camera, need the glow + hover label at game distance.
State and notes
REGRESSION FIXES DONE 11-10 (mirror, rules 121, not committed; local file: regression_fixes): both rules-120 melee rules now apply only to a player's melee soldier fighting a person (slack also at buildings): pteranodons peck again and the dive trace matches its old pin; no melee place or waiting spot in a gate, its mouth or a one-cell gap, and a soldier at its place gives way to a move order (gate crossings 0 -> 3); casters were never broken in the game (test ran the Animator at 0.3x in batch mode; test fixed). Stance distance: pair holds the longer weapon's distance, the shorter steps in on its own blows; blows within 15 cm: Ghoul 17 -> 58 %, Grunt 73 -> 82 %, Heavy Guard 88 -> 86 %, Berserker 100 -> 89 %, Skeleton Warrior 67 -> 33 % (WORSE: its blade goes 0.48 m into the ghoul when both strike on the same tick) = still open. Final related run 645 tests: 587 pass, 58 fail (46 Codex guards, 5 pre-existing, 1 environment, 3 old PersonHit head/spine offsets, 3 stale pins). Next started: install + wire the 748 approved audio clips (audio_install); hero trophy models preview (local file: hero_trophies).
TEST TRIAGE DONE 11-10 (local file: REPORT.txt, FAILURES.csv): about 2,710 EditMode cases exist, 2,585 run, 2,516 pass, 64 fail after 50 stale-by-design tests were fixed (incl. DetailedUnitSize 44: no unit's real size changed). REAL REGRESSIONS from rules 120 (melee surround): pteranodons land but never peck (reach-slack rule hits wild attackers); a unit cannot leave through its own gate while enemies press on it; pteranodon dive trace changed. Likely real: Orc Shaman / Shaman / Necromancer never play their Cast animation (broke 11-09 evening, melee drawing job suspected). 46 failures are Codex re-review guards on peon / villager / skeleton_archer files replaced by the approved walks (pins live in editor code, not fixable in tests). 6 undetermined, 5 pre-existing. Not run: AiLongGame, HerdPathProbe, BalanceMatrix, Performance, [Explicit]. FIX JOB started (local file: regression_fixes, rules 121).
doing
done
OWNER 11-09 after recording fights: "the units are sliding forward in order to make contact visually and is it possible to have it do steps with real foot contact? Because the sliding is off putting"; then "once he does make contact the unit can stay up and in the enemies space while repeatedly swinging ... they don't have to keep moving back and forward" = check (mirror, presentation only, rules 120; local file: melee_steps): walk in, one committed step on the first blow (lunge capped at 0.35 of the leg), then hold the stance; planted-foot IK during swings. Slide per blow (both feet, cm) old -> new, later blows: grunt 457 -> 0, brute 536 -> 0.1, berserker 309 -> 0, heavy guard 399 -> 0, villager 214 -> 0; first blows still slide (brute 129, berserker 58); mounts and beasts 6-20. Contact got worse in one case (Ghoul vs Skeleton: fighters with different reach hold between the two distances; blows within 15 cm fell: Ghoul 42 -> 17 %, Grunt 96 -> 87 %, Heavy Guard 100 -> 89 %) = needs a decision / follow-up. TEST TRIAGE started 11-10 (local file: test_triage): whole suite in batches, classify every failure, fix only tests stale by design.
State and notes
DRAWING FIX DONE 11-09 (mirror, presentation only, rules stay 119; local file: melee_drawing): attackers turn to their target, step in to their own measured reach (up to 1 m lunge + 0.5 m held closer), beasts drawn back, attackers walk up to building walls, hit effects at the weapon. 8 of 25 units touched a man before, 23 of 25 now (Orc Shaman's staff passes 0.44 m beside the thigh = animation; Tyrant jaws 0.8 m past = rules). Berserker alternates chop A / B in game (general Attack2 feature). No measurable cost. 14 new tests pass; 77 failures in the related groups reported as pre-existing (53 fail the same way on the original code): TEST HEALTH NEEDS A TRIAGE before any landing. Clips local file: 15_melee_contact. Rules part (slack + building reach) is in the melee surround job (rules 120, running).
AUDIT DONE (local file: melee_contact: REPORT, FIX_PLAN, CONTACT_TABLE). 25 units square-on vs a lone man: 12 touch, 3 near miss, 10 clear miss. Causes ranked: (1) rules reach about 1.0 m longer than the weapons; the existing step-in hides up to 1.0 m but not at buildings or for beast-bodied units; (2) the 1.2 m "committed swing" slack lasts the whole fight, gap up to about 1.2 m; (3) melee attackers are not turned to face their target (2nd+ attackers stop 43-65 deg off, about 0.7 m miss); (4) residue 0.06-0.38 m; (5) clips rooted, full reach held one frame. Worst: Risen Protoceratops 1.14 m, Abomination, Ghoul, Chieftain, Brute; Tyrant jaws close 3.4 m PAST the man. Fix: drawing-only first (face the target, step-in from each unit's measured touch distance, also at buildings and for beasts) = queued for Unity with the attack-alternation feature; new Attacks with a lunge + 3-frame hold for seven units = attack pass; shrinking the slack and building reach = rules change, owner decision, bundle with the melee circling job.
local file: melee_contact. Known so far: the berserker stands 1.52 m from a grunt and his old attack ended 2 cm short at waist height.
doing
Berserker with the new axes: "looks good but the axes point slightly outward and I don't like that. Should point down the sharp blade part ... the hack attacks should come a little more out and then across that is more normal of a chop motion"
State and notes
doing (edge-down carry passed to the idle/run worker; the axe model's 13 degree turn about the haft is removed at re-fit) / queued (new Attack: arm swings out wide, then chops across the body on a diagonal, both axes; first clip of the attack pass, right after his idle/run land)
Owner approved the final axe look ("looks good").
doing
Orc walks feedback: "the brute I liked how he held the weapon. Low along his side the new one looks like he's holding it up above his head I don't like that. And the berserker could you make his axes look cooler like a cool double axe fury warrior style axes"
State and notes
doing (brute: carry back to low at his side in walk, idle and run, kept clear of the leg; passed to the idle/run worker) / queued (berserker axes: Blender, build on his existing axes, before/after sheet first, after the idle/run batch)
The over-shoulder brute walk is in the mirror until the corrected one replaces it. Berserker axes: owner sent a style example (a WoW axe: big crescent blade with jagged lower teeth, back spike, riveted collar, wrapped grip) and said "don't copy exactly ... it's just an example of a style". Three original options being modelled as a preview: local file: berserker_axes. Owner picked: "Go with option b for the axes I like option a too but B fits the berserker best" (B = Blackglass Fang, obsidian + red sinew). Now: shaping pass, sized so it clips no more than today's axes, brighter edges for the game camera, staged in his model; install after his new idle / walk / run are in, with a before/after video.
check
"the passive stance all our units take is goofy and feels rigid and often their feet are together which isn't realistic so make sure your also fixing those"
State and notes
check for the Orcs (mirror, FBX only, installed 11-09; not yet seen in game): new Idle and Run for all 7 Orc foot units, feet 55-74 cm apart (were 20-29), 0 foot slide; brute hammer low at his side (walk redone), berserker keeps the old hand placement with edges down (walk redone), warchief axe low and never across his face (walk redone). Weak: brute run feet (16 mm/frame slide), peon idle reads like a paused walk, shaman cannot lean on his staff. Worker's speed suggestions (NOT applied, owner's call): brute run 4.26 and warchief 4.15 m/s are the fastest orc runs, suggest about 3.3 / 3.5. local file: 07_orc_idle_run. Tribe and Undead: queued.
New Idle per unit: feet apart at about shoulder width with one foot slightly forward, weight on one leg, relaxed knees and shoulders, weapon in a natural rest, slow breathing and small weight shifts; character per unit. Earlier staged idles (anim_batch2/3) get checked against this first.
doing
"melee units should have a bit of a sprint or a slightly Increaed speed when engaging a target to bridge the gap better. And I want it to feel firm ... some of the units to have even better charges like a warrior charge we can make it an upgradable ability but even without that ability I want all melee to be able to bridge the gap and collide with the enemies well"
State and notes
doing (engage sprint: sim worker, mirror, rules 116 expected; warrior charge: design proposal for the owner, not built)
local file: melee_engage (REPORT.txt, CHARGE_PROPOSAL.txt). Starting values 7 m / x1.25 with a cap and cooldown; balance vs ranged measured before/after.
queued
Melee combat feel and look: "premium rts style ... weighty and heavy and raw and realistic and cool. I don't like how hitting looks currently ... It was cheap looking ... I want it to actually look like We are hitting the enemies"
State and notes
queued (the attack pass, right after walks and runs)
Scope: attack clips with wind-up, a fast strike that reaches the target, follow-through and recovery; the weapon actually meeting the enemy at the impact moment; the victim reacting from the side he was hit; impact effects and sound on that frame; a short hold on heavy blows. Presentation first; anything that changes attack timing or damage in the simulation is proposed to the owner first. Earlier related work: combat feel pass 10-15 (FIX_PLAN.md), staged attack clips in anim_batch2/3 (never installed), skipped refs to revisit: hits from left/right, knocked up and landing.
doing
Grunt walk options: "The new grunt walk with swagger looks perfect! Great job use that"; "Your welcome to change the tilt of weapons ... the Weapons were sitting very awkwardly before"; "use your intuition to animate the rest of the units as well. You can also adjust walk and run speeds to what you believe is best"
State and notes
doing
Method: script-built gait (local file: gait_walk.py), option D "more swagger". Grunt walk installed in the mirror (FBX only, backup in local file: backup). Order: Orc walks, Orc runs, Tribe, Undead, then attacks. Weapons get a natural carry. Speeds: animation pace and stride are mine to tune; a change to how fast a unit actually moves in the simulation is a balance / rules change and is proposed to the owner first, not slipped in. Videos: local file: animation_review.
doing
"make sure the trees do move with the air ... storms make it move more and rain makes trees shinier and darker and more wet looking"
State and notes
doing
Sway 1x calm / 2.2x rain / 3x storm already in; wet look strengthened (22% darker, richer colour under the sheen; was 13%); filming calm / rain / storm at real speed.
check
"can you also fix the fact that some of the raptor riders don't have color? It's a strange thing"
State and notes
check (mirror, not committed; filmed in game before/after; owner to play)
Both raptor rider models (Tribe raptor_rider, Orc raptor_bone_rider) carry two texture layouts and the game read the one where the rider is collapsed to a flat colour. Fix: "Swap UVs" import setting on the two .fbx.meta files (swapUVChannels 1); no model, texture or code change. Tribe rider now also shows his team cloth. local file: before_after.jpg
queued
"once your done with that can you rig the raptor riders so that they actually look like they are riding? The rig for it is really poor"
State and notes
queued (next)
Riders today are rigid on the mount (no bones of their own, arms held out, no seat motion). Both raptor riders. Blender headless, build on the existing models, staged with a before/after video for the owner before install.
check
Trees and plants move slightly in the wind (owner asked about the performance cost); owner approved more sway in rain/storms; plus trees look wet and shiny in rain
State and notes
check (mirror, not committed; filmed, not played; fps cost about 0.7% clear, none in rain, one PC)
GPU vertex sway under Settings > Graphics "Ambient life" High; shadows follow; wet look eases in ~15 s, dries ~70 s, rain only. Build preview on snow fixed in the same job (green/red tint). local file: REPORT.txt, clips, dry_wet.jpg, snow_ghost_before_after.jpg. Wet sheen reads a little pale in daylight: owner's eye wanted.
check
Orc skin texture: mottled, matte, living skin like Codex's concept (a614b32a-image.png), skin only (not cloth, leather, hair, bone, scars), side-by-side before/after
State and notes
check (mirror, not committed; owner approved "Regional color v2" on all units 11-09; installed for all 10 Orc units; in-game before/after shot)
Basecolor PNGs only, skin mask only (0 pixels differ outside it), .meta untouched; originals in local file: install_backup. Sheets: local file: all_v2.jpg (Blender), local file: ingame_before_after.jpg (game). Peon run at 85% strength (bald head read muddy). In game the change is subtler than in the renders.
in progress
AI hidden-town fix: workers stuck sheltering from 1–2 raiders come out and fight (owner: "Yes put that fix in so units don't get stuck in the buildings")
State and notes
in progress
local file: apply_fix.ps1, rules 115, new test AWholeTownHidingFromOneRaiderComesOutAndKillsIt; applied and tested with the placement job.
queued
Build placement preview: the real building see-through with a bright outline (owner's mock "3 Outline + transparency"), footprint outlined, turns red where it can't be built
State and notes
queued
Today the ghost is a green/red box or cone. Do it after the integration pass (no edits to the mirror's Assets while it tests). Use each faction's actual building model, a rim/outline shader, outline-only footprint; blocked cells stay red. Owner wants before/after images when done: capture "before" stills (valid + blocked, a hut, a big building, a wall line) from the current build first.
check
Orc catapult: the arm spins like a wheel. Only the wheels turn when moving, loaded arm still; throw, stone leaves just before upright, arm past upright, bounces, returns empty, reloads; tied to the real attack and projectile. Codex's candidate is a reference ("You don't have to use" it, "pretty close")
State and notes
check (in local file: PrimevalMirror, not committed; filmed in game, owner to play)
local file: REPORT.txt; model turned 180 degrees because Codex's stone left by the back, so the spikes now trail
check
Triceratops: two fight now and then as a show of dominance, bruising each other, not to the death; "sometimes it should be to the death"
State and notes
check (mirror; bouts and 1-in-6 deaths; herds hold in long runs; sound not heard; rules 113)
see local file: PrimevalReviews
check
Repair All toggle: a worker goes into repair mode and repairs all nearby damaged structures
State and notes
check (mirror; 24 tests; filmed by staged command; keys and buttons not pressed; rules 111)
see local file: PrimevalReviews
check
Select buildings, hit a repair shortcut: available workers are called to repair them
State and notes
check (mirror; tests only; multi-select limited to what the game selects together; rules 111)
see local file: PrimevalReviews
check
Berries stay red and purple on snow maps and stand out; the bush can be white and snowy
State and notes
check (mirror, not committed; not yet seen on a snow map)
BiomeLook
check
Rally point on a resource: tell the player all future workers rally to that resource type in that area
State and notes
check (mirror, not committed; not seen in game)
SelectionController.NoteRallyOnResource
check
Gates: enemies and animals get through. Roll-up gate, shut unless opened; passive open/close when friendlies walk through; lockable. "only friendly can go through"; enemies "Can't ever no exceptions even if friendly are going through it"
State and notes
check (mirror, not committed; rules 109, net 19, saves 19; sim tests and film; not played online, Lock button never clicked)
local file: walls_gates
check
Chat: Enter, type, Enter does not send. Enter with text typed must send
State and notes
check (mirror, not committed; not tried online)
NetworkStatusOverlay read the key after the field used it
check
A villager returning resources shows + amount over them with a fun visual and sound
State and notes
check (mirror, not committed; not seen in game)
CombatText, AudioDirector
check
Formation / Alt+G is a toggle: once on, every move is spread formation until toggled off; they spread as they move and never come back together
State and notes
check (mirror; march spacing measured 2.84 m at 10 m, was 0.81; not played online; rules 112; rally not spread)
see local file: PrimevalReviews
check
Show how long a siege weapon has until it can fire again
State and notes
check (mirror, not committed; tested, not seen in game)
HealthBars amber bar, own siege only
check
Several buildings selected and rallied: a line from each at once (only one shows now)
State and notes
check (mirror, not committed; not seen in game)
RallyRenderer
check
Friend's game was full daylight, owner's dusk: does aligning time of day cost extra? Weather is meant to change play (rain shortens smell), so everyone must see the same
State and notes
check (answered; mirror: online ignores the local setting)
Clock and weather are already shared. Rain affecting smell still needs its schedule moved into the sim
check
Enemies walk past walls, gates and towers as if not there, sometimes through trees: tighten so it is fair and clear where anyone can and cannot go
State and notes
check (mirror, not committed; rules 109, net 19, saves 19; sim tests and film; not played online, Lock button never clicked)
local file: walls_gates
check
Online: a player who cannot keep growing or restart is fully revealed with alert pings; a PC gets the chance to forfeit. Needs a simple formula (no resources for a command center and no villagers, or similar)
State and notes
check (mirror; Recovery.cs; AI resigns, human offered; ground ping rings did not show; not played on 2 machines; rules 114, net 22, saves 22)
see local file: PrimevalReviews
check
Day/night: "one setting for the whole match chosen by the host"
State and notes
check (mirror, not committed; rules 110, net 20, replay 10, saves 20; 302 of 303 tests, 1 skipped; no two-player game yet)
local file: daynight_rain. Replaces the stopgap in the mirror (online ignores the local setting). Lobby option, sent to every peer
check
"we should do the rain and smell thing": rain shortens smell distance, the same for every player
State and notes
check (mirror, not committed; rules 110, net 20, replay 10, saves 20; 302 of 303 tests, 1 skipped; no two-player game yet)
local file: daynight_rain. Rain's schedule moves from presentation into the sim as a pure function of seed and tick