30 open-source projects similar to id-software/quake-2, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
This is the original C source code for the Quake game engine, a landmark first-person shooter engine from the 1990s. It is a retro game engine that renders 3D environments and processes player input in real time using CPU-based software rendering rather than GPU acceleration. The engine supports networked multiplayer gameplay over LAN or internet connections and is designed to be moddable, allowing users to create and run custom game modifications and levels. The engine's architecture includes a Binary Space Partition tree for efficient world geometry organization and visibility determination
This repository contains the C++ game source code for a single-player first-person shooter action game. It is a software implementation of the Id Tech 4 engine, designed for 3D rendering with a focus on real-time unified lighting and geometry. The project enables the modification of core engine logic and rendering systems. It serves as a resource for classic game engine modification, first-person shooter development, and retro game preservation. The engine utilizes a unified shader pipeline and stencil shadow volumes for lighting effects, alongside BSP tree spatial partitioning for visibilit
Serious Engine is an open-source framework designed for the development and execution of first-person shooter titles. It provides an integrated environment for rendering complex three-dimensional combat spaces and managing the core gameplay logic required for high-speed action sequences. The engine utilizes an entity-component-system architecture to manage game objects, supported by script-driven logic that allows for gameplay modifications without requiring engine recompilation. It distinguishes itself through a specialized rendering pipeline that separates geometry calculations from lightin
The original open source release of Wolfenstein 3D
Quake III Arena is a first-person shooter game engine and arena combat simulator. It consists of the original C++ game source code for a cross-platform 3D game designed to run on Windows, Linux, and Mac. The project provides the source code necessary to render a first-person shooter experience, focusing on player-versus-player battles in closed 3D environments. It serves as a resource for legacy game preservation and the study of early 3D game engine construction. The engine incorporates spatial partitioning, client-side prediction, and state synchronization to manage multiplayer networking
This project is a first-person shooter game engine and a pseudo-3D rendering engine written in C. It serves as a software framework for rendering three-dimensional environments and managing entity physics. The engine includes a networked multiplayer system designed to synchronize game state and player actions across a client-server network. It utilizes a portable codebase that allows game logic to be adapted across different operating systems and hardware architectures. Core capabilities cover 3D game engine architecture, including spatial partitioning and depth-based rendering. The system a
The GoldSrc game engine is a 3D game framework and first-person shooter engine designed for building and running interactive software. It functions as a moddable game framework, providing a system for creating custom game rules and content through client-side code and shared libraries. The project includes a game engine SDK and development tools for compiling custom game logic into dynamic link libraries. This modular structure allows for the development and distribution of game modifications on Windows and Linux platforms.
This project is a networked first-person shooter framework built for the Unity game engine. It provides a foundational architecture for managing multiplayer sessions, enabling real-time synchronization of player movement, health, and combat actions across all connected clients. The framework utilizes an authoritative server model to maintain a consistent game state, supported by remote procedure calls to handle networked events. It incorporates a component-based entity system to define gameplay logic and uses state machines to manage character animations, ensuring smooth transitions between m
tModLoader is a modding framework and toolset designed for expanding game content and extending core game logic. It provides a polymorphic content API that allows for the creation of new items, NPCs, projectiles, and world assets through object-oriented inheritance. The project is distinguished by its advanced code modification capabilities, utilizing intermediate language bytecode patching and reflection-based private access to alter internal game behavior. It features a hot-reloading assembly runtime that enables developers to recompile and apply source code changes in real-time without res
Source Engine is a cross-platform game engine designed for the development and execution of interactive three-dimensional applications. It provides a framework for rendering complex environments and managing multiplayer networking, functioning as a middleware solution for hosting independent game servers. The engine distinguishes itself through a client-server authoritative networking model that enables direct player connectivity without reliance on external authentication or matchmaking services. It utilizes a data-driven asset pipeline and a component-based entity system to decouple engine
gperftools is a collection of specialized tools for profiling CPU usage, detecting memory errors, and providing high-performance memory allocation. It provides a memory profiling toolkit for C++ applications, including a sampling CPU profiler and a heap profiler for analyzing consumption patterns. The project includes a high-performance memory allocator designed as a multi-threaded replacement for standard allocation to reduce contention and improve execution speed. It further provides a memory debugger to identify illegal memory access and double frees. The toolkit covers broad diagnostic c
sds is a C dynamic string library that provides a memory management wrapper for heap-allocated strings. It implements binary-safe storage by tracking string lengths explicitly, allowing the library to handle null characters within data. The library distinguishes itself through a memory architecture that uses interchangeable function pointers for allocation and freeing, enabling the integration of custom memory managers. It utilizes header-stored length tracking to provide constant-time length retrieval and maintains null-terminated buffer padding to ensure compatibility with standard C string
Gumbo-parser is a high-performance HTML5 parsing library written in pure C99. It transforms raw markup into a structured document tree by implementing the formal state-machine tokenization and error recovery rules defined in the HTML5 specification. The project serves as an HTML source mapping tool, linking parsed nodes back to their original byte offsets and pointers within the input buffer. This allows for the precise tracking of source locations for elements within the resulting parse tree. Beyond full document processing, the library handles isolated HTML fragments and provides a C-based
This project is a suite of runtime diagnostic tools designed to detect memory leaks, concurrency races, and language-specification violations during software execution. It provides a collection of dynamic analysis tools that identify addressability issues, uninitialized memory usage, and memory safety bugs in applications. The toolset includes a thread safety analyzer to identify data races and deadlocks in concurrent code, as well as an undefined behavior sanitizer to detect operations that violate language specifications. The system covers broad capabilities in memory safety monitoring and
Include What You Use is a C++ include optimizer and header dependency analyzer. It identifies unused or missing header includes in source files to reduce project bloat and improve compilation performance. The tool performs static analysis using a Clang-based abstract syntax tree to map symbol usage and track preprocessor effects across different build configurations. It can automatically rewrite source files by inserting or deleting preprocessor directives based on the calculated dependency graph. The system integrates with compilation databases to determine the exact compiler flags used for
libhv is a high-performance C/C++ network library and event-driven I/O framework used to build TCP, UDP, SSL, HTTP, WebSocket, and MQTT clients and servers. It provides a non-blocking event loop for managing network sockets, timers, and system signals across multiple threads. The project is distinguished by its integrated support for specialized network roles, including a full HTTP web server with RESTful routing and middleware, an MQTT messaging client for IoT communication, and the ability to implement SOCKS5 and HTTP proxies. It also features a reliable UDP implementation to ensure ordered
clib is a C language package manager and dependency manager used to install, update, and manage external C libraries and executable dependencies from remote repositories. It functions as a distribution tool for structuring source code and metadata to publish C libraries and a development toolkit for maintaining consistent build environments. The project provides a framework for C library distribution and dependency resolution, utilizing manifest files to track required library versions and ensure reproducible builds across different systems. It streamlines the C development workflow by managi
Parser combinators for binary formats, in C. Yes, in C. What? Don't look at me like that.
This project is a 6502 assembly language implementation of a platformer featuring running, jumping, and swordfighting, developed for the Apple II computer between 1985 and 1989. It serves as a piece of legacy retro gaming software designed to run on 8-bit hardware from the early computing era. The repository provides the assembly source code for the purpose of historical technical analysis and research. It allows for the study of original game source to perform technical analysis and historical research into early video games. The project covers domains including 6502 assembly programming, A
On the fly syntax checking for GNU Emacs
An implementation of the MessagePack serialization format in C / msgpack.orgC
s2n is a C-based security library and TLS protocol implementation that serves as a secure network transport layer. It provides a modular cryptographic backend interface to encrypt data streams, manage handshakes, and handle mutual authentication between peers. The project focuses on post-quantum cryptography, integrating quantum-resistant key exchange and digital signatures to protect connections against future computing threats. It distinguishes itself through security hardening measures, such as memory-locked secret storage to prevent keys from being swapped to disk and timing-attack mitiga