fix Kuro Chibi sprite consistency and animation states - #53
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (1)
👮 Files not reviewed due to content moderation or server errors (1)
📝 WalkthroughWalkthrough更新 Kuro Chibi 提交的角色分类、标签及精灵图哈希;其余提交字段保持不变。 Changes宠物提交元数据
Estimated code review effort: 1 (Trivial) | ~3 minutes Possibly related PRs
Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
legeling
left a comment
There was a problem hiding this comment.
Thanks for the repair work. The transparency cleanup and the updated waiting/review rows are improvements, but this is not ready to merge yet:
submission.jsonchanges the category fromOriginal Characters/original-charactertoGame Characters/game-character. PR #51 identifies the canonical identity asoriginal/kuroneko-night/kuro, and no game source is provided. The PR summary also says the existing category is preserved, while the diff changes it. Please revert these two metadata fields unless there is a verifiable game source.- Rows 1 and 2 do not satisfy the V2 directional locomotion contract.
running-rightandrunning-leftare nearly identical front-facing loops; each needs a readable alternating cadence and an unmistakable opposite travel/facing direction. - The
000 upcardinal is too close to neutral at normal pet size. V2 cardinals are hard gates, so up must be unmistakable rather than a very subtle eye shift. - Row 7 regresses from a recognizable desk/task-work animation to holding an unclear black circular object. The non-directional
runningrow represents active task work/processing and should read clearly as that state.
Local verification passed (npm run validate:pr, npm run lint, and validate_atlas.py --require-v2), so these are visual/semantic and metadata blockers rather than structural failures.
Summary
This PR updates the existing
kuro-chibi--kuroneko-nightpet. It is a repair of the existing submission, not a new pet submission.The update addresses the V2 directional-state and
000 upreview blockers, preserves the previously accepted transparency and waiting/review improvements, and adds a verifiable game source for Kuro.Directional drag states
Rows 1 and 2 have been replaced with a new eight-frame directional drag animation.
running-rightKuro is now visibly dragged toward screen-right from an implied lift point at the upper back:
><expression communicates mild, cute reluctance.The collar bell is registered at the same visual coordinate across all eight frames. Its maximum measured deviation is under one pixel. We selected the bell as the stable anchor because it sits close to the implied upper-back pull point, while still allowing the head, hair, limbs, and tail to move naturally.
running-leftrunning-leftis a deterministic per-frame mirror of the approvedrunning-rightrow.This produces an unmistakably opposite direction while retaining exactly the same scale, timing, cadence, silhouette quality, and registration. Mirroring an approved directional row is permitted by the V2 pet workflow when the design remains safe to mirror.
Why this is a drag animation rather than literal running
We intentionally did not replace these rows with a conventional sprinting animation.
These states are used while the pet is moved horizontally, and the V2 directional-state contract permits directional drag movement expressed through the body, limbs, hair, tail, and props. It does not require the character to run on the ground.
A reluctant airborne drag also fits Kuro's shy personality better than an energetic sprint. The new rows still satisfy the important semantic requirements: opposite travel directions, readable motion cadence, full-body movement, and no external motion effects.
000 upcardinalThe previous
000frame was too close to a neutral forward-facing pose at normal pet size.It has been replaced with a clearly upward-looking frame featuring:
192x208.Only the failing
000cell was replaced. The remaining 15 look-direction cells were preserved because their direction, identity, scale, and continuity were already acceptable.Existing repair improvements retained
This revision retains the improvements already present in the repair:
waitingandreviewwith more recognizable actions;Items intentionally not changed
Non-directional
runningrowWe did not replace the non-directional
runningrow.The black circular element is not an unrelated object. It is the rotary dial on an old-style landline telephone base, while Kuro holds the handset to her ear. The full loop represents an active work call.
This remains consistent with the non-directional
runningstate, which represents active task work, processing, communication, or focused effort rather than literal foot-running. The telephone interaction is intentional and was kept because it communicates a work-in-progress state without adding scenery, UI, text, or detached effects.Game character category
We did not revert
Game CharacterstoOriginal Characters.Kuro is a character from as the Night's Reincarnation. The Steam store page contains a character panel that identifies Kuro by name:
https://store.steampowered.com/app/2899760/as_the_Nights_Reincarnation/
The URL is now recorded in
submission.jsonassource_url, so the category andgame-charactertag have a verifiable public source.The final pet spritesheet is still an independently AI-generated and manually adapted Codex asset by
KuroNeko-night. The game artwork was used only as a character identity reference; no reference image pixels are included in the submitted package. The submission remains limited to non-commercial use.Other unchanged fields and assets
This repair does not change:
spriteVersionNumber: 2;000 up;Validation
1536x2288validate_atlas.py --require-v2: passed#0000FFgeneration key: passed0spritesheet_sha256matches the submittedspritesheet.webpsubmission.jsonpet.jsonspritesheet.webpThe previous repository-level
npm run validate:prandnpm run lintchecks were green. Repository CI can rerun them against this final visual revision.Final contact sheet
Summary by CodeRabbit