unsubbed.co

Hypersomnia

Hypersomnia handles competitive top-down shooter blending Counter-Strike as a self-hosted solution.

Overview

Multiplayer top-down shooter made from scratch in C++. Web version: https://play.hypersomnia.io Made in 🇵🇱 The project has 1K+ GitHub stars and is licensed under AGPL-3.0.

Key Features

Source: GitHub README

  • rectpack2D, written for packing textures, became famous and was used in Assassin’s Creed: Valhalla.
  • Used also by a drone manufacturing company and in 2 scientific papers.
  • My Entity-Component-System idea from 2013 describes techniques similar to Unity Engine patent from 2018.
  • See this discussion.
  • Networking is based on cross-platform simulation determinism. It is 100% deterministic even across browser and native clients (Windows, Linux, MacOS) and that includes native ARM builds (aarch64)!
  • This technique is traditionally used by RTS games with hundreds of continuously moving soldier units.
  • It is impractical to continuously update every single one of them through the network.
  • But Hypersomnia is not an RTS - since it’s physics-based, it uses floats heavily, not just integers.
  • When floating point calculations are involved, simulation determinism becomes extremely hard.
  • See why in this excellent article by Glenn Fiedler.

Normalized Features

Source: tool-features-normalized.json

appimage, docker, rest api.

Features

Integrations & APIs

  • REST API