← Back to selected work

so_long

A 2D top-down game built with MiniLibX.

Role
1337 / 42 Developer
Access
1337 / 42 validated project
[01]

Context

A 2D top-down game built with MiniLibX. It includes map parsing, path validation, sprite rendering, keyboard input, collision handling, collectible tracking, and clean shutdown behavior.

[02]

My responsibility

Built and validated through the 1337 / 42 project curriculum, with direct responsibility for implementation, debugging, testing, and evaluation requirements.

[03]

System scheme

Engineering scheme

Validated 2D game loop

Input → Processing → Output

Map correctness is established before the render loop begins, keeping movement, collision, collection, and exit state deterministic.

  1. 01

    Map loader

    Read and normalize the level file.

  2. 02

    Map validator

    Check shape, walls, entities, and reachable objectives.

  3. 03

    Scene setup

    Load textures and initialize the MiniLibX window.

  4. 04

    Input loop

    Translate keyboard events into candidate player movement.

  5. 05

    Collision state

    Update movement, collectibles, and exit eligibility.

  6. 06

    Frame render

    Draw tiles, sprites, and counters, then cleanly shut down.

Path validation
Resource cleanup
Event handling
Frame state
[05]

Technical scope

C01
MiniLibX02
Pathfinding Algorithms03
[07]

Implementation details

  • Map loader: Read and normalize the level file.
  • Map validator: Check shape, walls, entities, and reachable objectives.
  • Scene setup: Load textures and initialize the MiniLibX window.
  • Input loop: Translate keyboard events into candidate player movement.
  • Collision state: Update movement, collectibles, and exit eligibility.
  • Frame render: Draw tiles, sprites, and counters, then cleanly shut down.
[08]

Engineering focus

  • Path validation remained an explicit concern across the implementation.
  • Resource cleanup remained an explicit concern across the implementation.
  • Event handling remained an explicit concern across the implementation.
  • Frame state remained an explicit concern across the implementation.
[10]

Project gallery

so_long project view 1

Need a system like this?

Tell me about the workflow, integration, or backend problem.

Discuss a project