桌面模组文档角色模组
模组开发文档

角色模组

对话气泡

为点击、喂食与状态变化添加文字回应。

气泡与语音各自负责什么?

note/bubble_conf.json 决定何时显示什么文字,以及引用哪一个图标或声音名称。图片与声音本身在通知配置中登记。

这些是预设的事件文字,不需要把每一条交给 AI 生成;它们也不同于带选项的对话物品。

先做一个文字气泡

下面是一份完整的 note/bubble_conf.json 起点,先不引用声音和图标:

{
  "pat_random_1": {
    "icon": null,
    "message": "USERTAG,今天也一起加油吧!",
    "start_audio": null,
    "end_audio": null
  }
}

这类气泡在点击时概率触发,不保证每次点击都出现。添加更多条目时,使用 pat_random_2、pat_random_3 等编号。

常见触发事件

名称 用途
fv_lvlup 好感等级提升
fv_drop 饥饿导致好感下降时的提醒
hp_low / hp_zero 饱食度偏低 / 为零
feed_done 喂食后
feed_required 索要指定食物
pat_focus 专注期间点击
pat_frequent 频繁点击
pat_random_数字 随机点击回应

USERTAG 会替换成用户设定的称呼。feed_required 中的 ITEMNAME 会替换成请求的食物名,改写句子时应保留它。

给气泡配上声音

先在 note/note.json 登记声音,例如合并下面的字段;chat.wav 放在 note/:

{
  "random_1": {"sound": "chat.wav", "sound_priority": 1}
}

再把气泡中的 start_audio 改成 "random_1"。end_audio 同理,icon 引用登记的图标名称。这里填写的是 名称,不是文件路径;不用时保留 null。

检查实际触发

先检查文字是否过长,再测试对应事件。确认音效配置、气泡配置和素材都在同一角色的 note/ 下。旧资料中的系统图标注册表名称不要直接当成模组文件名;本教程的模组通知文件使用 note.json。

What do bubbles and voice settings each do?

note/bubble_conf.json sets event text and references registered icon or sound names. The actual assets are registered in the notification configuration.

These are predefined event messages, not lines that must be generated by AI. They are also distinct from dialogue items with choices.

Start with a text-only bubble

This complete starting example for note/bubble_conf.json does not require an icon or sound:

{
  "pat_random_1": {
    "icon": null,
    "message": "Let's make today a good one, USERTAG!",
    "start_audio": null,
    "end_audio": null
  }
}

Random click bubbles are probabilistic, so they do not appear on every click. Add more as pat_random_2, pat_random_3 and so on.

Common events

Name Purpose
fv_lvlup Affection level-up
fv_drop Affection loss caused by hunger
hp_low / hp_zero Low / zero satiety
feed_done After feeding
feed_required Asking for a specific food
pat_focus Clicking during focus time
pat_frequent Frequent clicking
pat_random_number Random click response

USERTAG becomes the user’s chosen form of address. In feed_required, ITEMNAME becomes the requested food name; keep it when rewriting the sentence.

Add a sound

First register the sound in note/note.json, merging this field and placing chat.wav in note/:

{
  "random_1": {"sound": "chat.wav", "sound_priority": 1}
}

Then set the bubble’s start_audio to "random_1". end_audio works similarly, and icon references a registered icon name. Use names, not file paths here. Leave unused fields as null.

Test the actual event

Check text length, then trigger the relevant event. Keep notification settings, bubble settings and assets in the same character’s note/ folder. Do not copy a system registry file name from older material as the mod file name; this guide uses note.json for mod notifications.

文档持续完善中。 查看原始开发文档 ↗

使用指南

待后续补充

使用指南将在后续补充,介绍呆啵桌宠的设置与日常使用。

常见问题

待后续补充

常见问题将在后续补充,汇总使用过程中常遇到的问题与解答。

QQ 群

一起分享使用体验,抢先测试新版

群号557261268

QQ 群二维码

使用 QQ 扫码,或搜索群号加入。