Skip to content
This repository has been archived by the owner on Jul 30, 2024. It is now read-only.

inf112-v21/Unsinkable-II

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RoboRally - Unsinkable II

A java implementation of the board game RoboRally for the INF112 subject at the University of Bergen.

Build Status Codacy Badge

Table of Contents

  1. Overview

  2. Building

    1. Prerequisites
    2. Command line
    3. Intellij IDEA
    4. Running
  3. Developing

    1. How To Run
    2. Debugging
    3. Testing
  4. Known Bugs and Issues

    1. Missing Features
  5. The Unsinkable-II Team

    1. Developers
    2. About Us
  6. Documents

    1. Diagrams
    2. User Stories
    3. Minutes from meetings
    4. Retrospects
    5. Contributing to Git
    6. Board Design Protocol

Overview

This project is an approximation of the original version of RoboRally, a tabletop board game, in Java using libGDX and Tiled game framework and Kryonet for LAN/WAN multiplayer.

Building

There are no prebuilt binaries as of now, here are instructions on how to build this project. Maven shade is included to shade in needed dependencies to the resulting jar file.

Pre-Requisites

Java 13+

Maven (for CLI usage)

Command line

$ mvn package

Intellij IDEA

IDEA should download and install Maven automatically. Double-click on the package item under lifecycle, found one the right side under the Maven tab.
maven package

Running

After a successful build, you can run the jar

java -jar target/RoboRally-1.0-SNAPSHOT.jar

to run a multiplayer game, make sure that port

18888

is open.

Developing

Simply open the pom.xml file in any Java IDE like IntellIJ IDEA.

Documentation on contributing using git, see Git Contributing Guidelines.

Documentation on map design, see Board Design Protocol.

How to run

Run Main from an IDE.

Debugging

Debugging can be customized by changing values in Debugging.java. To enable various debugging levels set the corresponding area to debug to true.

Testing

To run the automated tests, simply run mvn test from the command line, or run the test lifecycle from an IDE.

While developing, run the tests from your IDE.

Contributing to git

For å bidra med kode, følger vi følgende prosedyre:

First Step

Make a new branch off the desired branch.

$ git checkout -b <name> origin/master

Now you may work on the project.

Commit og push

Commit your code when it is ready.
Add any new files that should be included. This command adds all new files.

$ git add .

Then make a commit:

$ git commit -m "Commit message detailing changes."

Before pushing remember to update the local files from the git repo:

$ git pull origin master

Solve any potential merge conflicts in an IDE such as IntelliJ.

Now you are ready to push your branch containing the new changes.

$ git push origin <name>

Pull request

When the your branch with the new changes are pushed, make a new pull request to merge these changes with the master branch. lage pr

Before a pull request is merged it must be approved by one of the team members.

When you make a pull request you may link to issues that have been fiksed by your code changes. This will will automatically close said issues when the pull request is approved. Ref til docs om dette
It is possible to close multiple issues this way.

Known Bugs and Issues

See Issues

Missing Features

Robot spawn direction

Pushers

Special tiles

The Unsinkable-II Team

Developers

Inge Amdal Halvorsen

Vegard Haugland

Daniel Liland

Jonas Valen

About Us

Unsinkable-II

Group dynamics

Documentation

All documentation can be found in the RoboRally Wiki at

Diagrams

Project board

For class diagram, see the Wiki.

User Stories

See User Stories Repository

Meeting Minutes

Feb/01/2021

Feb/04/2021

Feb/08/2021

Feb/11/2021

Feb/15/2021

Feb/25/2021

Mar/01/2021

Mar/08/2021

Mar/15/2021

Mar/22/2021

Apr/04/2021

Retrospect

Retrospect for sprint 1

Retrospect for sprint 2

Retrospect for sprint 3

Retrospect for sprint 4

Board Design

See Board Design Protocol