PyCAPGE (Python Classic Adventure Point and Click Game Engine) is a versatile, open-source framework designed for creating retro-style 2D graphic adventures using Python and Pygame. Inspired by the golden age of SCUMM games, it features a customizable 9-verb interface and robust inventory management.

Key features include a Scene Manager supporting parallax scrolling, walk-behind masks, and depth-based character scaling. It implements intelligent Pathfinding to navigate complex environments automatically. The engine natively supports Multi-Character gameplay, allowing dynamic switching between protagonists.

Developers can build rich narratives using the branching Dialogue System and a Cutscene Manager for scripted events. The architecture is data-driven: texts and definitions are separated into YAML files for easy localization. Includes a JSON Save/Load system and debug console.

Features

  • Classic Interface: Implements a customizable 9-verb interaction system (Look, Pick Up, Use, Talk, etc.) and a dedicated inventory management UI.
  • Advanced Scene Management: Supports multi-layer parallax scrolling backgrounds, walk-behind masks, and dynamic character scaling based on depth (Y-axis).
  • Smart Pathfinding: Integrated pathfinding system (Euclidean/Manhattan) using navigational masks to handle character movement and obstacle avoidance automatically.
  • Multi-Character Support: Built-in capability for multiple playable characters (e.g., swapping between characters like "Gilo" and "Bart") with distinct inventories and interaction logic.
  • Dialogue System: A robust, branching dialogue tree system with support for conditional options, distinct NPC responses, and scrolling selection menus.
  • Cinematic Tools: A CutsceneManager for scripting non-interactive sequences, intros, and endings with timed events, camera movements, and animations.
  • Dynamic Lighting & Atmosphere: Support for lightmaps, tinting characters based on environment, and ambient animations (particle effects, background sprites).
  • Localization Ready: Complete separation of code and text. All game strings (items, dialogues, menus) are loaded from YAML files, enabling easy translation into multiple languages.
  • Save/Load System: JSON-based serialization to save game state, inventory, and variables with a visual slot interface.
  • Developer Tools: Includes an in-game debug console, collision visualization (F-keys), and hot-reloading of assets.

Project Samples

Project Activity

See All Activity >

License

GNU General Public License version 3.0 (GPLv3)

Follow PyCAPGE

PyCAPGE Web Site

Other Useful Business Software
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Learn More
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of PyCAPGE!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Languages

Arabic, Basque (Euskara), Catalan, Chinese (Simplified), Dutch, English, Esperanto, French, Galician, German, Greek, Gujarati, Hausa, Hebrew, Hindi, Indonesian, Italian, Japanese, Javanese, Korean, Malayalam, Portuguese, Romanian, Russian, Sindhi, Spanish, Swahili, Tagalog, Turkish

Intended Audience

Developers

User Interface

SDL

Programming Language

Python

Related Categories

Python Game Development Frameworks, Python Game Engines, Python Typing Games

Registered

3 days ago