Zhangir Nurmukhambetov

Engine Programmer

zhangir.dev@gmail.com

2nd year student at Breda University of Applied Sciences in Creative Media and Game Technologies.

💼 Open for a 6-12 month internship starting February 2026

← Back

Preview image for Pitfall Recreation

Pitfall Recreation

November 3, 2023

A recreation of 1982 game Pitfall

My Contributions: AABB Collision System | 2D Physics | Rope Physics

Engine/Tools: C++

Team Size: Solo

Platforms: Windows

Duration: 8 Weeks (Sep 2023 - Nov 2023)

🧗🏻‍♂️ Pitfall

Pitfall is a 2D platformer game developed as part of a Year 1 game programming module, focused on building core gameplay systems from the ground up using C++. The game features classic platforming mechanics including responsive player movement, jumping, collision detection, and a dynamic rope-swinging system for navigating challenging terrain. Levels are designed using the Tiled map editor and loaded into the game via a custom CSV parser, enabling flexible and scalable level creation. A modular camera system ensures smooth tracking and scene transitions, while a game state manager handles menus, gameplay, and pause logic cleanly. The project emphasizes custom physics, efficient spatial systems, and interactive gameplay elements, all structured within a maintainable codebase reflecting professional development practices.


🔨 My Contributions


💢 AABB Collision System

Purpose: Implements axis-aligned bounding box (AABB) collision detection to support fundamental physics interactions between entities in the game world.

Key Features:

Challenges:


🪢 Rope Physics

Purpose: Simulates rope-like movement enabling swinging mechanics, adding verticality and challenge to level navigation.

Key Features:

Challenges:


🎥 Camera System (Screen, World, and Local Space Handling)

Purpose: Manages what the player sees on-screen, translating between different coordinate systems to ensure proper rendering and player focus.

Key Features:

Challenges:


🗣️ Game State Manager

Purpose: Controls transitions between different game states like main menu, playing, paused, and game over.

Key Features:

Challenges:


🏃 Controllable Player Character

Purpose: Core player entity that reacts to input, interacts with the environment, and embodies game mechanics like movement, jumping, and swinging.

Key Features:

Challenges:


🗺️ CSV Map Parser – TiledManager

Purpose: Automates the loading of levels designed in Tiled, converting CSV data into in-game tilemaps and entities.

Key Features:

Challenges:


🧠 Key Engineering Concepts


🎯 Overall Impact

Working on Pitfall gave me hands-on experience building essential game systems from scratch. I deepened my understanding of low-level physics, collision handling, and memory-conscious C++ development. This project challenged me to think structurally, debug complex interactions, and translate game design into reliable code. Most importantly, it taught me how to build modular systems that are both functional and maintainable — a critical step in my growth as a game developer.