acore_string 表
acore_string表存储AzerothCore核心系统的多语言字符串,包括系统消息、错误提示、广播等。
表概述
acore_string表是AzerothCore的核心字符串本地化系统,存储所有核心级别(非模块)的系统消息文本。每个entry对应一条系统消息,content_default为英文默认文本,各locale_xx列提供对应语言翻译。
主键为 entry,覆盖8种语言。支持占位符(如%s, %d)用于动态替换玩家名、数值等参数。
表结构
| 字段名 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|
| entry | INT UNSIGNED | 0 | 字符串唯一标识(主键) |
| content_default | TEXT | NOT NULL | 默认英文文本 |
| locale_koKR | TEXT | NULL | 韩文翻译 |
| locale_frFR | TEXT | NULL | 法文翻译 |
| locale_deDE | TEXT | NULL | 德文翻译 |
| locale_zhCN | TEXT | NULL | 简体中文翻译 |
| locale_zhTW | TEXT | NULL | 繁体中文翻译 |
| locale_esES | TEXT | NULL | 西班牙文翻译 |
| locale_esMX | TEXT | NULL | 墨西哥西班牙文翻译 |
| locale_ruRU | TEXT | NULL | 俄文翻译 |
重要字段详解
entry (字符串编号)
2000-2010范围内为服务器启动/关闭消息,3000+为游戏内系统提示。常见条目示例:
- 2000 - 服务器关闭警告
- 3000 - GM在线提示
- 3001 - 重启倒计时
实战案例
为中文客户端自定义系统消息
UPDATE acore_string
SET locale_zhCN = '服务器将在%s分钟后维护,请做好准备!'
WHERE entry = 10001;
查询所有缺少中文翻译的字符串
SELECT entry, content_default
FROM acore_string
WHERE locale_zhCN IS NULL OR locale_zhCN = ''
ORDER BY entry;
常见问题
Q: 修改后如何生效?
A: 使用 .reload acore_string GM命令即可热加载,无需重启服务器。
Q: 模块字符串放在哪?
A: 模块自有字符串存储在module_string表中,不在acore_string。核心级别的系统消息才使用此表。