Commit Graph

11 Commits

Author SHA1 Message Date
kronic c5f73c52dd Weapon grip: operator reverted the anchor to the seed grip and rebaked
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-21 00:29:07 -07:00
kronic 7f032571df Weapon grip anchor: gizmo-authored WYSIWYG grip + operator's hand-tuned grip baked
WeaponGripAnchor under Hand_R in Player.prefab carries the actual axe
mesh as an EditorOnly preview (baker skips it; play-verified single axe)
so grip manipulation is the real model live in the prefab stage;
AttachMeleeWeapon reads the anchor (consts = seed/fallback). Includes
the operator's first gizmo-tuned grip (rebaked mesh matches expected
radius exactly). PlayerRigTools also carries the heavy-lock clip
re-speeds (1.0/0.85/0.88) consumed by the next commit.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-21 00:13:48 -07:00
kronic 7b65912f30 Melee feel overhaul: SwordCombat anims at heavy cadence, salvage axe, damage-at-contact + buffer + dash law (guidelines forks 1-6)
07-18/19/20 arc: LightCombo01/HeavyCombo01 clips onto Swing1-3/Slam at
~natural speed (26-tick window, 30-tick recover, DPS-held damage retune),
Menacing01 combat idle (InCombat), SM_Wep_Axe_Large_01 rigid-skinned to
Hand_R at x1.25, LANTERN FX retone + blade-smear ribbon. Forks 1-6 per
Combat_Attack_Feel_Guidelines (design review wf_000bc247): cleave resolves
at the CONTACT tick (MeleeCleavePending schedule-and-consume, knob 31,
0=legacy; connect cues moved to contact), MeleeRange 2.2 + reach-only
finisher mult 1.25 (knob 30), BufferedAttackTick GhostField input buffer
(knob 29, unlock-edge validity), dash refused pre-contact (lookup-based).
Tests: MeleeComboTests pin legacy knobs; +3 fork tests (414 green); live
server proof: HP drop exactly at swing+16 under tick batching.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-20 21:03:18 -07:00
kronic 7571091394 LANTERN feel pass (DR-052 + gap list): SoD facing, underwater feel, Bathynaut kit, walk/run gait, suit lamp + new Synty anim packs
- SoD facing: PlayerFacing = body-yaw only (move-facing / cast-turn / idle-hold); every fire
  direction re-sourced to FacingMath.ResolveAim (pre-code review blocking catch); TickWindowMath
  shared windows with Movement-skip; reticle/FX coupled to the damage direction; cursor-dash kept.
- Underwater feel: sharpness 15->6, turn 720->360, MoveSpeed 6->4.2; TuningKnob 26-28
  (0 = no-override sentinels, dev-protocol bump on DebugTuningReport); stride footsteps + silt +
  cadence floor; bubbles; underwater ambience bed + distant groans; camera drag + dev scroll zoom.
- Bathynaut kit in-engine: dome/tank/shoulder-lamp + bare head grafted (GraftSmr rigid rebase,
  RecalculateTangents); EmissiveGloamSkinned shader (Rukhanka deformation); shoulder lamp CASTS
  (warm steady spot on body yaw).
- Gait: two-ring walk/run FreeformDirectional tree (walk @0.35, run @1.0) + blended-natural
  StrideScale; additive Posture(Bank) + Lead(chest-lead) layers; idle = AnimationIdles Base;
  banking driven from facing turn rate; flat terrain (Env_SeabedKit seabed squashed - CC is planar).
- New packs: Synty AnimationIdles + AnimationSwordCombat (combat pass queued) + SyntyPropBoneTool;
  four authored clips (sway/trudge/banks/lean) + Anim_Player_Underwater.blend + suit-kit FBX.
- Validation: 411/411 EditMode green; Play smokes (server==client facing, Aim-true projectile,
  bank/stride live-sampled, lamp beam verified); pre-code + post-impl adversarial reviews applied.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 13:56:02 -07:00
kronic c58439d33a LANTERN realignment P3: one look everywhere + scene surgery
- PostFX_Lantern.asset: the ONE shared grade (ACES, bloom 0.6 cool-tinted for the
  HDR gloam, vignette 0.28, faint teal filter) applied to Game, DevSandbox, and
  ArtStaging; PostFX_DarkSciFi / PostFX_Daylight / Sky_DaytimeProcedural deleted.
