Skip to main content

R-Type Documentation

Learn how the R-Type project works / how to use it

⮕ What is R-Type?

R-Type is a multiplayer side-scrolling shooter inspired by the classic arcade game. This project involves implementing:

  • A client/server architecture
  • An ECS (Entity-Component-System) engine
  • A custom network protocol
  • Real-time multiplayer gameplay

The server handles entities, movement, collisions, and authoritative game state. The client renders the game world, sends player inputs, and receives updates from the server.

🧩 Project Goals

The goal of this R-Type project is to provide a modular and production-ready engine using real-world engineering practices:

  • Robust ECS engine with modular systems
  • Authoritative real-time multiplayer server
  • Custom binary protocol optimized for low-latency communication
  • Threaded ASIO networking model
  • Flexible map system (entities, walls, hazards, spawners)
  • Clean and maintainable C++ codebase