News for hackers. Stuff that matters.
Re:Tools we used to create a hit HTML5 game on Steam by ermir on Tuesday November 19, 2019 @01:50PM (#21576688)
I have been thinking about this problem a lot and I may have a solution. Essentially, every time the user loads the page he gets a different obfuscated version of the base game. In this way, no script or plugin can be made to hook to your code since it's different every time the game loads. In addition, you can also obfuscate the protocol (for multiplayer) so that network sniffing tools can't capture the relevant data when communicating with the server. Finally, you can tie an obfuscated version of the game to a particular user, so you can find hackers or make it harder for them to run the game.
Re:Tools we used to create a hit HTML5 game on Steam by z3t4 on Tuesday November 19, 2019 @03:41PM (#21578035)
Or just run everything on the server (hit detection, positioning, etc) and just use the client for rendering and interpolation.
Re:Tools we used to create a hit HTML5 game on Steam by strbean on Tuesday November 19, 2019 @05:45PM (#21579156)
But that means writing a reasonable server!

Jokes aside, there are some Korean MMOs that rely on excessively trusting the client as a core part of their business model. If you offload as much state as possible to the client your server costs go way down. Maplestory is an example of this: if a player is alone on a map, essentially all map state, physics, etc. is handled purely on the client. When another player enters the map, half of the NPCs get 'handed over' to that player, and the server syncs state between the two clients.

On the other hand, you have to keep in mind hacks like bots and wallhacks. In the case of bots obfuscation is practically your only defense. In the case of wallhacks you can try to keep clients in the dark as much as possible, but there will always be a period where the client knows more than the player should (unless you want enemy players to 'pop in' once they are fully in view).

Re:Tools we used to create a hit HTML5 game on Steam by Mirioron on Wednesday November 20, 2019 @04:55AM (#21582485)
>If you offload as much state as possible to the client your server costs go way down.

It also makes the game much more fluid without adding a lot of complexity to hide the latency. I think South Korean games can get away with it because they require an SSN to register. If you get caught cheating then making a new account isn't easy.

Re:Tools we used to create a hit HTML5 game on Steam by Vekz on Tuesday November 19, 2019 @03:49PM (#21578116)
This is a really interesting idea and something i've been thinking on. Thanks for sharing.