Documentation + User Guide


Assignment 4 Documentation

Final Game Comparison to Concept Document Vision

The final game presented is very similar to the vision laid out in the concept document. This is in the levels being of the same maze themed design, the characters being the same (Pacman and the ghosts), there still being a large variety of power-ups not seen in the original game, and the aim of each level still being to collect all of the coins. The final game also still sits easily in the action, adventure and maze genres, and the target audience is still the same, as outlined in the concept document. The basic story is the same as well although it is less prevalent in the game. This is due to this requiring far too many words and dialogue screens which would detract from the story, as the player would be far more likely to just skip these screens rather than read them. They would then miss information about the upcoming levels which could lead to frustration about not knowing what to do and the eventual quitting of the game.

A difference from the concept document is that the player is not customisable in the menu and this was due to time not permitting the implementation of this element. Another difference is the power-ups are used automatically rather than with keyboard input (except with the frenzy mode power-up) and this was to keep the speed on the game so there was always action occurring and not just the player going around the level finding a place to use the power-up. The frenzy mode power-up was kept this way because this gives it a use as a power-up to escape from the ghosts, rather than just to collect coins. A further difference is that the enemy behaviours don’t change as the levels progress. This was due to time constraints as the enemies use A-Star pathfinding which took time to implement so more enemies were added to each level rather than adding more difficult enemies. Another difference is the art style of the levels drastically changing. This was because the new art style provides greater contrast with each of the elements (coins, power-ups, player, ghosts) so these features stand out more. The new art style also looks more polished and the different tiles fit together far better as they were all designed with that in mind to fit this particular game. The new tiles were also able to be rotated easily and still look the same whereas the old ones were not and this made constructing the levels far easier.

 

Feedback Summary

During the testing session the feedback gathered around the controls of the game was that they were easy to understand and use. The aim of the game was also said to be obvious by all those who tested the game. This was backed up by observations made while watching the testers that none had any trouble with the controls or figuring out what they were meant to be doing. The feedback received about the power-ups consisted of statements saying there was good variety and that they were interesting and inventive as well as being a good original addition not in the original game. When watching the testers it was clear that the power-ups were the main point of interest in the game. As a result of this the level design was changed so the different power-up abilities were highlighted more and so they were necessary to complete the level rather than just an interesting addition. The favourite power-up of the people testing was the super speed power-up. A point of improvement suggested was that the power-up’s time remaining should reset when a power-up was collected while one of the same type was active. This was then implemented into the game.

The feedback around the art style was that it all looked consistent and that it suited the game. The testers particularly liked the power-up art. One point of improvement suggested around the art was that the font used could be more suited to the style of the game. This was then addressed and the font was changed to a more suitable 8-bit style font that fits more with the style of the game.

The main point of feedback from the testers was that the game was too easy. This was also observed by watching the testers as they were able to stay in one position and wait for the enemies to go past rather than having to react to them and have them be a genuine threat to the player. This was then addressed by adding the seek and pursuit behaviour to some of the path following enemies using the already implemented A-Star system so there would always be pressure on the player to keep moving. Another change as a result of this was to change the level design so there were less paths and a greater chance that the player could be boxed in by the ghosts as there were fewer options to escape the enemies.

The only bug found by the testers was that the frenzy mode power-up ended when another was collected. This was then fixed so the ability was not lost when another of these power-ups was collected while it was active. Another improvement suggested by the testers was that the score shouldn’t be able to go negative. This was then implemented. The final improvement suggested was that the player should not be able to die straight after respawning as they are able to respawn on top of an enemy, making them lose all their lives at once. In response to this it was made that the player would have three seconds of invincibility after they respawned where they could not be killed to get away from any enemies that are so close to be unavoidable.

 

Asset List

Scripts

All of the scripts used (except PreLevel and Story) are based upon those found in the practical exercises but have been modified significantly in many cases.

  • AStarHelper 
    • (Assists with the A-Star pathfinding)
  • DestroyOnCollision 
    • (Destroys the player when they hit a ghost unless they are invincible. Custom physics shapes used for collisions was done using a modification of code found here: (Sprite Editor: Custom Physics Shape, 2018))
  • DestroySelfAndKillOtherOnCollision 
    • (Destroys a bullet when it hits anything)
  • DrawHelper 
    • (Controls drawing a cube for debugging A-Star)
  • EightWayAnimation 
    • (Controls animation)
  • EndGameListener 
    • (Determines if the player is dead or has collected all coins and ends the level)
  • EnemyFaceDirection 
    • (Controls what enemy sprite is active based upon direction they are travelling)
  • EnterHighScore 
    • (Enables the player to enter a high score)
  • ExplosionOnDestroy 
    • (Produces an explosion when an object is destroyed)
  • GetHighScore 
    • (Gets the current high score)
  • GetHighScorer 
    • (Gets the current high scorer)
  • HighScore 
    • (Stores the level number, high score and high scorer persistently through the levels)
  • IPathNode 
    • (Stores the connections and positions of the path nodes)
  • MoveInXDirection 
    • (Moves the game object in the x direction)
  • Mover 
    • (Controls how the game object moves)
  • NodeGenerator 
    • (Generates the A-Star path nodes in each level and connects adjacent nodes to each other)
  • PathFollower 
    • (Controls how the enemies follow the A-Star path)
  • PathNode 
    • (The path node for the A-Star path following)
  • PlayerCollectScore 
    • (Controls the player’s scoring)
  • PlayerMovement 
    • (Controls how the player moves and power-up and coin interactions. Interaction with tilemaps done using a modification of code found here: (Xin, 2017))
  • PlayerShoot 
    • (Creates bullets on key input when the player is able to shoot)
  • PreLevel 
    • (Controls the text for the story before the first level (not in practicals))
  • QuitGame
    •  (Quits the game)
  • SceneSwitcher 
    • (Changes active scene)
  • Story 
    • (Controls the text shown after each level (not in practicals))
  • UnitySingletonPersistent
    •  (Enables persistence throughout scenes)
  • Utils 
    • (Gets screen coordinates in world space)
  • WrapAround 
    • (Controls the player’s wrap around behaviour) 


