LoveYou是一个可高度自定义的词库+好感度系统插件
运行本项目,你需要确保你拥有至少300MB的空闲内存
以下三点是本插件的开发宗旨
斜体为需输入的变量
用户指令群聊
我的好感、我的好感度 好感排行 本群好感排行 /code alias YourCode :设置QQ别名。使用被记录在./data/code_users.txt /code love YourCode :设置文本好感。使用被记录在./data/code_users.txt 主人指令群聊
/set(del) senior QQ:设置(取消)本群词库高管,其中QQ为高管QQ号 /set(del) admin QQ:设置(取消)本群词库管理,其中QQ为管理QQ号私聊
/encode alias int_number:生成QQ别名的code,其中int_number为生成数量。可在./data/alias_code.txt查看code /encode love int_number:生成文本好感的code,其中int_number为生成数量。可在./data/love_code.txt查看code 词库指令高管指令
/set(del) admin QQ:设置(取消)本群词库管理,其中QQ为管理QQ号管理指令
精确问 Question Answer:为本群添加一组回复,请注意整个指令中第二个空格是Question和Answer的切分点 删除 Question:删除对应Question,其中Question的所有对应项均会被删除 词库编辑 reply.csv不支持热重载
按照下表格式填写reply.csv,它是全局生效的
对于该表的解释
好感范围:本行触发时,从随机范围内随机取一个整数值作为好感变化量。默认值为config.ini下common_love所对应的区间。特别地,你可以在回复中使用<mark>[vary]</mark>来指代好感变化量,这将使得变化量可见 触发范围:只有当触发者的好感在本范围内,本行才会触发。默认无范围 [pic=' ']:发送图片。请将要发送的图片置于 ./data/pic/ 下。每条消息仅支持一张图片。只要填入文件名即可,包括后缀 [cut]:回复切割。将一次回复切分为多次回复。使用本方法可实现一次触发可发送多张图片 quick_RL行:本行可实现权重选择,使用较为复杂,详见进阶使用此外,在消息和回复列中,你可以使用如下变量:
\n:换行 [qq]:触发者QQ号 [sender]:触发者群名片 [love]:触发者好感度 [intlove]:触发者好感度(不包括文本好感) [bot]:bot名称,在config.ini中编辑上述变量([vary]除外)在好感回复中也适用;全部变量在群聊词库中适用
实例:效果同test行
![test](https://img2.imgtp.com/2024/05/25/S0QryhTK.PNG "test示例" =1100x)
群聊词库是全局词库的阉割
好感范围默认值为0,而非common_love 不支持指令设置 好感范围 和 触发范围,尽管代码支持读取与运算 不支持指令添加[pic=' '],尽管代码支持发送 通过quick_RL方法设置的L值强制变更为0如果你真的需要以上功能:
在./data/group/下找到对应csv,手动编辑 将图片放置于./data/pic/group/下 无论如何,quick_RL的L值无法恢复 好感度系统好感度来源
词库 消息中包含bot_name或@bot时,程序会分析情感偏向并给出一个[-10,10]之间的整数值作为好感变化量CG
这是一个真正可高度自定义的模块
仅当消息包含bot_name时进行判断
每个QQ每日最多触发一次判断,早上9点重置
详见config.ini
好感度等级
如要启用本功能,请设置config.ini中enable=True
共分为5个等级
在config.ini设置每级所囊括的好感区间(例:lv1=-999,-50)
在config.ini设置每级查询好感度时所回复的特殊回复
变量支持:见词库编辑
quick_RL方法
这是一个略显繁琐的回复方法,但它在某种意义上是简洁的
以下表为例
!重要!你需要在回复的最开头用RL声明你将要使用quick_RL方法,用于声明的RL将在随后的处理中被抛弃
它可以被这么解读:
%这里是每一条回复%R:这里是本回复权重;L:这里是本回复对应的好感度变化
在quick_RL方法中,R和L均为可选项,R默认为1.0,L默认为0。R和L的顺序是不严格的
当quick_RL行被触发时,会在回复中进行新一轮的加权随机选择
只有% %之间的内容会被认为是回复
每一条回复和它的参数与后一条回复应当存在!作为分割,!的全半角输入是不严格的
被随机中的回复所携带的L会被认为是好感变化值,这意味着整个语句的 好感范围 是没有意义的,而 触发范围 仍然具有意义