跳转到内容
主菜单
主菜单
移至侧栏
隐藏
导航
首页
最近更改
随机页面
社群首页
帮助
希顶相关网站
希顶社区官网
希服维基
Nyoeghau翻译器
〇改希顶转写器
语圈山海经
搜索
搜索
外观
创建账号
登录
个人工具
创建账号
登录
查看“︁LNNBot”︁的源代码
页面
讨论
不转换
不转换
简体
繁體
新加坡简体
阅读
查看源代码
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
查看源代码
查看历史
常规
链入页面
相关更改
特殊页面
页面信息
外观
移至侧栏
隐藏
←
LNNBot
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于这些用户组的用户执行:
用户
、storagereadable
您必须确认您的电子邮件地址才能编辑页面。请通过
参数设置
设置并确认您的电子邮件地址。
您可以查看和复制此页面的源代码。
'''LNNBot''' 是 {{LNN}} 维护的 QQ 机器人,也在 Discord 可用,基于 [https://koishi.chat Koishi.js] 框架,具有[[〇改希顶语]]转写、代码运行、网站截图、字体渲染、信息查询等丰富的功能。 == 架构 == Koishi.js 是一个可扩展的机器人框架,它允许各种插件各自提供自己的功能。LNNBot 的各种功能根据来源可以分为: * '''插件市场插件''',即从 Koishi.js 插件市场安装的插件,由不同的 Koishi.js 插件开发者编写并发布在 npm,通常用 TypeScript 编写; * '''miniplug 插件''',即借助 DGCK81LNN 制作的 [https://www.npmjs.com/package/koishi-plugin-miniplug miniplug] 插件,由维护者在机器人控制台直接使用 JavaScript 编写的插件,省去了将 TypeScript 插件源代码编译为 JavaScript 并重启 bot 的过程,并且可以随时修改插件代码并进行热重载; * '''微指令''',即通过 DGCK81LNN 制作的 [https://www.npmjs.com/package/koishi-plugin-microcommands microcommands] 插件,由维护者在聊天中通过指令输入 JavaScript 代码定义的指令,代码保存在机器人数据库; * '''WhatCommands 指令''',即通过最初由{{预防}}开发的 [[WhatLang]] 语言解释器,由用户自定义的一类类似于指令的功能。 以上四个类别之间实际上存在从属关系,miniplug 本身是一个插件市场插件,microcommands 本身是一个 miniplug 插件(也在插件市场发布),WhatCommands 指令依赖于插件市场插件 whatlang。四个类别之间呈现从稳健到轻便的层级关系,在为 LNNBot 实现新功能时,较为复杂的功能需要编写为单独插件,而轻量简单的需求使用微指令甚至 WhatCommands 指令即可满足。 DGCK81LNN 编写的插件市场插件会[https://github.com/DGCK81LNN?tab=repositories&q=koishi-plugin 开源在 GitHub];而 LNNBot 所用的 miniplug 插件和微指令的源代码则会不定期同步到 [https://gitee.com/DGCK81LNN/lnnbot-miniplugs Gitee 仓库 DGCK81LNN/lnnbot-miniplugs]。另外,用户可以通过 <code>/{{LNNBot指令链接|microcommand show|code=0}} ''微指令名称''</code>、<code>{{LNNBot wc指令链接|¿|code=0}} cmdget ''WhatCommands指令名称''</code> 查询 LNNBot 的任何微指令或 WhatCommands 指令的源代码。 == 功能系统 == === 指令系统 === {{main|LNNBot/指令}} '''指令'''是 LNNBot 功能中重要的一类,它们有一种共通的调用语法,即发送 <code>'''/名称''' 选项和参数…</code>。 === WhatCommands 指令 === {{main|LNNBot/WhatCommands指令}} '''WhatCommands 指令'''是一种可由用户使用 [[WhatLang]] 语言自定义的功能,可通过发送 <code>'''¿¿名称''' 输入…</code> 或 <code>'''/[[LNNBot/指令/whatcmd|wc]] 名称''' 输入…</code> 来使用。 === 用户系统 === 当 bot 首次在聊天中收到来自一个账号的消息时,会自动将该账号登记为'''用户'''并按顺序分配一个'''用户序号'''。通过[[LNNBot/指令/bind|账号绑定]]可以让bot把指定账号关联到指定的一个已有用户。每个用户具有一定的'''[[LNNBot/权限|权限]]'''。 === 点数系统 === 为了限制一些功能的使用,部分指令在调用时需要消耗'''点数'''。每个用户每天(北京时间)可以使用 {{LNNBot指令链接|checkin}} 指令进行'''签到'''来获得点数;'''[[LNNBot/指令/patron|赞助]]''' LNNBot 的用户可以获得'''点数消耗减免额度'''奖励。用户可以使用 {{LNNBot指令链接|balance}} 指令来查询自己当前拥有的点数和点数消耗减免额度。 == 外部链接 == * [https://notblog.vudrux.site/wiki/LNNBot LNNBot — LNN的:not(博客)?](记载了 LNNBot 的一些历史)
该页面使用的模板:
Template:LNN
(
查看源代码
)
Template:LNNBot wc指令链接
(
查看源代码
)
Template:LNNBot指令链接
(
查看源代码
)
Template:Main
(
查看源代码
)
Template:U
(
查看源代码
)
Template:预防
(
查看源代码
)
返回
LNNBot
。