Sprites

Many of the sprites have been obtained from external sources cited with them below. All the power-up and all the wall tile sprites are custom made in Microsoft Paint for this project with no external assistance.

  • Pacman spritesheet 
    • (Obtained from: (Game Development, 2020))
  • Ghost spritesheet 
    • (Obtained from: (Pac-Man Ghost Sprites, 2020))
  • Coin 
    • (Obtained from: (Koreon, 2018))
  • Cover picture 
    • (Obtained from: (8 Things You Didn’t Know About Pac-Man, 2020))
  • Bullet 
    • (Obtained from practicals)
  • Explosion 
    • (Obtained from practicals)
  • Wall sprites 
    • (No external assistance)
  • Power-up sprites 
    • (No external assistance)


Fonts

The fonts used have been obtained from external sources cited with them below.

  • 8-Bit Font 
    • (Obtained from: (Connection Font, 2019))
  • Title Font 
    • (Obtained from: (Press Start Font, 2019))

User Guide

Game Name

Ultimate Pacman

Game Description

In Ultimate Pacman the player must navigate through seven maze levels while battling ghosts and collecting insane power-ups with the purpose of reclaiming their stolen coins. Once all the coins in a level are collected the level will be completed. The player has three lives for each level. If they lose a life they will have three seconds of invincibility after they respawn to escape from any nearby ghosts. When a power-up is collected while the same one is active the duration remaining will be reset.

Controls

Use the arrow keys or wasd to move Pacman around each level. Use the m key to activate the frenzy mode power-up once it has been collected. Use the space key to shoot once the shooting power-up has been collected. Press enter to continue from from story scenes.

Game Screens

Title screen containing a start game button which starts the game by showing the pre first level story screen, a high score button which navigates to the high score screen, and a quit game button which exits the game.

 

High score screen which shows the high score and scorer and has a button to go back to the title screen.

 

Pre level screen which contains information for the player about the story and aim of the game, as well as how to complete each level and the controls. The first level can be started from there by pressing the enter key.

 

Story screens which introduce any new elements in the upcoming level and the next level can be started from there by pressing the enter key.

 

Level screens which contain the current score, lives remaining and the level number along the top of the screen. The level maze is then under that and it contains the ghosts who spawn in the centre of the level, the player who spawns under the ghost’s spawn location, power-ups distributed throughout the level, and coins on each path space unoccupied by the player or any of the power-ups.

 

End of game screen providing feedback to the player as to how well they performed, either game over, ghosts defeated, ghosts defeated with high score, or game over with high score. The screens that indicate the player did not get a high score have a button to return to the title screen and the other screens have an input field where the player can put their name in if they got a high score. The player can then press enter once they have entered their name to go back to the title screen.

 

Power-ups

Super Speed

The super speed power-up allows the player to move much faster around the level for ten seconds. This power-up being active can be seen by the player being red and having a trail.

Through Walls

The through walls power-up allows the player to move through any of the inner walls for ten seconds. After this time elapses the player will be put onto the nearest path square. This power-up being active can be seen by the player being green and having a trail.

Invincibility

The invincibility power-up allows the player to destroy any ghost they hit for extra points for ten seconds. This power-up being active can be seen by the player rapidly changing colour and having a trail.

Shooting

The shooting power-up allows the player to shoot Pac-bullets at the ghosts for ten seconds. Each time a Pac-bullet hits a ghost it will destroy the ghost who will then respawn in the centre and the player will receive extra points. This power-up being active can be seen by the player being orange and having a trail.

Frenzy Mode

The frenzy mode power-up when activated moves the player randomly around the level for ten seconds collecting coins all the time. This power-up being active can be seen by the player being dark purple and having a trail.

 

References

Code Avengers. 2020. Game Development. [online] Available at: https://www.codeavengers.com/teacher/game#6.2 [Accessed 27 August 2020].

2019. Connection Font. [online] Available at: https://www.fontspace.com/connection-font-f26375 [Accessed 9 October 2020].

Found Item Clothing. 2020. 8 Things You Didn’t Know About Pac-Man. [online] Available at: https://www.founditemclothing.com/blogs/it-goes-to-11/8-things-you-didn-t-know-about-pac-man  [Accessed 28 August 2020].

Koreon, 2018. Coin Sprite Sheet. [online] Available at: https://www.pixilart.com/art/coin-sprite-sheet-c7f297523ce57fc [Accessed 11 September 2020].

2020. Pac-Man Ghost Sprites. [online] Available at: http://pixelartmaker.com/art/cbacdb54a4bb09f [Accessed 23 September 2020].

2019. Press Start Font. [online] Available at: https://www.fontspace.com/press-start-font-f5841 [Accessed 9 October 2020].

Unity Documentation. 2018. Sprite Editor: Custom Physics Shape. [online] Available at: https://docs.unity3d.com/Manual/CustomPhysicsShape.html [Accessed 11 September 2020].

Xin, C., 2017. [online] 2D Tech demos. Available at: https://github.com/Unity-Technologies/2d-techdemos/blob/master/Assets/Tilemap/Brick/Scripts/Ball.cs [Accessed 11 September 2020].

Leave a comment

Log in with itch.io to leave a comment.