Ed Lack

ENG1 Cohort 3 Group 2

Contents

Assessment 1/2 Deliverables (Old & New)

Click to see Assessment 1 updated and old deliverables - Requirements
- Architecture
- Method Selection & Planning
- Risk Assessment
- Implementation
Click to see Assessment 2 deliverables - Change Report
- Implementation
- Testing
- User Evaluation
- Continuous Integration

- Github Repositories
- Executable JARs
- Google Drives

Documentation

Change Report

Deliverable:

Change2.pdf

Implementation2

Deliverable:

Impl2.pdf
Source Code
Name License Requirement
Complete UI Essentials Pack by Crusenho [1] Creative Commons Attribution 4.0 Give credit. Include license. State changes. Can’t add additional restrictions
Monogram font by Vinícius Menézio [2] Creative Commons Zero v1.0 Universal None
UI Assets Pack 2 by Sr.Toasty [3] Creative Commons Zero v1.0 Universal None
Character Template by Eris Esra [4] Non-Standard Cannot Resell. Credit Appreciated
Modern Interiors by LimeZu [5] Non-Standard Free version - Used in our project: Non-Commercial. Cannot edit sprites for use in commercial products. Cannot edit and resell sprites.
Gradle [6] Apache License 2.0 Preserve copyright notices. Include license. State any changes. Include original NOTICE file.
libGDX [7] Apache License 2.0 Preserve copyright notices. Include license. State any changes. Include original NOTICE file.
LWJGL3 [8] BSD license Retain copyright notice, list of conditions and disclaimer. Cannot use project, or author’s name for endorsement without permission.
VS code [9] MIT Licence Include copyright notice. Include license.
Jacoco [10] Eclipse Public License Version 2.0 Include copyright notice. Include license. License any derivative works of the library under the same or later version of the EPL. Disclose source code.

References: [1] https://crusenho.itch.io/complete-ui-essential-pack [2] https://datagoblin.itch.io/monogram [3] https://srtoasty.itch.io/ui-assets-pack-2 [4] https://erisesra.itch.io/character-templates-pack [5] https://limezu.itch.io/moderninteriors [6] https://gradle.org/ [7] https://libgdx.com/ [8] https://www.lwjgl.org/ [9] https://code.visualstudio.com/ [10] https://www.jacoco.org/jacoco/

Testing

Deliverable:

Test2.pdf

Manual Test Table

ID Description Requirement Method Expected Outcome Actual Outcome Status
TEST_STARTSCREEN_RENDER Tests that the starting screen is loaded correctly upon starting the game with the background, intro text, and leaderboard UR_CLEAR_DESIGN, UR_LEADERBOARD Load the game Correct background and text is loaded, text is legible and easy to understand Background and text is loaded correctly, and the text is legible Pass
TEST_WINSCREEN_RENDER Tests the win screen loads correctly upon winning the game, with the background, congratulatory text, and achievements UR_CLEAR_DESIGN, UR_ACHIEVEMENTS Play through the game until the win condition is met Correct background and text is loaded, text is legible and easy to understand Background and text is loaded correctly, and the text is mostly legible Pass
TEST_PLAYER_RENDER Tests that the correct animation is played for each of the players inputs UR_MOVEMENT, UR_CLEAR_DESIGN Press each of the keys w,a,s,d checking that the animation changes correctly on each keypress. Stop after pressing each key, checking that the animation is correct once the key is no longer pressed Press W: up walking animation is used, when stopped, the facing up animation is used

Press A: left walking animation is used, when stopped, the facing left animation is used

Press S: down walking animation is used, when stopped, the facing down animation is used

