TrinityCore是一个开源项目,维护于GitHub。TrinityCore基于MaNGOS开源项目并做了大量改动与优化,目前已经独立出来并拥有大量维护者,拥有成熟的社区环境。 TrinityCore是一个魔兽世界服务端模拟器,目前经过多年的维护于优化,已经基本模拟了所有魔兽世界服务端的功能与特性,而且没有严重影响游戏运行的BUG。 TrinityCore开源项目目前在GitHub上面维护了两个最重要的分支,一个是6.x版本(最新版),一个是3.3.5版本(巫妖王之怒)。 下面我们就将基于TrinityCore开源项目(3.3.5分支)讨论如何规划一个魔兽世界的公益服务器。

〇、整体架构共分为三层

1.Client客户端
2.Server服务端
3.DataBase数据库
如下图所示:
服务器架构图
图中灰色框体内是TrinityCore开源项目部分,其他颜色框体是开服必须但是非TrinityCore部分。下面我们来分别说明:

一、客户端

1.WOW Client :游戏客户端,版本限制为3.3.5a(国服13930,台服12340)。
2.Launcher:登录器,使用C#编写的windows程序,提供登录功能。基于Jeakz's Launcher改造。

二、服务器

1.WEB Server:网站系统,基于通用CMS改造,提供账号注册、修改密码、服务器状态查询等功能。
2.World Server:游戏世界服务器,基于TrinityCore改造。支撑游戏运行的最重要的服务器。
3.Auth Server:鉴权服务器,基于TrinityCore,无改动。提供登录与服务器列表功能。

三、数据库

1.Web数据库:对应WEB Server服务器的数据库。
2.Characters数据库:角色数据库,存储所有角色人物相关的信息。TrinityCore提供建表SQL。
3.World数据库:世界数据库,存储整个魔兽世界的一切信息,包括NPC,怪物,装备,道具,任务,副本等等所有一切。TrinityCore提供建表SQL。
4.Auth数据库:权限数据库,存储服务器列表,玩家账户等信息。TrinityCore提供建表SQL。