diff --git a/docs/propfix-wu-strategist-fire-v3-animation.gif b/docs/propfix-wu-strategist-fire-v3-animation.gif new file mode 100644 index 0000000..b9276da Binary files /dev/null and b/docs/propfix-wu-strategist-fire-v3-animation.gif differ diff --git a/docs/propfix-wu-strategist-fire-v3-battle-composite.png b/docs/propfix-wu-strategist-fire-v3-battle-composite.png new file mode 100644 index 0000000..36cffaf Binary files /dev/null and b/docs/propfix-wu-strategist-fire-v3-battle-composite.png differ diff --git a/docs/propfix-wu-strategist-fire-v3-before-after.png b/docs/propfix-wu-strategist-fire-v3-before-after.png new file mode 100644 index 0000000..fbba1e1 Binary files /dev/null and b/docs/propfix-wu-strategist-fire-v3-before-after.png differ diff --git a/docs/propfix-wu-strategist-fire-v3-browser-check.png b/docs/propfix-wu-strategist-fire-v3-browser-check.png new file mode 100644 index 0000000..9f788dd Binary files /dev/null and b/docs/propfix-wu-strategist-fire-v3-browser-check.png differ diff --git a/docs/propfix-wu-strategist-fire-v3-contact.png b/docs/propfix-wu-strategist-fire-v3-contact.png new file mode 100644 index 0000000..751aea0 Binary files /dev/null and b/docs/propfix-wu-strategist-fire-v3-contact.png differ diff --git a/docs/propfix-wu-strategist-fire-v3-report.md b/docs/propfix-wu-strategist-fire-v3-report.md new file mode 100644 index 0000000..481fb34 --- /dev/null +++ b/docs/propfix-wu-strategist-fire-v3-report.md @@ -0,0 +1,28 @@ +# Wu Fire Tactician Strategist v3 report + +- source: `propfix-wu-strategist-fire-v3-source.png` +- base status: ok +- action status: ok +- base partial alpha: 0, opaque pixels: 2186968 +- action partial alpha: 0, opaque pixels: 4582840 +- base frame border hits: 0 +- action frame border hits: 0 +- base empty frames: 0 +- action empty frames: 0 +- base bbox width range: 162..205 +- base bbox height range: 288..295 +- base bottom range: 303..303 +- action bbox width range: 133..218 +- action bbox height range: 284..295 +- action bottom range: 303..303 +- contact: `propfix-wu-strategist-fire-v3-contact.png` +- animation: `propfix-wu-strategist-fire-v3-animation.gif` +- before/after: `propfix-wu-strategist-fire-v3-before-after.png` +- scale compare: `propfix-wu-strategist-fire-v3-scale-compare.png` +- battle composite: `propfix-wu-strategist-fire-v3-battle-composite.png` +- browser check: `propfix-wu-strategist-fire-v3-browser-check.png` +- identity note: replaced the white-fan fire strategist read with an ember-red Wu fire tactician centered on bronze fire tally, oil-map board, red command tablet, and talisman strips. +- local build: passed +- local browser console errors: 0 +- local browser battle check: passed at `http://127.0.0.1:4173/heros_web/?debug&debugSpritePreview=unit-wu-strategist-fire&v=wu-fire-v3-local` +- note: battle composite is a scale review image; gameplay roster is unchanged during sample approval diff --git a/docs/propfix-wu-strategist-fire-v3-scale-compare.png b/docs/propfix-wu-strategist-fire-v3-scale-compare.png new file mode 100644 index 0000000..715f4c0 Binary files /dev/null and b/docs/propfix-wu-strategist-fire-v3-scale-compare.png differ diff --git a/docs/propfix-wu-strategist-fire-v3-source.png b/docs/propfix-wu-strategist-fire-v3-source.png new file mode 100644 index 0000000..7b7e28f Binary files /dev/null and b/docs/propfix-wu-strategist-fire-v3-source.png differ diff --git a/docs/strategist-character-direction.md b/docs/strategist-character-direction.md index 8bf100b..87e8cac 100644 --- a/docs/strategist-character-direction.md +++ b/docs/strategist-character-direction.md @@ -32,14 +32,15 @@ Zhuge Liang owns the large white feather fan and white-robed sage read. Other st ## Next Representative Fixes -1. `unit-wu-strategist-fire`: replace the white-fan read with a fire tally, oil map, or talisman. -2. `unit-wu-strategist-river`: replace the white-fan read with a water chart, oar-like baton, or scroll tube. -3. `unit-shu-strategist-field`: keep a practical frontline staff read with field map and short baton. +1. `unit-wu-strategist-river`: replace the white-fan read with a water chart, oar-like baton, or scroll tube. +2. `unit-shu-strategist-field`: keep a practical frontline staff read with field map and short baton. +3. `unit-wei-strategist-black`: verify the covert adviser keeps dark props instead of a pale fan read. Completed representative pass: - `unit-wei-strategist`: changed from white-fan strategist to blue-gray Wei court analyst with bronze command tablet, war ledger, and compact map board. - `unit-wu-strategist`: changed from white-fan strategist to red-brown Wu river adviser with naval chart, river map board, and lacquer command baton. - `unit-shu-strategist-white`: changed from white-fan pale strategist to muted jade Shu civil aide with document bundle, brush case, bamboo-slip ledger, and sealed letters. +- `unit-wu-strategist-fire`: changed from white-fan fire strategist to ember-red fire tactician with bronze tally, oil-map board, red command tablet, and talisman strips. Every representative fix should include contact sheet, animation GIF, battle preview, before/after, alpha audit, build, and browser check. diff --git a/docs/strategist-prop-audit.md b/docs/strategist-prop-audit.md index cdb1d0c..211fcd1 100644 --- a/docs/strategist-prop-audit.md +++ b/docs/strategist-prop-audit.md @@ -30,7 +30,7 @@ Detailed per-unit visual direction lives in `strategist-character-direction.md`. | `unit-wei-strategist-black` | dark strategist prop variant | acceptable if fan stays dark and compact | later identity pass | | `unit-wei-strategist-blue` | blue records officer variant | acceptable if props are records/maps | later identity pass | | `unit-wu-strategist` | naval chart, lacquer red baton, river map board | white feather fan removed; Wu river adviser identity restored | fixed in representative pass | -| `unit-wu-strategist-fire` | white fan in fire strategist poses | should become fire tally / oil map / talisman | later prop cleanup | +| `unit-wu-strategist-fire` | bronze fire tally, oil-map board, red command tablet, talisman strips | white fan read removed; fire-plan tactician identity restored | fixed in representative pass | | `unit-wu-strategist-river` | white fan in river strategist poses | should become water chart / oar-like baton | later prop cleanup | | `unit-nanman-shaman` | ritual staff / tribal ornaments | not a white feather fan | keep | | `unit-nanman-shaman-ember` | ritual staff / ember ornaments | not a white feather fan | keep | @@ -48,8 +48,8 @@ The first correction batch changes: Next representative cleanup order: -1. `unit-wu-strategist-fire` -2. `unit-wu-strategist-river` -3. `unit-shu-strategist-field` +1. `unit-wu-strategist-river` +2. `unit-shu-strategist-field` +3. `unit-wei-strategist-black` Later cleanup should remove white-feather-fan reads from remaining generic strategist variants after the representative fixes are verified. diff --git a/docs/unit-sprite-batch-queue.json b/docs/unit-sprite-batch-queue.json index b62a766..ce81580 100644 --- a/docs/unit-sprite-batch-queue.json +++ b/docs/unit-sprite-batch-queue.json @@ -898,10 +898,10 @@ "baseStatus": "ok", "actionStatus": "ok", "battleBasePx": [ - 27.2, - 33.1, - 45.7, - 46.3 + 25.9, + 32.7, + 46.0, + 47.1 ], "spec": null }, diff --git a/docs/unit-sprite-batch-queue.md b/docs/unit-sprite-batch-queue.md index db17375..8a74500 100644 --- a/docs/unit-sprite-batch-queue.md +++ b/docs/unit-sprite-batch-queue.md @@ -115,7 +115,7 @@ No next unit is currently defined. | `unit-wu-officer-harbor` | approved reference | approved-baseline | technical ok | 25.2..42.5 x 45.4..46.0 | | | `unit-wu-officer-river` | approved reference | approved-baseline | technical ok | 26.2..42.5 x 43.6..45.7 | | | `unit-wu-strategist` | approved reference | approved-baseline | technical ok | 25.7..35.0 x 45.0..46.3 | | -| `unit-wu-strategist-fire` | approved reference | approved-baseline | technical ok | 27.2..33.1 x 45.7..46.3 | | +| `unit-wu-strategist-fire` | approved reference | approved-baseline | technical ok | 25.9..32.7 x 46.0..47.1 | | | `unit-wu-strategist-river` | approved reference | approved-baseline | technical ok | 26.2..39.8 x 45.7..47.0 | | | `unit-wu-yi` | approved reference | approved-baseline | technical ok | 24.4..33.4 x 46.0..46.3 | | diff --git a/docs/unit-sprite-review-approved-and-pending.png b/docs/unit-sprite-review-approved-and-pending.png index 8457b86..9316b35 100644 Binary files a/docs/unit-sprite-review-approved-and-pending.png and b/docs/unit-sprite-review-approved-and-pending.png differ diff --git a/docs/unit-sprite-review-batch4-wu.png b/docs/unit-sprite-review-batch4-wu.png index 8df9160..40ae054 100644 Binary files a/docs/unit-sprite-review-batch4-wu.png and b/docs/unit-sprite-review-batch4-wu.png differ diff --git a/docs/unit-sprite-review-index.png b/docs/unit-sprite-review-index.png index a44cf5d..1fdc303 100644 Binary files a/docs/unit-sprite-review-index.png and b/docs/unit-sprite-review-index.png differ diff --git a/docs/unit-sprite-rework-audit.json b/docs/unit-sprite-rework-audit.json index 2cf86c3..d3d663a 100644 --- a/docs/unit-sprite-rework-audit.json +++ b/docs/unit-sprite-rework-audit.json @@ -4757,22 +4757,22 @@ 1252 ], "partial_alpha": 0, - "opaque_pixels": 2175298, + "opaque_pixels": 2186968, "border_hits": 0, - "min_width": 170, - "max_width": 207, - "min_height": 286, - "max_height": 290, + "min_width": 162, + "max_width": 205, + "min_height": 288, + "max_height": 295, "min_bottom": 303, "max_bottom": 303, "empty_frames": 0, - "width_swing": 37, - "height_swing": 4, + "width_swing": 43, + "height_swing": 7, "bottom_swing": 0, - "battle_min_width_px": 27.2, - "battle_max_width_px": 33.1, - "battle_min_height_px": 45.7, - "battle_max_height_px": 46.3, + "battle_min_width_px": 25.9, + "battle_max_width_px": 32.7, + "battle_min_height_px": 46.0, + "battle_max_height_px": 47.1, "status": "ok" }, "actions": { @@ -4783,21 +4783,21 @@ 1252 ], "partial_alpha": 0, - "opaque_pixels": 5096970, + "opaque_pixels": 4582840, "border_hits": 0, - "min_width": 163, - "max_width": 248, - "min_height": 286, + "min_width": 133, + "max_width": 218, + "min_height": 284, "max_height": 295, "min_bottom": 303, "max_bottom": 303, "empty_frames": 0, "width_swing": 85, - "height_swing": 9, + "height_swing": 11, "bottom_swing": 0, - "battle_min_width_px": 26.0, - "battle_max_width_px": 39.6, - "battle_min_height_px": 45.7, + "battle_min_width_px": 21.2, + "battle_max_width_px": 34.8, + "battle_min_height_px": 45.4, "battle_max_height_px": 47.1, "status": "ok" } diff --git a/docs/unit-sprite-rework-audit.md b/docs/unit-sprite-rework-audit.md index 8eabbb6..a62c11c 100644 --- a/docs/unit-sprite-rework-audit.md +++ b/docs/unit-sprite-rework-audit.md @@ -134,7 +134,7 @@ Visual review boards are generated by `scripts/render-unit-sprite-review-boards. | batch4-wu | approved-baseline | `unit-wu-officer-harbor` | ok | ok | 158..266 x 284..288 | 153..291 x 273..294 | 25.2..42.5 x 45.4..46.0 | w108 h4 b0 | | batch4-wu | approved-baseline | `unit-wu-officer-river` | ok | ok | 164..266 x 273..286 | 161..286 x 272..293 | 26.2..42.5 x 43.6..45.7 | w102 h13 b0 | | batch4-wu | approved-baseline | `unit-wu-strategist` | ok | ok | 161..219 x 282..290 | 135..221 x 282..295 | 25.7..35.0 x 45.0..46.3 | w58 h8 b0 | -| batch4-wu | approved-baseline | `unit-wu-strategist-fire` | ok | ok | 170..207 x 286..290 | 163..248 x 286..295 | 27.2..33.1 x 45.7..46.3 | w37 h4 b0 | +| batch4-wu | approved-baseline | `unit-wu-strategist-fire` | ok | ok | 162..205 x 288..295 | 133..218 x 284..295 | 25.9..32.7 x 46.0..47.1 | w43 h7 b0 | | batch4-wu | approved-baseline | `unit-wu-strategist-river` | ok | ok | 164..249 x 286..294 | 159..244 x 286..295 | 26.2..39.8 x 45.7..47.0 | w85 h8 b0 | | batch4-wu | approved-baseline | `unit-wu-yi` | ok | ok | 153..209 x 288..290 | 147..238 x 282..288 | 24.4..33.4 x 46.0..46.3 | w56 h2 b0 | | batch7-unique-officer | approved-baseline | `unit-yan-yan` | ok | ok | 190..235 x 286..288 | 170..242 x 271..295 | 30.4..37.5 x 45.7..46.0 | w45 h2 b0 | diff --git a/src/assets/images/units/unit-wu-strategist-fire-actions.png b/src/assets/images/units/unit-wu-strategist-fire-actions.png index 17bc79d..2f552d9 100644 Binary files a/src/assets/images/units/unit-wu-strategist-fire-actions.png and b/src/assets/images/units/unit-wu-strategist-fire-actions.png differ diff --git a/src/assets/images/units/unit-wu-strategist-fire.png b/src/assets/images/units/unit-wu-strategist-fire.png index 5cea301..62fcfec 100644 Binary files a/src/assets/images/units/unit-wu-strategist-fire.png and b/src/assets/images/units/unit-wu-strategist-fire.png differ