Skip to content

Latest commit

 

History

History
105 lines (68 loc) · 3.03 KB

README.md

File metadata and controls

105 lines (68 loc) · 3.03 KB

Crossy Road +

Software Labs I | Laboratórios de Informática I

Grade: 19/20 ⭐

This game was developed during the first semester of the Software Engineering degree @ University of Minho. The full process of development was evaluated and established the final grade for the "Laboratórios de Informática I" subject.

The project consisted of recreating the game Crossy Road, with the freedom to add features and completely change the graphical appearance, which was, in this case, fully design by us.

It was fully developed in Haskell and consisted of 6 tasks:

  1. Verify if a given map is valid;

  2. Generate a random map;

  3. Move the player on the map;

  4. Determines when the game ends;

  5. Make the game slide;

  6. Build all the graphical part of the game.

Game gallery

Installing and running the game

Firstly, install Haskell Platform (GHC and Cabal). To do so, follow the instructions for your specific system at: haskell.org/downloads

Finally, since the graphical interface of the game was developed using the Gloss library, you'll need to install it:

$ cabal update
$ cabal install --lib gloss

Cloning the repository

$ git clone https://github.com/pedrofp4444/Crossy-Road-Plus.git

Compiling

$ cd Crossy-Road-Plus/src
$ ghc Main.hs

Running

$ cd ..
$ ./src/Main

Interpreter

You can open the interpreter Haskell (GHCi) using the cabal or directly.

  1. Using cabal
$ cabal repl
  1. Using GHCi
$ ghci -i="src" -i="tests" src/Main.hs

Documentation

You can generate documentation with the Haddock.

  1. Using cabal
$ cabal haddock --haddock-all
  1. Using directly haddock
$ haddock -h -o doc/html src/*.hs

Possible problems

In case you get a mpv error, you'll need to install it (since It was used to play audio inside the game). Follow the instructions here: mpv.io/installation

Group 10

  • A104082 Pedro Figueiredo Pereira;
  • A104096 Jorge Ubaldo Rodrigues Ferreira;