简单的RimTalk写卡格式和“双重人格”写法尝试
rimworld吧
全部回复
仅看楼主
level 13
猫的境界 楼主
这个贴会分三部分:
一、RimTalk的文本结构
二、确定写卡格式和符号
三、实操写一张简单的卡
(发这个贴更多是希望能互相交流,交流总会有新想法。有错的地方还请大佬指正)
2026年02月02日 13点02分 1
level 13
猫的境界 楼主
一、RimTalk的文本结构
首先,RimTalk的调试功能可以查看传给AI的完整文本。
这个功能挺重要的,因为有时你在提示词界面看到的,不一定是AI看到的样子。
所以写完人格后,最好去调试信息看一下。
2026年02月02日 13点02分 2
level 13
猫的境界 楼主
这里我只截取角色信息的部分
可以看到,角色信息其实是一堆简单的“标签”,
(准确说是“字段”“键值对”格式)
例如,人格是“Personality”字段。
英文冒号、逗号、空格是字段内部分隔(比如Skills)
换行则用来区分不同字段。
------------------
所以写“人格”时,尽量遵循这个格式,或者用一套固定的格式。
不要一会这个符号,一会那个符号,造成混淆。
2026年02月02日 13点02分 3
level 13
猫的境界 楼主
但单纯靠换行区分字段会有一个小问题。
我们写人格时为了方便,经常这么写:
但在完整文本中,会变成这样:
这样格式就乱了,一些蠢点的AI真会以为后面的不属于“Personality”。
---------------
虽然这种情况实际上很少见。因为目前主流AI的水平,它们能理解“在一堆英文字段中突然出现一大堆换行的中文键值对时。这些中文是属于Personality的,而不是独立的”
但总归来说,能规范还是规范点比较好。
2026年02月02日 13点02分 4
level 13
猫的境界 楼主
不过,我们可以利用换行这个特性整点花活。
写出类似“双重人格”的效果
在这个人格中,我只在Tulpa这里用了一个换行
那么在完整文本里,因为换行了
“Tulpa”会被认为是一个独立的,但与“Personality”强关联的字段。
并且,因为Tulpa本身是一个术语,所以能起到更好的区分主副人格的效果。
(至少D老师很了解Tulpa,不用详细解释)
2026年02月02日 14点02分 6
level 13
猫的境界 楼主
如果你也想试试这种写法,我个人的建议:
1.把副人格当成一个实际存在的角色或朋友来写,而不是一个人的不同性格。
2.描写性格时最好带上名字,方便AI区分。
3.双方的性格最好是互补或矛盾的,并且有自己的目的/动机。
这样人格的切换才有理由,对话才可以自然。
----------------
比如说:主人格和副人格会互相拌嘴吐槽,这必定是因为双方目的不同、性格矛盾、对同一件事的看法不一样,或者有共同难题要解决。她们自然会开始交流讨论。
如果只是单纯写一句“主副人格会互相吐槽”,AI就会为了吐槽而吐槽,没话尬聊。
----------------
还有,性格会影响对话频率。
活泼的经常主动出来聊天,慵懒的就得自己找话茬。
突然聊出一句“月色真美”
2026年02月02日 14点02分 7
level 13
猫的境界 楼主
二、确定写卡格式和符号
现在我们继续看文本结构
可以看到,我们的人格描述都是挤在同一行里。
这是最省token的写法,没有多余换行符,没有多余分隔符号。
但人类看着太累了,
再写复杂点,AI也可能搞混。
所以需要更明确的结构和符号
2026年02月02日 14点02分 8
level 13
猫的境界 楼主
1.用xml或```代码块包裹整个结构
大语言模型对xml标签和代码块很敏感
它不仅是边界划分,还可以强烈的提醒AI注意这块区域。
实际文本:
----------------
```
姓名: 银羽
身份: 米莉安机械体(骑士II型)
外貌: 柔顺的白色及胸长发,两条侧辨,半遮眼刘海,灰色可爱发箍,橙色眼眸.
设定:
- 米莉拉种族制造的机械体,可爱少女外形,战斗家务工作全能.
- 由Ereko加装了"声连植入物",因而能够表达思想.
- 由Ereko提议,阿德莉安娜取名“银羽”.
主人: 萨利.
个人记忆(时间排序):
1. 由萨利创造,于培育仓中诞生.
```
----------------
<personality name="银羽">
身份: 米莉安机械体(骑士II型)
外貌: 柔顺的白色及胸长发,两条侧辨,半遮眼刘海,灰色可爱发箍,橙色眼眸.
设定:
- 米莉拉种族制造的机械体,可爱少女外形,战斗家务工作全能.
- 由Ereko加装了"声连植入物",因而能够表达思想.
- 由Ereko提议,阿德莉安娜取名“银羽”.
主人: 萨利.
个人记忆(时间排序):
1. 由萨利创造,于培育仓中诞生.
</personality>
2026年02月02日 14点02分 9
level 13
猫的境界 楼主
2.用缩进表示内部结构
这是键值对数据中常见的做法
我们给每个句首加上两个空格,AI就知道这些内容是字段内部的
2026年02月02日 14点02分 10
level 13
猫的境界 楼主
3.使用[]包裹内部数据
性格: [活泼, 善于察言观色, 不太理解复杂的技术问题]
(这是参考酒馆那边的现成写法)
[]常用来表示同一类型的一组数据,
它本身也可以作为一个边界,很好的和其它数据区分。
---------------
```
姓名: [银羽]
身份: [米莉安机械体(骑士II型)]
外貌: [柔顺的白色及胸长发,两条侧辨,半遮眼刘海,灰色可爱发箍,橙色眼眸]
设定: [米莉拉种族制造的机械体(可爱少女外形,战斗家务工作全能), Ereko加装"声连植入物"(能够表达思想), 阿德莉安娜取名“银羽”]
主人: [萨利]
个人记忆(时间排序):[1. 由萨利创造,于培育仓中诞生]
```
---------------
<personality name="银羽">
身份: [米莉安机械体(骑士II型)]
外貌: [柔顺的白色及胸长发,两条侧辨,半遮眼刘海,灰色可爱发箍,橙色眼眸]
设定: [米莉拉种族制造的机械体(可爱少女外形,战斗家务工作全能), Ereko加装"声连植入物"(能够表达思想), 阿德莉安娜取名“银羽”]
主人: [萨利]
个人记忆(时间排序):[1. 由萨利创造,于培育仓中诞生]
</personality>
2026年02月02日 14点02分 11
level 13
猫的境界 楼主
大语言模型因为接触数据格式比较多,所以对标记语言更敏感。
不过开头也说了,现在AI的理解能力很强,对语法要求并没有那么严格。
只要结构清晰,AI都能看懂。
但也意味着,想确定哪种写法更好,需要大量经验和测试(我没这个水平)
考虑到环目前普遍上下文不长,从省token的角度,不用一开始就按特别完整的格式写,
觉得到瓶颈了再试。
2026年02月02日 14点02分 12
level 13
猫的境界 楼主
三、实操写一张简单的卡
现在基本格式确定,开始补完埃德尔薇丝和艾琳的卡。
但写卡之前,我们得想一想,写一个角色到底该写什么地方?
我会列出一些我认为的、比较重要的角色要素。
----------------
当我们见到一个人第一面时,会看到什么?
外貌、服装、性格、说话方式......还有整体印象
----------------
1.角色印象:印象可以是身份,比如他看起来像老师、学生、魔法师、精灵、恶魔;也可以是性格,比如活泼、地雷、暴躁、犹豫;还可以是主题,比如神秘、机械、魔幻等等。
印象会影响角色整体的说话风格。(不过这玩意太抽象了,我平时也不写的)
2.身份:身份是更具体的印象,决定了角色会怎么说、怎么做。
比如,一个医生看到伤者了,自然会去救,不需要告诉AI他会救人。
3.外貌、服装、物品:可以侧面体现角色性格,比如珍视的物品、异于常人的外貌、战斗留下的伤痕等等。
4.性格、说话方式:这个不用解释吧
5.人际关系:故事肯定是要人和人推动的,它是矛盾和动机的源头之一。
6.目的/动机:角色如果没有自己的方向和动机,对话就会漫无目的。(没话找话,尬聊)
7.背景故事/简述:将小人的特质、性格串起来,侧面展现人物。可以更灵动
7.补充设定:一些写卡时懒得分类的、零碎的设定(比如服装、物品)
8.经历:记忆拓展不靠谱时手动写的
----------------
以上这些只是举例,可选的,不是必填。
如果你自己有非常重要的设定,也可以单独开个标签列出来。思路都是灵活
2026年02月02日 14点02分 13
关于性格,虽然我之前的贴子写过一些经验,但还是在这补一句。
2026年02月03日 11点02分
写性格时,最好补充一下这个性格的前因后果或具体表现。每个人的经历不一样,表现出来的具体性格也会不一样。比如同样是“毫无幽默”,在美少女身上可以是(听不懂隐喻,可爱);在四十岁大叔身上可能会(开不起玩笑,古板)
2026年02月03日 11点02分
level 13
猫的境界 楼主
虽然上面列了一堆,但我只编了这么点。
(毕竟复杂写法已经发过贴了,这个就简单点)
----------------
<personality name="埃德尔薇丝">
身份: [维纳利昂(像龙娘一样长角带尾的种族)]
背景: [埃德尔薇丝在军校长大,残酷的童年让她养成了独处的习惯,也因此有了一位脑内朋友“艾琳”。她们无话不谈,就像另一个自己。当薇丝撑不住的时候,就交给艾琳吧]
外貌: [白色及腰双马尾,M刘海(中间一缕绿色挑染),绿瞳绿角绿尾]
性格: [无幽默感(不懂隐喻), 像百科全书一样说话(对玩笑或反话困惑,并试图从逻辑上纠正)]
tulpa: [艾琳]
人际关系: [萨利(亦师亦友), “惹是生非”(萨利养的豚鼠,需要经常照顾)]
</personality>
Tulpa: <tulpa name="艾琳">
身份: [埃德尔薇丝的脑内朋友(共享感官记忆,其他人不知晓艾琳的存在)]
设定: [艾琳可以和埃德尔薇丝互相交谈,但别人只以为是埃德尔薇丝自言自语(她也可以借用埃德尔薇丝的身体行动和说话)。]
性格: [像猫咪一样慵懒敏锐,善于察言观色,但不太理解复杂的技术问题。]
目的: [保护埃德尔薇丝,替她解决不擅长应对的事。]
</tulpa>
2026年02月02日 14点02分 14
“像百科全书一样说话”可以考虑删掉,自带的这个人格提示词太刻板了;艾琳身份这里改成(共享感官记忆,没有实体)
2026年02月05日 16点02分
level 8
[真棒]感谢分享,系统化标准格式,很有帮助[真棒]
另,以下纯个人经历,仅供参考(没有拉踩冒犯之意,友好讨论向)
双重人格很有乐子,而且也不限于“双重”,可以多重,而且形式也不限于内置性格,也可以 “共生” “寄生”之类的。
但都同样存在一个风险----口癖污染:
“多重人格”里含有口癖有很大概率会污染给别人或着就把那个“人格”嫁接到别的小人身上了(当然不排除player2 有点蠢)
所以最好写个人格禁令,虽然效果可能不能真正禁止小人读取人格(毕竟是全局公开文),但可以有效的避免“口癖污染”
2026年02月02日 15点02分 16
这个属于ai智商和注意力问题,要么堆思维链要么做好人格区分
2026年02月02日 19点02分
发这个贴就是为了知识交流的,而且我也是受到了你那个贴的启发才想到可以写多重人格。但用我现在的经验,我又仔细看了一遍你那个贴。我感觉你说的问题,可能就是我7楼提到的“你要把副人格当成一个活的人来写,而不是一个人身上的不同性格”
2026年02月03日 00点02分
你虽然写了“原初人格”和“衍生人格”的性格,但并没有指名道姓是谁,这套性格放到任何小人身上都能用。AI很容易搞混
2026年02月03日 00点02分
我写薇丝和艾琳时,在她们的人设里都提到了对方:薇丝人设里介绍了艾琳的诞生、艾琳是薇丝的tulpa;在艾琳的人设里,我刻意强调了很多次薇丝的名字,“艾琳是薇丝的脑内朋友”“艾琳可以借用薇丝的身体”“艾琳会保护薇丝”。
2026年02月03日 00点02分
level 6
rimtalk没有酒馆那种,条件判断发不发送内容的功能么
2026年02月02日 17点02分 17
预设那里可以用语法,其它地方没有酒馆那么方便
2026年02月02日 23点02分
1 2 尾页