Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LAN multiplayer #114

Open
bfops opened this issue Feb 8, 2015 · 10 comments

Comments

@bfops
Copy link
Owner

commented Feb 8, 2015

This is being done on the server branch.

  • Client and server separation
  • Clients should request blocks from the server, rather than the server pushing them. (ca3ada5, fff5e98)
  • Support multiple Clients (7cbad25).
    • Clients should get their OwnerIds from the server (4f4e5d8).
  • Give Players meshes (47e3a89).
  • Support multiple Players (7a4e88a).
    • Add players dynamically when clients connect (7a4e88a).
  • Clients get unique IDs to annotate their messages (827ba8b).
  • Networking (26ccf9b, c9089a3)
  • Make it fast/scalable again (8383f41, 1d3621d, 37d3a82, 3707b3e, 246bfa4)
    • A lot of refactoring happened near the main level. We're not as smooth as before, but smoother than this branch has ever been. It still tanks at bigger render distances though.
    • Release builds are smooth for low render distances.
    • Terrain message rate limiting in the client SurroundingsLoader (b6c5e41).

@bfops bfops added the functionality label Feb 8, 2015

@elijahandrews

This comment has been minimized.

Copy link
Collaborator

commented Feb 8, 2015

This sounds fun!!
On Sun, Feb 8, 2015 at 2:06 PM Ben Foppa notifications@github.com wrote:

We need:

  • Client and server separation (started in #104
    #104)
  • Networking
  • Multiplayer


Reply to this email directly or view it on GitHub
#114.

@bfops

This comment has been minimized.

Copy link
Owner Author

commented Feb 8, 2015

I think a nice goal would be to make playform into something we actually like killing time with. Maybe a casual fighting game or something.

@bfops

This comment has been minimized.

Copy link
Owner Author

commented Feb 8, 2015

Moved world updates into a new thread in 452d77d (#104). This starts the client/server separation.

@viperscape

This comment has been minimized.

Copy link

commented Feb 9, 2015

might be worthy of a read, if you plan on doing your own networking model: tribes networking model pdf

@bfops

This comment has been minimized.

Copy link
Owner Author

commented Feb 10, 2015

Looks interesting, thanks!

@bfops

This comment has been minimized.

Copy link
Owner Author

commented Feb 10, 2015

Added a client thread, and renamed some world* things to server*. c09d009

@bfops

This comment has been minimized.

Copy link
Owner Author

commented Feb 13, 2015

The server branch has most of the client/server split-up done. It's jittery though - we need to look at latency and reducing the amount of messages being transferred (because processing each one increases latency).

@bfops

This comment has been minimized.

Copy link
Owner Author

commented Feb 13, 2015

The crates branch is keeping track of my progress on the client/server cratification.

@bfops bfops changed the title Networked multiplayer LAN multiplayer Mar 6, 2015

@bfops

This comment has been minimized.

Copy link
Owner Author

commented Mar 12, 2015

Release builds are slow for low render distances. Need to fix up the bottlenecks for higher render distances and then this can be called done!

@bfops

This comment has been minimized.

Copy link
Owner Author

commented Mar 15, 2015

Merged 9e1d36f.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.