首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据、网络、瘦客户端&MMORPG

数据、网络、瘦客户端&MMORPG
EN

Stack Overflow用户
提问于 2013-01-13 16:30:16
回答 2查看 201关注 0票数 1

我正在创建一个2D MMORPG游戏(以applet的形式),我有一个简单的问题。

我理解,出于安全目的,作为一种一般的反黑客技术,客户端应该包含尽可能少的逻辑数据(因此不能被操纵和利用)。

,我的问题是这个:假设我将数据从服务器发送到客户机(这种情况经常发生)。在接收包的客户端代码中,我将所说的数据包解析为它的“块”,并将数据逻辑地存储在它们精确的对分变量中。让我们说,其中一个变量存储了球员的健康状况。这是否意味着这个变量实际上无法用于计算--因为它是一个逻辑数据块(因此可以操作,因为它存储在客户端上),而唯一的选择是读取包含健康信息的数据包,如果我需要健康量的话?

谢谢你抽出时间阅读我的问题。-Bryan

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-13 16:40:24

我想说的是,这取决于你用它做什么计算。对于不重要的事情,如UI显示,您可以安全地使用局部变量。如果您使用它来确定播放机是否死了,那么您需要让服务器做出这个决定。在高延迟情况下,您可以暂时使用局部变量,直到服务器能够更新客户端;但是客户端的版本不应该是规范版本。

详细说明:使用局部变量,其中唯一受影响的人是玩家,所以他们是否操纵自己的数据并不重要。对于所有其他情况,都依赖服务器变量。

票数 1
EN

Stack Overflow用户

发布于 2013-01-13 17:58:59

我这样做的方式是让服务器根据在客户机上执行的操作来执行它自己的计算。客户端可以执行相同的操作来给客户端提供更快的更新,但是服务器应该是所发生的事情的可信决定因素。这意味着您不需要在客户机和服务器之间进行如此多的交互来重复检查所发生的一切。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14305506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档