Giter Site home page Giter Site logo

eubrunomiguel / garuna Goto Github PK

View Code? Open in Web Editor NEW
77.0 5.0 17.0 63 KB

C++ multiplayer game server

License: MIT License

C++ 100.00%
multiplayer multi-platform multiplayer-game server server-side serverless-framework server-management game-engine game-server game

garuna's Introduction

Garuna War

This project includes a single threaded game server written in C++. The game is divided in 3 main components, the network, the gameworld and a communication middleware.

It uses a customized UDP network protocol where you can add flags to handle important packets, offset latencies, recovery or updated missed data, re-send, etc...

Players will be able to login with their account, create and select games from the lobby, fight creatures, interact with items, receive scores, experience, upgrade their status, just to mention a few.

A custom Unity client written in C# was used to interact with the server. The network communication is followed by serialized network packets. The packet constitute of a header including computer user id, unique identifier and a number count, followed by a single or multiple message headers and their respective serialized data.

A part from the C++ standard library, some boost libraries and mysql connector, the whole server is written from scratch. It manages its own memory for performance reasons.

Installation

It requires boots::asio and mysql connector.

Usage

A custom Unity client written in C# was used to interact with the server.

Credits

Bruno Miguel Boost Libraries Standard Library MySQL Multiplater Game Programming by Joshua Glazer and Sanjar Madhav Game Programming Patterns by Robert Nystrom

License

MIT

Pictures

Picture taken in the Heartland Game Contest where it was awarded 2nd place by the Jury, and 2nd place by the people's choice. alt tag

Creating an account. alt tag

Lobby. alt tag

Ingame. alt tag

garuna's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.