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

inf112-v19/Sky7

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

729 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sky7 RoboRally

This is an implementation of the board game "Robo Rally" as a computer game, for Windows, Mac and Linux.

How to run

Use of an IDE

Jar

  • Download Sky7RoboRally-V0.2-alpha.zip
  • Extract the zip file
  • Run Sky7RoboRally-V0.2-alpha.jar
    • Windows / Linux / OSX: Open cmd/terminal, navigate to the folder containing the jar, enter "java -jar Sky7RoboRally-V0.2-alpha.jar"

How to play

  • LAN mode
    • One of the players may choose to host after starting the game.
    • Other players connect to the host's IP.
    • The host chooses a board to play.
    • When all players are connected, the host can begin the game.
  • Click on the cards you want to insert into your robot's registry.
  • If you change your mind, hit the reset button to return the cards to your hand.
  • Once the registry is full, you may click "Go".
  • To "Power Down" and repair your robot the next round, hit "Power Down" before you click "Go".
  • Once all players have clicked "Go", all registries will be executed from left to rigth.
  • Higher priority cards go first.
  • Stop on a flag to pick it up. Flags must be picked up in order (e.g. 1,2,3) to win.

Documentation

  • Class diagram in [Documents/Class diagram](Documents/Class diagram).
  • Network diagram in [Documents/Class diagram](Documents/Class diagram).
  • DrawPriority explanation in Documents.

Known bugs

  • Lasers are not rendering correctly.

Tests

JUNIT tests

  • Located in test folder
  • Run TestSuite as JUnit test - combines all tests in a Suite.
  • ICell
    • Test that the priority of each ICell is correct
  • BoardTests
    • Tests that the you can retrieve information correctly from Board.
    • Tests that the movement of the robots on the board is correct follow the rules.
  • DrawPriorityTest
    • Tests that ICell classes behave and compare correctly in a TreeSet.
  • FlagTest
    • Basic check for flag values
  • RoboTest
    • Checks that RoboTile rotates correctly
  • ProgramDeck
    • Test that the values of ProgramDeck matches the number of different cards as shown in the rulebook
  • Client
    • Asserts that connected clients retain the correct playerNumber.
    • Assert that the 5 cards chosen by clients are the same 5 returned to host as registry.
    • Assert that clients always return 5 cards assigned to registry, and the remaining as discard (n=100) (none lost, duplicated or created).

Manual Tests

  • Play the game!
    • Start the game as host, and click begin, to test it with just one player.
    • Start the game as host, start the game again, but as client, connect to "127.0.0.1" to test multiplayer functions.

22e3450d273bd813e33374b470ca2e933aee2699

About

Group 7 Blue

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors