Skip to content

agi23-g8/peak-panic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Peak Panic

Peak Panic is a local multiplayer skiing game where you have to keep up the pace so you don't fall behind! Each player controls a character through their own phone by tilting it left and right.

A player is eliminated when going out of view of the camera. The camera will follow the leading player with a slight delay for letting players behind catch up. The slope is filled with obstacles such as trees and rolling snowballs that you have to avoid. Additionally, there are speed boosts placed around the slope that a player can pick up in order to gain an advantage. Let the fastest skier win!

This project was created during the second half of the DH2413 course at KTH during 2023.

For more information, pictures and videos, please visit our site https://agi23-g8.github.io/

🎮 How to play

For host

  1. Start peak-panic.exe
  2. Display game on big screen
  3. Click Start Race! button when enough people have connected

Tip: Hit R to restart the race at any time

For players

  1. Scan QR code with your camera app
  2. Wait for loading screen
  3. Accept any allow sensor popups (important)
  4. Enter a name and the game code
  5. Click connect

💡 Good to know

  • Do not lock your phone! Either don't have auto screen lock or simply hold a finger on the screen as you play.
  • Lock the phone rotation so it does not switch between portrait and landscape mode!

🛠️ Troubleshooting

All problems are fixed by restarting.

Game server

  • Press R to restart the game. Pressing R in the join game menu state will reset the game server and transfer to title screen. Use this when people cannot connect.

Mobile client

  • Refreshing the web browser solves all issues.

Known issues and requirements

  • Huawei phones are usually not compatible.
  • Must support WebGL v2.
  • The disconnect button on WebGL client does not always work. Refresh instead.

🔨 Building

Unity version: 2022.3.10f1

Peak Panic Game

  1. Set platform to Windows, Mac, Linux
  2. Include all scenes and set title-screen as index 0
  3. Build the game

WebGL client

  1. Set platform to WebGL
  2. Only include webgl-client and main scene
  3. Set webgl-client as index 0
  4. Build

The WebGL client is hosted through the Peak Panic repo, where the built WebGL version lies in the ./docs folder.

The main scene has to be included for networking purposes. Otherwise, the client will not be able to communicate to the server.

🏅 Credits