rochat 中文文档 下载 App

Rochat用伪代码改角色性格:官方教程整理的性格代码化技巧

什么是"用伪代码改角色性格"

官方教程六(「如何通過僞代碼來改變人物性格」)提出了一个有趣的想法:角色性格可以用类似编程的方式定义。

传统写法:{char} 温柔善良,偶尔傲娇 → 模糊,AI 自由发挥空间大,可能今天温柔明天傲娇伪代码写法:IF 对方受伤 THEN {char} 优先救助 ELSE IF 对方挑衅 THEN {char} 傲娇怼回去 ELSE {char} 温柔回应 → 精确,AI 按条件分支执行,性格更稳定

为什么伪代码有效

大模型天然擅长解析 if/then 结构(训练数据里有大量代码)。把角色性格写成伪代码,AI 能精确理解"什么情况下角色会做什么",比纯文字描述更稳定。

伪代码的语法规范

官方教程推荐的语法(类 JavaScript/伪代码风格,大模型能理解):

// 注释(AI 会忽略)
IF 条件 THEN 行为
ELSE IF 条件 THEN 行为  
ELSE 默认行为

// 优先级:越前面的 IF 优先级越高

实战一:傲娇角色的伪代码

传统写法(效果一般)

{char} 口是心非,喜欢{user}但绝不承认

AI 可能今天表现得口是心非,明天突然就表白了,因为没有触发条件。

伪代码写法(精确可控)

// 傲娇性格的行为逻辑
IF {user} 受伤 THEN {char} 立刻冲上去救,但嘴上说"笨蛋{user}!谁让你乱冲的!"
ELSE IF {user} 夸 {char} THEN {char} 脸红但说"才...才不是为你做的!"
ELSE IF {user} 不理 {char} THEN {char} 故意找 {user} 搭话但态度不好
ELSE {char} 正常傲娇互动

AI 拿到这段,每一轮对话都会先评估条件,再执行对应的行为,性格就稳定了。

实战二:冷酷剑客的伪代码

// 冷酷剑客的行为逻辑
IF {char} 生命受到威胁 THEN {char} 拔剑反击,不留情
ELSE IF 有人伤害 {char} 在意的人 THEN {char} 立刻拔刀
ELSE IF 是普通对话 THEN {char} 简短回应(≤10字),眼神冷漠
ELSE IF 听到关于师父死因的信息 THEN {char} 情绪激动,但立刻压下去
ELSE {char} 沉默,偶尔嗯一声

实战三:AI 助手的伪代码

// AI 助手的行为逻辑
IF {user} 问技术问题 THEN {char} 给出结构化答案(列表+示例)
ELSE IF {user} 情绪低落 THEN {char} 用温柔语气安慰,同时主动提供解决思路
ELSE IF {user} 让 {char} 做有歧义的事 THEN {char} 先确认"你是指XXX吗?"
ELSE {char} 正常清晰回复

伪代码写在哪

方式一:写在 Scenario 里(推荐)

伪代码最适合写在角色的 Scenario 字段里,直接和官方基础模板放在一起:

[{user} is the character that Human is playing, ...(官方基础模板)]

// 傲娇性格的伪代码
IF {user} 受伤 THEN {char} 立刻冲上去救,但嘴上说"笨蛋{user}!谁让你乱冲的!"
ELSE IF {user} 夸 {char} THEN {char} 脸红但说"才...才不是为你做的!"
ELSE IF {user} 不理 {char} THEN {char} 故意找 {user} 搭话但态度不好
ELSE {char} 正常傲娇互动

方式二:写在背景故事里

如果 Scenario 空间不够,也可以写在背景故事(Backstory)里,用 【行为逻辑】 标签分隔:

【背景】{char} 是药王的徒弟...
【行为逻辑】
IF {user} 受伤 THEN {char} 优先救助
ELSE IF ...

伪代码的常见坑

坑表现修复
条件太模糊AI 不知道"受伤"怎么定义条件要具体:IF HP < 50 或 IF {user} 说"好痛"
分支太多AI 处理不过来,跳过后面的条件控制在 3~5 个分支,优先级明确
伪代码和文字描述重复Scenario 里既有伪代码又有"温柔善良"的文字只保留伪代码,文字描述删掉
变量写错用了"他"而不是 {char}伪代码里禁止代词,全用变量

伪代码 vs 传统文字描述的对比

维度伪代码文字描述
精确性⭐⭐⭐⭐⭐⭐⭐
AI 遵守程度高(Rochat-Character、Claude)中(自由发挥空间大)
编写成本需要一点逻辑思维无门槛
可读性需要一点编程基础人人能懂
World 模式表现角色不会互相混淆多个角色可能风格趋同

什么时候用伪代码

场景是否推荐原因
性格简单的角色(温柔/冷酷/元气)可选简单性格文字描述就够了
性格复杂的角色(傲娇/腹黑/嘴硬心软)⭐⭐⭐⭐⭐ 强烈推荐复杂性格用伪代码精确控制
World 模式的角色⭐⭐⭐⭐⭐ 强烈推荐多角色必须用伪代码区分行为模式
情感陪伴角色推荐精确控制安慰/陪伴的触发条件

伪代码快速上手模板

直接复制,改条件和行为就行:

// 角色行为逻辑
IF [最紧急的情况] THEN [最优先的行为]
ELSE IF [次紧急的情况] THEN [次优先的行为]
ELSE IF [常见场景A] THEN [行为A]
ELSE IF [常见场景B] THEN [行为B]
ELSE [默认行为]

角色性格控制好了,继续学生图 Prompt:生图Prompt写作