Skip to content

MartinFillon/Corewar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •