Huge Setting Update by Krafi on 10/17/23
This was made in the span of 8 Hours... STRIGHT!
This is a Python
project where you are a cube and you gotta survive the laser beams that go to with the music.
If you just want to know how to play the game, you can click here
stateDiagram-v2
Start --> GiveSong
GiveSong --> DownloadsSong
DownloadsSong --> GeneratesBeatMap
GeneratesBeatMap --> SelectDifficulty
SelectDifficulty --> CreatesGameScreen
CreatesGameScreen --> StartsGame
onGameStart --> ClearScreen
ClearScreen --> UpdatePlayerState
UpdatePlayerState --> UpdateLasersState
UpdateLasersState --> UpdateScore
UpdateScore --> DrawFrame
DrawFrame --> ClearScreen
onGameStart --> WaitForGameLoss
WaitForGameLoss --> ResetScore
ResetScore --> ResetSong
ResetSong --> ResetPlayer
When the main.py
file is opened, the game will ask for a link to a youtube video to play as the song. Then it will download the video and convert to mp3
using FFMPEG and converts the audio to a beatmap with timing for each laser to be spawned.
After the file generation, the game will ask for a diffuculty:
- Easy
- Medium
- Hard
and will spawn the lasers based on the diffuculty IE: Easy will spawn 1 per beat and medium spawns 2 and hard spawns 3. After x ammount of lasers spawned, it will spawn a special laser that will lock onto the players position to reduce 'camping' stratergy.
Inside GitHub, download the project of the code or click here.
Once you extract the files, open main.py
, If it closes as soon as it opens, you need to download the packages.
You can download Python
from the Windows Store or from the Python website, Either way download and install Python to make the project run.
No Longer Required, Packages Installed In Repo
Its very simple, you just open main.py
, and find a song that you want to play on youtube. Paste the link and select your diffuculty
The terminal might not let you paste links so use
ctrl + shift + v
Well this was just a fun project before the end of the year so perhaps? If I would update this in the future I would add the following
- Convert the menu from command promt to pygame,
- Highscore system
- Python → C++?