Live data from Hacker News

Show HN: Server-rendered multiplayer games with Lua (no client code)

cleoselene.com

51–60 of 62 posts

Re: Show HN: Server-rendered multiplayer games with Lua (no client code)

#51

Earlier quoted context omitted.

I’m also curious if an AI could process the screen feed quickly enough to compete in first-person shooter games. Seems like it would be difficult without extremely high end hardware for the foreseeable future?

I had students build this kind of thing in 2020 by screenshotting the game and processing it with a standard OpenCV pipeline. No GenAI needed.

Thank you for educating me. How does OpenCV work from the perspective of recognizing things in an image? Is there some kind of underlying model there that learns what a target looks like or not?

Re: Show HN: Server-rendered multiplayer games with Lua (no client code)

#52

Earlier quoted context omitted.

I’m also curious if an AI could process the screen feed quickly enough to compete in first-person shooter games. Seems like it would be difficult without extremely high end hardware for the foreseeable future?

There's already models specifically for things like identifying players in Counter-Strike 2, including which team they're on. Someone has even rigged up a system like that to a TENS system to stimulate the nerves in their arm and hand to move the mouse in the correct direction and fire when the crosshair is over the enemy. We are definitely already there.

They documented it on YouTube for us to see:

https://youtu.be/9alJwQG-Wbk

holy shit that's amazing.

Re: Show HN: Server-rendered multiplayer games with Lua (no client code)

#53

Earlier quoted context omitted.

I had students build this kind of thing in 2020 by screenshotting the game and processing it with a standard OpenCV pipeline. No GenAI needed.

Thank you for educating me. How does OpenCV work from the perspective of recognizing things in an image? Is there some kind of underlying model there that learns what a target looks like or not?

The way they did it, they were writing an aimbot. So the pipeline was:

- take a screenshot

- run massive skeletal detection on it to get the skeletons of any humanoids

- of those skeletons, pick a target closest to the player

- for that target, get coordinates of head node

- run a PID to control the cursor to where the head node is located

- move the camera one frame, repeat the whole process. If you can fit that pipeline to 16ms it can run in real time.

Re: Show HN: Server-rendered multiplayer games with Lua (no client code)

#54

Is this how Stadia was supposed to work?

Not exactly, since they aren't opinionated in the game engine, they can't control what "primitives" are being used to render.. they probably just encode video

I guess you're right, all their talk about working with game developers was probably just to get the games working on their hardware.

Re: Show HN: Server-rendered multiplayer games with Lua (no client code)

#55
post #26
post #22

Cheating with AI will be possible even with server side rendering ; nvidia has released models able to learn to play - it's going to be very difficult to detect whether it's an AI or a human ; very impressive however

That’s a very different kind of cheating though. The kind of cheating this effectively makes impossible is cheating where a player has more information than they’re intended to have. If someone makes an AI that plays the game as a good player, then it’s effectively indistinguishable from a real player who is good. If they make it super-humanly good, then it would probably be detectable anyway. It’s still fair in the…

If there's enough players, the server could segregate them in tiers. All superhuman players would eventually end up competing between themselves.

Re: Show HN: Server-rendered multiplayer games with Lua (no client code)

#56
> - Streaming game primitives instead of pixels, which should be much lighter - Server-side rendering makes cheating basically impossible

This doesn't work in 3D. Unless you have the server do the work of the GPU and compute occlusion, you'll end up sending data to the client that they shouldn't be able to have (e.g. location of players and other objects behind walls)

Re: Show HN: Server-rendered multiplayer games with Lua (no client code)

#57

> - Streaming game primitives instead of pixels, which should be much lighter - Server-side rendering makes cheating basically impossible This doesn't work in 3D. Unless you have the server do the work of the GPU and compute occlusion, you'll end up sending data to the client that they shouldn't be able to have (e.g. location of players and other objects behind walls)

Theoretically couldn’t you send each client its data after performing occlusion culling based on each one’s camera?

Don’t some competitive games more or less already do this? Not sending player A’s position to player B if the server determines player A is occluded from player B?

I seem to recall a blog post about Apex Legenda dealing with the issue of “leaker’s advantage” due to this type of culling, unless I’m just totally misremembering the subject.

Regardless, seems like it would work just fine even in 3D for the types of games where everyone has the same view more or less.

Re: Show HN: Server-rendered multiplayer games with Lua (no client code)

#58

Earlier quoted context omitted.

Thank you for educating me. How does OpenCV work from the perspective of recognizing things in an image? Is there some kind of underlying model there that learns what a target looks like or not?

The way they did it, they were writing an aimbot. So the pipeline was: - take a screenshot - run massive skeletal detection on it to get the skeletons of any humanoids - of those skeletons, pick a target closest to the player - for that target, get coordinates of head node - run a PID to control the cursor to where the head node is located - move the camera one frame, repeat the whole process. If you can fit that pip…

Wow, that's fascinating. Were they able to fit the whole thing inside the 16ms frame?
Post reply on HN