A simple game I made 😙 with ❤ using C++
Note
Bugs are expected 😉. This is in early stages of development. If you encounter any serious bug please report it 😅.
This will be my first platformer game. It will have features people take for granted like:
- Controlable Character
- Movements
- Run
- Walk
-
Crouch - Jump
-
Attacks(I support peece)-
Mele -
Dash -
Block
-
- Physics System (Box2D-v3)
- Animations
-
Enemy AI(I said I love pieas) - Level System (Not the best rn. Can improve on it)
- Music
- Background Music
- Player Music
- Fetched:
- Included:
- Needed: (Users need it by default)
- Others:
- Catch2 -- For unit tests (There are none, I just wanted to know how they work. But didn't know when to make them so I have no unit tests. But I have support for them)
Input | Control |
---|---|
'a' or Left | Left |
'd' or Right | Right |
Space | Jump |
Space while in air | DoubleJump |
Download from github releases:
Download the archive from releases section according to your OS and extract it.
Open a terminal inside the directory and run this command:
./bin/PlatformerExe
Note
If you run the executable from anywhere other than the root of the extracted directory you will not be able to load any of the assets (Images and sound files)
Install required dependency:
sudo apt-get update && sudo apt-get install -y libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev # In Mac you can use brew to install `brew install freeglut`
Clone the repo:
Either download the repo ZIP or clone and change to that directory by running this command:
git clone https://github.com/AnkushRoy-code/Platformer
cd Platformer
Configure CMake:
cmake -B $build -DCMAKE_BUILD_TYPE=Release -DENABLE_TESTING="OFF"
Compile:
cmake --build build --config Release
Executable is present in src/main/
inside the build directory with the name PlatformerExe
You can run that using this command:
./src/main/PlatformerExe
Note
If you run the executable from anywhere other than the root of the build directory you will not be able to load any of the assets (Images and sound files) present in the res
directory
I hope yours too looks like mine :)
And there you have it, everything I have to offer using my project! I hope you liked it 😄. And if you did please star my repo it gives me motivation to keep on imporving 🙃.
- Add Level system
- Add menu & save game state
- Add enemies 🤫
- Make the player customizeable
- Holding the space button does something weird 😵😵💫
- The player sometimes can float in the corner of the ground
Everyone is welcome to contribute to the code! You can also raise an issue, or suggest any features that you think would be great :)
This project is licensed under the MIT