Skip to content

An efficient and easy to implement synchronization layer for multiplayer games

License

Notifications You must be signed in to change notification settings

janfokke/MonoSync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

85 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

banner

Nuget Build Status Azure DevOps tests Discord

What is MonoSync

MonoSync is a synchronization library that you can easily implement with attributes and helper functions. MonoSync enables you to synchronize an object (e.g. a game world) just like you would with a JSON serializer. MonoSync automatically keeps track of all changes and references. Which you can synchronize periodically.

What is MonoSync not

MonoSync is not a Network library. The serialized data is provided as byte[] and the user is free to choose his own Network layer.

Demos

MonoGame

Features

Delta compression
Only changed values are synchronized.
Object tracking
New objects are automaticly tracked and synchronized.
Interpolation
Properties can be configured with a smooth transition between the current value and the newly received value

Getting started

https://github.com/janfokke/MonoSync/wiki/Getting-started

Documentation

https://github.com/janfokke/MonoSync/wiki

Demos

https://github.com/janfokke/MonoSync/tree/master/samples

Gallery

Interpolation

Interpolation sample

About

An efficient and easy to implement synchronization layer for multiplayer games

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages