|
R-Type 0.1
|
R-Type is a networked, multiplayer remake of the classic horizontal shoot'em up. Up to four players connect to an authoritative server and fight waves of Bydos together. The game runs on a small game engine of our own, written in C++20.
This website is the developer documentation of the project. It explains how the code is organized, how the parts talk to each other, why each technology was chosen, and how to extend the game. The API reference generated from the source code is available from the navigation tree on the left.
| If you want to | Read |
|---|---|
| Build and run the game | Getting started |
| Understand the big picture | Architecture overview |
| Learn how the engine works | Game engine |
| Learn how the network layer works | Networking |
| Write a new client or a network tool | Network protocol specification |
| Add content or features step by step | Tutorials and how-tos |
| Understand our technical choices | Technical and comparative study |
| Know how the project handles accessibility | Accessibility |
| Contribute to the project | Contributing and Coding conventions |
| Browse the code reference | Libraries and R-Type game |
| Item | Value |
|---|---|
| Language | C++20 |
| Build system | CMake 3.20 or newer |
| Package manager | vcpkg (manifest mode) |
| Programs | r-type_server, r-type_client |
| Networking | UDP, custom binary protocol, Asio |
| Rendering | rtk graphical, a Vulkan 2D sprite renderer |
| Architecture | Entity Component System, event bus, scene manager |
| License | GNU General Public License v3.0 |
Use the search field at the top of the navigation bar to find a class, a function, a message type or a guide. The navigation tree on the left lists the guides first, then the API reference, organized as follows:
lib/GameEngine.lib/Network.The flat lists of namespaces, classes and source files follow.