发帖
查看: 163|回复: 0

传奇世界服务器的基本构造详解

[复制链接]

传奇世界服务器的基本构造详解[复制链接]

这里是初步拟订的(相当与1.60版)结构,还包含了几个做好的服务端结构性设备,现在进展很快,有的图发不上来很遗憾.不感发出来怕犯法,就自己留着玩啦


日志说明书
一、文件描述
项目标识项目名称日志
项目经理王峰设计者吴文仲审核者
设计日期2005.3.25审核日期


二、文档修订纪录

序号修改时间修改人审核人备注
1
2
3
4
5
6
7
8
9
15
16
17

三、功能及运行
日志通过UDP协议接收GameServer
发送来的加密日志信息包,解密并解析相关内容后,发送给已连接的MySQL数据库,在MySQL数据库中记录下相关日志信息。


在启动日志服务器之前,首先必须启动MySQL数据库,且建好数据库表(见建表脚本文件table_script.txt)。然后正确配置日志的配置文件Config.ini

四、配置文件说明

配置文件:Config.ini
[LogServer]
logip=10.10.10.36(LogServer接收信息端的IP地址,必须与GameServer的配置一致)
logport=6801(LogServer接收信息端的端口,必须与GameServer的配置一致)

[MySqlServer]
mysqlip=10.10.10.160(MySQL数据库的IP地址)
mysqlport=3306(MySQL数据库的端口)
dbname=logs(数据库的名称) 内容来自5 u w l.net
user=root(数据库用户名)
password=(数据库密码)


五、表结构说明

1.GD行为日志表
createtableGd_Action_Logs
(
rowidbigintunsignednotnullAUTO_INCREMENT,
Player_Idvarchar(14)notnull,
Player_Chrvarchar(18)notnull,
Player_IPvarchar(18)notnull,
GD_Commandvarchar(255)notnull,
Use_datedatetimenotnulldefaultNOW(),
ActionTypevarchar(50)notnull,
primarykey(rowid)
);

字段说明:
Player_Id玩家帐号
Player_Chr玩家角色名
Player_IP玩家IP地址
Use_date时间

ActionTypeGD_Command
上下线上线/下线
GD指令对象/使用参数/包括群发消息的消息内容。
交易对方/物品/
组队队长角色/组员
行会行会名/在其中担任的职务/
发言内容发言方式(组队/普通/行会内/喊话等)/私聊对象/发言内容
拣物品/扔物品动作类型(扔/拣)物品/金钱数量
装备/取下物品动作类型/装备/取下物品
PK地图/对方/胜负对方死/自己死/对方受伤害但没有死/无伤害/自己的
伤害情况)
打怪地图/怪物/
死亡地图/对方(人或怪物)
非隐身状态时间始终点/
GD参与的举动

2.交易日志表
createtableItems_Transform_Logs
(
rowidbigintunsignednotnullAUTO_INCREMENT,
Player_Chr1varchar(18)notnull,
Item_List1textnotnull,
Player_Chr2varchar(18)notnull,
Item_List2textnotnull,
Trans_datedatetimenotnulldefaultNOW(),
primarykey(rowid)
);
字段说明:
Player_Chr1参与交易的玩家1角色名
Item_List1玩家1的交易物品
Player_Chr2参与交易的玩家2角色名
Item_List2玩家2的交易物品
Trans_date交易时间

3.跳GS日志表
createtableJump_Gs_Logs
(
rowidbigintunsignednotnullAUTO_INCREMENT,
Player_Chrvarchar(18)notnull,
JumpDetailvarchar(80)notnull,
Jump_datedatetimenotnulldefaultNOW(),
primarykey(rowid)
);
字段说明:
Player_Chr玩家角色名
JumpDetail跳GS的详细描述
Jump_date跳GS时间

4.组队日志表
createtableGroup_Logs
(
rowidbigintunsignednotnullAUTO_INCREMENT,
Player_Chrvarchar(18)notnull,
GroupDetailvarchar(100)notnull,
Group_datedatetimenotnulldefaultNOW(),
primarykey(rowid)
);
字段说明:
Player_Chr玩家角色名
GroupDetail组队的详细描述
Group_date组队时间

