Skip to content

Latest commit

 

History

History
67 lines (46 loc) · 2.33 KB

README.md

File metadata and controls

67 lines (46 loc) · 2.33 KB

Corewar

The Corewar project is a game in which several programs called "Champions" will fight to stay the last one alive. Corewar is actually a computer simulation in which processors will share memory to run on.

How does it work?

The project is based on a virtual machine in which the champions will fight for memory by all possible means in order to win, the last champion being able to signal that he is alive wins the game. In other words, the last champion to execute the "live" instruction is declared winner.

Getting Started

Installation

Clone this repository.

Quickstart

Build the project:

make

Usage

Run the assembler:

./asm/asm file_name[.s]

Run the virtual machine:

./corewar/corewar [-dump nbr_cycle] [[-n prog_number] [-a load_address] prog_name] ...

BONUS

Web visualizer: https://corewar.vercel.app/

You can self-host the server and the client.

Server:

cd bonus/server
docker compose build
docker compose up -d

Client:

cd bonus/client
npm install

# copy .env.example to .env and set the SOCKET_URL to the url of the server
npm run build

# to run the client
npm run preview -- --port 3000

Our team ❤️

Developers


Antoine Lê

Lou Onezime

Martin Fillon

Martin Saldinger