📖 addons 表
允许插件白名单表,定义哪些第三方插件可以在本服务器上使用。
📋 表概述
addons 表是一个插件白名单配置表。当服务器开启了插件签名验证功能时,只有在此表中注册过的插件(通过 CRC 校验)才被允许在客户端加载。这可以防止玩家使用被禁用的或恶意篡改的插件。
- 主键:(name)
- 引擎:InnoDB
- 关联表:banned_addons(黑名单)
📊 表结构
| 字段名 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|
name | varchar(120) | '' | 插件名称(通常与 .toc 中的名称一致) |
crc | int UNSIGNED | 0 | 插件的 CRC32 校验值,用于版本验证 |
🔍 重要字段详解
crc — CRC32 校验值
插件的完整性校验码。服务端通过验证客户端发送的插件 CRC 值来判断插件是否被篡改。不同版本的同一插件会有不同的 CRC 值。此功能可防止玩家修改插件代码来获取不公平优势。
name — 插件名称
必须与客户端 AddOns 目录下插件 .toc 文件中声明的名称完全一致(区分大小写)。只有名称和 CRC 同时匹配的插件才被允许加载。
💡 SQL查询示例
查看所有已注册的插件
SELECT name, crc FROM addons ORDER BY name;
添加一个新插件的白名单
INSERT INTO addons (name, crc) VALUES ('MyAddon', 0);
❓ 常见问题
Q: CRC 设为 0 是什么意思?
当 crc 设为 0 时,表示不验证该插件的完整性,允许任意版本的该插件加载。这通常用于开发阶段的插件或经常更新的插件。正式环境建议填写正确的 CRC 值。
Q: 这个表和 banned_addons 有什么区别?
addons 是白名单(允许列表),banned_addons 是黑名单(禁止列表)。当两者冲突时,黑名单优先——即使插件在 addons 中注册,如果同时出现在 banned_addons 中也会被禁止。