Professional Documents
Culture Documents
Spring 2020
Group No. 41: Final Release Report
Project Title: Dude Nukem
The index.html file holds our canvas for the game and also controls information on how to play
the game.
The backend for our game lives in five files. The “script.js” file is the backbone of the game with
most game logic and keeps the game running in a loop. The “player.js” file contains the data
structure for a player and code for processing their movement. The “map.js” file contains the
map design and structure, having the knowledge of all types of block locations. The “settings.js”
file has all the constant start of game settings like initial player movement speed and bomb
radius. The “assets.js” file all the imports that will be used in the game(images, music). The
“img” and “sound” folders contain all the media files that will be used in the game to make it
more aesthetically pleasing to play.
3. Implementation Outline:
The Overall Implementation Outline of our project which includes:
● Platform: Web application. Runs in any modern web browser. Not optimised for mobile as it
requires keyboard input
● Front-end Language/Technologies/Framework used: HTML, CSS
● Back-end Language/Technologies/Framework used: JavaScript
● Database, Server, IDE and any design/UML tools: Eclipse, Vim
4. UI description with Screenshots:
These are all Screenshots for successfully implemented story cards for 2nd Release:
Story Card 9:
As the game progresses, more blocks and power ups will appear on the map, making it more
challenging to play. Each player has to blow up the other player with bombs.
Story Card 10:
Player Penguin has successfully blew up Player Fox, so Player 1 wins the game.
This is a figure showing bomb animations and player avatars showing and working correctly in
the game.
5. Testing:
Most of the testing was playing the game as most of the code doesn’t return values but instead
updates the game state directly. There is a function called toIndex(x, y) that given an x and y
coordinate on the graph returns an index for 1d array given the map dimensions. This needed to
be tested to ensure the right index was returned. The unit test is shown below.
6. Summary:
The overall project is a success as we successfully implemented a game that is playable for two
players on the same keyboard. This achieved what we were looking for a retro classic game
that reminisce of old times. We are able to implement this in a short amount of time, and also
working separately in our own homes during this COVID season, which in itself, is no simple
feat.
We could have collaborated and communicated with each other more as a team, delegating
tasks better. We could also try to meet up regularly to talk about what has to be done.
Plans for future extensions four our current project can be anywhere from adding more players,
adding more power ups, making it online and accessible on a server, creating more complex
game logic, more map designs, and much more.