Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vbrazhnik/filler
School 42 project // Bot for map-filler puzzle game
https://github.com/vbrazhnik/filler
42 42projects 42school algorithm born2code bot puzzle-game sdl2 unitfactory visualization visualizer
Last synced: 3 days ago
JSON representation
School 42 project // Bot for map-filler puzzle game
- Host: GitHub
- URL: https://github.com/vbrazhnik/filler
- Owner: VBrazhnik
- Created: 2019-06-02T13:41:01.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-06-02T13:45:52.000Z (over 5 years ago)
- Last Synced: 2024-02-05T15:53:07.364Z (9 months ago)
- Topics: 42, 42projects, 42school, algorithm, born2code, bot, puzzle-game, sdl2, unitfactory, visualization, visualizer
- Language: C
- Size: 2.18 MB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Filler
![Filler](/images/filler.svg)
Filler is a School 42 project. The purpose of this project is to create bot for map-filler puzzle game.
[`filler.en.pdf`](/filler.en.pdf) is the task file.
## Wiki
You can check [wiki-page](../../wiki/Algorithm) if you want to read a description of the created algorithm.
## How to clone?
This repository includes submodule. So if you want to clone it, you can use the following command:
```
git clone --recurse-submodules
```If you will use `git clone ` instead of, you will get the empty `libft` folder.
## Installation
Clone repository and then go into the created directory and run the following command:
```
make
```## How to run program?
There are resources that are provided by task — a virtual machine (`filler_vm`), maps, and bots. They are located at the [`resources` directory](/resources).
The virtual machine moderates a game. It needs [a map file](/resources/maps) and [bots](/resources/players).
The purpose of the project is to create own bot.
A name of the created bot is `vbrazhni.filler`. It will be created after `make` command and placed at the root of the directory.
You can run the virtual machine with the following command:
```
./filler_vm -f MAP_FILE -p1 PLAYER_FILE -p2 PLAYER_FILE
```## Visualizer
Also this project has a visualizer.
It was written with **SDL2** library.
**Prerequisites**
* ```brew install SDL2```
### How to use visualizer?
```
Usage: ./filler_vm -f MAP_FILE -p1 PLAYER_FILE -p2 PLAYER_FILE | ./vsControl keys:
> Space — start/stop
> Right Arrow — next step
> Left Arrow — previous step
```![Visualizer](/images/visualizer.png)