Impact

This forum is read only and just serves as an archive. If you have any questions, please post them on github.com/phoboslab/impact

9 years ago by szarn

Hey guys,

I've just finished making a game locally that is a basically a 1v1 deathmatch and I really want to make it multiplayer.

I've seen a lot of plugins and tutorials on here for Node.js servers and I'm wondering which way is the best for real-time multiplayer that can handle a fair amount of entities (0-33 stationary boxes, 2 players, 0-30 projectiles at any given time) and keep collisions fairly accurate.

Thanks!

9 years ago by Joncom

Here's a multi-player game I made:
http://commins.ca/gib/

Try loading two tabs at once to see the multiple players.

Controls: WASD to move, Mouse to Aim/Shoot, TAB to see ping/score.

Source code is here:
https://github.com/Joncom/gib

How you implement your game depends on a lot of things.

Do you want to send entity position updates periodically and then interpolate between them?

Do you want to the server to be authoritative, meaning the server has the final say on game logic, which prevents many client-side cheats from occurring, or can clients have some authority over the world (easier but allows some cheating)?

You may find this article interesting:
https://developer.valvesoftware.com/wiki/Source_Multiplayer_Networking

9 years ago by szarn

That game is a lot of fun and multiplayer works super well. I also checked out the source code and it's very impressive.

The article was very interesting and I think I better understand client-server interaction. After reading it, I'd like to send the position updates periodically and interpolate between for my game. Is it possible to implement things like delta compression with Impact?

Cheating would definitely hurt gameplay so I'd much rather have an authoritative server.

Where would I even start to develop this?

Thanks!

9 years ago by Joncom

Thanks!

Edited to be simpler:

Where to start? Don't worry about the "authorative" bit for now. Just try making a simple socket server, and then connect a few simple clients to it. See if when you move one client player entity, you can propagate the new state across to all the other clients. I recommend this video tutorial series on how to do just that.

9 years ago by szarn

Thanks! I'll get started on that now.

9 years ago by AndrewMast

Quote from Joncom
Here's a multi-player game I made:
http://commins.ca/gib/

Try loading two tabs at once to see the multiple players.

Controls: WASD to move, Mouse to Aim/Shoot, TAB to see ping/score.

Source code is here:
https://github.com/Joncom/gib


I am interested in making a multiplayer game, also. Is your game still up?

-Andrew

9 years ago by Joncom

Quote from AndrewMast
Is your game still up?
It was down, but it's up now.

9 years ago by AndrewMast

Quote from Joncom
It was down, but it's up now.


Thanks!
Page 1 of 1
« first « previous next › last »