Skip to content

This project is a very small 2D game. Its purpose is to make you work with textures, sprites, and some other very basic gameplay elements.

Notifications You must be signed in to change notification settings

LMAymane/So_long

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

3 Commits
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽฎ so_long

๐Ÿ› ๏ธ 2D Game Development in C with MiniLibX

resut


๐ŸŽฏ Overview

so_long is a project at 1337 Coding School (part of the 42 Network) where you create a 2D game using the MiniLibX graphics library. This project combines your passion for game development with C programming to build a simple yet engaging game. Itโ€™s a great way to explore game design, graphics programming, and user interaction in a low-level environment.


๐Ÿง  What You'll Learn

  • ๐Ÿ“– Graphics Programming:
    Learn how to use the MiniLibX library to render graphics and handle user input.
  • ๐Ÿงฉ Game Design:
    Design and implement game mechanics like player movement, collectibles, and win/lose conditions.
  • โš™๏ธ Map Parsing:
    Parse and validate game maps from text files.
  • ๐Ÿง  User Interaction:
    Handle keyboard input to control the player character.

๐Ÿš€ Features

  • โœ… Core Functionality:

    • Implement a 2D game where the player collects items and exits the level.
    • Use MiniLibX to render the game window, sprites, and animations.
    • Parse game maps from .ber files and validate their structure.
  • โœจ Advanced Features:

    • Add animations for the player and enemies.
    • Implement a scoring system and display it on the screen.
    • Add sound effects and background music (optional).
  • ๐Ÿ“ฆ Organized Code:
    Clean, modular, and well-documented code for easy readability and maintenance.


๐Ÿ’ก Why so_long Matters

The so_long project is a critical step in understanding how to develop games from scratch. By completing this project, youโ€™ll:

  • ๐Ÿ”ง Gain hands-on experience with graphics programming and game design.
  • ๐Ÿง  Learn how to implement game mechanics and user interaction.
  • ๐Ÿš€ Prepare for more advanced game development projects.

๐Ÿ› ๏ธ Technologies Used

  • ๐Ÿ’ป C Programming Language
  • ๐Ÿ“œ MiniLibX: A lightweight graphics library for rendering and input handling.
  • ๐Ÿง  Game Design: Implementing game mechanics and logic.
  • โš™๏ธ File Parsing: Reading and validating game maps from text files.

๐ŸŒŸ Skills Gained

  • ๐Ÿงฉ Problem Solving
  • ๐Ÿ“š Deep Understanding of Graphics Programming
  • โš™๏ธ Game Design and Development
  • ๐Ÿง  User Interaction and Input Handling

About

This project is a very small 2D game. Its purpose is to make you work with textures, sprites, and some other very basic gameplay elements.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published