1. Requirements 2. Installation 3. Running 4. Game Rules |
- Linux
- MinilibX only support TrueColor visual type (8,15,16,24 or 32 bits depth)
- gcc
- make
- X11 include files (package xorg)
- XShm extension must be present (package libxext-dev)
- Utility functions from BSD systems - development files (package libbsd-dev)
- e.g. sudo apt-get install gcc make xorg libxext-dev libbsd-dev (Debian/Ubuntu)
git clone https://github.com/42Paris/minilibx-linux.git
mv minilibx-linux mlx_linux
cd mlx_linux && make
cd .. && git clone https://github.com/JustShush/42_so_long.git
cd 42_so_long && make
git clone https://github.com/42Paris/minilibx-linux.git ;mv minilibx-linux mlx_linux ;cd mlx_linux && make ;cd .. ; git clone https://github.com/JustShush/42_so_long.git ;cd 42_so_long && make
Run the executable file followed by a valid map file, at the root of the so_long
directory. Example:
$ ./so_long maps/map1.ber
You can run the game with a custom map file as long as it follows the Game Rules.
The executable so_long will receive a map as the only argument, and this map must have a .ber
filetype.
The file also must follow these rules:
-
The only accepted characters are:
P
(player)1
(wall)0
(empty)C
(collectible)E
(exit)
-
The map must be rectangular, i.e. all rows must have the same length
-
There must be only one exit and one player, and at least one collectible in the map
-
The map must be surrounded by walls
-
There must be a valid path the player can take from the starting position, to the exit, collecting all colletibles.
If any of these checks fail, the game will end with Error\n
followed by a custom message.
The goal is for the player( to collect all the collectibles on the map before going to an exit in the least possible number of steps