- Env_SeabedKit.prefab: ArtStaging's environment (seabed, flora, rocks, marine
  snow, caustics, warm pool, gloam fill, key light, StagingAmbiance animator)
  prefab-ized and placed in Game + DevSandbox; ArtStaging connected to it.
- Scene surgery: old DevSandbox.unity deleted; Gym.unity RENAMED DevSandbox.unity
  (GUID preserved -> GymSub wiring + the F1/F2 dev scripts that gate on the
  'DevSandbox' name come back to life). SyntyWorld root deleted from DevSandbox;
  BaseBiome/ExpeditionBiome/Slot1 deleted from Game.
- RenderSettings unified: no skybox, Exp2 teal fog {0.02,0.10,0.12} @ 0.035, flat
  near-black ambient {0.03,0.055,0.08}; camera clearFlags -> solid deep-water.
- ScenePolicy.IsGameplayScene() replaces the six scene.name=="Game" string gates
  (Game + DevSandbox share the dynamic look; menu/ArtStaging untouched).
- WorldAtmosphereSystem rewritten as water-column murk (LANTERN defaults; biome
  variants re-meant to kelp/trench/gloam-bloom; Ground_Arid tint block deleted).

390 green; Play-verified in Game: murk values live, warm-vs-cold reads, no errors.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-15 16:12:00 -07:00
kronic 593897d978 Art(shader): Emissive-Gloam master shader (in-shader flicker cadence)
ProjectM/EmissiveGloam — URP HLSL, HDR emission (Bloom-catching), with the
readability 'steady=true / flicker=false' channel as a material param
(_FlickerAmount), no script. Applied to the staging flora bulbs (cold, flicker).
The other two master shaders already exist (Lit URP graph, AnimatedLitShader).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-14 21:49:05 -07:00
kronic 27b41a37a4 Art(engine): ArtStaging lighting — value separation (grayscale-safe)
Warm beacon brightest/tightest (true light strong), gloam flora dimmer/softer +
emissive dialed down, so warm-vs-cold reads by value, not hue alone.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-14 21:42:33 -07:00
kronic 52f0b87148 Art(engine): ArtStaging underwater ambiance + hero triad baked in
Underwater staging: undulating seabed mesh (no platform edge), caustics
cookie spot, marine-snow particles, teal depth fog, and 'light is territory'
pool lighting (warm beacon + cold bioluminescent pools, deep dark between).
Baked posed statics into the slots: SM_Suit_Bathynaut + SM_Creature_Drowner
(glTFast) alongside the crate + flora clutter + rocks. Completes the A0
style-proof triad (prop+creature+suit) in-engine under gameplay conditions.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-14 21:32:14 -07:00
kronic 481cc54a28 Art(engine): ArtStaging style-proof scene + first baked statics
Assets/Scenes/ArtStaging.unity — murk env + warm-key/cold-gloam lights +
game-angle camera + bloom/ACES post volume + pedestal + SLOT markers.
Baked statics (glTFast): SM_Prop_CargoCrate (shared M_Lit_Palette) +
SM_Prop_GlowFlora (palette stalks + HDR-teal emissive bulbs -> blooms).
Validates the palette pipeline + Emissive-Gloam bloom in URP.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-14 14:56:52 -07:00
kronic 831c41c711 Art: LANTERN A0 material foundation — palette atlas + 3 master materials
The material-decision keystone (Art_Direction_Lantern / Lantern_Art_Pipeline_Recipes):
one shared palette atlas + ~3 materials, zero per-asset texturing.
- PaletteAtlas.png: 8x8 swatch grid encoding the ontology (warm-gold light / corpse-green
  + cold-blue gloam / lure-red bait / white-hot conversion / neutral / steel); sRGB, point,
  no-mip, clamp, uncompressed.
- M_Lit_Palette (statics, Lit URP graph), M_Skinned_Palette (creatures/suits, the
  deformation-aware AnimatedLitShader with per-instance tint + vertex-colour), M_Emissive_Gloam
  (URP/Lit + HDR emission; hue/intensity = the gloam param axis). All wired to the atlas.

Dedicated master-shader graphs (flicker param, Hybrid-Per-Instance on statics) + the
style-proof scene are the next A0 steps. Verified by material values, not just a render.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-14 08:47:31 -07:00
kronic 16e396841e Run Re-Do 2026-07-02 20:41:43 -07:00