在T端中,数据库负责保存终端的显示信息,例如物品名称。默认情况下,这些信息是英文(enUS)的。然而,我们需要将它们修改为中文模式。在芒果和国内一些知名的私服中,都是直接在原地进行修改的,我之前也是这样操作的。但后来发现这样做很容易出错,所以我仔细研究了T端的初始化过程,并发现了一些有趣的事情。接下来,我们先来了解一下这个过程:

1. 客户端在登录认证时,会提供一个国家代号(uint8[4]),例如:

enUS=0, koKR=1, frFR=2, deDE=3, zhCN=4, zhTW=5, esES=6, esMX=7, ruRU=8

2. 认证成功后,该国家代号(如中国大陆的“zhCN”)会被转换为代码4并保存在realmd.account的locale字段中。同时,会话也会记录这个代码【4】。

3. 以任务为例,当玩家打开任务列表时,任务的ID和标题会被加载进来。T端会根据当前的国家代码判断,如果不是enUS的,就会根据ID检索国际化map,找到相应的标题。然后将标题返回给客户端。

从上面的描述中,我们可以看到,在T端中,实际上英文和国际化文字是同时存在于数据库中的。那么,它们是如何存储的呢?在M端和T端中,都有以下几个表:

1. locales_achievement_reward

2. locales_creature

3. locales_gameobject

4. locales_item

5. locales_npc_option

6. locales_npc_text

7. locales_page_text

8. locales_points_of_interest

9. locales_quest

以生物(creature)为例,locales_creature有以下几个字段:

1. entry

2. name_loc1 ... name_loc8

3. subname_loc1 ... subname_loc8

综上所述,T端通过查询国际化map来实现英文和中文之间的转换。

根据提供的内容,我们可以将需要汉化的每个表的字段如下:

1. achievement_reward: [entry + subject + text]

2. creature_template: [entry + name + subname]

3. gameobject_template: [entry + name + castbarcaption]

4. item_template: [entry + name + description]

5. npc_option: [entry + option_text + box_text]

6. npc_text: [entry + text0_0 + text0_1 + text1_0 + text1_1 + text2_0 + text2_1 + text3_0 + text3_1 +

text4_0 + text4_1 + text5_0 + text5_1 + text6_0 + text6_1 + text7_0 + text7_1]

7. page_text: [entry + text]

8. points_of_interest: [entry + icon_name]

9. quest_template: [entry + title + details + objectives + offerrewardtext + requestitemtext + endtext +

objectivetext1 + objectivetext2 + objectivetext3 + objectivetext4]

这些信息来源于locales_creature表,其中name和subname字段需要国际化。中国大陆的代码是4,所以只需填写name_loc4和subname_loc4即可。

请根据以下内容完成重构,并保持段落结构:

假设有一个物品,编号为[entry],值为[44444]。如果我们连接到【http://db.178.com/wow/cn/item/44444.html】,可以看到这是【黑暗蛛魔胸甲】。在网上,我们找到了一个方法,其地址为【http://db.178.com/wow/cn/a/item/44444.js】。这个方法会返回如下内容:

从中,我们可以提取出所需的信息。这个地址的格式是:【http://db.178.com/wow/[locale]/a/[type]/[entry].js】,其中[locale]表示简体中文(对于台湾地区应为tw),[type]表示类型(例如item或npc等),而[entry]则是表格中的entry值。

有时候,可能会遇到一些奇怪的单词或者名称,它们可能并不存在翻译。这时,我们可以使用另一个网址:【http://db.ngacn.cc/tips/index.php?key=Might of Kalimdor Archmage&word=1】。将我们想要查找的内容放在key后面,例如:

【http://db.ngacn.cc/tips/index.php?key=Might of Kalimdor Archmage&word=1】

这个地址会输出:

Might of Kalimdor Archmage 卡利姆多联军大法师

0.006599

这表示“Might of Kalimdor Archmage”的中文意思是【卡利姆多联军大法师】,0.006599是它的执行时间。

需要注意的是,如果你想要查询某个特定的词汇,最好使用加入&word=1的地址,这样输出的结果会更加简单明了。

好了,经过一段时间的努力,终于完成了这个任务。我将在www.romandion.com上分享我的成果。如果你需要查询这些信息,只需使用用户名locale和空密码连接到该网站(推荐使用navicat)。你可以随时查看我的汉化结果。如果你也已经完成了汉化工作,欢迎与我共享成果。此外,你还可以将你的成果加入我的群组【32285689】,大家可以相互学习。请注意,该群组实行实名制,还请谅解。