Skip to content

A-ri-A/R-Type

 
 

Repository files navigation

R-Type

C++ Game Engine with networking

Table of contents

  1. Project
    1. Dependencies
    2. Documentation
  2. Build the project
    1. On Linux
    2. On Windows
  3. Contribute
  4. Authors

Project

R-Type is an old arcade game.
Our goal is to implement this game with a multithreaded server, a client, and a game engine.

This is a shoot'em'up, where 1 to 4 players fight against enemies, bosses and more in multiple levels.

The project is built using CMake, with an overlay using justfiles to add existing rules. You can see all the rules of the justfile here.

Dependencies

The project is done in C++20, and build using CMake. All other dependencies are built with cmake using FetchContent. We use:

  • SFML for display of Client's elements
  • GoogleTests for unit tests
  • GoogleBenchmarks for benchmarks
  • Doxygen for documentation, they are generated with man format
  • justfile to compile, lint and test the project

We implemented the R-Type with the following features:

  • A multithreaded server, handling multiple rooms, solo games, levels, and more
  • A graphical client, that is also multithreaded
  • A Entity Component System, as well as a Game Engine
  • A client-server communication protocol

Documentation

To have more information, look at the docs folder.
There is also a wiki.

Build

Contribute to the project

The details are on the wiki's page to known how to startr contributing on the project.

You can create a new branch: feature/<what-you-are-implementing>, push and then make a pull request to release a new version of the project on main.

Authors

About

C++ Game Engine with networking

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 93.1%
  • CMake 6.2%
  • Other 0.7%