# CQ码

CQ码,是指在世外天堂词库的消息中,以 {CQ: 开头、} 结尾的,可以实现特殊功能的代码。

# 结构

世外天堂CQ码的结构为 {CQ:function,key=value,...}。

其中 function 为功能名,key 为参数名,value 为参数值,key=value 称为一组参数。

一个CQ码可以包含零组、一组或多组参数,功能名与每组参数之间用半角逗号 , 分割。

# 世外天堂原创CQ码

# 发送私聊消息

{CQ:private,qq={1},msg={2}}

{1} 为指定QQ号。

{2} 消息内容

回复举例

对提问者的回复{CQ:private,qq=157236497,msg=对指定QQ的回复}

进阶用法(审核通知)

{CQ:private,qq=[QQ],msg=你的问题审核通过了}(在审核通过中可用来做消息通知)

# 发送群聊消息

{CQ:public,group={1},msg={2}}

{1} 为指定群号。

{2} 消息内容

回复举例

对提问者的回复{CQ:public,group=87536497,msg=对指定群的回复}

# 禁言

{CQ:ban,time={1},qq={2}}

{1} 为禁言的时间,单位为秒。如果要解禁,这里填写0。

{2} 为指定QQ号,可选参数,不填默认提问者。

回复举例

{CQ:ban,time=60}(禁言1分钟)

# 全员禁言

{CQ:bangroup,type={1}}

{1} 为on时开启全员禁言,off时关闭全员禁言

# 随机数

{CQ:rand,min={1},max={2}}

{1} 为最小值。

{2} 为最大值。

# 专属回复

{CQ:custom,qq={1}}

{1} 为指定QQ号。

回复举例

普通回复|指定QQ1回复{CQ:custom,qq=125478554}|指定QQ2回复{CQ:custom,qq=242179284}|指定QQ3回复{CQ:custom,qq=3214561712}

# 时段回复

{CQ:time, period={1}}

{1} 为时段,只能是早上、上午、中午、下午、晚上、凌晨,且六个时段都要有回复,否则会报错。

回复举例

早上时的回复{CQ:time,period=早上}|上午时的回复{CQ:time,period=上午}|中午时的回复{CQ:time,period=中午}|下午时的回复{CQ:time,period=下午}|晚上时的回复{CQ:time,period=晚上}|凌晨时的回复{CQ:time,period=凌晨}

# 好感回复

{CQ:favor,rank={1}}

{1} 为好感度等级(0-5),分别对应6个等级关系,rank为0时可以省略CQ码,且六个等级都要有回复,否则会报错。

回复举例

好感度第一阶段回复|好感度第二阶段回复{CQ:favor,rank=1}|好感度第三阶段回复{CQ:favor,rank=2}|好感度第四阶段回复{CQ:favor,rank=3}|好感度第五阶段回复{CQ:favor,rank=4}|好感度第六阶段回复{CQ:favor,rank=5}

引起内存非法读取的原因

1.不同rank或period之间之间没有用"|"隔开

2.遗漏某个段的rank或period

# 好感度增加

{CQ:favor,add={1},qq={2}}(只写一次即可)

{1} 为好感度增加值,当到达好感度次数限制时,停止增加。

{2} 为指定QQ号,可选参数,不填默认提问者。

回复举例

好感度增加回复1|好感度增加回复2|好感度增加回复3 {CQ:favor,add=30}

# 好感度降低

{CQ:favor,reduce={1},qq={2}}(只写一次即可)

{1} 为好感度减少值,不受好感度次数限制,可无限减少,可利用此特性写负值实现无限增加。

{2} 为指定QQ号,可选参数,不填默认提问者。

回复举例

好感度降低回复1|好感度降低回复2|好感度降低回复3 {CQ:favor,reduce=20}

随机好感度的实现方法

好感度降低回复1|好感度降低回复2|好感度降低回复3 {CQ:favor,add={CQ:rand,min=10,max=50}}

好感阶段回复和好感增加的组合使用

好感度第一阶段回复|好感度第二阶段回复{CQ:favor,rank=1}|好感度第三阶段回复{CQ:favor,rank=2}|好感度第四阶段回复{CQ:favor,rank=3}|好感度第五阶段回复{CQ:favor,rank=4}|好感度第六阶段回复{CQ:favor,rank=5}{CQ:favor,reduce=20}

