Skip to content

Unity Multiplayer Movement synchronization

Back to posts


Description

A walkthrough that shows how to make your own multiplayer game with player movement synchronization across clients. Uses AWS API Gateway, Lambda, & DynamoDb, and Unity as a game client. I wanted to do this without using GameLift as it is a much cheaper option, if the functionality works for your project.

Player movements will be sent to the server which in turn broadcasts those movements to the other player-clients, rendering the opponent’s movement. This is a home grown solution using WebSockets to communicate between the Unity clients and AWS API Gateway/Lambda.

Please note that this is NOT a production-ready implementation, but if you’re an indie dev that just wants to get something up and running without having to worry about high costs, then this may be a good starting point. This was designed to be for realtime movements but it can also be refactored to use in a turn based game.


Repositories for this project

[AWS stuff]
https://github.com/BatteryAcid/multiplayer-movement-sync-aws
[Unity project]
https://github.com/BatteryAcid/multiplayer-movement-sync-unity

How to setup API Gateway & Lambda tutorial
[Unity Multiplayer Server with Amazon Web Services]
https://youtu.be/X45VYma6738Ï