最新标注
热门标注
历史更新
站点地图
RSS
Home
CrazyCoder
»
原创
»
it评论
»
it业界
»
互联网
»
精品软件
开发语言
»
网络编程
编程综合
嵌入式开发
算法
英文资料
汇编语言
PowerBuilder
p2p技术
验证码识别
DotNet
Java教程
C语言教程
C 教程
Delphi教程
VB教程
QQ协议开发
项目管理
»
数据库
»
Web开发
»
Python
Css教程
XML教程
网页特效
PhotoShop教程
Illustrator教程
CorelDraw教程
Ruby教程
CorelDraw教程
网站安全
开发平台-工具
Web
PHP教程
Flash教程
Ajax教程
Javascript教程
Html教程
Dreamweaver
Asp教程
技术综合
»
软件测试
办公软件
QQ相关
Windows
网络技术
游戏开发
软件工程
软件教程
编程思想
游戏开发
外挂开发
OpenApi
AutoCad
广告设计
3D设计
平面设计相关
移动手机开发
服务器
»
Linux
Unix/FreeBsd
web服务器
服务器技术
安全
博文摘选
»
翻译
首页
»
游戏开发
» 网络游戏制作:网络游戏制作技术( 2)
Rss订阅
网络游戏制作:网络游戏制作技术( 2)
on 2008-12-14
in
游戏开发
|
0 Comment
续上在上面我简单
说了
下服务器完成端口处理部分
接下来我想大家介绍
下有关如何建立服务器和客户端
联系规则
也就是服务器和客户端
游戏协议部分
有不足的处希望大家和我进行交流
首先解释
下这里协议
概念
协议大家都了解是
种通信规则
例如:TCP/IP
UDP等等
这些是我们在网络通信过程中所处理使用
协议
而我们这里
协议是我们
游戏服务器和客户端
通信规则
简而言的
也就是客户端发送到服务器
数据包和服务器发送
数据包双方解释规则
下面就通过几个部分来具体介绍这种协议
建立和处理
消息头定义
如果我们能够解释双方
数据包
意义
我们就必须为双方数据包定义
个统
规则
消息头
我是这么定义消息头
服务器数据包和客户端数据包分别定义区别
消息头
以下就是双方消息头
简单定义
struct ServerMsg_Head //服务器消息头
{
WORD s_version; //版本信息
BYTE s_flages; //消息标志
BYTE s_who; //消息驱动者
BYTE s_sort; //消息类别
BYTE s_value; //消息值
WORD s_len; //消息长度
} ;
struct ClientMsg_Head //客户端消息头
{
WORD c_version; //版本信息
WORD c_flages //消息标志
WORD c_sort; //消息类别
WORD c_value; //消息值
WORD c_scene; //场景信息
WORD c_len; //消息长度
};
以上是我个人简单定义
消息头
具体
各个参数意义
就是需要规划设计
人来定了
这些我就不多说了
在我们处理完我们
消息头后
我们就可以将我们
具体游戏数据进行打包
有关数据打包
我们必须要处理两件事情:数据打包
数据加密
为此我就建立相应
来处理这样
些操作
DataCtrl.h处理如下:
Ppackage类可以拆解为两个单独处理类
打包类和解包类
而此处我就用下面
个类来进行处理
只是给大家开个头
要设计
更好还是靠大家共同来进行斟酌呀!!
PPackage //游戏数据包处理类
{
public:
PPackage(BYTE msg_type); //设置所打包消息类型
virtual ~PPackage
;
//消息数据打包部分
void SetMsgHead(void *); //设置消息头
void AddByte(BYTE data); //加入
字节
void AddWord(WORD data); //加入 2字节
void AddDword(DWORD data); //加入 4字节
void AddPo
(POINT data); //加入 8字节
void AddBuf(char * data ,
data_len); //加入多个字节
//消息内容获取
void FinishPack
; //完成打包
char *GetPackage
; //获取数据包
GetPacketLen
; //获取数据包长度
//消息数据解包部分
void SetMsgPackage(char *buf,
_Len); //将获取消息进行录入
void *GetMsgHead
; //获取消息头数据
BYTE GetByte
; //获取
字节
WORD GetWord
; //获取 2字节
DWORD GetDword
; //获取 3字节
POINT * GetPo
; //获取 4字节
char * GetBuf(
buf_len); //获取多字节
bool IfFinishGet
; //是否完成解包
private:
void Init
;
void Release
;
void StartBindPakage
; //开始打包
void StartUndoPackage
; //开始解包
bool MessageEncrypt
; //消息加密
bool MessageUndo
; //消息解密
private:
private:
BYTE msg_type; / /{1-SERVER_PACKAGE=1,2-CLIENT_PACKAGE=2}
char * msg_buffer;
char * buffer; //后备缓冲区
msg_len;
//消息内容长度
Server_Msg_Head msg_Head; //消息头
buf_Len;
current_pos; //指针
当前位置
protected:
};
以上就是有关服务器和消息打包类
些建立和解释
这些方面知识其实也没有什么
主要是“仁者见仁
智者见智”了
而对于网络游戏
制作最重要
还是在于Game World
规划和设计
同时这个方面也是最难和最不好处理
随后将和大家进行探讨
希望大家好我进行交流QQ :81556019 MSN :
[email protected]
Tags:
网络游戏制作软件
如何制作网络游戏
网络游戏外挂制作
网络游戏制作
延伸阅读
2009-2-12
--
网络游戏制作:网络游戏制作技术( 4)
2008-12-14
--
网络游戏制作:网络游戏制作技术( 3)
2009-2-12
--
网络游戏制作:网络游戏制作技术( 5)
2009-2-12
--
网络游戏制作:网络游戏制作技术(一)
2009-2-12
--
网络游戏制作:网络游戏制作随谈(一)
最新评论
发表评论
昵称
评论
验证码
点击图片更换
赞助商广告
随机更新
战胜自己,微软win8,战胜自己比战胜敌人更难
垂直整合,Google 申请整合求职和菜谱等垂直搜索的界面专利
四年级作文下雨了,杭州下雨了 四
免费商业模式,免费商业模式完全指南
二线城市房价,高房价逼腾讯布局二线城市
传送门免费,促进科学教育,《传送门》限时免费
黑客自律公约,自律公约要求中国黑客拒绝通过网络攻击牟利
Matlab中对字符串的处理
系统调用失败,系统调用
nuget,生产环境使用Nuget
苹果box,收购Box未遂者或为苹果
与现有数据库不同,跟大家分享Entity Framework使用Code First方式如何连接到现有数据库
浏览器兼容问题,多浏览器兼容问题—粗解
知名黑客,知名iOS黑客MuscleNerd拜访苹果总部
微软Windows8新快捷菜单将命名为“Charm”
互联网智能手机,智能手机的互联网变局
分享插件,教你如何在博客里加入分享功能——分享插件(HRshare)
惠普已向欧洲TouchPad用户展开退款行动
游戏垂直同步,游戏中的一些同步问题。
中国动向,资本动向
文思敏捷,忘记敏捷
sqlldr,浅谈ORACLE的SQLLDR
iphone4s,AT&T库存跟踪中出现白色iPhone 4S
互联网:开放缘何要设禁飞区?
如何记流水账,WebReBuild年会流水记
去哪儿网CEO谈赴美上市:市场状况不是问题
韩国国家情报局窃听Gmail用户邮件
算法面试题,C# 算兔子的算法 要求用递归,面试题
谷歌gmail,谷歌Gmail已成企业电邮主流 成微软等强劲对手
思科高管:男女比例失衡妨碍美国企业竞争力
热门标注
单素材修整
(1)
多重修整视频
(1)
只读文件
(1)
一心只读圣贤书
(1)
只读一种书的意思
(1)
只读存储器
(1)
故事集合
(1)
中西方思维的差异
(1)
程序员的思维
(1)
程序员思维修炼
(1)
英国总统卡梅隆
(1)
英国ipad价格
(1)
首相卡梅隆
(1)
英国首相卡梅隆
(1)
ps金色立体字
(1)
金色立体字
(1)
zynga股价
(1)
二甲双胍片
(1)
二甲双胍缓释片
(1)
盐酸二甲双胍片
(1)
最近更新
梦幻诛仙》两次增开新服瞬满
10月22日19:00时再次加开3组新服
arp绑定脚本:绑定HGE到AngelScript脚本系统
游戏开发流程:游戏开发制作流程
MD2关键帧动画实现思路方法
通用编程器:游戏引擎中的通用编程技术
3dgameengine:3D Engine 的设计架构
运动模糊:简单的运动模糊效果实现思路方法
qq游戏外挂:通过游戏策划阶段防治游戏外挂
坐标转换:3D坐标转换成屏幕坐标的思路方法
外挂制作实例:游戏外挂制作例子包含代码
setstreamsource:SetStreamSource函数和数据流的使用
depthoffield:景深效果(Depth of Field) 的实现思路方法
角色扮演游戏引擎的设计原理
hge使用:HGE使用GDI绘制中文字体
如何成为一个程序员:想成为一个游戏程序员需要有以下资料
游戏设计的十条戒律
1万游戏开发专业人员难满足10万需求
扫雷游戏vb代码:模拟实现扫雷游戏代码
界面设计:界面流程控制模式设计
最新标注
阿里巴巴上市了吗
(1)
阿里巴巴上市
(1)
阿里巴巴分拆
(1)
2155小游戏
(1)
阿里巴巴回购员工
(1)
阿里巴巴股权回购
(1)
值得一试英文
(1)
阿里巴巴回购股票
(1)
值得一试
(1)
rexsee
(1)
工厂环境描述
(1)
全拼双拼
(1)
什么是双拼
(1)
双拼别墅
(1)
qianpin
(1)
退休后干什么
(1)
退休后住房公积金
(1)
退休后
(1)
退休后的生活
(1)
退休后公积金
(1)
最新评论