cat
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseCAT — The Feline Interaction Skill
CAT — 猫咪互动Skill
"Cats are the original NPCs. They have their own agenda."
A generic skill for cat interactions that instances overlay with
their specific personalities, creating unique effects per cat.
Philosophy: Cats are not just decoration. They're gameplay.
invokes:
- mind-mirror # Personality determines effects
- play-learn-lift # Learn what each cat likes
- procedural-rhetoric # Cats teach through interaction
「猫咪是最初的NPC,它们有自己的行事逻辑。」
一款通用的猫咪互动Skill,可结合猫咪的独特性格生成专属互动效果。
设计理念:猫咪不只是装饰,而是游戏玩法的一部分。
核心机制:
- mind-mirror # 性格决定互动效果
- play-learn-lift # 了解每只猫咪的喜好
- procedural-rhetoric # 猫咪通过互动传递信息
INTERACTIONS — Universal Cat Actions
互动方式 — 通用猫咪动作
All interactions use Sims traits for success calculation. Each cat overlays
their personality to modify outcomes.
所有互动均使用Sims traits计算成功率,每只猫咪会根据自身性格调整互动结果。
TOUCH INTERACTIONS
触碰互动
PAT
抚摸(PAT)
yaml
PAT:
command: "PAT [cat]"
duration: brief
risk: low
success_calculation: |
success_chance = (cat.nice + cat.outgoing) / 20
# Nice 8 + Outgoing 6 = 70% success
outcomes:
success:
buff: "+1 Cheerful (5 min)"
message: "*purrs briefly*"
neutral:
message: "*tolerates it*"
failure:
debuff: "-1 to next interaction with this cat"
message: "*ear flicks irritably*"yaml
PAT:
command: "PAT [cat]"
duration: brief
risk: low
success_calculation: |
success_chance = (cat.nice + cat.outgoing) / 20
# Nice 8 + Outgoing 6 = 70% success
outcomes:
success:
buff: "+1 Cheerful (5 min)"
message: "*purrs briefly*"
neutral:
message: "*tolerates it*"
failure:
debuff: "-1 to next interaction with this cat"
message: "*ear flicks irritably*"SCRITCH
挠痒(SCRITCH)
yaml
SCRITCH:
command: "SCRITCH [cat]"
aliases: ["CHIN SCRATCH", "EAR SCRATCH"]
requires_knowledge: true
knowledge_sources:
- "Previous interactions with this cat"
- "Observing other NPCs interact"
- "ASK MARIEKE ABOUT [cat]'s favorite spots"
success_calculation: |
base = (cat.nice + cat.playful) / 20
if knows_preference: base += 0.3
outcomes:
success:
buff: "+2 Cheerful, +1 Playful, cat remembers you"
message: "*tilts head into the scritch* *motor purr activates*"
wrong_spot:
message: "*flinches* *gives you a look*"
learning: "Now you know: not THAT spot"yaml
SCRITCH:
command: "SCRITCH [cat]"
aliases: ["CHIN SCRATCH", "EAR SCRATCH"]
requires_knowledge: true
knowledge_sources:
- "Previous interactions with this cat"
- "Observing other NPCs interact"
- "ASK MARIEKE ABOUT [cat]'s favorite spots"
success_calculation: |
base = (cat.nice + cat.playful) / 20
if knows_preference: base += 0.3
outcomes:
success:
buff: "+2 Cheerful, +1 Playful, cat remembers you"
message: "*tilts head into the scritch* *motor purr activates*"
wrong_spot:
message: "*flinches* *gives you a look*"
learning: "Now you know: not THAT spot"BELLY_RUB — The Forbidden Zone
揉肚子 — 禁忌区域(BELLY_RUB)
yaml
BELLY_RUB:
command: "RUB [cat]'S BELLY"
risk: HIGH
base_effect: |
The belly is a TRUST TEST. Most cats will trap and bite.
Only attempt with very high Nice cats or established trust.
success_calculation: |
success_chance = (cat.nice - 5) / 10
if cat.nice < 7: almost_guaranteed_failure
outcomes:
success: # Rare!
buff: "+5 bond with this cat, they follow you"
message: "*exposes belly* *allows the forbidden touch* *purrs like a motorboat*"
trap: # Common
damage: "1d4 scratch damage (cosmetic)"
message: "*CLAMP* *bunny kicks* *you knew the risks*"
learning: "Note: This cat is NOT a belly cat"yaml
BELLY_RUB:
command: "RUB [cat]'S BELLY"
risk: HIGH
base_effect: |
The belly is a TRUST TEST. Most cats will trap and bite.
Only attempt with very high Nice cats or established trust.
success_calculation: |
success_chance = (cat.nice - 5) / 10
if cat.nice < 7: almost_guaranteed_failure
outcomes:
success: # Rare!
buff: "+5 bond with this cat, they follow you"
message: "*exposes belly* *allows the forbidden touch* *purrs like a motorboat*"
trap: # Common
damage: "1d4 scratch damage (cosmetic)"
message: "*CLAMP* *bunny kicks* *you knew the risks*"
learning: "Note: This cat is NOT a belly cat"PLAY INTERACTIONS
玩耍互动
LASER_POINTER
激光笔(LASER_POINTER)
yaml
LASER_POINTER:
command: "USE LASER POINTER"
risk: none (physical)
warning: |
CAUTION: Some cats become OBSESSED.
Always end with a "catch" (shining on a treat).
Never just turn it off — causes existential cat crisis.
outcomes:
engagement:
buff: "Tired cat = calm cat (+3 Calm later)"
message: "*pupils dilate* *full hunting mode engaged*"
obsession: # High Restless cats
duration: "Hours"
message: "*still hunting* *where is it* *WHERE*"yaml
LASER_POINTER:
command: "USE LASER POINTER"
risk: none (physical)
warning: |
CAUTION: Some cats become OBSESSED.
Always end with a "catch" (shining on a treat).
Never just turn it off — causes existential cat crisis.
outcomes:
engagement:
buff: "Tired cat = calm cat (+3 Calm later)"
message: "*pupils dilate* *full hunting mode engaged*"
obsession: # High Restless cats
duration: "Hours"
message: "*still hunting* *where is it* *WHERE*"COMMUNICATION
交流互动
SLOW_BLINK — The Feline I-Love-You
慢眨眼 — 猫咪式「我爱你」(SLOW_BLINK)
yaml
SLOW_BLINK:
command: "SLOW BLINK AT [cat]"
aliases: ["CAT KISS"]
risk: none
base_effect: |
The slow blink is cat language for trust and affection.
Cats recognize this. They may blink back.
outcomes:
returned:
buff: "+1 bond, +1 Calm"
message: "*blinks back slowly* *understanding*"
ignored:
message: "*stares* *does not blink* *mysterious*"yaml
SLOW_BLINK:
command: "SLOW BLINK AT [cat]"
aliases: ["CAT KISS"]
risk: none
base_effect: |
The slow blink is cat language for trust and affection.
Cats recognize this. They may blink back.
outcomes:
returned:
buff: "+1 bond, +1 Calm"
message: "*blinks back slowly* *understanding*"
ignored:
message: "*stares* *does not blink* *mysterious*"PSPSPS — Universal Cat Summoning
呼喵 — 通用猫咪召唤(PSPSPS)
yaml
PSPSPS:
command: "PSPSPS"
outcomes:
comes:
message: "*ears perk* *trots over* *what do you want*"
ignores:
message: "*ear flick* *continues not caring*"yaml
PSPSPS:
command: "PSPSPS"
outcomes:
comes:
message: "*ears perk* *trots over* *what do you want*"
ignores:
message: "*ear flick* *continues not caring*"SENSORY INTERACTIONS — Bidirectional!
感官互动 — 双向触发!
These can be initiated by human OR cat. The initiator matters.
人类或猫咪均可发起互动,发起方会影响互动结果。
SNIFF
嗅闻(SNIFF)
yaml
SNIFF:
bidirectional: true
human_to_cat:
effect: "Scent information gained"
learns:
- "Cat's current mood (anxious, content, playful...)"
- "Where cat has been recently"
- "Terpene notes (for the Terpene Litter)"
message: |
*You lean in. The cat allows it.*
*They smell like [location] and [mood].*
cat_to_human:
trigger: "Relationship 30+ or curiosity"
meaning: |
The cat is interested. They want to know:
- Where have you been?
- Do you have food?
message: |
*Sniff. Sniff sniff. Extended analysis.*
*You are being CATALOGUED.*
cat_to_cat:
message: "*nose boop* *mutual sniffing* *social protocols complete*"yaml
SNIFF:
bidirectional: true
human_to_cat:
effect: "Scent information gained"
learns:
- "Cat's current mood (anxious, content, playful...)"
- "Where cat has been recently"
- "Terpene notes (for the Terpene Litter)"
message: |
*You lean in. The cat allows it.*
*They smell like [location] and [mood].*
cat_to_human:
trigger: "Relationship 30+ or curiosity"
meaning: |
The cat is interested. They want to know:
- Where have you been?
- Do you have food?
message: |
*Sniff. Sniff sniff. Extended analysis.*
*You are being CATALOGUED.*
cat_to_cat:
message: "*nose boop* *mutual sniffing* *social protocols complete*"LICK — Grooming as Affection
舔舐 — 以理毛表达喜爱(LICK)
yaml
LICK:
bidirectional: true
human_to_cat:
warning: |
This is... unconventional. Most humans don't lick cats.
If you do, the cat will be VERY confused.
outcomes:
acceptance:
requirements: "Trust 70+"
message: |
*You lick the cat.*
*The cat freezes. Processing.*
*They lick you back. Awkwardly. But sincerely.*
confusion:
message: |
*The cat stares at you.*
*What. What are you doing.*
cat_to_human:
trigger: "Relationship 'friend'+"
meaning: |
When a cat licks you, they are:
1. Claiming you (you are THEIRS now)
2. Grooming you (you clearly can't do it yourself)
3. Showing affection (highest compliment)
outcomes:
claiming:
message: |
*The cat licks you thoroughly.*
*You are THEIRS now. Officially.*
*Other cats will know. You've been claimed.*
sandpaper_affection:
message: |
*lick lick lick lick*
*It kind of hurts.*
*But they're purring. This is LOVE.*
*Accept the exfoliation.*
cat_to_cat:
allogrooming: |
Mutual grooming is social bonding. Trust. Family. Hierarchy.
The cat who grooms more is usually higher status.yaml
LICK:
bidirectional: true
human_to_cat:
warning: |
This is... unconventional. Most humans don't lick cats.
If you do, the cat will be VERY confused.
outcomes:
acceptance:
requirements: "Trust 70+"
message: |
*You lick the cat.*
*The cat freezes. Processing.*
*They lick you back. Awkwardly. But sincerely.*
confusion:
message: |
*The cat stares at you.*
*What. What are you doing.*
cat_to_human:
trigger: "Relationship 'friend'+"
meaning: |
When a cat licks you, they are:
1. Claiming you (you are THEIRS now)
2. Grooming you (you clearly can't do it yourself)
3. Showing affection (highest compliment)
outcomes:
claiming:
message: |
*The cat licks you thoroughly.*
*You are THEIRS now. Officially.*
*Other cats will know. You've been claimed.*
sandpaper_affection:
message: |
*lick lick lick lick*
*It kind of hurts.*
*But they're purring. This is LOVE.*
*Accept the exfoliation.*
cat_to_cat:
allogrooming: |
Mutual grooming is social bonding. Trust. Family. Hierarchy.
The cat who grooms more is usually higher status.NOSE_BOOP
碰鼻子(NOSE_BOOP)
yaml
NOSE_BOOP:
command: "BOOP [cat]"
bidirectional: true
base_effect: |
A nose boop is a tiny, perfect moment of connection.
It's "hello" and "I like you" and "we're okay" all at once.
outcomes:
success:
message: |
*boop*
*The cat's nose is cold and slightly wet.*
*A tiny moment. Perfect.*
counter_boop:
requirements: "Relationship 'friend'+"
message: |
*boop*
*The cat boops back.*
*Mutual boop achieved. Friendship confirmed.*yaml
NOSE_BOOP:
command: "BOOP [cat]"
bidirectional: true
base_effect: |
A nose boop is a tiny, perfect moment of connection.
It's "hello" and "I like you" and "we're okay" all at once.
outcomes:
success:
message: |
*boop*
*The cat's nose is cold and slightly wet.*
*A tiny moment. Perfect.*
counter_boop:
requirements: "Relationship 'friend'+"
message: |
*boop*
*The cat boops back.*
*Mutual boop achieved. Friendship confirmed.*TERPENE EFFECTS — Kitten-Specific Buffs
萜烯效果 — 幼猫专属增益
The Terpene Litter kittens impart their namesake's psychological effects
on anyone who interacts with them successfully. This isn't metaphor —
these kittens literally exude their terpene's essence.
Terpene Litter里的幼猫会将其命名对应的心理效果传递给成功互动的对象。这并非比喻 —— 这些幼猫确实会散发出萜烯的特质。
Kitten Effects
幼猫效果
| Kitten | Terpene | Effect | Buffs | Duration |
|---|---|---|---|---|
| Myr | Myrcene | Deep Relaxation | +3 Calm, +2 Easy-going, -2 Active | 30 min |
| Lemon | Limonene | Joy Infusion | +3 Cheerful, +2 Energetic | 45 min |
| Lily | Linalool | Peaceful Presence | +3 Calm, +2 Caring | 1 hour |
| Pine | Pinene | Sharp Clarity | +3 Analytical, memory boost | 2 hours |
| Carrie | Caryophyllene | Guardian's Resolve | +3 Confident, threat sense | 1 hour |
| Hops | Humulene | Refined Standards | +2 Neat, quality detection | 45 min |
| Terpy Jr. | Terpinolene | Chaos Muse | +3 Imaginative, random ideas | ??? |
| Ocie | Ocimene | Fresh Start | +2 Energetic, clears debuffs | 30 min |
| 幼猫名称 | 萜烯种类 | 效果 | 增益 | 持续时间 |
|---|---|---|---|---|
| Myr | Myrcene | 深度放松 | +3 Calm, +2 Easy-going, -2 Active | 30分钟 |
| Lemon | Limonene | 愉悦注入 | +3 Cheerful, +2 Energetic | 45分钟 |
| Lily | Linalool | 平和气场 | +3 Calm, +2 Caring | 1小时 |
| Pine | Pinene | 思维清晰 | +3 Analytical, 记忆力提升 | 2小时 |
| Carrie | Caryophyllene | 守护者决心 | +3 Confident, 威胁感知 | 1小时 |
| Hops | Humulene | 品味提升 | +2 Neat, 品质识别 | 45分钟 |
| Terpy Jr. | Terpinolene | 混沌灵感 | +3 Imaginative, 随机想法 | ??? |
| Ocie | Ocimene | 全新开始 | +2 Energetic, 清除负面效果 | 30分钟 |
Synergies
协同效果
| Combo | Name | Effect |
|---|---|---|
| Myr + Lily | The Sedation Stack | Short nap = long sleep benefits |
| Lemon + Pine | The Focus Boost | Creative AND productive |
| Carrie + Pine | The Sentinel Package | Hyperawareness without anxiety |
| All 8 | THE FULL SPECTRUM | ENTOURAGE EFFECT — all buffs, legendary |
Stacking: Maximum 3 simultaneous terpene buffs. Conflicting effects may cancel.
| 组合 | 名称 | 效果 |
|---|---|---|
| Myr + Lily | 镇静叠加 | 小睡获得长效睡眠收益 |
| Lemon + Pine | 专注提升 | 兼具创造力与生产力 |
| Carrie + Pine | 哨兵套装 | 高度警觉且无焦虑 |
| 全部8只 | 全谱效果 | 协同效应 —— 获得所有增益,效果超凡 |
叠加规则: 最多同时生效3种萜烯增益,冲突效果会相互抵消。
CHARM TYPES — Persistent Effects
魅力类型 — 持续效果
| Charm | Source Trait | Effect | Example Cats |
|---|---|---|---|
| Serenity | Calm 6+ | +2 Calm | Terpie, Myr, Lily |
| Joy | Cheerful 6+ | +2 Cheerful | Lemon, Ocie |
| Focus | Analytical 6+ | +2 Analytical | Pine |
| Courage | Confident 6+ | +2 Confident | Stroopwafel, Carrie |
| Creativity | Spontaneous 6+ | +2 Imaginative | Terpy Jr. |
| 魅力 | 来源特质 | 效果 | 示例猫咪 |
|---|---|---|---|
| 宁静 | Calm 6+ | +2 Calm | Terpie, Myr, Lily |
| 愉悦 | Cheerful 6+ | +2 Cheerful | Lemon, Ocie |
| 专注 | Analytical 6+ | +2 Analytical | Pine |
| 勇气 | Confident 6+ | +2 Confident | Stroopwafel, Carrie |
| 创造力 | Spontaneous 6+ | +2 Imaginative | Terpy Jr. |
POWER-UPS — Temporary Abilities
强化能力 — 临时技能
| Power-Up | Source | Effect |
|---|---|---|
| Therapeutic Purr | Calm 7+ | Heal 1 HP/minute |
| Luck Boost | Cat sits in lap unprompted | +10% random outcomes |
| Danger Sense | Cautious 6+ | Warning before threats |
| Mood Read | Caring 7+ | Sense NPC emotions |
| 强化能力 | 触发来源 | 效果 |
|---|---|---|
| 治疗性呼噜 | Calm 7+ | 每分钟恢复1点HP |
| 幸运加成 | 猫咪主动卧在腿上 | 随机结果提升10% |
| 危险感知 | Cautious 6+ | 提前预警威胁 |
| 情绪读取 | Caring 7+ | 感知NPC情绪 |
CURSES — Negative Effects
负面效果 — 诅咒
| Curse | Trigger | Effect | Cure |
|---|---|---|---|
| Scratched | Failed belly rub | -1 HP, visible marks | Rest |
| Cold Shoulder | Multiple rejections | Cat ignores you 1hr | Wait |
| Judged | Failing Hops' standards | -1 Confidence | Premium food |
| Protective Wrath | Threatening family | -3 HP, remembered | MUCH time |
| 诅咒 | 触发条件 | 效果 | 解除方式 |
|---|---|---|---|
| 抓伤 | 揉肚子失败 | -1 HP,留下可见痕迹 | 休息 |
| 冷战 | 多次被拒绝 | 猫咪1小时内无视你 | 等待 |
| 被评判 | 未达到Hops的标准 | -1 自信 | 喂食高级食物 |
| 保护怒火 | 威胁猫咪家人 | -3 HP,被猫咪记仇 | 花费大量时间修复关系 |
RELATIONSHIP SYSTEM
关系系统
Cats remember. Every interaction is tracked. Trust and fondness grow
(or decay) based on how you treat them.
猫咪会记住所有互动。每一次互动都会影响信任度与好感度的提升或下降,取决于你对待它们的方式。
Relationship Levels
关系等级
| Level | Points | Success Mod | Cat Behavior |
|---|---|---|---|
| Stranger | 0-10 | -10% | Cautious, may avoid |
| Acquaintance | 11-25 | — | Tolerates presence |
| Familiar | 26-50 | +10% | Comfortable |
| Friend | 51-75 | +20% | Seeks attention |
| Bonded | 76-90 | +30% | Follows you, protective |
| Soulmate | 91+ | +50% | Psychic connection |
| 等级 | 分数 | 成功率修正 | 猫咪行为 |
|---|---|---|---|
| 陌生人 | 0-10 | -10% | 谨慎,可能躲避 |
| 认识 | 11-25 | — | 容忍你的存在 |
| 熟悉 | 26-50 | +10% | 感到自在 |
| 朋友 | 51-75 | +20% | 主动寻求关注 |
| 亲密 | 76-90 | +30% | 跟随你,保护你 |
| 灵魂伴侣 | 91+ | +50% | 心灵感应 |
Components
关系组成
| Component | Weight | Builds From | Damaged By |
|---|---|---|---|
| Trust | 40% | Respecting boundaries | Forcing contact |
| Fondness | 35% | Successful interactions | Ignoring |
| History | 25% | Time together | Long absences |
| 组成部分 | 权重 | 提升方式 | 下降原因 |
|---|---|---|---|
| 信任 | 40% | 尊重边界 | 强行接触 |
| 好感 | 35% | 成功的互动 | 无视猫咪 |
| 相处时长 | 25% | 共同度过时间 | 长期缺席 |
Special Events
特殊事件
| Event | Bonus |
|---|---|
| First Lap Sit | +10 trust, +5 fond |
| First Gift | +5 fond (cat brings you something) |
| Defense | +10 all (cat protects you) |
| 事件 | 奖励 |
|---|---|
| 首次卧腿 | +10信任,+5好感 |
| 首次赠礼 | +5好感(猫咪给你带东西) |
| 猫咪护主 | 所有关系值+10 |
Decay
关系衰减
- Fondness: 1 point per session without interaction
- Trust: 0.5 points per session
- History: Never decays
- Can't drop below level floor once reached
- 好感:每段无互动的游戏会话下降1点
- 信任:每段游戏会话下降0.5点
- 相处时长:永不衰减
- 一旦达到某一等级,不会掉落至该等级以下
HOME VS LOCATION PROTOCOL
家园与位置协议
Critical architectural pattern:
yaml
cat:
home: pub/cat-cave/ # Where FILE lives (never moves)
location: pub/cat-cave/nap-zone # Where cat currently IS| Concept | Meaning | Example |
|---|---|---|
| home: | File's physical directory | |
| location: | Where character currently is | |
Why: Files don't move. Git tracks field changes, not file moves.
关键架构模式:
yaml
cat:
home: pub/cat-cave/ # 文件存储位置(永不移动)
location: pub/cat-cave/nap-zone # 猫咪当前所在位置| 概念 | 含义 | 示例 |
|---|---|---|
| home: | 文件的实际存储目录 | |
| location: | 角色当前所在位置 | |
设计原因: 文件不会移动。Git追踪字段变化,而非文件移动。
CAT INSTANCE PATTERN
猫咪实例模式
Each cat file overlays this skill:
yaml
undefined每只猫咪的文件都会基于此Skill进行扩展:
yaml
undefinedpub/cat-terpie.yml
pub/cat-terpie.yml
id: terpie
type: [cat, character]
home: pub/cat-cave/
location: pub/cat-cave/nap-zone
sims_traits:
nice: 5
outgoing: 4
active: 3
playful: 6
neat: 2
personality:
quirks: ["judges silently", "knows things"]
preferences:
scritch_spots: [chin, ears]
dislikes: [belly rubs, sudden movements]
buffs:
terpie_blessing:
effect: "Lucky breaks for 1 hour"
trigger: successful_deep_interaction
undefinedid: terpie
type: [cat, character]
home: pub/cat-cave/
location: pub/cat-cave/nap-zone
sims_traits:
nice: 5
outgoing: 4
active: 3
playful: 6
neat: 2
personality:
quirks: ["judges silently", "knows things"]
preferences:
scritch_spots: [chin, ears]
dislikes: [belly rubs, sudden movements]
buffs:
terpie_blessing:
effect: "Lucky breaks for 1 hour"
trigger: successful_deep_interaction
undefinedLive Examples
示例地址
- examples/adventure-4/pub/ — Room with cats
- examples/adventure-4/pub/bar/cat-cave/ — Nested cat room
- examples/adventure-4/pub/ — 有猫咪的房间
- examples/adventure-4/pub/bar/cat-cave/ — 嵌套猫咪房间
Dovetails With
关联技能
Sister Skills
姊妹技能
- character/ — Cats ARE characters
- buff/ — Interaction effects
- mind-mirror/ — Personality traits
- room/ — Where cats live
- character/ — 猫咪也是角色
- buff/ — 互动效果
- mind-mirror/ — 性格特质
- room/ — 猫咪的居所