游戏开发论坛

 找回密码
 立即注册
搜索
楼主: pilipala

[讨论] 用2D真实子弹构建规则的游戏

[复制链接]

21

主题

1445

帖子

1449

积分

金牌会员

Rank: 6Rank: 6

积分
1449
发表于 2009-9-8 14:46:00 | 显示全部楼层

Re:用2D真实子弹构建规则的游戏

帧这东西跟机器配置只有很大关系的,一般机器都不会到达游戏的最大帧.......剑1最大18帧......网游我不知道,单机到处都是........

21

主题

3926

帖子

5142

积分

论坛元老

索尼已经断气了.jpg

Rank: 8Rank: 8

积分
5142
 楼主| 发表于 2009-9-8 14:53:00 | 显示全部楼层

Re: Re:用2D真实子弹构建规则的游戏

zhyjust01: Re:用2D真实子弹构建规则的游戏

帧这东西跟机器配置只有很大关系的,一般机器都不会到达游戏的最大帧.......剑1最大18帧......网游我不知道,单机到处都是........


呃,我是说的服务端

21

主题

1445

帖子

1449

积分

金牌会员

Rank: 6Rank: 6

积分
1449
发表于 2009-9-8 15:04:00 | 显示全部楼层

Re: Re: Re:用2D真实子弹构建规则的游戏

pilipala: Re: Re:用2D真实子弹构建规则的游戏



呃,我是说的服务端

额....服务端就不了解了......

149

主题

4981

帖子

5033

积分

论坛元老

Rank: 8Rank: 8

积分
5033
QQ
发表于 2009-9-8 21:30:00 | 显示全部楼层

Re:用2D真实子弹构建规则的游戏

移动在服务器端一定要做校验的,只不过现在很多游戏的移动模拟都在客户端而已

3

主题

320

帖子

353

积分

中级会员

Rank: 3Rank: 3

积分
353
发表于 2009-9-9 00:15:00 | 显示全部楼层

Re:用2D真实子弹构建规则的游戏

移动在客户端响应并执行,在服务器端校验,已经越来越流行.原因很简单,"移动"作为网游里被执行次数最多的指令(其数量级远远大于任何其它指令),如果服务器可以不运算,显然可以极大降低运算压力.而且客户端做移动运算,可以完全避免由于同步和延迟所导致的服务器拉人现象.
但如果要做移动的碰撞检测,那么所有的运算都必须在服务器做.且不说服务器运算压力的问题,若坚持客户端先行,由于服务器与客户端上角色的位置无法完美同步,必定会导致频繁被服务器置位置.若放弃客户端先行,在操作上的流畅度会由于网络延迟而大受影响.

149

主题

4981

帖子

5033

积分

论坛元老

Rank: 8Rank: 8

积分
5033
QQ
发表于 2009-9-9 00:26:00 | 显示全部楼层

Re:用2D真实子弹构建规则的游戏

要做碰撞,就要允许客户端在一定程度内不同步。
比如一堵墙,不管客户端的角色怎样走,只要你不穿墙,那么服务器就认为是合法的。
客户端的重点是显示正确,服务器端的重点是逻辑正确。显示正确是人物模型不能陷进墙里,逻辑正确是玩家不能穿墙而过。
客户端根据服务器发来的其他角色的位置进行碰撞检测,所以如果其他玩家的实际位置比客户端看到的远,那么客户端主角在接触远程玩家时会主动停下来,如果相反,则只要偏差不太大,那么对于服务器端来说就没有发生穿人的问题,而这时虽然服务端数据里角色互相有重叠,但是只要不发生穿过就行。







当然更简单的做法是,走格子,以及客户端不先行……

3

主题

320

帖子

353

积分

中级会员

Rank: 3Rank: 3

积分
353
发表于 2009-9-9 00:55:00 | 显示全部楼层

Re:用2D真实子弹构建规则的游戏

举个例子,我按了向前走,面前没有人,而且还客户端先行,所以我就走上去了.但在服务器这里确是有人的,只是由于同步延迟问题那个人还没走到位.于是,0.3秒之后我发现那个人也走到了这个位置.

如何处理?把我拉回去?还是任由两个人叠在一起?

21

主题

3926

帖子

5142

积分

论坛元老

索尼已经断气了.jpg

Rank: 8Rank: 8

积分
5142
 楼主| 发表于 2009-9-9 09:40:00 | 显示全部楼层

Re: Re:用2D真实子弹构建规则的游戏

BF: Re:用2D真实子弹构建规则的游戏

举个例子,我按了向前走,面前没有人,而且还客户端先行,所以我就走上去了.但在服务器这里确是有人的,只是由于...


如果是真实子弹,每个子弹都可以看作一个独立角色,问题会更多。[em10] [em10] [em10] [em10] [em10]

149

主题

4981

帖子

5033

积分

论坛元老

Rank: 8Rank: 8

积分
5033
QQ
发表于 2009-9-9 19:57:00 | 显示全部楼层

Re:用2D真实子弹构建规则的游戏

17楼的,这种情况就是不同步时会产生冲突,如果实现不了足够精确的同步,那么就需要把人拉回,比如服务器发现你撞到人之后,你会做个后退的动作……如果能够实现足够精确的同步,那么这就是属于少量的异常情况。
另外,一定要客户端先行吗……

2

主题

14

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2009-9-10 14:33:00 | 显示全部楼层

Re:用2D真实子弹构建规则的游戏

MMORPG不做客户端先行,好象不太能让玩家接受吧?毕竟指令--响应--返回--执行,都要时间的,当延迟超过300毫秒,就会开始影响游戏体验了,何况通常这种时间会超过1秒.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-8-6 19:38

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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