Skip to main content

2D Python game engine built on pygame and pymunk

Project description

⚙️ Cogworks Engine

Cogworks Engine is a small, personal 2D Python game engine I created for fun. It’s designed to make building 2D games in Python quick, enjoyable, and structured, using Pygame for rendering and input, and Pymunk for physics simulation.

📘 Documentation: cog-works-engine-docs.vercel.app


🚀 Features

🧩 Component-Based GameObjects – Build flexible and reusable entities with custom behaviour.

⚙️ Physics Integration – Built-in Rigidbody2D and Collider components powered by Pymunk for realistic 2D physics.

🧲 Trigger Collider – Independent collision detection for triggers and interactions without physics simulation.

💨 Particle Effects – Customisable particle systems for explosions, muzzle flash, blood effects.

🔊 Audio Source – Play and control sound effects or background music through component-based audio sources.

🧠 Script Component – Attach Python scripts directly to GameObjects to define custom behaviour and logic.

🎬 Scene Management – Manage levels, menus, and transitions with ease.

🎮 Input Management – Unified keyboard and mouse input handling.

🧱 Extensible & Modular Design – Add new components, systems, and tools without breaking the engine’s core structure.


📦 Installation

Install via pip:

pip install cogworks

🕹️ Quick Start

Here’s a minimal example to get started:

from cogworks import Engine

# Create a new engine instance
engine = Engine(
    width=800,
    height=600,
    caption="My Game",
    fps=60,
)

# Run the engine
engine.run()

📚 Learn More

Visit the full documentation for examples and guides: 👉 https://cog-works-engine-docs.vercel.app


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cogworks-0.2.6.tar.gz (241.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cogworks-0.2.6-py3-none-any.whl (250.9 kB view details)

Uploaded Python 3

File details

Details for the file cogworks-0.2.6.tar.gz.

File metadata

  • Download URL: cogworks-0.2.6.tar.gz
  • Upload date:
  • Size: 241.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for cogworks-0.2.6.tar.gz
Algorithm Hash digest
SHA256 dd528885a263cb72def9915ce2768cb95170352c5784a711a033277a72eb2f81
MD5 eee472feb58720fecbdd4fc5d161f2ea
BLAKE2b-256 9cb8538e22d81652d807497b9c9c43eff0df7fcede8228cf3806458aa75e9595

See more details on using hashes here.

File details

Details for the file cogworks-0.2.6-py3-none-any.whl.

File metadata

  • Download URL: cogworks-0.2.6-py3-none-any.whl
  • Upload date:
  • Size: 250.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for cogworks-0.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 32eacd6cf4e2ae0f1ad0e7b48e274bc92275b40c61a265ecb8d7a1148e0ca0dd
MD5 af01bb49407b1f4b18b90bf385252a83
BLAKE2b-256 3b232087dd63dbbb055e761c6341def942060c21ed3fcd6a347b9891db70964f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page