![]() |
1
4
我相信目前流行的设计是假设客户机上的某个操作会成功并继续执行,告诉服务器它已经做了什么,并允许服务器在发现客户机做了可疑的事情时“纠正”客户机。这使得游戏客户端对玩家的请求做出响应,同时仍然赋予服务器否决权。 由于服务器始终是世界状态的权威,而其他游戏客户端将只通过服务器接收其信息,因此客户端的任何非法行为都将始终被服务器捕获,然后才可能影响其他玩家。 |
![]() |
2
0
永远不要相信客户。它会受到各种各样的问题的影响,包括蓄意的欺骗和未被注意的腐败。如果你允许客户端指定角色的位置,一些客户端将指定一个你希望超出该客户端边界的位置,而一些客户端将生成一个非常不准确的位置,这是不可能通过正常方式摆脱的(除非你有一个远程传输到主基地的能力)。 客户端应该告诉服务器角色要去哪里,服务器应该对此做出响应。它已经必须告诉其他相关的客户机角色在做什么,所以它可以同样轻松地为每个客户机做这件事。 runescape是我所知道的唯一一个mmorpg,它的工作方式和你的建议一样。在runescape中,如果出现连接问题并单击以移动,则角色将保持静止(尽管以较小的方式移动,以保持活动状态),直到服务器获取并确认移动。(你的角色将在没有用户输入的情况下战斗,给你一个在危险区域中通过坏连接生存的机会。) |
![]() |
3
0
如果你不喜欢在客户端作弊,最好是通过服务器来计算玩家的位置,但是,你必须做线程处理,以免服务器在处理某人的位置时落后于其他玩家。 |
![]() |
Jimmy Yang · 何时需要进行透视分割? 2 年前 |
![]() |
Spektre · 将外部支架生成网格以进行3D打印 7 年前 |
![]() |
CrazyCoder · 使用d3的3D饼图。js公司 7 年前 |
![]() |
Onur Altay · 具有选定点的三维线条图 7 年前 |
![]() |
TB Gamezz · 碰撞时多个对象的统一生成方式 7 年前 |