.cub parsing (NO/SO/WE/EA/F/C) | Mandatory | Done | srcs/parsing/ | Configuration & Maps |
| Header validation (duplicates/missing/format) | Mandatory | Done | srcs/parsing/parse_config*.c | Configuration & Maps |
| Map extraction | Mandatory | Done | srcs/parsing/parse_map.c | Configuration & Maps |
| Map character validation | Mandatory | Done | srcs/validation/validate_map_chars.c | Map Validation |
Player spawn validation (single N/S/E/W) | Mandatory | Done | srcs/validation/validate_map_player.c | Map Validation |
| Closed-map validation (BFS) | Mandatory | Done | srcs/validation/validate_map_closed*.c | Map Validation |
| MLX init (window + frame buffer) | Mandatory | Done | srcs/core/init_mlx.c | Architecture / Rendering |
| Mandatory texture loading | Mandatory | Done | srcs/core/init_mlx.c | Texture Mapping |
| Frame render loop | Mandatory | Done | srcs/render/render_frame.c | Frame Rendering Pipeline |
| Raycasting (DDA, per column) | Mandatory | Done | srcs/render/raycast.c | Raycasting |
Wall texture mapping (wall_x, tex_x, tex_y) | Mandatory | Done | srcs/render/raycast_draw.c | Texture Mapping |
| Floor/ceiling color rendering | Mandatory | Done | srcs/render/render_frame.c | Frame Rendering Pipeline |
| Keyboard input handling | Mandatory | Done | srcs/input/input_keys.c, input_update.c | Input System |
| Movement and collision | Mandatory | Done | srcs/input/move_player.c, move_collision.c | Movement and Collision |
| Rotation | Mandatory | Done | srcs/input/rotation.c | Player System |
| Error reporting and clean exit | Mandatory | Done | srcs/tools/utils.c, srcs/core/shutdown.c, srcs/core/main.c | Error Handling / Cleanup |
| Minimap | Bonus | Done | srcs_bonus/retro/minimap*.c | Bonus / Minimap |
| Doors (state + interaction + queries) | Bonus | Done | srcs_bonus/doors/ | Bonus / Doors |
| Pickups and stat effects | Bonus | Done | srcs_bonus/pickups/ | Bonus / Pickups and Stats |
| HUD panels/face/weapon/status | Bonus | Done | srcs_bonus/hud/ | Bonus / HUD |
| Sprite storage/sort/render | Bonus | Done | srcs_bonus/sprites/ | Bonus / Sprites |
| Retro framebuffer + upscale output | Bonus | Done | srcs_bonus/retro/api.c, upscale.c, image.c | Bonus / Retro Render Path |
| Bonus wall assets (static/symbol/animated) | Bonus | Done | srcs_bonus/retro/walls_*.c | Bonus / Retro Render Path |
| Level list and next-level reload | Bonus | Done | srcs_bonus/levels/ | Bonus / Levels / Progression |
| Mouse look | Bonus | Done | srcs/input/input_mouse.c | Bonus / Mouse Rotation |