游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3852|回复: 8

关于网络游戏的消息打包与处理的问题?

[复制链接]

3

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2004-4-21 17:35:00 | 显示全部楼层 |阅读模式
网络游戏中 例如人物的走动需要传送人物的当前速度等消息给服务器, 那关于类似的消息(游戏中还有很多其他不同的消息),他们该如何打包? 当一个客户端接收到这个包以后,该如何处理这个消息包?

1. 关于处理消息包我们小组目前的构思是:
  例如有  MSG_PLAYER_WALK  这个消息, 我们把它定义为一个string 类型的, 然后 string 的结构是    type, PID, speedX, speedY, distanceNeeded  
这样一连串的字符, 接收消息后首先判断 type 知道它是 MSG_PLAYER_WALK  这样一个消息, 然后对这个string进行处理,设计相关的成员函数提取相关的信息如 PID,speedX 等.  把这些信息送到游戏中其他的函数中进行进一步处理,从而实现消息的传递. 我们想做一个 MSG  的类 ,做接受跟处理 里面的消息包, 想问一下该如何够架? 另外还想请有经验的朋友指点一下我们的构思是否可行? 你们有什么好的建议吗?

2. 关于消息打包:
   这一部分我们想听听各位是如何进行消息打包的?有什么建议没?

多谢.  

3

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
 楼主| 发表于 2004-4-21 17:36:00 | 显示全部楼层

Re:关于网络游戏的消息打包与处理的问题?

如果各位朋友有好的资料能供参考, 能否发到我的邮箱里去?

  caojunvincent@163.com

59

主题

1104

帖子

1199

积分

金牌会员

Rank: 6Rank: 6

积分
1199
发表于 2004-4-22 08:12:00 | 显示全部楼层

Re:关于网络游戏的消息打包与处理的问题?

网络消息有很多类型的。

消息结构很简单:
unsigned int type;
unsigned int len;
unsigned char content;
然后根据不同的type给各个不同的组件自己去解析content的内容。

10

主题

90

帖子

90

积分

注册会员

Rank: 2

积分
90
QQ
发表于 2004-4-22 11:50:00 | 显示全部楼层

Re:关于网络游戏的消息打包与处理的问题?

visual c++ 网络游戏建模与实现

95

主题

1089

帖子

3301

积分

论坛元老

Rank: 8Rank: 8

积分
3301
QQ
发表于 2004-4-22 14:52:00 | 显示全部楼层

Re:关于网络游戏的消息打包与处理的问题?

哈哈,容易,我只说C
不要用string
//look:
struct  STRUCT1{
int int1;
char char1;
char char2[2][3];
...
};

//发送...:
STRUCT1 struct1;
char vchar[sizeof(STRUCT1)];
memcpy(vchar,(char*)struct1,sizeof(STRUCT1));
...
//收到到了...:
STRUCT1 struct2;
memcpy((char*)struct2,vchar,sizeof(STRUCT1));
...

18

主题

122

帖子

132

积分

注册会员

Rank: 2

积分
132
发表于 2004-4-22 19:23:00 | 显示全部楼层

Re:关于网络游戏的消息打包与处理的问题?

GOOD    不是很明白  不过还是顶

0

主题

8

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2004-4-25 11:46:00 | 显示全部楼层

Re:关于网络游戏的消息打包与处理的问题?

又很多现成的可以参考的东西,比如WINDOWS的消息机制,无非就是一个是本机的,一个是网络

1

主题

8

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2004-4-26 08:17:00 | 显示全部楼层

Re: 关于网络游戏的消息打包与处理的问题?

使用字符串方式也不是完全不好,各有优缺点。利用二进制数据段通讯,操作方便,传输和解析的效率高;利用字符串通讯,虽然传输和解析的效率低,操作也麻烦一些,但扩展性和兼容性要好很多。

在网络游戏中字符串通讯的扩展性和兼容性优势好象不太体现的出来,所以建议还是自己定义一些二进制数据段进行网络传输,如坚持要用字符串,推荐使用XML方式。

3

主题

68

帖子

68

积分

注册会员

Rank: 2

积分
68
发表于 2004-4-27 22:16:00 | 显示全部楼层

Re:关于网络游戏的消息打包与处理的问题?

像这种消息就是要简练简练再简练,要扩展性你不如用XML来发。暗黑的移动消息就只有消息ID(32位),X,Y值,不会超过20个字节
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-8-1 22:43

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表