

Minds at Play was my final degree project, developed under a very tight schedule. I was fully responsible for all programming and Unity implementation, while the rest of the team (five members) handled 3D modeling, texturing, and visual design.
This project allowed me to apply and refine my technical development skills while improving my team coordination, planning, and organization abilities.
Role: Programming
Team Size: 6
Duration: 3 Months
Engine: Unity Engine URP
Minds at Play is a third-person shooter with roguelike elements, set in semi-procedurally generated dungeons. It combines precise shooting mechanics, an exploration-based progression system, and a robust, scalable, and optimized dungeon generation algorithm.
● Smooth and classic controls: movement with WASD, sprint (Ctrl), crouch (Shift), aim (Right Click), shoot (Left Click), reload (R), and shoulder switching (Tab) for better cover use.
● Six different movement speeds that blend smoothly, adapting to both player states (crouching, sprinting, airborne...) and equipped items that modify stats.
● Advanced shooting system that prevents blind fire: if the player’s aim is blocked by a wall, an indicator shows that the shot won’t hit the target.
● Advanced animation system:
○ The player has 25 distinct animations that blend seamlessly between states.
○ A layer-based structure organizes animations hierarchically. Procedural Inverse Kinematics (IK) in the arms blends over base animations, while body and leg movements synchronize with camera orientation and player direction.
○ This system results in highly precise, realistic, and fluid control, enhancing combat immersion.
This was the core and most ambitious part of the project — a system I rebuilt several times until achieving the desired quality.
● A semi-procedural algorithm generates dungeons using predefined rooms as building blocks.
● Coherent, scalable, and efficient layout: a tile system that supports rooms of any size and shape, rotating and adapting them dynamically.
● Difficulty progression increases the farther the player moves from the starting room.
● Each dungeon includes two main paths: one leading to the boss and another to a special weapon.
● Enemies and loot scale dynamically according to room position and difficulty, ensuring varied and replayable runs.
● Item rarity adapts to player progression, granting higher-quality items in advanced zones.
● Enemies navigate intelligently through dungeons using NavMesh, adapting to the environment by taking stairs, jumping from heights, and finding alternate paths to surprise the player.
● The main enemy type is highly unpredictable, alternating between seven distinct behavioral states (zigzagging, sprinting while crouched, crawling, etc.), each with its own animations and speed adjustments.
● A precise hitbox-based damage system calculates impact individually for each body part — for example, repeated shots to the legs cause limping and slower pursuit.
● Dynamic particles and sound effects adapt to impact materials: skin, wood, metal, stone, headshots, leg shots, and more — enriching the game’s visual and feedback.