Improve The In World Pokemon Status Effect Visuals #8

Merged
nathan merged 4 commits from feature/improve-pokemon-status-visuals into main 2026-09-11 18:03:27 +00:00
Member
No description provided.
Fixes
Some checks failed
Auto Assign / run (pull_request_target) Successful in 2s
Auto Assign / run (pull_request) Failing after 3s
CI / build-and-test (20.x) (pull_request) Failing after 24s
Model Preview / model-preview (pull_request) Failing after 13s
5496fcbba5
smell-of-curry was assigned by forgejo-actions 2026-08-08 20:26:37 +00:00
nathan force-pushed feature/improve-pokemon-status-visuals from 5496fcbba5
Some checks failed
Auto Assign / run (pull_request_target) Successful in 2s
Auto Assign / run (pull_request) Failing after 3s
CI / build-and-test (20.x) (pull_request) Failing after 24s
Model Preview / model-preview (pull_request) Failing after 13s
to ee5902314c
Some checks failed
Model Preview / model-preview (pull_request) Failing after 14s
CI / build-and-test (20.x) (pull_request) Failing after 17s
2026-08-17 23:42:26 +00:00
Compare
bot requested changes 2026-08-30 22:58:27 +00:00
bot left a comment

Resource-pack review of head ee5902314cd1 (companion to beh#717). mergeable=false vs current main — rebase before merge. No prior reviews.

Particles do exist at particles/status_effects/*.particle.json (pokeb:status_effect_burn_1, etc.) and match the entity particle_effects short names. Textures were renamed from textures/particle/buffs/ correctly. Major-status wiring (brn/frz/par/psn/slp/tox, dual-layer burn/freeze/tox) looks consistent across entity/pokemon/* and subpacks/3d/entity/pokemon/*.

Blocker: confused_1/2 and drain animations + particles + textures ship in this PR but are not registered on any client entity (particle_effects / animations / scripts.animate). Those visuals never play. Either wire them (if BEH sets pokeb:status_effect / a volatile flag for confusion/drain) or drop the unused assets so the pack does not carry dead identifiers.

Maintainability: ~2000 entity files each got the same 10-effect block. A shared animation controller would have been a smaller, safer diff — not a merge blocker, but this will hurt the next status add.

Resource-pack review of head `ee5902314cd1` (companion to beh#717). mergeable=false vs current main — rebase before merge. No prior reviews. Particles **do** exist at `particles/status_effects/*.particle.json` (`pokeb:status_effect_burn_1`, etc.) and match the entity `particle_effects` short names. Textures were renamed from `textures/particle/buffs/` correctly. Major-status wiring (brn/frz/par/psn/slp/tox, dual-layer burn/freeze/tox) looks consistent across `entity/pokemon/*` and `subpacks/3d/entity/pokemon/*`. **Blocker:** `confused_1/2` and `drain` animations + particles + textures ship in this PR but are **not** registered on any client entity (`particle_effects` / `animations` / `scripts.animate`). Those visuals never play. Either wire them (if BEH sets `pokeb:status_effect` / a volatile flag for confusion/drain) or drop the unused assets so the pack does not carry dead identifiers. Maintainability: ~2000 entity files each got the same 10-effect block. A shared animation controller would have been a smaller, safer diff — not a merge blocker, but this will hurt the next status add.
@ -0,0 +7,4 @@
"particle_effects": {
"0.0": {
"effect": "status_effect_confused_1"
}
Member

Ships with effect: "status_effect_confused_1" and identifier animation.pokemon.status_effect_confused_1, but no client entity maps that short name. Same for confused_2 and drain. Dead unless entities register the particle + animation + an animate query.

Ships with `effect: "status_effect_confused_1"` and identifier `animation.pokemon.status_effect_confused_1`, but no client entity maps that short name. Same for `confused_2` and `drain`. Dead unless entities register the particle + animation + an animate query.
nathan marked this conversation as resolved
@ -22,1 +28,4 @@
"status_effect_sleep": "pokeb:status_effect_sleep",
"status_effect_tox_1": "pokeb:status_effect_tox_1",
"status_effect_tox_2": "pokeb:status_effect_tox_2"
},
Member

Representative of every entity/pokemon/*.entity.json (and 3d subpack copies): particle_effects / animations / scripts.animate list brn/frz/par/psn/slp/tox only. This PR also adds confused_1, confused_2, and drain animations+particles. They are never referenced, so those effects cannot emit. Wire them here (and the rest of the species files) or remove the unused assets.

Representative of every `entity/pokemon/*.entity.json` (and 3d subpack copies): `particle_effects` / `animations` / `scripts.animate` list brn/frz/par/psn/slp/tox only. This PR also adds `confused_1`, `confused_2`, and `drain` animations+particles. They are never referenced, so those effects cannot emit. Wire them here (and the rest of the species files) or remove the unused assets.
nathan marked this conversation as resolved
nathan force-pushed feature/improve-pokemon-status-visuals from ee5902314c
Some checks failed
Model Preview / model-preview (pull_request) Failing after 14s
CI / build-and-test (20.x) (pull_request) Failing after 17s
to 8f1f2e7ada
Some checks failed
Model Preview / model-preview (pull_request) Failing after 15s
CI / build-and-test (20.x) (pull_request) Failing after 19s
2026-09-07 23:21:10 +00:00
Compare
Regen Entity Json Files
Some checks failed
Model Preview / model-preview (pull_request) Failing after 15s
CI / build-and-test (20.x) (pull_request) Failing after 20s
8de22ac02a
bot requested changes 2026-09-07 23:38:50 +00:00
bot left a comment

Re-review of head 8de22ac02a95 (after Init / Fixes / Regen Entity Json Files). Prior REQUEST_CHANGES on ee5902314cd1 is stale. mergeable=true vs current main now.

Major-status wiring (brn/frz/par/psn/slp/tox, dual-layer burn/freeze/tox) still looks consistent across entity/pokemon/* and subpacks/3d/entity/pokemon/*. Particles + textures for those statuses resolve.

Blocker (unchanged): confused_1 / confused_2 / drain animations, particles, and textures still ship, but none are registered on client entities (particle_effects / animations / scripts.animate). Spot-checked entity/pokemon/abra.entity.json and subpacks/3d/entity/pokemon/abra.entity.json — no confused* / drain keys. Those visuals never play. Wire them (if BEH sets a property/flag for confusion/drain) or drop the unused assets.

Scope: also unrelated render-controller churn in this head (heracrossmega.rc.json deleted, gyaradosmega.rc.json → torchic.rc.json, garchompmega.rc.json edit). Split that out of a status-visuals PR.

Maintainability note (not a blocker): ~2k entity files each got the same effect block — a shared animation controller would be safer for the next status add.

Companion: keep in sync with beh status-effect work (historically beh#717).

Re-review of head `8de22ac02a95` (after Init / Fixes / Regen Entity Json Files). Prior REQUEST_CHANGES on `ee5902314cd1` is stale. mergeable=true vs current main now. Major-status wiring (brn/frz/par/psn/slp/tox, dual-layer burn/freeze/tox) still looks consistent across `entity/pokemon/*` and `subpacks/3d/entity/pokemon/*`. Particles + textures for those statuses resolve. **Blocker (unchanged):** `confused_1` / `confused_2` / `drain` animations, particles, and textures still ship, but none are registered on client entities (`particle_effects` / `animations` / `scripts.animate`). Spot-checked `entity/pokemon/abra.entity.json` and `subpacks/3d/entity/pokemon/abra.entity.json` — no `confused*` / `drain` keys. Those visuals never play. Wire them (if BEH sets a property/flag for confusion/drain) or drop the unused assets. **Scope:** also unrelated render-controller churn in this head (`heracrossmega.rc.json` deleted, `gyaradosmega.rc.json` → `torchic.rc.json`, `garchompmega.rc.json` edit). Split that out of a status-visuals PR. Maintainability note (not a blocker): ~2k entity files each got the same effect block — a shared animation controller would be safer for the next status add. Companion: keep in sync with beh status-effect work (historically beh#717).
Outdated
Member

Ack — same conclusion as on the current head: unused in entities means delete the orphaned assets, do not leave them in the pack. Tracking that on the live review @ 366674875625.

Ack — same conclusion as on the current head: unused in entities means **delete the orphaned assets**, do not leave them in the pack. Tracking that on the live review @ `366674875625`.
nathan marked this conversation as resolved
Member

Still missing: after the tox entries, there is no status_effect_confused_1 / _2 / status_effect_drain in particle_effects, animations, or scripts.animate — yet those assets exist under animations/status_effects/, particles/status_effects/, and textures/particle/status_effects/. Same gap on the 3d subpack entity. Wire or delete.

**Still missing:** after the tox entries, there is no `status_effect_confused_1` / `_2` / `status_effect_drain` in `particle_effects`, `animations`, or `scripts.animate` — yet those assets exist under `animations/status_effects/`, `particles/status_effects/`, and `textures/particle/status_effects/`. Same gap on the 3d subpack entity. Wire or delete.
Author
Member

there not used in the entity files

there not used in the entity files
nathan marked this conversation as resolved
Fix Format Versions
Some checks failed
Model Preview / model-preview (pull_request) Failing after 21s
CI / build-and-test (20.x) (pull_request) Failing after 27s
3666748756
bot requested changes 2026-09-08 16:28:50 +00:00
bot left a comment

Re-review of head 366674875625 ("Fix Format Versions"). Prior REQUEST_CHANGES on 8de22ac02a95 is stale. mergeable=true vs current main.

Delta vs last reviewed head is format-version / animation cleanup on wrist_charm, hyde, rotom appliances, gymleader trainers, charms, and entity/hyde.json — not the status-entity wiring.

Major-status wiring (brn/frz/par/psn/slp/tox, dual-layer burn/freeze/tox) still looks consistent on spot-checks (entity/pokemon/abra.entity.json, pikachu.entity.json, and matching subpacks/3d/entity/pokemon/*). Particles + textures for those statuses resolve under particles/status_effects/ and textures/particle/status_effects/.

Blocker (unchanged): confused_1 / confused_2 / drain animations, particles, and textures still ship, but none are registered on client entities (particle_effects / animations / scripts.animate). Spot-checked abra + pikachu (2d and 3d abra) — no confused* / drain keys. Those visuals never play. Wire them (if BEH sets a property/flag for confusion/drain) or drop the unused assets.

Scope (unchanged): unrelated render-controller churn still in the PR — subpacks/3d/render_controllers/pokemon/heracrossmega.rc.json deleted, gyaradosmega.rc.json → torchic.rc.json, garchompmega.rc.json edit. Split that out of a status-visuals PR.

Maintainability note (not a blocker): ~2k entity files each got the same effect block — a shared animation controller would be safer for the next status add.

Companion: keep in sync with beh status-effect work (historically beh#717). Do not merge res independently of the matching beh companion.

Re-review of head `366674875625` ("Fix Format Versions"). Prior REQUEST_CHANGES on `8de22ac02a95` is stale. mergeable=true vs current main. Delta vs last reviewed head is format-version / animation cleanup on wrist_charm, hyde, rotom appliances, gymleader trainers, charms, and `entity/hyde.json` — **not** the status-entity wiring. Major-status wiring (brn/frz/par/psn/slp/tox, dual-layer burn/freeze/tox) still looks consistent on spot-checks (`entity/pokemon/abra.entity.json`, `pikachu.entity.json`, and matching `subpacks/3d/entity/pokemon/*`). Particles + textures for those statuses resolve under `particles/status_effects/` and `textures/particle/status_effects/`. **Blocker (unchanged):** `confused_1` / `confused_2` / `drain` animations, particles, and textures still ship, but none are registered on client entities (`particle_effects` / `animations` / `scripts.animate`). Spot-checked abra + pikachu (2d and 3d abra) — no `confused*` / `drain` keys. Those visuals never play. Wire them (if BEH sets a property/flag for confusion/drain) or drop the unused assets. **Scope (unchanged):** unrelated render-controller churn still in the PR — `subpacks/3d/render_controllers/pokemon/heracrossmega.rc.json` deleted, `gyaradosmega.rc.json` → `torchic.rc.json`, `garchompmega.rc.json` edit. Split that out of a status-visuals PR. Maintainability note (not a blocker): ~2k entity files each got the same effect block — a shared animation controller would be safer for the next status add. Companion: keep in sync with beh status-effect work (historically beh#717). Do not merge res independently of the matching beh companion.
Outdated
Member

(retracted — probe)

(retracted — probe)
Member

Ack — if client entities intentionally do not register confused_1 / confused_2 / drain, please drop those unused animations + matching particles + textures from this PR (and keep them out of regen). Shipping dead identifiers is the remaining blocker; wiring is only needed if BEH will actually drive them.

Ack — if client entities intentionally do not register `confused_1` / `confused_2` / `drain`, please **drop** those unused animations + matching particles + textures from this PR (and keep them out of regen). Shipping dead identifiers is the remaining blocker; wiring is only needed if BEH will actually drive them.
Member

Same ask on the entity side: since these keys are intentionally omitted, remove the unused confused_* / drain asset set rather than leaving them orphaned. No new review until head moves.

Same ask on the entity side: since these keys are intentionally omitted, remove the unused `confused_*` / `drain` asset set rather than leaving them orphaned. No new review until head moves.
Member

Ack on generation desync — demoting this from a hard scope split. Fine to leave if regen noise; still worth a one-line note in the PR body so merge does not look like intentional torchic/gyaradosmega churn.

Ack on generation desync — demoting this from a hard scope split. Fine to leave if regen noise; still worth a one-line note in the PR body so merge does not look like intentional torchic/gyaradosmega churn.
nathan marked this conversation as resolved
@ -0,0 +1,14 @@
{
"format_version": "1.10.0",
"animations": {
"animation.pokemon.status_effect_confused_1": {
Member

Blocker: this animation (and confused_2 / drain) ships with matching particles + textures, but no client entity registers them under particle_effects / animations / scripts.animate (spot-checked abra + pikachu). Wire or drop — otherwise these identifiers are dead weight.

**Blocker:** this animation (and `confused_2` / `drain`) ships with matching particles + textures, but no client entity registers them under `particle_effects` / `animations` / `scripts.animate` (spot-checked `abra` + `pikachu`). Wire or drop — otherwise these identifiers are dead weight.
Author
Member

client entity's dont use them

client entity's dont use them
nathan marked this conversation as resolved
@ -22,0 +27,4 @@
"status_effect_poisoned": "pokeb:status_effect_poisoned",
"status_effect_sleep": "pokeb:status_effect_sleep",
"status_effect_tox_1": "pokeb:status_effect_tox_1",
"status_effect_tox_2": "pokeb:status_effect_tox_2"
Member

Blocker (same as prior heads): status block stops at brn/frz/par/psn/slp/tox. Missing confused_1/confused_2/drain keys here (and across the regenerated entity set) while those assets exist in the PR.

**Blocker (same as prior heads):** status block stops at brn/frz/par/psn/slp/tox. Missing `confused_1`/`confused_2`/`drain` keys here (and across the regenerated entity set) while those assets exist in the PR.
nathan marked this conversation as resolved
@ -0,0 +1,36 @@
{
Member

Scope: this is still the gyaradosmega.rc.json → torchic.rc.json rename (plus heracrossmega delete / garchompmega edit). Unrelated to status-effect visuals — please split.

**Scope:** this is still the `gyaradosmega.rc.json` → `torchic.rc.json` rename (plus heracrossmega delete / garchompmega edit). Unrelated to status-effect visuals — please split.
Author
Member

comes desync in file generation, ignore it

comes desync in file generation, ignore it
nathan marked this conversation as resolved
nathan force-pushed feature/improve-pokemon-status-visuals from 3666748756
Some checks failed
Model Preview / model-preview (pull_request) Failing after 21s
CI / build-and-test (20.x) (pull_request) Failing after 27s
to cb6a6e5407
Some checks failed
CI / build-and-test (20.x) (pull_request) Failing after 19s
Model Preview / model-preview (pull_request) Failing after 13s
2026-09-09 20:49:59 +00:00
Compare
bot requested changes 2026-09-09 20:59:21 +00:00
bot left a comment

Re-review of head cb6a6e540776 (force-push / rewritten history vs prior 366674875625). Prior REQUEST_CHANGES#2828 is stale for this SHA. mergeable=true vs current main.

Delta looks like the same status-visuals stack plus format-version / animation cleanup (wrist_charm, hyde, rotom appliances, gymleader trainers, charms) — not a fix for the status-entity wiring gap.

Major-status wiring (brn/frz/par/psn/slp/tox, dual-layer burn/freeze/tox) still looks consistent on spot-checks (entity/pokemon/abra.entity.json, pikachu.entity.json, and matching subpacks/3d/entity/pokemon/*). Particles + textures for those statuses resolve under particles/status_effects/ and textures/particle/status_effects/.

Blocker (unchanged): confused_1 / confused_2 / drain animations, particles, and textures still ship, but none are registered on client entities (particle_effects / animations / scripts.animate). Spot-checked abra + pikachu (2d and 3d abra) — no confused* / drain keys. Those visuals never play. Wire them (if BEH sets a property/flag for confusion/drain) or drop the unused assets.

Scope (unchanged): unrelated render-controller churn still in the PR — subpacks/3d/render_controllers/pokemon/heracrossmega.rc.json deleted, gyaradosmega.rc.json → torchic.rc.json, garchompmega.rc.json edit, plus non-status animation/format churn. Split that out of a status-visuals PR.

Maintainability note (not a blocker): ~2k entity files each got the same effect block — a shared animation controller would be safer for the next status add.

Companion: keep in sync with beh status-effect work (beh#717). Do not merge res independently of the matching beh companion. No open same-repo issues to link.

Re-review of head `cb6a6e540776` (force-push / rewritten history vs prior `366674875625`). Prior REQUEST_CHANGES#2828 is stale for this SHA. mergeable=true vs current main. Delta looks like the same status-visuals stack plus format-version / animation cleanup (wrist_charm, hyde, rotom appliances, gymleader trainers, charms) — **not** a fix for the status-entity wiring gap. Major-status wiring (brn/frz/par/psn/slp/tox, dual-layer burn/freeze/tox) still looks consistent on spot-checks (`entity/pokemon/abra.entity.json`, `pikachu.entity.json`, and matching `subpacks/3d/entity/pokemon/*`). Particles + textures for those statuses resolve under `particles/status_effects/` and `textures/particle/status_effects/`. **Blocker (unchanged):** `confused_1` / `confused_2` / `drain` animations, particles, and textures still ship, but none are registered on client entities (`particle_effects` / `animations` / `scripts.animate`). Spot-checked abra + pikachu (2d and 3d abra) — no `confused*` / `drain` keys. Those visuals never play. Wire them (if BEH sets a property/flag for confusion/drain) or drop the unused assets. **Scope (unchanged):** unrelated render-controller churn still in the PR — `subpacks/3d/render_controllers/pokemon/heracrossmega.rc.json` deleted, `gyaradosmega.rc.json` → `torchic.rc.json`, `garchompmega.rc.json` edit, plus non-status animation/format churn. Split that out of a status-visuals PR. Maintainability note (not a blocker): ~2k entity files each got the same effect block — a shared animation controller would be safer for the next status add. Companion: keep in sync with beh status-effect work ([beh#717](https://git.pokebedrock.com/pokebedrock/pokebedrock-beh/pulls/717)). Do not merge res independently of the matching beh companion. No open same-repo issues to link.
@ -0,0 +1,14 @@
{
"format_version": "1.10.0",
"animations": {
"animation.pokemon.status_effect_confused_1": {
Member

Dead asset unless client entities register + animate it. Same for confused_2 and drain. Either wire across the entity set or remove these animations/particles/textures from the PR.

Dead asset unless client entities register + animate it. Same for `confused_2` and `drain`. Either wire across the entity set or remove these animations/particles/textures from the PR.
nathan marked this conversation as resolved
@ -22,0 +27,4 @@
"status_effect_poisoned": "pokeb:status_effect_poisoned",
"status_effect_sleep": "pokeb:status_effect_sleep",
"status_effect_tox_1": "pokeb:status_effect_tox_1",
"status_effect_tox_2": "pokeb:status_effect_tox_2"
Member

Blocker: major statuses are registered here, but confused_1 / confused_2 / drain are not in particle_effects, animations, or scripts.animate (same gap on pikachu + 3d abra). Those assets ship in this PR and never play. Wire them to a BEH-driven property/flag, or drop the unused assets.

**Blocker:** major statuses are registered here, but `confused_1` / `confused_2` / `drain` are not in `particle_effects`, `animations`, or `scripts.animate` (same gap on pikachu + 3d abra). Those assets ship in this PR and never play. Wire them to a BEH-driven property/flag, or drop the unused assets.
nathan marked this conversation as resolved
Member

Scope: render-controller churn (garchompmega edit, heracrossmega delete, gyaradosmega→torchic rename) is unrelated to status-effect visuals — split out of this PR.

**Scope:** render-controller churn (`garchompmega` edit, `heracrossmega` delete, `gyaradosmega`→`torchic` rename) is unrelated to status-effect visuals — split out of this PR.
nathan marked this conversation as resolved
nathan force-pushed feature/improve-pokemon-status-visuals from cb6a6e5407
Some checks failed
CI / build-and-test (20.x) (pull_request) Failing after 19s
Model Preview / model-preview (pull_request) Failing after 13s
to 4cb33120e5
Some checks failed
Model Preview / model-preview (pull_request) Failing after 25s
CI / build-and-test (20.x) (pull_request) Failing after 30s
2026-09-11 18:01:55 +00:00
Compare
nathan merged commit 4de0923b2e into main 2026-09-11 18:03:27 +00:00
nathan deleted branch feature/improve-pokemon-status-visuals 2026-09-11 18:03:27 +00:00
Sign in to join this conversation.
No reviewers
bot
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
pokebedrock/pokebedrock-res!8
No description provided.