30 open-source projects similar to marblexu/pythonplantsvszombies, 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.
Mario-Kart-3.js is a browser-based 3D racing simulation implemented in JavaScript. It utilizes a WebGL game engine to render three-dimensional race tracks and vehicle models directly within a web browser using graphics hardware. The simulation features a physics-based drifting and maneuver system for gaining speed boosts and a power item system for deploying competitive advantages during races. The project encompasses a vehicle control system that maps keyboard and mouse inputs to steering and acceleration, alongside a simulation engine that manages collision detection and scripted item logi
Flame is a 2D game engine for Flutter and Dart. It provides a component-based game framework for managing entities and their lifecycles through a hierarchical architecture, alongside a dedicated system for game asset management and input handling. The engine distinguishes itself through a specialized integration layer for external physics engines to handle rigid body dynamics and collision detection. It also features a high-performance task model that uses isolates to offload heavy computations and prevent main thread blocking. The framework covers a broad range of capabilities including vis
Untrusted is a web-based programming puzzle and meta-programming game where progress is achieved by rewriting the active JavaScript source code while the application is running. It functions as a code-editing adventure game that combines programming education with puzzle gameplay. The experience centers on real-time logic modification, requiring players to edit scripts to change environmental rules, manipulate game behavior, and resolve puzzle-based objectives. This interactive code editing allows players to overwrite active functions and variables to overcome obstacles. The project includes
This repository contains the original source code for a classic real-time strategy game, serving as a legacy game engine implementation for managing units, maps, and combat mechanics in a military strategy setting. It functions as a real-time strategy game source code archive intended for preservation and technical study. The codebase acts as a game modification base, allowing developers to create custom content and modifications using the original source. It provides a foundation for retro game modding and software archeology to analyze how historical game mechanics were programmed. The pro
Mindustry is a cross-platform game engine and factory automation simulation that combines resource management with tower defense strategy. Players construct complex supply chains and automated networks to process materials while building defensive structures to protect a core from waves of hostile mechanical forces. The project utilizes a deterministic lockstep networking model to ensure simulation consistency across desktop and mobile devices. It is built on an entity-component-system architecture and a tile-based grid simulation, allowing for the efficient management of thousands of active
Phaser is a comprehensive 2D game engine designed for building high-performance, interactive content that runs directly in web browsers. At its core, the engine utilizes a fixed-timestep simulation loop that decouples game logic from variable browser frame rates, ensuring consistent behavior across diverse hardware. It provides a robust framework for managing asset loading, physics, input, and audio, enabling the creation of complex, responsive visual experiences for both desktop and mobile devices. The engine distinguishes itself through a high-performance graphics pipeline that automaticall
OpenSC2K is an open-source JavaScript city builder engine designed as a recreation of SimCity 2000. It functions as a web-based simulation that uses the Phaser 3 framework to implement game loops and entity management. The project utilizes WebGL and Canvas rendering to visualize large-scale urban environments. It includes a coordinate-based camera system that enables panning and zooming across the reconstructed game world. The engine incorporates a data pipeline to parse legacy city files and graphics assets, allowing it to reconstruct and display urban layouts within a modern web browser.
ActionRoguelike is a third-person cooperative game project built with C++ and Unreal Engine. It functions as a networked application that utilizes replication architecture to synchronize character states and combat across multiple clients. The project implements a data-oriented performance framework that employs object pooling and asynchronous asset loading to optimize memory usage and frame rates. It features a behavior tree AI system combined with environment queries to drive autonomous NPC decision making and combat, alongside a binary serialization framework for saving actor variables and
vcmi is an open-source game engine for Heroes of Might and Magic III that recreates the gameplay, logic, and rendering of the original strategy game. It serves as a cross-platform game runtime supporting Windows, Linux, macOS, Android, and iOS, providing a turn-based strategy simulator for strategic world map navigation and tactical combat. The project is built as a moddable game framework, featuring a data-driven modding system and a sandboxed Lua scripting integration. These allow for the definition of custom gameplay logic, spell effects, and the addition of new factions, characters, and a
Tiled is a multifunctional visual workspace for designing tile-based game levels, managing assets, and exporting structured world data. It functions as a 2D tile map editor and game level design tool used to create orthogonal, isometric, and hexagonal game environments. The software features a scriptable interface and plugin system for automating map creation tasks. It includes a dedicated tile set manager for importing and editing image-based collections of reusable tiles and animations, as well as a system for saving map layouts and custom properties into JSON or CSV formats. The platform
learningPixi is an educational resource and instructional guide focused on 2D web graphics and interactive media development. It provides a structured curriculum and tutorials for building 2D games and visual applications using the Pixi.js rendering engine and WebGL for hardware-accelerated graphics. The project covers specialized workflows for sprite animation, including the use of texture atlases and spritesheet frame extraction. It also provides guidance on implementing game state management for scene transitions and rectangular collision detection systems to trigger interactive events. T
Duelyst is a turn-based strategy game engine and multiplayer framework designed for collectible card games. It provides a dedicated architecture for managing tactical combat and card-driven interactions across both web and desktop environments. The platform distinguishes itself through a self-hosted infrastructure that utilizes containerized environments to deploy private game sessions. This approach grants players full access to game content and ensures consistent deployment across local and remote systems. The engine also features a data-driven localization system that separates game text i
Pyxel is a Python-based retro game engine designed for creating pixel-art applications with vintage aesthetics. It functions as a pixel art framework that emulates classic hardware limitations through fixed-resolution displays, constrained color palettes, and a 2D tilemap engine for rendering scaled sprites and grid-based game worlds. The engine features a dedicated MML audio synthesizer that uses Macro Language notation to compose and play back retro-style sound sequences. It also includes capabilities for seed-based background music generation and the playback of raw PCM audio data for cust
This project is a game programming design patterns reference and software engineering guide. It provides a collection of architectural and structural patterns specifically applied to the development of video games, focusing on organizing game loops, entity component systems, and state management. The content is delivered as a digital book and markdown static site. It utilizes a static site generation workflow that transforms markdown source files and HTML templates into structured static pages for technical content publishing. The underlying system includes capabilities for static site compi
Piston is a modular game engine and framework written in Rust for building two and three-dimensional graphical applications. It functions as a cross-platform windowing library and a system for managing input events and window loops across different operating systems. The project provides specialized rendering systems, including a voxel rendering engine for volumetric pixels and a skeletal animation system for deforming meshes via hierarchical bone structures. It also features an immediate mode user interface toolkit for creating responsive on-screen elements and a behavior tree AI framework t
PokemonGo-Bot is a programmable automation tool designed to manage Pokémon GO gameplay. It functions as an automated game bot and interaction framework that handles creature capture, item collection, and inventory management through a rule-based system. The project features a remote controller interface that allows users to trigger game actions and receive real-time event reports via a messaging bridge, specifically integrating with Telegram. It employs coordinate-based navigation and human movement simulation to traverse the game world and locate specific entities. The software covers broad
Matter-js is a 2D rigid body physics engine written in JavaScript for simulating realistic physical interactions, collisions, and dynamics in web browsers. It functions as a web physics simulation library that calculates motion, gravity, and constraints for objects rendered on a web canvas. The library includes a built-in canvas physics visualizer to draw physical bodies, joints, and constraints for debugging and gameplay. It distinguishes itself through a plugin system that supports recursive dependency resolution and internal method patching to inject custom logic into the engine's executio
This is a game engine library for building interactive games using React and React Native components. It provides a centralized game loop and state management system to coordinate logic and updates on every game tick. The framework includes a coordinate system for cross-platform scaling that distributes factors across a component tree to maintain consistent positioning across different screen sizes. It also features a sprite animation system for rendering sequential frames from sprite sheets and a tile map renderer that constructs multi-layered terrain using a tile atlas and grid-based indexe
MonoGame is a cross-platform game engine and framework built for the C# language and .NET ecosystem. It provides a development environment for creating 2D and 3D games that run across multiple operating systems and hardware platforms. The project serves as an open-source implementation of the XNA game studio API. It includes a dedicated game asset pipeline to convert raw art and sound files into optimized formats for efficient engine loading. The framework provides a hardware-abstraction layer to maintain a consistent interface for graphics and input across different devices. Its capabilitie
React Native Game Engine is a framework for building 2D interactive experiences and simulations within mobile applications. It provides a dedicated controller for managing a fixed-step game loop, ensuring that game logic, user inputs, and state updates occur at a consistent frame rate. The engine utilizes an entity-component-system architecture to decouple game object data from behavior. By structuring objects as independent entities processed by reusable logic functions, it allows for the management of complex scenes through a centralized, data-driven approach. The framework supports the cr
Tower Game is a browser-based JavaScript engine designed for building physics-driven stacking simulations. It provides a framework for developing interactive arcade-style challenges where players align blocks to build structures, with core systems that manage collision logic, health tracking, and precision-based scoring. The engine distinguishes itself through a modular architecture that allows for deep customization of gameplay mechanics. Developers can inject custom functions to override default movement speeds, oscillation angles, and scoring triggers at runtime. Additionally, the system s
Flame is a 2D game engine and framework for Flutter. It provides a component-based architecture to organize scene entities and manage their lifecycles through a structured hierarchy of game objects, coordinated by a consistent game loop. The engine includes a graphics library for rendering animated sprites, particle effects, and external textures. It features a 2D physics integration layer that supports rigid body dynamics and collision detection between entities. The framework covers additional capabilities for game engineering, including user input capture for gestures and gamepads, audio
ggez is a 2D game framework for the Rust programming language. It provides a hardware abstraction layer for accessing keyboard, mouse, sound, and graphics hardware, alongside a dedicated game loop manager that synchronizes input processing, state updates, and frame rendering for real-time applications. The framework includes a hardware-accelerated rendering engine for drawing sprites, shapes, and text using shader programs. It also features a resource management system that uses a filesystem abstraction to load and manage game assets from physical directories or compressed archives. Addition
FlappySwift is a side-scrolling arcade game implementation built for Apple platforms. Developed using the Swift programming language, this 2D game project features a physics-based environment where a player controls a character to avoid obstacles. The project utilizes the SpriteKit framework to handle rigid body dynamics, gravitational forces, and sprite-based rendering. Game flow is managed through a state machine that controls transitions between the start menu, active gameplay, and game over screens. The implementation covers 2D physics simulation, including bounding-box collision detecti
CorsixTH is an open-source game clone and hospital management simulation game. It functions as a reproduction of a classic management title where players coordinate staff and treat patients to manage a medical facility. The project includes a level editor tool for designing original maps and campaigns. It also features a customizable input system that allows users to map game hotkeys and personalize control schemes. The simulation supports game localization to translate interface text and dialogue into multiple languages.
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
Supertux is an open-source 2D platforming game and game engine. It features a side-scrolling adventure where players navigate themed worlds and defeat enemies to reach specific goals. The project is designed for cross-platform availability, providing a consistent experience across desktop, Android devices, and web browsers. The browser version utilizes WebAssembly to allow immediate playback without local software installation. The software includes an integrated level editor and tools for custom level design, enabling the creation of unique game environments. Other capabilities include inpu
SpaceCadetPinball is a reverse-engineered, cross-platform port of the classic 3D Pinball - Space Cadet game, rebuilt from the original binary without access to its source code. It functions as an asset-driven pinball emulator that loads the original game data files to recreate the authentic visual and audio experience on modern hardware, preserving the legacy title through binary-to-source porting and reverse engineering. The project distinguishes itself by reconstructing the game's logic through runtime analysis of the original compiled instructions, translating them back into readable C++ c
Urho3D is a cross-platform 3D game engine written in C++. It uses a component-based scene graph to compose game objects from nodes and attached components, separating transforms from behaviors for modular design. The engine integrates AngelScript and Lua scripting for game logic, uses the Bullet library for physics simulation, and renders scenes with OpenGL or Direct3D through forward, deferred, or light pre-pass pipelines with customizable render passes and shadow mapping. The engine distinguishes itself with a built-in visual scene and UI editor for composing 3D worlds and interface layouts
Pixel Dungeon is a browser-based roguelike game and turn-based RPG focused on exploring procedurally generated dungeons. It utilizes a retro pixel-art aesthetic to deliver a dungeon-crawling experience directly within a web browser. The game centers on procedural dungeon generation, creating unique, maze-like labyrinths for each playthrough. Gameplay is driven by turn-based combat and movement on a grid, where the player and enemies interact in discrete steps.