5.仓库存取物品记录日志表
createtableStoreItem_Logs
(
rowidbigintunsignednotnullAUTO_INCREMENT,
Item_Idbigintunsignednotnull,
Item_Namevarchar(30)notnull,
Item_Hostvarchar(18)notnull,
Action_Typevarchar(10)notnull,
Item_Propertyvarchar(255)notnull,
StoreDatedatetimenotnulldefaultNOW(),
primarykey(rowid)
);
字段说明:
Item_Id物品ID
Item_Name物品名称
Item_Host物品的所有者
Action_Type存物品/取物品
Item_Property物品属性
StoreDate存取物品时间

6.武器升级记录日志
createtableWeaponUpdate_Logs
(
rowidbigintunsignednotnullAUTO_INCREMENT,
Weapon_Idbigintunsignednotnull,
Weapon_Namevarchar(30)notnull,
Weapon_Hostvarchar(18)notnull,
Update_Typevarchar(20)notnull,
Weapon_Propertyvarchar(255)notnull,
UpdateDatedatetimenotnulldefaultNOW(),
primarykey(rowid)
);
字段说明:
Weapon_Id武器ID
Weapon_Name武器名称
Weapon_Host武器所有者
Update_Type使用祝福油被祝福/使用祝福油被诅咒/修练/PK被诅咒
Weapon_Property武器升级前属性和升级后属性
UpdateDate时间

7.PK记录日志表
createtablepk_logs
(
rowidbigintunsignednotnullAUTO_INCREMENT,
Player1_Chrvarchar(18)notnull,
Player2_Chrvarchar(18)notnull,
Pk_Resultvarchar(50)notnull,
PkdatedatetimenotnulldefaultNOW(),
primarykey(rowid)
);

字段说明:
Player1_Chr玩家角色名
Player2_Chr对方玩家角色名
Pk_ResultPk结果
PkdatePK时间

8.行会记录日志表
createtableguild_logs
(
rowidbigintunsignednotnullAUTO_INCREMENT,
Player_Chrvarchar(18)notnull,
Guild_Namevarchar(30)notnull,
IsGuildChairsmallintunsignednotnull,
Action_Typevarchar(20)notnull,
Detailvarchar(20),
PkdatedatetimenotnulldefaultNOW(),
primarykey(rowid)
);

字段说明:
Player_Chr玩家角色名
Guild_Name玩家所属行会名
IsGuildChair0
Pkdate时间

Action_TypeDetail
加入行会
退出行会
建立行会
删除行会
编辑封号
编辑公告
申请行会战对方行会名
同盟对方行会名
解除同盟对方行会名
添加行会成员成员角色名
删除行会成员成员角色名
申请攻城城主行会


9.升级记录日志表
createtableupgrade_logs
(
rowidbigintunsignednotnullAUTO_INCREMENT,
Player_Idvarchar(14)notnull,
Player_Chrvarchar(18)notnull,
Upgradevarchar(10)notnull,
datedatetimenotnulldefaultNOW(),
primarykey(rowid)
);

字段说明:
Player_Id玩家帐号
Player_Chr玩家角色名
Upgrade升级描述(例如从一级升到二级为:1->2)
Date升级时间


10.声望值记录日志表
createtablerepute
(
rowidbigintunsignednotnullAUTO_INCREMENT,
player_Chrvarchar(18)notnull,
reputevarchar(20)notnull,
detailvarchar(50)notnull,
datedatetimenotnulldefaultNOW(),
primarykey(rowid)
);
字段说明:
player_Chr玩家角色名
repute声望值变化
detail声望值变化原因
date时间


11.婚姻关系记录日志表
createtablemarry
(
rowidbigintunsignednotnullAUTO_INCREMENT,
hu##andvarchar(18)notnull,
wifevarchar(18)notnull,
typevarchar(20)notnull,
detailvarchar(50)notnull,
datedatetimenotnulldefaultNOW(),
primarykey(rowid)
);
字段说明: 本文来无忧网络
hu##and丈夫角色名
wife妻子角色名
type结婚、离婚
detail结婚或离婚的原因
date时间


12.师徒关系记录日志表
createtableteacher
(
rowidbigintunsignednotnullAUTO_INCREMENT,
teachervarchar(18)notnull,
studentvarchar(18)notnull,
typevarchar(20)notnull,
detailvarchar(50)notnull,
datedatetimenotnulldefaultNOW(),
primarykey(rowid)
);
字段说明:
teacher师父角色名
student徒弟角色名
type建立师徒关系、解除师徒关系
detail建立或解除师徒关系的原因
date时间

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【快速回复】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则