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
How to setup API Gateway & Lambda tutorial
[Unity Multiplayer Server with Amazon Web Services]