πŸ’» Corewar πŸ—‘οΈ

Corewar

Description πŸ“

The Corewar is a project carried out by groups of 2 (see Contributors), during our 1st year in EPITECH Grand Ecole program.
Its purpose is to recreate in C a Core War video game.

Usage βš”οΈ

You can run Corewar like this :

./corewar -dump 1000 -n 1 -a 0 champion.cor -n 2 -a 200 champion.cor

For more information, please see the help section.

> ./corewar --help
USAGE
     ./corewar [-dump nbr_cycle] [[-n prog_number][-a load_address] prog_name] ...
DESCRIPTION
     -dump nbr_cycle dumps the memory after the nbr_cycle execution (if the round isn't already over) with the following format: 32 bytes/line in hexadecimal (A0BCDEFE1DD3...)
     -n prog_number sets the next program's number. By default, the first free number in the parameter order
     -a load_address sets the next program's loading address. When no address is specified, optimize the addresses so that the processes are as far away from each other as possible. The addresses are MEM_SIZE modulo

Result 🚩

The result of this project is an almost perfect Corewar.
If you discover a problem or an error, don’t hesitate to create an issue and report it to us as soon as possible.

my.epitech.eu result

Category Percentage Numbers of tests Crash
Check binary 100% 1/1 No
Results 100% 1/1 No

Tests and code coverage

Functional tests were carried out with a bash tester and unit tests using criterion.
Unit tests are still to be performed, but a large part of the code is already covered:

You can run the tester with this command :

./tester.sh

You can compile the project and run the tester with this command :

make tests

You can compile the project and run the unit tests with this command :

make tests_run

For more details, please click here.

Compilation πŸ› οΈ

You can compile the project with this command :

make

If you want to debug the program, you can compile the project with this :

make debug

If you want to clean the project, you can run this command :

make fclean

You can clean and compile the project with make re and for debugging make re_debug

You can compile the unit tests with this command :

make unit_tests

Documentation πŸ“š

The documentation is accessible here.

You can generate the documentation with this command :

make doc

You need multiple packages to generate it:

Contributors πŸ‘₯

This project was carried out by the following developers: