Exam Game: Robot-Platformer
User Guide
- Exam Game: Robot-Platformer
- How to Play
- Platformer:
- The player must use given actions, by clicking on their respective buttons at the bottom of the screen, to maneuver across the level, traversing platforms and obstacles to reach the portal.
- Each level provides an extra life that you can collect to give you another attempt.
- When the player falls out of the screen, or presses the restart button, the player will lose one life, and the level is reset.
- Difficulties
- Easy
- The player has infinite lives.
- Normal
- The player has 3 lives at the beginning, and will receive 3 additional lives at the beginning of each level
- Hard
- The player has 3 lives at the beginning, and will NOT receive 3 additional lives at the beginning of each level.
- Easy
- Actions
- Move Right
- This will make the player move right.
- Move Left
- This will make the player move left.
- Stop
- This will stop the player from all lateral movement, however, they can still move vertically, whether falling, or still ascending in the jump.
- Jump
- This will make the player jump into the air before beginning to fall. The player will maintain all lateral movement.
- Move Right
- Platformer:
References (I have added the links back here multiple times, I have no idea why they are disappearing, if they are not here when you check, well I don't really know what to do about it).
- actuallyKron. (2025, January 11). Protals Premium. itch.io. <https://actuallykron.itch.io/portals-premium>
- Atomic Realm. (2025, May 29). Mine Tileset. itch.io. <https://atomicrealm.itch.io/mine-tileset>
- Audeption. (2021, March 26). Flawless Victory Game Over (deep voice). freesound. <https://freesound.org/people/Audeption/sounds/564920/>
- brullov. (2024, January 31). Fire Animation - Pixel Art FX Sprites. itch.io. <https://brullov.itch.io/fire-animation>
- Chapman, H. (2023, March 12). How to Type the Infinity (∞) Symbol. ITPro Today. <https://www.itprotoday.com/microsoft-windows/how-to-type-the-infinity-symbol>
- CmdRobot. (2015, February 22). Text-Message or Videogame-Jump. freesound. <https://freesound.org/people/CmdRobot/sounds/264828/>
- Disagree. (2018, June 24). Running on ground. freesound. <https://freesound.org/people/Disagree/sounds/433725/>
- Halleck. (2007, January 26). record_scratch_short.wav. freesound. <https://freesound.org/people/Halleck/sounds/29938/>
- Jofae. (2016, October 25). Game Die. freesound. <https://freesound.org/people/Jofae/sounds/364929/>
- LilMati. (2020, April 29). Retro, Coin 06.wav. freesound. <https://freesound.org/people/LilMati/sounds/515736/>
- Lewis, I. (N.D.). SceneSwitcher.cs. MyLO. <no-link>
- Lewis, I. (N.D.). SceneSwitcherKeys.cs. MyLO. <no-link>
- NicoleMarieT. (2021, December 15). Pixel Heart Animation, 32x32, 16x16 (Freebie). itch.io. <https://nicolemariet.itch.io/pixel-heart-animation-32x32-16x16-freebie>
- plingativator. (2013, May 21). jawharp_boing.wav. freesound. <https://freesound.org/people/plingativator/sounds/188869/>
- Testard, L. (2025, April 23). Esquie's Nest - Esquie's Bath. Youtube. < >
- Tiny Worlds. (2023, July 21). Free Pixel Font - Thaleah. itch.io. <https://tinyworlds.itch.io/free-pixel-font-thaleah>
- Generative AI was used during the creation of this game for help with scripting. The AI used for help was Mistrel AI - Le Chat. Exact references to what AI was used for are strongly commented into the scripts themselves.
List of features implemented
- First is a note. I have implemented things very literally to what has been asked, not what necessarily makes sense for a video game. This is for the sake of being careful, and not wanting to accidentally assume something that I wasn't supposed to. For example:
- I only play a death sound on life lost (as asked). Since easy mode has infinite lives, and doesn't lose lives, there is no death sound when falling off the screen, running into a deadly obstacle, or restarting the level.
- The start screen stays for 2 seconds (as asked), but also has 1.5 seconds of animation play before it technically disappears.
- etc.
- Core Functionality
- Avatar moves (right) when action clicked
- When “move right” icon clicked, the player avatar moves to the right (3 marks). The icon disappears and can’t be used again (1 mark).
- Avatar moves (left) when action clicked
- When “move left” icon clicked, the player avatar moves to the left (1 mark). The icon disappears and can’t be used again (1 mark).
- Avatar stops when action clicked
- When “stop moving” icon clicked, the player avatar stops all horizontal movement (1 mark). The icon disappears and can’t be used again (1 mark).
- Avatar jumps when action clicked
- When “jump” icon clicked, the player avatar jumps (1 mark). The avatar keeps all horizontal movement it had before jumping (1 mark). Jump should only happen if the avatar’s base is touching a platform (1 mark). The icon disappears and can’t be used again (1 mark).
- Avatar reset
- Avatar resets when offscreen (2 marks?). Level actions reset (i.e. all powerups return and are functional) (2 marks).
- Avatar reaches goal portal
- When the avatar collides with portal (1 mark), show end-of-level UI (if implemented), wait for ~2 seconds (2 marks), then move to next level (1 mark).
- Avatar moves (right) when action clicked
- Extra Functionality
- Visual style and feel
- Up to you I guess.
- Avatar animation
- Avatar has different appearance when not moving (1 mark), moving (1 mark), and jumping (1 mark).
- Lives system
- Life is lost when avatar is reset (1 mark). Game ends when all lives used (1 mark), shows end-of-game failure UI, then returns to title screen (if implemented) with a delay or after a button is pressed (1 mark).
- Bonus lives
- Levels contain bonus life pickups that can be collected (1 mark) and increase the number of lives by one (1 mark).
- Sound effects
- Sound effects for moving, jumping, and stopping (1 mark); losing a life and collecting a life (1 mark); bouncing on a bouncy platform (0.5 marks); and reaching the goal portal (0.5 marks).
- Music
- Music plays throughout whole game (1 mark). Music doesn't stop or restart when level is changed (1 mark).
- Visual style and feel
- User Interface
- Title screen with difficulty select
- Title screen should allow starting the game (1 mark), optionally with three different difficulties (3 marks):
- Easy: infinite lives;
- Normal: 3 extra lives given at the start of each level; and
- Hard: 3 lives given at the start of the game, no extra lives at the start of each level.
- Didn't modify SceneSwitcherKeys, just started the same level scenes with different life values.
- Easy lives text doesn't seem to work in the browser (the infinity text) but it does work in the unity editor.
- Title screen should allow starting the game (1 mark), optionally with three different difficulties (3 marks):
- In-game UI
- Lives remaining (if lives system implemented) (1 mark), level name (1 mark), restart level button that also costs one life (if lives system implemented) (2 marks).
- Start of level text
- Display a message for 2 seconds containing the level number and title, and a brief description of that level's mechanics (1 mark). Doesn’t show when level is restarted due to avatar resetting (or restart button pressed) (1 mark). Animated (1 mark).
- End of level text
- Display a congratulations screen for 3 seconds after a level is completed (1 mark). Shows statistics about how many attempts were needed to finish the level, how long the final attempt took, and whether the bonus life was collected (3 marks). Animated (1 mark).
- Post-processing and time-scale
- Start- and end-of-level UI presents the level behind in a faded/blurred fashion (or some other appropriate effect) (1 mark) and stops time (1 mark).
- Title screen with difficulty select
- Level 1 - Default
- Functionality
- Simple level with no modifications.
- Functionality
- Level 2 - Deadly Obstacle
- Functionality
- Kills the avatar (including losing a life if the lives system is implemented) (1 mark) and restarts the level (after an approximately 1- or 2-second delay) (1 mark).
- Functionality
- Level 3 - Bouncy Platform
- Functionality
- Some platforms bounce the avatar when landed on (2 marks).
- Functionality
- Level 4 - Moving Obstacle
- Functionality
- Some obstacle(s) move (1 mark) along a predetermined path repeatedly (1 mark).
- I set this up similar to how the movement of cards work in my assignment 3 game. The obstacles don't move along a path the same as was done in tutorial with the moving spawner with two fixed game objects, and the spawner would travel between them, but the path is predetermined in code, its just the fixed objects are instead positions relative to the starting position of the obstacle, and it travels between those positions.
- Correct resetting
- When level restarts, the moving obstacle(s) return to the same starting location each time (1 mark).
- This part of this level's implementation was heavily assisted by generative AI (as commented in the script itself), I had it resetting to the original location, but it would teleport back to where it was already up to in the moving and continue from there.
- Functionality
- Level 5 - Invisible World
- Invisible objects
- Level still functions with invisible platforms and obstacles (1 mark). Some sort of rough indication where obstacles are (1 mark).
- The rough indication is an animation that controls the obstacle's opacity every 5 seconds, so wait 5 seconds and you will see the obstacles briefly pop up.
- Invisible objects
- Level 6 - Moon
- Moon Gravity
- Gravity is substantially less (1 mark). Player moves slower in the world (1 mark).
- Moon Gravity
Published | 8 days ago |
Status | In development |
Platforms | HTML5 |
Author | sammosenh |
Genre | Platformer |
Made with | Unity |
Leave a comment
Log in with itch.io to leave a comment.