06-08-2026, 10:49 AM
指定频道发送消息
KOOK 指令默认可以回复到当前频道,也可以发送到指定频道。
1. 回复当前频道
玩家在哪个 KOOK 频道输入指令,机器人就回复到哪个频道:
KOOK 输入:
机器人会在当前频道回复:
2. 发送到指定频道
如果想让机器人把消息发送到固定频道,可以使用频道 ID:
这样无论 /test 在哪个频道执行,消息都会发送到指定频道。
3. 游戏内主动发送 KOOK 日志
也可以写成一个 stock,方便游戏系统调用:
使用示例:
4. 限制指令只能在指定频道使用
如果不希望某个指令在所有频道都能用,可以判断当前频道 ID:
这样只有在指定频道输入:
指令才会真正执行。
5. 说明
用于获取指定 KOOK 频道。
用于向某个频道发送普通文字消息。
用于获取当前频道的 ID,常用于判断指令是否来自指定频道。
KOOK 指令默认可以回复到当前频道,也可以发送到指定频道。
1. 回复当前频道
玩家在哪个 KOOK 频道输入指令,机器人就回复到哪个频道:
代码:
KCMD:ping(user, channel, params[])
{
KCC_SendChannelMessage(channel, "pong");
return 1;
}KOOK 输入:
代码:
/ping机器人会在当前频道回复:
代码:
pong2. 发送到指定频道
如果想让机器人把消息发送到固定频道,可以使用频道 ID:
代码:
KCMD:test(user, channel, params[])
{
new KCC_Channel:targetChannel = KCC_FindChannelById("你的频道ID");
KCC_SendChannelMessage(targetChannel, "这条消息会发送到指定频道");
return 1;
}这样无论 /test 在哪个频道执行,消息都会发送到指定频道。
3. 游戏内主动发送 KOOK 日志
也可以写成一个 stock,方便游戏系统调用:
代码:
stock SendMyKookLog(const message[])
{
new KCC_Channel:targetChannel = KCC_FindChannelById("你的频道ID");
KCC_SendChannelMessage(targetChannel, message);
return 1;
}使用示例:
代码:
SendMyKookLog("服务器启动完成。");4. 限制指令只能在指定频道使用
如果不希望某个指令在所有频道都能用,可以判断当前频道 ID:
代码:
KCMD:players(user, channel, params[])
{
new currentId[KCC_ID_SIZE];
KCC_GetChannelId(channel, currentId, sizeof(currentId));
if(strcmp(currentId, "允许使用的频道ID", false) != 0)
{
KCC_SendChannelMessage(channel, "这个指令只能在指定频道使用。");
return 1;
}
KCC_SendChannelMessage(channel, "指令执行成功。");
return 1;
}这样只有在指定频道输入:
代码:
/players指令才会真正执行。
5. 说明
代码:
KCC_FindChannelById("频道ID")用于获取指定 KOOK 频道。
代码:
KCC_SendChannelMessage(channel, "消息")用于向某个频道发送普通文字消息。
代码:
KCC_GetChannelId(channel, currentId, sizeof(currentId))用于获取当前频道的 ID,常用于判断指令是否来自指定频道。

