Labirint is an early experimental 2D maze game developed using Python and Pygame. The project was created more than two years ago as part of my initial journey into programming and game development.
Despite being an early project, it represents a complete playable game with enemies, obstacles, combat mechanics, and win/lose conditions.
The player navigates through a 2D labyrinth filled with walls, traps, and moving enemies. The goal is to reach the final point while avoiding collisions and defeating enemies using ranged attacks.
Core gameplay features:
- Free 2D player movement
- Maze-based level layout
- Multiple enemy types with different movement patterns
- Shooting mechanics (laser & bullets)
- Win / Lose conditions
- Sound effects and background music
- Language: Python
- Library: Pygame
- Graphics: 2D sprites
- Audio: Pygame mixer
- Platform: Desktop
The game is structured using basic object-oriented principles:
GameSpriteโ base class for all game objectsPlayerโ player movement and shooting logicEnemyclasses โ different enemy movement behaviorsWallโ static obstacles forming the mazeBulletโ projectile mechanics- Main game loop handling:
- input processing
- collision detection
- game state (win / lose)
- rendering and FPS control
pip install pygame
python labirint.py
Make sure all required assets (images and sounds) are located in the same directory as the script.๐ Project Status ๐ก Archived / Educational Project
This project is no longer actively developed. It is preserved as an educational and portfolio project representing my early experience in game development.
๐ What I Learned Basics of 2D game development
Working with the Pygame framework
Object-oriented design for game entities
Collision detection and game loops
Managing game state and user input
Integrating sound and visual assets


