Welcome to Stick Hero, an exciting platformer game where you control Stick-Hero, navigating between pillars by extending a stick. Your objective is to collect cherries, reach the destination, and achieve the highest score possible. Embrace the challenge and enjoy the thrilling gameplay!
Check out our demo video on YouTube to see the Maze Solver in action: Watch the demo
-
Stick-Hero Control: Use keyboard input to stretch out a stick and bridge gaps between pillars.
-
Multiple Pillars: Navigate Stick-Hero through platforms of varying widths and heights.
-
Reviving Feature: Collect cherries to revive Stick-Hero once during gameplay. Cherries and related scores are deducted after revival.
-
Timing is Crucial: Time your stick extension carefully to land on the next platform. Failure results in Stick-Hero falling into the abyss, ending the game.
-
Collect Rewards: Flip Stick-Hero upside down to collect cherries and increase your score.
-
Scoring System: Aim for high scores by collecting rewards and challenge yourself to reach the top of the leaderboard.
- Use arrow keys or designated keys to control Stick-Hero's movements and stick extension.
- Collect cherries and bridge gaps between platforms to score points and avoid falling into the abyss.
To download and play Stick Hero, follow these steps:
-
Java IDE: Download and install IntelliJ IDEA (or use your preferred Java IDE).
-
JavaFX SDK: Download the JavaFX SDK from OpenJFX according to your operating system and Java version.
-
Clone the Repository:
- Open IntelliJ IDEA.
- Go to
File->New->Project from Version Control->Git. - Enter
https://github.com/shrutya22487/Stick_Hero.gitas the Git repository URL and clone the project.
-
Configure JavaFX SDK:
- Extract the downloaded JavaFX SDK to a preferred location on your computer.
- Open the cloned project in IntelliJ IDEA.
- Go to
File->Project Structure->Libraries. - Click on the
+icon and selectJava. - Navigate to the
libfolder of your extracted JavaFX SDK and add it as a library.
-
Run the Game:
- In IntelliJ IDEA, open the
Mainclass located in the project. - Configure the run configuration to specify the
Mainclass as the main class. - Run the
Mainclass to start playing Stick Hero!
- In IntelliJ IDEA, open the
- Abstract class : Menu has been made to provide the basic structure to all the menus in the game
- Polymorphism: The load_fxml method returns a value of type Menu which has been typecasted to the profile_select class( inherits Menu) this has been done wherever we need to use the controller class of the fxml.
- Junit testing has been used to test: ● If the program doesn't have a null profile ● Check if no profiles exist(the game has not been played even once) ● Check if the profile is being serialized and deserialized correctly ( the profiles are same or if there are changes in them)
- Singleton Design Pattern : The BeginScreen class has been made a Singleton object so as to ensure that only one Begin Screen can be created. As the other screens can exist in multiple quantities but the Begin Screen can only be one otherwise multiple games would be created which is not allowed.
- Decorator: the StickController2 behaves as a decorator by overriding the Mute method from the Menu class in order to add the functionality of pausing the sound effects related to growing of the stick and death.
- Sound Effects: background sound effects has been added, along with growing of the stick and when the player dies.
- A reviving feature has been added which will deduct 2 cherries and start the game again from the previous current_score again , note that if the number of cherries is less than 2 then this will not work.
- Saving profiles: the player can save new profiles and create new files, the respective files will be read each time the game restarts.
- MultiThreading: has been done in order to play music in the game.
Contributions are welcome! If you have ideas for improvements or new features, feel free to fork the repository and submit a pull request.
This game project is developed by Shrutya Chawla and Prakhar Aggarwal, inspired by the original Stick Hero game.






