我正在计划一个基于物理的多人竞技游戏,用 Java 编写。它将涉及大量的碰撞检测和流体模拟,出于服务器负载的原因,我想在客户端进行。每个玩家都可以控制一辆车辆,可以完全独立于其他车辆进行模拟。
在我的情况下,多人台球游戏物理模拟(模拟服务器端!)中公认的答案是完全不切实际的。只模拟几辆车会消耗中端 PC 的大部分资源。
我正在考虑让客户模拟他们自己的车辆,服务器将他们的结果广播给其他客户并调解碰撞。通过使用服务器的备用 CPU 进行偶尔的物理审计,可以在一定程度上防止作弊。客户不知道他们何时被审计,因为他们无论如何都在发送所需的状态。
你会怎么办?这个项目只是为了好玩,所以如果有人作弊,我不会失去任何东西。