# 增加积分

{CQ:gmp,add={1},qq={2}}

{1} 为增加量,当到达积分次数限制时,停止增加。

{2} 为指定QQ号,可选参数,不填默认提问者。

回复举例

给你1000GMP{CQ:gmp,add=1000}

# 减少积分

{CQ:gmp,reduce={1},qq={2}}

{1} 为减少量,可无限减少,可利用此特性写负值实现无限增加。

{2} 为指定QQ号,可选参数,不填默认提问者。

回复举例

减少1000GMP{CQ:gmp,reduce=1000}

# 概率回复

{CQ:percent, value={1}}

{1} 为概率,范围为1-100的整数,要使用概率回复每个段都必须设置CQ码

回复举例(所有概率之和不一定为100%)

概率回复1{CQ:percent,value=40}|概率回复2{CQ:percent,value=10}|概率回复3{CQ:percent,value=1}

随机是否回复的写法

回复{CQ:percent,value=60}|{CQ:percent,value=20}

# 自定义图片(网络)

{CQ:image,file={1},flash={2}}

{1} 为图片文件url,{2} 为是否闪照(可省略)(flash=0是为正常图片,flash=1时为闪照)

回复举例

{CQ:image,file=http://i0.hdslb.com/bfs/bangumi/ec463f524ec43b12f64a15450709aae8df837edc.jpg}

# 龙王是自己

{CQ:talkative,qq={1}}

{1} 为机器人QQ号

回复举例(当机器人是龙王时回复我是龙王,否则回复我不是龙王)

我不是龙王|我是龙王{CQ:talkative,qq=134613464}

# 发送礼物

{CQ:gift,qq={1},id={2}}

{1} 为指定QQ号。

{2} 为礼物ID

礼物ID参考

367告白话筒;299卡布奇诺;302猫咪手表;280牵你的手;281可爱猫咪;284神秘面具;285甜wink;286我超忙的;289快乐肥宅水;290幸运手链;313坚强;307绒绒手套; 312爱心口罩;308彩虹糖果

回复举例

{CQ:gift,qq=[QQ],id=367}(给提问者送出卡布奇诺)

# URL编码

{CQ:urlencode,msg={1}}

{1} 为消息内容,此CQ码可将文本就行url编码,用于网络图片提交数据

回复举例

{CQ:image,file=https://api.uomg.com/api/rand.img1?sort={CQ:urlencode,msg=二次元}&format=images}

# 拍一拍

{CQ:tap,qq={1}}

{1} 为目标QQ

回复举例(拍一下自己)

{CQ:tap,qq=[QQ]}

# 秀图

{CQ:showpic,url={1},type={2}}

{1} 为url地址

{2} 为秀图类型(40000普通,40001幻影,40002抖动,40003生日,40004爱你,40005征友,默认普通)

回复举例(秀自己QQ头像,随机效果)

{CQ:showpic,url=https://q1.qlogo.cn/g?b=qq&nk=[QQ]&s=640,type={CQ:rand,min=40001,max=40005}}

秀指定图片

问题:秀图\s*[pic,hash=(.+)]
回答:[picShow,hash=[子文本1],showtype=40001]

# JSON消息

{CQ:json,data={1}}

{1} json字符串文本

注意

{1}自行替换为JSON字符串后的文本,不能有换行,如果要使用此CQ码,回答里只能写此CQ码。

# 原生酷Q CQ码:

# 自定义图片(本地)

[CQ:image,file={1}]

{1} 图片文件名称,图片存放在插件目录的ohdata\image\下

回复举例

[CQ:image,file=1.jpg](发送ohdata\image\1.jpg)

# 语音(本地)

[CQ:record,file={1}]

{1} 一篇文件名称,音频存放在插件目录的ohdata\record\下,支持mp3、amr、silk

回复举例

[CQ:record,file=1.silk](发送ohdata\record\1.silk)

# 表情

[CQ:face,id={1}]

{1} 为≥0的数字

回复举例

[CQ:face,id=14](发送一个微笑的系统表情)