• This repository has been archived on 27/Jul/2019
  • Stars
    star
    195
  • Rank 199,374 (Top 4 %)
  • Language
    C#
  • License
    MIT License
  • Created over 7 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Features a Networking Framework to be used on top of Unity Networking, in order to implement an Authoritative Server with Lag Compensation, Client-Side Prediction/Server Reconciliation and Entity Interpolation

Unity Fast Paced Multiplayer

A Unity project to build the base functionality for a Authoritative Server, with Lag Compensation, Client side Prediction/Server side Reconciliation and Entity Interpolation

WARNING: Unity has announced they are working on a new multiplayer framework and deprecating UNet on Unity 2018.4 (LTS). I should not work on this anymore since it will be deprecated. There are still alternatives to develop your multiplayer project, read here for official Unity support. Otherwise, I'd also recommend you to check out Bolt, a Multiplayer Framework by Photon. Thanks to all the supporters that helped me through the development of this repository!

Based on the references:

I'm currently working on a multiplayer project, and I use this repository for testing, but later on, I hope to create a strong foundation with this to use as a substitute to the Network Transform component on server-authoritative games.

What's this about?

This is a work in progress framework to help developing server authoritative games on Unity. It is recommended for fast paced multiplayer games such as shooters or racing games. This does not provide any type of server or database solution, as it only acts on the sync methods of the entities. Head over to the wiki for further knowledge and usage guides.

How to test

  1. On the top menu, click Tools>Quick Build
  2. Choose a folder to deploy your test build
  3. Click Tools>Run Server to run the authoritative server
  4. Click Tools>Run Client to run a simulated client (You can press F1 to toggle movement simulation)
  5. Run the game on the editor then select Client on the Network HUD
  6. Move around and watch the sync between the different game windows