Links:
Asset Store: Unity Asset Store - The Best Assets for Game Making
Wiki: GitHub
Issues, bugs, feature requests: GitHub
Demo: WebGl (running on a 512 RAM, single core, 5$/month VPS).
Video: working on it
Discord: Master Server Framework
Latest version: v2.0.3. Asset store version: v2.0.3
To anyone wondering - I avoid reading unity forums and PM’s, so if you want to contact me - do it through GitHub page. Thank you!:
Description:
Develop, run and debug your back-end server like a regular Unity game, within editor. No tedious multi-language setups, no third party services with monthly subscriptions, no cap on CCU or traffic, host on win and linux VPS, full source code - even if I die, you move forward. Based on socket connections (think Photon Server, just without caps and monthly payments). If you’re worried about unity’s process overhead, read here.
Master Server Framework is designed to kickstart your back-end development, it contains boilerplate code for user authentication, dynamic / automatically synchronized player profiles, and scalable game servers (rooms) architecture.
At the time of writing, included modules are:
- Authentication module - manages user registration / logging in
- Profiles module - build your player profiles without having to worry about database structures, persistence or synchronizing profiles between servers.
- Game Servers module - allows to register game servers to master server, so that they can be found by players (lobby), or used to create matchmakers. Game servers can access player profiles and update them (give exp on kill, etc.)
- Spawner Servers module - allows to spawn game servers on users request (user created game rooms). Spawned servers will have full authority - users don’t need to act as hosts, which allows even Browser and mobile users to create game rooms - no need for relay servers or NAT punch-through.
- Chat module - simple chat module with support for channels and private messaging
Servers and modules communicate to each other through Barebones Networking API (UDP / RUDP / Websockets), which you can use to write any kind of server you want. (It’s an abstraction layer on top of uNET Transport Layer and websocket-sharp, but you can easily write your own implementations if needed ) More info.