“部娘bot”的版本间差异
Hexatomic ring(讨论 | 贡献) |
Hexatomic ring(讨论 | 贡献) |
||
第1行: | 第1行: | ||
部娘bot是由@[[用户:Hexatomic ring|六元环]]基于[https://gitee.com/Glavo/meow-bot#https://github.com/mamoe/mirai 喵呜呜二号]的框架上开发而来的qq群助手。本页面将会介绍部娘bot的各种群指令和隐藏功能。 | |||
== 从#help开始 == | == 从#help开始 == | ||
对部娘bot私聊发送''#help''可以返回群指令列表。 | 对部娘bot私聊发送''#help''可以返回群指令列表。 | ||
注1:该指令仅限私聊使用。 | |||
注2:由于在未添加好友的情况下,[https://github.com/mamoe/mirai mirai]不能发送过长的文本,因此不得不分条发送。 | |||
== 信息查询与设置 == | == 信息查询与设置 == | ||
=== 在线玩家查询 === | === 在线玩家查询 === | ||
发送 ''#list'' 可以返回当前主服务器中在线的玩家列表。 | 发送 ''#list'' 可以返回当前主服务器中在线的玩家列表。 | ||
注:该指令可以在主群或私聊使用。 | |||
=== bot与服务器状态查询 === | === bot与服务器状态查询 === | ||
发送 ''#test'' 可以返回bot与服务器状态。 | 发送 ''#test'' 可以返回bot与服务器状态。 | ||
可通过该指令确认bot是否在线。当bot在线时,可通过该指令确认主服是否停机。 | 可通过该指令确认bot是否在线。当bot在线时,可通过该指令确认主服是否停机。 | ||
注:该指令仅限私聊使用。 | |||
=== 用户信息查询 === | === 用户信息查询 === | ||
发送以 ''#info'' 开头的消息可以返回用户的部内id与MC id。 | 发送以 ''#info'' 开头的消息可以返回用户的部内id与MC id。 | ||
如果该信息没有包含有效的@,则返回发送者的信息;如果包含了有效的@,则返回第一个被@的用户信息。 | 如果该信息没有包含有效的@,则返回发送者的信息;如果包含了有效的@,则返回第一个被@的用户信息。 | ||
注:该指令可以在主群或私聊使用。 | |||
=== 个人信息设置 === | === 个人信息设置 === | ||
第27行: | 第27行: | ||
部内id是部内大家对你的称呼,MC id则是你的Minecraft账号。这两个信息与你的qq账号都是一对一绑定的,如果与别人的id或MC id冲突,会导致设置失败。 | 部内id是部内大家对你的称呼,MC id则是你的Minecraft账号。这两个信息与你的qq账号都是一对一绑定的,如果与别人的id或MC id冲突,会导致设置失败。 | ||
在设置或更改MC id的时候,bot会将你的旧MC id移出主服白名单,并将新MC id添加到主服白名单。 | 在设置或更改MC id的时候,bot会将你的旧MC id移出主服白名单,并将新MC id添加到主服白名单。 | ||
注1:MC id对大小写不敏感,即你无法将自己的MC id改为与别人的MC id仅大小写不同,但可以更改自己MC id的大小写状态。不同的大小写状态仅在bot的数据库中不同,对于白名单则没有影响。 | |||
注2:由于之前bot对MC id的大小写敏感,导致了部分信息无法匹配到玩家,并且可以通过设置与别人仅大小写不同的MC id,将别人的id移出服务器白名单。该bug已于2021年8月21日修复。 | |||
* | 注3:该指令仅限私聊使用。 | ||
== 消息互通与连续聊天模式 == | |||
=== 主群和主服之间的消息互通 === | |||
发送在主群的消息会通过rcon转发至主服,如果该消息满足以下条件: | |||
*消息不以 ''#'' 开头; | |||
*用户处于连续聊天模式或消息以 ''>'' 或 ''》'' 或 ''>'' 开头; | |||
*消息不以 '';;'' 或 '';;'' 开头; | |||
*消息没有被其他功能拦截; | |||
设置过mcid的用户被转发的消息,发送者会显示为对应的mcid,否则显示群名片。 | |||
注1:过长的消息无法被转发,长度上限与rcon设置有关。 | |||
注2:转发的消息不会被记录在服务器log中。 | |||
注3:消息的双向转发都会进行一些不雅词汇替换。 | |||
发送在主服务器中的消息会通过读取log的方式获得并转发至主群,如果消息以''>'' 或 ''》'' 或 ''>'' 开头。 | |||
注:bot的群指令和其他功能不会处理自己转发的消息。 | |||
=== 连续聊天模式 === | |||
处于该模式下的用户发送的消息无需以''>'' 或 ''》'' 或 ''>''开头,即可被转发至主服中,除非以 ''#'' 或 '';;'' 或 '';;'' 开头,或被其他功能拦截。 | |||
所有用户默认处于连续聊天模式。 | |||
发送 ''#chat'' 可以返回与连续聊天模式相关的指令; | |||
发送 ''#chat on'' 可以进入连续聊天模式; | |||
发送 ''#chat off'' 可以退出连续聊天模式; | |||
发送 ''#chat status'' 可以查询当前是否在连续聊天模式下; | |||
发送 ''#chat list'' 可以查看所有处于连续聊天模式下的用户。 | |||
注:以上指令仅限私聊使用。 | |||
== 其它消息提醒与个性化信息设置 == | |||
如果bot能找到服务器中一位玩家的用户信息,那么他/她登录、登出、取得成就或者登陆受阻时,bot会在主群中发送该信息。 | |||
=== 个性化信息设置 === | |||
玩家可以个性化设置的信息有的登录、登出两种,默认值分别为 ''[Login]<部内id>加入了游戏'' 和 ''[Logout]<部内id>退出了游戏'' 。玩家可以为自己添加或删除随机项,设置之后登录、登出时会从随机项中随机一条信息发送。 | |||
发送 ''#match'' 可以返回与个性化信息设置相关的指令; | |||
发送 ''#match add <类型> <信息内容>'' 可以增加该类型的随机项; | |||
发送 ''#match reset <类型>'' 可以重设该类型; | |||
发送 ''#match show <类型>'' 可以显示该类型所有项; | |||
发送 ''#match del <类型> <index>'' 可以删除该类型的某一项; | |||
发送 ''#match test'' 对所有信息类型进行一次测试. | |||
<类型>包含:login(登录),logout(登出),<index>为序号(从0开始,也是#match show返回的列表中的序号)。 | |||
用%代替自己的id。 | |||
注1:任意信息类型必须至少包含自己的id一次。 | |||
注2:为防止有些玩家部内id过于简单且可随时设置,因此后来加入尖括号以防止无法辨认。 | |||
注3:以上指令仅限私聊使用。 | |||
== 其它功能 == | |||
对于不以 ''#'' 或 ''>'' 或 ''》'' 或 ''>'' 开头的消息可能会触发bot的其他功能,这些功能可能会对消息拦截,使其不被转发或者触发其它优先度更低的功能。 | |||
整体优先级为玩梗、回复、复读、转发。 | |||
=== 玩梗 === | |||
当群消息中识别到某些关键词时,会触发玩梗功能,进行特殊回复并拦截这条消息。现在已添加的梗有: | |||
1. ''xx,但没完全xx'' 识别到此类句式后bot会回复 ''只能xx一点点'' | |||
bot也可以识别一些简单的变种,并过滤逗号和语气助词。 | |||
2. 乳煮检测。识别到 ''集结部队'' 或 ''wdcxjjbd'' ,会出动暗影卫队逮扌 | |||
3. 反恶臭。识别到同时包含''哼''与''啊啊''或包含''114514''或包含''1919810'',会触发特殊回复。 | |||
注:私聊也可以触发该功能。 | |||
=== 回复 === | |||
如果消息中@了bot,会拦截此消息并触发回复功能,bot会从回复库中随机选一条进行回复。该条回复中@bot会被替换为@被回复的用户。 | |||
@bot的消息有70%的概率被收入回复库。回复库上限为200条,超过上限时,最早的记录会被移除。 | |||
注1:bot每天只能对同一用户回复5次。 | |||
注2:长于100字符的回复不会被记录。 | |||
注3:直接和bot私聊也能触发回复(无需@),此功能没有每日限制次数,但用户发送的内容不会被记录进回复库。 | |||
=== 复读机 === | |||
对于满足以下条件的信息有65%的概率触发复读机: | |||
*不包含图片、文件或者音乐分享; | |||
*内容与上一条消息相同,但发送者不同(上一条消息不包含 ''#'' 或 ''>'' 或 ''》'' 或 ''>'' 开头的消息,以及bot自己发送的消息); | |||
*bot不处于复读冷却时间内; | |||
*bot不处于已复读状态中。 | |||
对任意符合以上第一条但没触发复读的消息,仍有0.5%的概率强制触发复读。 | |||
对于触发复读的消息,bot进行以下操作: | |||
*复读内容有80%的概率添加到回复库; | |||
*如果复读消息包含“复读”,有75%的概率发送“禁止”+复读消息; | |||
*对于没有触发上一条的复读消息,有3%的概率发送“不要”+复读消息; | |||
*对于没有触发上一条的复读消息,有10%的概率发送“打断复读”; | |||
*对于没有触发上一条的复读消息,有10%的概率发送复读消息+“!”; | |||
*对于没有触发上一条的复读消息,发送复读消息; | |||
*进入20秒复读冷却; | |||
*进入已复读状态。 | |||
当一条消息与上一条消息内容不同时会解除该状态(不包含 ''#'' 或 ''>'' 或 ''》'' 或 ''>'' 开头的消息,以及bot自己发送的消息)。 | |||
任意消息均有15%的概率解除已复读状态。 | |||
触发复读不会拦截消息。 |
2021年8月28日 (六) 21:33的版本
部娘bot是由@六元环基于喵呜呜二号的框架上开发而来的qq群助手。本页面将会介绍部娘bot的各种群指令和隐藏功能。
从#help开始
对部娘bot私聊发送#help可以返回群指令列表。 注1:该指令仅限私聊使用。 注2:由于在未添加好友的情况下,mirai不能发送过长的文本,因此不得不分条发送。
信息查询与设置
在线玩家查询
发送 #list 可以返回当前主服务器中在线的玩家列表。 注:该指令可以在主群或私聊使用。
bot与服务器状态查询
发送 #test 可以返回bot与服务器状态。 可通过该指令确认bot是否在线。当bot在线时,可通过该指令确认主服是否停机。 注:该指令仅限私聊使用。
用户信息查询
发送以 #info 开头的消息可以返回用户的部内id与MC id。 如果该信息没有包含有效的@,则返回发送者的信息;如果包含了有效的@,则返回第一个被@的用户信息。 注:该指令可以在主群或私聊使用。
个人信息设置
发送 #setID 你的部门ID 可以设置或更改自己的部内id; 发送 #setMCID 你的部门ID 可以设置或更改自己的MC id。 部内id是部内大家对你的称呼,MC id则是你的Minecraft账号。这两个信息与你的qq账号都是一对一绑定的,如果与别人的id或MC id冲突,会导致设置失败。 在设置或更改MC id的时候,bot会将你的旧MC id移出主服白名单,并将新MC id添加到主服白名单。 注1:MC id对大小写不敏感,即你无法将自己的MC id改为与别人的MC id仅大小写不同,但可以更改自己MC id的大小写状态。不同的大小写状态仅在bot的数据库中不同,对于白名单则没有影响。 注2:由于之前bot对MC id的大小写敏感,导致了部分信息无法匹配到玩家,并且可以通过设置与别人仅大小写不同的MC id,将别人的id移出服务器白名单。该bug已于2021年8月21日修复。 注3:该指令仅限私聊使用。
消息互通与连续聊天模式
主群和主服之间的消息互通
发送在主群的消息会通过rcon转发至主服,如果该消息满足以下条件:
- 消息不以 # 开头;
- 用户处于连续聊天模式或消息以 > 或 》 或 > 开头;
- 消息不以 ;; 或 ;; 开头;
- 消息没有被其他功能拦截;
设置过mcid的用户被转发的消息,发送者会显示为对应的mcid,否则显示群名片。 注1:过长的消息无法被转发,长度上限与rcon设置有关。 注2:转发的消息不会被记录在服务器log中。 注3:消息的双向转发都会进行一些不雅词汇替换。
发送在主服务器中的消息会通过读取log的方式获得并转发至主群,如果消息以> 或 》 或 > 开头。 注:bot的群指令和其他功能不会处理自己转发的消息。
连续聊天模式
处于该模式下的用户发送的消息无需以> 或 》 或 >开头,即可被转发至主服中,除非以 # 或 ;; 或 ;; 开头,或被其他功能拦截。 所有用户默认处于连续聊天模式。
发送 #chat 可以返回与连续聊天模式相关的指令; 发送 #chat on 可以进入连续聊天模式; 发送 #chat off 可以退出连续聊天模式; 发送 #chat status 可以查询当前是否在连续聊天模式下; 发送 #chat list 可以查看所有处于连续聊天模式下的用户。 注:以上指令仅限私聊使用。
其它消息提醒与个性化信息设置
如果bot能找到服务器中一位玩家的用户信息,那么他/她登录、登出、取得成就或者登陆受阻时,bot会在主群中发送该信息。
个性化信息设置
玩家可以个性化设置的信息有的登录、登出两种,默认值分别为 [Login]<部内id>加入了游戏 和 [Logout]<部内id>退出了游戏 。玩家可以为自己添加或删除随机项,设置之后登录、登出时会从随机项中随机一条信息发送。 发送 #match 可以返回与个性化信息设置相关的指令; 发送 #match add <类型> <信息内容> 可以增加该类型的随机项; 发送 #match reset <类型> 可以重设该类型; 发送 #match show <类型> 可以显示该类型所有项; 发送 #match del <类型> <index> 可以删除该类型的某一项; 发送 #match test 对所有信息类型进行一次测试. <类型>包含:login(登录),logout(登出),<index>为序号(从0开始,也是#match show返回的列表中的序号)。 用%代替自己的id。 注1:任意信息类型必须至少包含自己的id一次。 注2:为防止有些玩家部内id过于简单且可随时设置,因此后来加入尖括号以防止无法辨认。 注3:以上指令仅限私聊使用。
其它功能
对于不以 # 或 > 或 》 或 > 开头的消息可能会触发bot的其他功能,这些功能可能会对消息拦截,使其不被转发或者触发其它优先度更低的功能。 整体优先级为玩梗、回复、复读、转发。
玩梗
当群消息中识别到某些关键词时,会触发玩梗功能,进行特殊回复并拦截这条消息。现在已添加的梗有: 1. xx,但没完全xx 识别到此类句式后bot会回复 只能xx一点点
bot也可以识别一些简单的变种,并过滤逗号和语气助词。
2. 乳煮检测。识别到 集结部队 或 wdcxjjbd ,会出动暗影卫队逮扌 3. 反恶臭。识别到同时包含哼与啊啊或包含114514或包含1919810,会触发特殊回复。 注:私聊也可以触发该功能。
回复
如果消息中@了bot,会拦截此消息并触发回复功能,bot会从回复库中随机选一条进行回复。该条回复中@bot会被替换为@被回复的用户。 @bot的消息有70%的概率被收入回复库。回复库上限为200条,超过上限时,最早的记录会被移除。 注1:bot每天只能对同一用户回复5次。 注2:长于100字符的回复不会被记录。 注3:直接和bot私聊也能触发回复(无需@),此功能没有每日限制次数,但用户发送的内容不会被记录进回复库。
复读机
对于满足以下条件的信息有65%的概率触发复读机:
- 不包含图片、文件或者音乐分享;
- 内容与上一条消息相同,但发送者不同(上一条消息不包含 # 或 > 或 》 或 > 开头的消息,以及bot自己发送的消息);
- bot不处于复读冷却时间内;
- bot不处于已复读状态中。
对任意符合以上第一条但没触发复读的消息,仍有0.5%的概率强制触发复读。 对于触发复读的消息,bot进行以下操作:
- 复读内容有80%的概率添加到回复库;
- 如果复读消息包含“复读”,有75%的概率发送“禁止”+复读消息;
- 对于没有触发上一条的复读消息,有3%的概率发送“不要”+复读消息;
- 对于没有触发上一条的复读消息,有10%的概率发送“打断复读”;
- 对于没有触发上一条的复读消息,有10%的概率发送复读消息+“!”;
- 对于没有触发上一条的复读消息,发送复读消息;
- 进入20秒复读冷却;
- 进入已复读状态。
当一条消息与上一条消息内容不同时会解除该状态(不包含 # 或 > 或 》 或 > 开头的消息,以及bot自己发送的消息)。 任意消息均有15%的概率解除已复读状态。 触发复读不会拦截消息。