How to prevent cheating in physical intensive multiplayer games

I am planning a physics-based competitive multiplayer game written in Java. It will involve a lot of collision detection and fluid simulation. I want to be a client for server load reasons. Each Players can control a car and can simulate other vehicles fairly independently.

In my case, the accepted answer in Multiplayer billiards game physics simulation (simulation server side!) is completely irrelevant. Practical. Simulating a few cars will take up most of the resources of a mid-range PC.

I want customers to simulate their own vehicles, and the server broadcasts their results to other customers and mediates collisions. By using the server’s The occasional physical audit of the spare CPU can prevent cheating to some extent. Customers do not know when they will be audited because they have to send the required status anyway.

What would you do? This project is just for fun, so if people cheat, I won’t lose anything.

in Under the conditions you mentioned, the measure you can take is to reduce the load on the server, let each client simulate its own vehicle, add one or more random vehicles, and change randomly at regular intervals.

This can reduce the amount of server resources required for audits, thereby making audits more frequent. If your different players report inconsistent numbers, your server can check who is cheating (by auditor or auditor). If The variables of each player are calculated by two or more other players, randomly selected and changed at sufficiently frequent intervals, which will reduce the possibility of players cheating in teams.

If you are in Java (JVM) ) Environment to write server code, then the library that can help you distribute computing is Akka.

I am planning a physics-based competitive multiplayer game written in Java. It will Involving a lot of collision detection and fluid simulation, I want to be a client on server load reasons. Each player can control a car and can simulate other vehicles fairly independently.

In mine In this case, the accepted answer in Multiplayer billiards game physics simulation (simulation on the server side!) is completely unrealistic. Simulating a few cars will take up most of the resources of a mid-range PC.

I want customers to simulate With their own vehicles, the server broadcasts their results to other customers and mediates collisions. By using the server’s spare CPU for occasional physical audits, cheating can be prevented to some extent. Customers don’t know when they will be audited because they Send the required status anyway.

What would you do? This project is just for fun, so if people cheat, I won’t lose anything.

Under the conditions you mentioned, what you can do It is to reduce the load on the server, let each client simulate its own vehicle, add one or more random vehicles, and change randomly at regular intervals.

This can reduce the need for auditing The number of server resources to make audits more frequent. If your different players report inconsistent numbers, your server can check who is cheating (by the auditor or the auditor). If the variables for each player are composed of two or more other Player calculations, randomly selected and changed at sufficiently frequent intervals, will reduce the possibility of players cheating in teams.

If you write server code in a Java (JVM) environment, it can help you distribute The calculated library is Akka.

Leave a Comment

Your email address will not be published.