Skip to content

A fun local multiplayer game comprising Pacman, Pinball and Space Invader

License

Notifications You must be signed in to change notification settings

LeeTeng2001/Pac-Pin-Pong

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Issues MIT License


Main Logo

Pac-Pin-Pong

A fun local multiplayer game comprising Pacman, Pinball and Space Invader into one
Learn about the game »

View Demo · Report Bug · Request Feature

Table of Contents

  1. About The Project
  2. Gameplay Demo
  3. Getting Started (Building & Exploring)
  4. Getting Started (Playing)
  5. Other ideas for the game
  6. Contributing
  7. License
  8. Contact
  9. Acknowledgements & Credits

About The Project

Recently I've been dabbling in Godot for quite a bit, it's a very capable engine for 2D and I really like static language that's why I've chosen C# as my project language, there aren't a lot of quality C# Godot demo out there that's why I've inclined to make one to contribute back to Godot.

My main inspiration came from this video by Alpha Beta Gamer, I think it's very clever to combine multiple childhood retro games into one that's why I wanted to challenge myself to recreate the same game.

You can do whatever you want with this project. Most of the assets and audio is created by me, when it's not, it's under cc0 license (like kenney explosion fx and some sound effect from freesound.org)

Built With ❤️ Using

Disclamer: I'm not affiliated with any of the companies I just think that they're great and they provide really valuable tools for me that's why I wanted to give them credit

Gameplay Demo

Getting Started (Building & Exploring)

Building

Just clone this repo and use Godot Mono to open the project folder "3 retro game in 1" and you'll be good to go. Check out Godot website if you don't how to setup mono environment

git clone https://github.com/LeeTeng2001/Pac-Pin-Pong.git

Exploring

'3 retro game in 1/Scenes/World.tscn' is the main entrance for the game, you can see examples like how player stats are stored, shader effects, ghost effects, power up and more!

Happy exploring!

Getting Started (Playing)

Download Instruction for MacOS

Because of the codesign issue on Mac, I recommend you to download the whole project and build it locally, otherwise if you know your way around you could download the latest release and code sign in order to play the game.

  1. Visit release page and downlaod the latest release (for example Pac-Pin-Pong-v1.0.0-macos.dmg)
  2. Open the dmg file and drag the Pac-Pin-Pong to your machine, preferably to /Applications folder
  3. Open the Terminal app and insert the following command, you can drag the application to the terminal to auto fill the <path-to-the-application>
    xattr -rd com.apple.quarantine <path-to-the-application>
    sudo codesign --force --deep --sign - <path-to-the-application>
  4. Double click the application to run

Download Instruction for Window

  1. Visit release page and downlaod the latest release (for example Pac-Pin-Pong-v1.0.0-window.zip)
  2. Extract the zip file, double click the exe file to play

Play on Web

  1. Visit itch io and hit play

Game Explained

I will refer left hand side player as player 1 and vice versa

Each player have two shoot buttons, one of them shoots the Space Invader bullet, the other shoots the Pacman towards the grid. In addition, there's also two sets of movement keys for each player, one of them controls the Pacman during his journey in the grid and the other controls the pinball pad movement.

The goal is to survive longer than the other player, every time you failed to catch the Pacman, run out of action time, collide with ghost without a buff, collide with bullets and etc. will deplete your health. You can also collect the points inside the Pacman grid to restore your health and bullets, successfully catching Pacman from the other player also restores health and bullets. At the same time, the Pacman points will make your Pacman moves faster which means it'll become really hard to control as time progresses.

Every time the game difficulty increases, the music will become more intense, as indicated by the VFX along with a Pacman map refresh. There's also powerup inside the grid that will either kill a random ghost, make them invisible, make you strong enough to eat them or a random effect.

It's best to experience it yourself! I have a blast playing this game with my friend.

Controls

Player 1
W, A, S, D to move the pinball pad
C, F, V, B to move the Pacman
E to shoot pinball bullet
Space to shoot Pacman
Player 2
Up, Down, Left, Right to move the pinball pad
K, M, ,, . to move the Pacman
' to shoot pinball bullet
Enter to shoot Pacman

If you find the control awkward you could always download the source file to change the controls internally, maybe I'll add a control panel in the upcoming release

Other ideas for the game

  • Camera shaking effect ✅
  • Configure current difficulty ✅
  • More sound effects ✅
  • Setting menu for adjusting game volume
  • Main menu for picking difficulty
  • AI opponent

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are welcomed.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Email: leeteng2001@sjtu.edu.cn

Project Link: https://github.com/LeeTeng2001/Pac-Pin-Pong

Acknowledgements & Credits