Skip to content

leonardcser/CS107-MP2-2020-V2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

0. CONTENTS OF THIS FILE

  1. INTRODUCTION
  2. CONFIGURATION
  3. CONTROLS
    3.1 Menu Navigation
    3.2 Game Navigation
  4. MENUS
    4.1 Main Menu
    4.2 Options
    4.3 Help
    4.4 Pause
  5. GAMEPLAY FEATURES
    5.1 Difficulties
    5.2 Player GUI
    5.3 Leaderboard
    5.4 Ghost Algorithms
    5.5 Score/Points System
  6. WALK THROUGH
  7. ADDITIONAL NOTES
    7.1 Issues with sound
    7.2 Issues with AreaBehaviour and actors
  8. FINAL WORDS
  9. REFERENCES
    9.1 Art
    9.2 Sound
    9.3 Animations
    9.4 Inspiration

1. INTRODUCTION

We are glad to present to you our project, SuperPacman. We added our own twist to the game, including menus, gameplay tactics and so much more.
This document explains everything related to the game and the CONCEPTION.md explains to code aspect of the game.

2. CONFIGURATION

  1. Open terminal and set directory to project root

  2. Execute play.sh

    • Option 1:
      bash play.sh
    • Option 2:
      /bin/bash play.sh
    • Option 3:
      chmod +x play.sh
      ./play.sh
    • Option 4: Run script on IDE

3. CONTROLS

3.1 Menu navigation

  • Press UP and DOWN arrow keys to move up and down the selection of options
  • Press ENTER to execute the current selection or to choose sub options
  • Press ESC to pause the game

Debug Mode
  • Pressing SHIFT + CTRL + OPTION together activates Debug Mode (can be activated only in menus), to turn it off, the game must be quit and reopened

3.2 Game navigation

  • Use UP, DOWN, LEFT and RIGHT arrow keys to move pacman
  • While in Debug Mode,
    • Pressing SHIFT + S to activate Speed mode (player movement is boosted). Speed mode can be turned off the same way it was turned on.
    • Pressing SHIFT + G to activate God mode (player becomes invincible). God mode can be turned off the same way it was turned on.

4. MENUS

4.1 Main Menu

Option Description
Play Starts the game
Options Shows the configurable options
Help Show help page
Quit Terminates the application
Leaderboard Shows leaderboard page with the 10 best games ranked by score
Credits Show the credits page

4.2 Options

Option Description
Difficulty Choose a game difficulty from Easy, Normal, Hard and Impossible
Show FPS Toggles the fps counter on and off
Sound Toggles the sound on and off
Glow effect Toggles the glow of sprites on and off
Camera smoothing Choose how the camera movement is smoothed (None, Smooth, Very Smooth)
Camera Shake Toggles camera shake on and off
Clear Leaderboard Clears the leaderboard and deletes tmp files linked to it
Restore to Default Resets the game options and deletes tmp files linked to it
Back Returns to main menu

4.3 Help

Option Description
More Provides a more detailed description

4.4 Pause

Option Description
Resume Resumes the game
End Game Ends the game without saving it

5. GAMEPLAY FEATURES

5.1 Difficulties

  • EASY
    • difficulty does not increase over time
    • ghosts move slowly
    • ghosts become frightened for 15 seconds
    • ghosts are not the smartest
  • NORMAL
    • difficulty increases over time*
    • ghosts move at a normal speed (16 to 12)
    • ghosts become frightened for 10 seconds (stays at 10)
    • ghosts are a bit smarter
  • HARD
    • difficulty increases over time
    • ghosts move at a fast speed, up to the same as the player (14 to 10)
    • ghosts become frightened for 8 seconds (8 to 6)
    • ghosts are smart
  • IMPOSSIBLE
    • difficulty increases over time
    • ghosts move at a super fast speed, up to a faster speed than the player (12 to 8)
    • ghosts become frightened for 6 seconds (6 to 4)
    • ghosts are even smarter

*(it increases the longer you stay in the same level and resets each time you go to another level)

5.2 Player GUI


5.3 Leaderboard


5.4 Ghost Algorithms


5.5 Score/Points System


6. WALK THROUGH

To complete the game you must finish level 3, by going through level 0, 1 and 2. You have 5 lives, and you must avoid the ghosts Each level has a certain task you must complete before you can advance to the next level:

Level How to complete
level0 Pick up the key
levelEPFL (bonus) Pick up all 4 keys
level1 Pick up all pellets
level2 Pick up all pellets and 4 keys
level3 Pick up all the pellets

Bonus Level: In level 0, you have the choice to go immediately to level 1 or to pass by the EPFL level. By passing though the bonus level, you can obtain more points, therefore a higher score. However, be prepared for this EPFL level or you will get caught off guard.

Objective: Pick up all pellets in each level and all the cakes to get the highest score. Time is being tracked so be fast! And most importantly... HAVE FUN!!! :)

7. ADDITIONAL NOTES

7.1 Issues with sound

You may experience issues with the audio of the game. The audio might make the game slow due to slow loading of audio files. For some computers the audio might not work. We asked how to solve this on Piazza. https://piazza.com/class/ketlp0hratwg5?cid=1983

To combat this problem, most of the audio has been compressed to its limits, and some code has been modified (see CONCEPTION.md). However, this was not sufficient, and audio processing is still very slow... Nevertheless, the game is still very enjoyable.

7.2 Issues with AreaBehaviour and actors

While playing the game, in some very specific conditions, behavior between actors can be skipped. Here is a better description of the problem on Piazza: https://piazza.com/class/ketlp0hratwg5?cid=2240

This can also happen while unregistering actors, making the cell in question contain the old behavior. To illustrate, when pacman dies, it can happen that the ghost who killed him might not leave the cell properly. Therefore, when Pacman comes in contact with the cell where he died, he dies again...

8. FINAL WORDS

We feel fulfilled as this project comes to an end. There is of course a lot of room for improvement, but completing this game allowed us to better understand so many concepts.
We would like to thank you for taking the time to go through our project. We rest at your disposal to answer any questions. Our e-mails: leonard.cseres@epfl.ch, karlis.velins@epfl.ch

We hope you enjoy the game,

Leonard and Karlis

9. REFERENCES

9.1 Art

9.2 Sound

9.3 Animations

9.4 Inspiration

About

MiniProject 2

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published