https://github.com/saffronware/conuhacks_kodorteam
https://github.com/saffronware/conuhacks_kodorteam
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/saffronware/conuhacks_kodorteam
- Owner: SaffronWare
- Created: 2026-01-24T16:40:41.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-01-25T06:49:26.000Z (5 months ago)
- Last Synced: 2026-01-25T09:08:16.087Z (5 months ago)
- Language: Python
- Size: 4.47 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ConUHacks_KodorTeam
# Magnetic Orb Shooter
## 🌌 The Concept
**Magnetic Orb Shooter** is a high-skill, physics-based 2D shooter where you play as an inert Orb with no onboard engines.
**The Twist:** You cannot move directly (no WASD or Arrow Keys).
Instead, movement is achieved through **indirect control**. You navigate the arena by placing temporary **"Magnetic Anchors"** on the field. The Orb is physically pulled toward these anchors, requiring the player to master momentum, slingshot trajectories, and gravity to dodge enemies while returning fire.
## Gameplay Mechanics
### 1. Indirect Movement (The "Magnets")
* **Place Anchor:** Left-click anywhere on the screen to spawn a magnetic node.
* **Attraction:** The Orb is immediately pulled toward the active node based on distance and force.
* **Slingshotting:** De-activate or place new magnets rapidly to swing around corners or dodge incoming projectiles using generated momentum.
### 2. Combat
* **The Orb:** While struggling against physics to move, the Orb acts as a turret, firing projectiles at approaching enemies.
* **Strategy:** You must balance the chaos of movement with precision aiming.
## Technical Implementation
The current codebase (`main.py`) establishes the high-performance rendering engine required for these physics calculations.
### Current Features
* **High-Res Viewport:** Configured for wide-field gameplay at **2240x1200**.
* **Fixed Time Step:** The game loop is locked at **60 FPS** to ensure deterministic physics (so the magnets behave consistently every time).
* **Event Polling:** Robust input handling structure ready to receive mouse coordinates for magnet placement.
## Getting Started
### Prerequisites
* Python 3.x
* Pygame
### Installation
1. Clone the repository.
2. Install dependencies:
```bash
pip install pygame
```
### Running the Engine
Execute the main script to start the game loop:
```bash
python main.py