Skip to content

Personality speech for custom companions + natural hide animation + spin clip fix - #7

Merged
moiz-za merged 1 commit into
mainfrom
feature/custom-voice-hide-polish
Aug 5, 2026
Merged

Personality speech for custom companions + natural hide animation + spin clip fix#7
moiz-za merged 1 commit into
mainfrom
feature/custom-voice-hide-polish

Conversation

@moiz-za

@moiz-za moiz-za commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Summary

Gives user-imported companions a personality-matched voice, makes the hide animation look natural for every companion, and properly fixes the spin/roll clipping.

Personality speech for custom companions (ISS-042)

Custom companions have no species-specific dialogue, so every bubble used the neutral generic pools regardless of personality. Added PERSONALITY_POOLS covering friendly / curious / lazy / energetic / mischievous across pet, mischief, idle, activity, clipboard, and screenshot signals. pickReaction now resolves: character speech → personality pool → neutral generic pool, so:

  • Custom imports talk in a voice matching their personality (e.g. a mischievous pet says "Hehe, I did a thing~").
  • Built-in companions keep their species themes (their own speech wins).

Hide animation redesigned (ISS-041)

The old hide squashed the sprite flat (scale(1.15, 0.5)) and faded it — looked bad for all companions. Now it ducks down behind the window's bottom edge (translateY / positive dy, mild squash ~0.9, near-full opacity), reading naturally as "hiding behind the corner" for sprites and cutouts alike.

Spin clip fix follow-up (ISS-039)

The first fix didn't stick because #creature { transform-origin: 50% 90% } (ID selector) was overriding the .anim-spin center-origin rule. Switched to #creature.anim-spin and tightened the scale to 0.75 for a comfortable margin.

Verification

  • Typecheck, lint, check:arch, format clean; 174 tests green; 19/19 packs validated; boot smoke passed; local Mischief.app rebuilt and running.

…on + spin clip fix

- ISS-042: add PERSONALITY_POOLS (friendly/curious/lazy/energetic/
  mischievous x pet/mischief/idle/activity/clipboard/screenshot) so
  user-imported companions without speech talk in a personality-matched
  voice; pickReaction order: char speech -> personality -> neutral pool
- ISS-041: redesign hide animation to duck the companion down behind the
  window's bottom edge (translateY/dy, mild squash, near-full opacity)
  instead of flattening + fading, for every companion
- ISS-039 follow-up: use #creature.anim-spin selector (ID rule was
  overriding the center transform-origin) and tighten spin scale to 0.75
- tests: personality pools + custom-companion fallback + hide duck-down

174 tests green, 19 packs validated, local Mischief.app rebuilt
@moiz-za
moiz-za merged commit a4f0f87 into main Aug 5, 2026
5 checks passed
@moiz-za
moiz-za deleted the feature/custom-voice-hide-polish branch August 5, 2026 08:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant