游戏开发论坛

 找回密码
 立即注册
搜索
查看: 8535|回复: 15

游戏服务端客户端架构问题....

[复制链接]

19

主题

57

帖子

247

积分

中级会员

Rank: 3Rank: 3

积分
247
发表于 2011-8-20 18:14:00 | 显示全部楼层 |阅读模式
一.客户端
  1.客户端主要完成什么工作,实现什么样的逻辑,技能魔法,AI等同步问题?
二.服务端
  1.服务端所需完成的任务。

   比如,、寻路是在客户端做还是服务端做,技能释放丶AI等等,还有很多没想到!

我想知道服务端,客户端的架构是个什么模式,如果所有逻辑在服务端,那服务端的压力不是一般大!

1万

主题

1万

帖子

2万

积分

管理员

中级会员

Rank: 9Rank: 9Rank: 9

积分
20468
发表于 2011-8-20 20:38:00 | 显示全部楼层

Re:游戏服务端客户端架构问题....

这个命题很大,

可以这样想,从逻辑上不怕被客户端恶意修改的行为都可以放在客户端运算。

3

主题

114

帖子

250

积分

中级会员

Rank: 3Rank: 3

积分
250
发表于 2011-8-20 21:43:00 | 显示全部楼层

Re:游戏服务端客户端架构问题....

这个还真不好概括,不是一句两句讲得清的。很多东西即可以服务端做又可以客户端做,但是不管哪边做和架构都没什么关系。
一般来讲客户端发指令,服务端处理然后给予回应。寻路一般是由客户端做的,服务端验证所走的路的合法性。服务端的压力主要来源于大量消息的广播,比如同屏内有大量角色,每个角色走路都要广播给周围玩家。

19

主题

57

帖子

247

积分

中级会员

Rank: 3Rank: 3

积分
247
 楼主| 发表于 2011-8-20 23:01:00 | 显示全部楼层

Re: Re:游戏服务端客户端架构问题....

bulihai: Re:游戏服务端客户端架构问题....

这个还真不好概括,不是一句两句讲得清的。很多东西即可以服务端做又可以客户端做,但是不管哪边做和架构都...

如果寻路在客户端做的话,那同步怎么解决呢? 技能魔法等这些数据怎么同步呢?因为网络环境很复杂.. 谢谢...

19

主题

57

帖子

247

积分

中级会员

Rank: 3Rank: 3

积分
247
 楼主| 发表于 2011-8-20 23:03:00 | 显示全部楼层

Re: Re:游戏服务端客户端架构问题....

sea_bug: Re:游戏服务端客户端架构问题....

这个命题很大,

可以这样想,从逻辑上不怕被客户端恶意修改的行为都可以放在客户端运算。

同步是个大问题,那该怎么解决呢? 我很想了解这方面在实际中是怎么解决的!

3

主题

114

帖子

250

积分

中级会员

Rank: 3Rank: 3

积分
250
发表于 2011-8-21 11:13:00 | 显示全部楼层

Re: Re: Re:游戏服务端客户端架构问题....

bluesky7290: Re: Re:游戏服务端客户端架构问题....


如果寻路在客户端做的话,那同步怎么解决呢? 技能魔法等这些数据怎么同步呢?因为网络环境很复杂.. 谢谢...


寻路放在客户端做,不管是寻路的走路还是手动操作的走路对服务端来讲都是一样的。每走一格往服务端发送一个消息,正确不给回复,只给周围玩家广播,发生错误时把玩家踢回错误前的一个坐标位置。客户端和服务端都保存相同的一份地图掩码信息,这样可以使客户端不发送错误走路的消息。客户端处理周围玩家走路消息时可以慢个半拍处理,当周围玩家连续行走时可以大体上确保走完一步时已经收到下一步的消息,从而使动作看走来流畅。
网络环境说复杂也不是很复杂,正常的游戏逻辑里可以只考虑消息延迟的问题,其它诸如断开连接、长时间无响应、消息丢包之类的另外处理。TCP/IP协议可以不考虑丢包。

3

主题

114

帖子

250

积分

中级会员

Rank: 3Rank: 3

积分
250
发表于 2011-8-21 11:29:00 | 显示全部楼层

Re:游戏服务端客户端架构问题....

至于技能数据同步,PC网游可以直接把所有技能的数据配置在客户端,当玩家登录的时候把他所会有技能ID下发,如果是手机网游,最好不要配置在客户端,可以在登录的时候把所会的技能ID连带技能的完整数据一起下发,其它技能的数据在需要的时候下发。

技能的使用,客户端发送技能使用的消息,消息里包含ID和目标,目标可以是玩家ID也可以是位置,看具体设计。当服务端接到消息的时候结果就已经确定了,然后把处理结果广播给需要的客户端,客户端根据消息表现。比如处理结果可能是闪避,也可能是命中,命中的话还可能是暴击,使用者红蓝变化、目标红蓝变化、是否附加状态,都得在消息里面体现,一次可能下发多个消息。客户端就像扯线的木偶,收到什么消息就表现什么。

1

主题

11

帖子

11

积分

新手上路

Rank: 1

积分
11
发表于 2011-8-28 23:27:00 | 显示全部楼层

Re:游戏服务端客户端架构问题....

以上有解释都很到位了

0

主题

1

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2011-9-7 15:43:00 | 显示全部楼层

Re:游戏服务端客户端架构问题....

如果是网页游戏,寻路应该是放在服务端。

9

主题

75

帖子

112

积分

注册会员

Rank: 2

积分
112
发表于 2011-11-16 11:29:00 | 显示全部楼层

Re:游戏服务端客户端架构问题....

不管啥游戏寻路都最好放在客户端,服务器做验证,服务器可能要寻的也是AI方面的路,都在服务器处理,那还不玩死啊。。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-2-27 16:30

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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