Press D: right walking animation is used, when stopped, the facing right animation is used
Pressing each key plays the correct animation whilst the key is pressed and once the player stops moving Pass
TEST_DOOR_AND_KEY_RENDER Tests that exactly three doors and three keys are drawn on the map in the correct orientation UR_ITEMS, UR_MAP, UR_CLEAR_DESIGN, FR_LOCKED_DOOR Load and start a game Three doors and three keys will be clearly visible on the map Three doors and three keys are visible on the map Pass
TEST_WARP_RENDER Tests that a warp panel is correctly rendered UR_HIDDEN_EVENTS Load and start a game, then move the player until they collide with the warp panel The warp panel is initially not visible, once the player collides with it, it will then become visible The warp panel is not initially visible, then becomes visible once it is collided with Pass
TEST_POWERUP_RENDER Tests that each powerup is correctly rendered UR_MAP, UR_ITEMS, UR_POSITIVE_EVENTS, UR_NEGATIVE_EVENTS, UR_HIDDEN_EVENTS Load and start a game, check that all the visible events are rendered with the correct image. Move the player to collide with the remaining hidden events There are two speed up events, then one of each a:
chest; charge; hole; drink, sleep; slow down; time boost; and score divider
All visible events are shown on the map and are mostly clear to see, both hidden events are not visible when starting the game, however the charge event doesn’t then become visible once it is activated Fail
TEST_ACTIVE_POWERUP_RENDER Tests the active powerups are shown on the UI bar UR_CLEAR_DESIGN Load and start a game, then collect a speed up powerup, check that it is active for 10 seconds The icon for the active powerup should appear and stay visible for the amount of time that it is active Upon collecting the speed up, it becomes visible in the active powerup section, disappearing after 10 seconds Pass
TEST_EVENTCOUNTS_RENDER Tests that the counters for each event are shown on the UI bar with the correct counts UR_EVENT_COUNTER Load and start a game, then collect a powerup of each type: positive, negative and hidden The counters should be rendered and legible, then upon each powerup being collected, the respective counter should increase The counters are initially rendered to 0, and are clearly visible, upon collecting a good, bad and hidden event, the respective counters all incremented by 1 Pass
TEST_PAUSE Tests that the Pause menu renders correctly UR_PAUSE, UR_CLEAR_DESIGN, UR_GAME_DESIGN Load and start a game, then press esc to activate the pause menu, press esc again to return to the game The pause menu will be rendered with a transparent background and legible text, with the game timer pausing The pause menu is rendered correctly, and the text is quite legible, and the game timer visibly pauses Pass
TEST_GAME_OVER Tests that the Game Over screen renders correctly UR_CLEAR_DESIGN, UR_GAME_DESIGN Load and start a game, wait until the timer runs out The game over screen will be rendered with a transparent background and legible text The game over screen is rendered correctly, the text is relatively legible Pass
TEST_TIMER Tests that the timer is correctly rendered on the UI bar, accurately depicting the time UR_COUNTDOWN, UR_CLEAR_DESIGN Load and start a game, watch the timer and check it decreases every second The timer is rendered in the top corner in the format MM:SS, and decreases by 1 every second The timer is correctly rendered and decreases at the correct rate Pass
TEST_GAME_RENDER Tests that the game map is rendered correctly UR_MAP, UR_CLEAR_DESIGN Load and start a game The map is correctly rendered and easy to understand The map is correctly rendered, the pixel art graphics making it clear what areas can be accessed Pass
TEST_MOVEMENT Tests that the player can move and collide with objects in order to complete the game UR_MOVEMENT, UR_ITEMS, UR_GAME_DESIGN Load and start a game, play through the game until the win condition is met All entities are rendered correctly, the player can move, collide with items to progress, and end the game All entities were rendered correctly, and the player was able to collide with items to complete the game Pass
TEST_RESIZE Tests that the game window can be resized accurately UR_GAME_DESIGN Load and a game, press F11 to resize the game to fullscreen, press F11 again to return to original window size The graphics adapts to fullscreen without loss of quality, and then revert back to the initial state From the start screen, pressing F11 will not resize the game, doing so once the game has started however, will resize the screen correctly. Fail

For each of the following files you will be taken to a google drive, where you will need to download the main folder and then unzip it. From there you can open the corresponding index.html / main.html from your device.


Checkstyle Report Link
JaCoCo Coverage Report Link
JaCoCo Test Report Link

User Evaluation

Deliverable:

Eval2.pdf

Continuous Integration

Deliverable:

CI2.pdf

Requirements

Deliverable:

Updated Assessment 1 Requirements PDF

Team 2 Req1.pdf

Old Assessment 1 Requirements PDF

Old Req1.pdf

Other Files:
Client Interview

Architecture

Deliverable:

Updated Assessment 1 Architecture PDF

Team 2 Arch1.pdf

Old Assessment 1 Architecture PDF

Old Arch1.pdf

Previous Iterations
Click to see updated Assessment 1 architecture diagrams Assessment2_Behaviour_of_Game Assessment2_Behaviour_of_Game_V2 InvertedControls TimeDecrease
Click to see original Assessment 1 architecture diagrams image image image image

Method Selection & Planning

Deliverable:

Updated Assessment 1 Method Selection & planning PDF

Team 2 Plan1.pdf

Old Assessment 1 Method Selection & planning PDF

Old Plan1.pdf

Initial Plan:
To-Do List

image

Working Plan:

Click to see Assessment 1 Gantt Chart diagrams image
Click to see Assessment 2 Gantt Chart diagrams Screenshot 2025-12-06 133434

Risk Assessment

Deliverable:

Updated Assessment 1 Risk Assessment PDF

Team 2 Risk1.pdf

Old Assessment 1 Risk Assessment PDF

Old Risk1.pdf

Implementation

Deliverable:

Assessment 1 Implementation PDF

Old Impl1.pdf

Github Repository

New Assessment 2 GitHub Repository

github.com/KyberCrys/Team-2-Assessment-2-Engineering-Project

Old Assessment 1 GitHub Repository

github.com/hanap05/ENG1-Team-6-Game

Executable JAR

New Assessment 2 .jar executables

Linux (ubuntu) .jar executable
Apple (macos) .jar executable
Windows (windowsos) .jar executable

Old Assessment 1 .jar executable

eng1-maze-game.jar

Google Drive

New Assessment 2 Eng1 Cohort 3 Team 2
Old Assessment 1 Eng1 Cohort 3 Team 6