fres-sudo / formula1

Formula 1 πŸŽοΈπŸ’¨ (Vector Rally) Java and JavaFx implementation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Contributors Forks Stargazers Issues MIT License LinkedIn

Formula 1 πŸŽοΈπŸ’¨

Preview

Formula1 is a JavaFx desktop application that allows users to recrate the old paper and pencil vector rally

  • The application allows user to start a game and play against 3 bots.
  • The application keep track of the time (in seconds) elapsed from the beginning of the race.
  • A race only have one lap.
  • Both bots paths and track can be uploaded via json files.

(back to top)

Built With

java

(back to top)

Examples

  • To start a new game just move the player in one of the near 8 buttons available to make it move.

  • The game follows the rules of the original vector rally:

    • Each turn you can speed up (accelerate), slow down (decelerate) or maintain the same speed. When you accelerate from the starting point (the gray cross on the left), you start by moving 1 square. The next turn you move 2 squares, then squares, and so on. So when accelerating you increase the number of squares by 1 each turn.

    • When decelerating you do the opposite, you decrease the number of squares by 1 each turn. So when you move 5 squares, the next turn you move 4 squares, then 3, and so on, until you come to a stop. You can also choose to maintain the same speed by moving the same number of squares as on the previous turn.

  • If a player goes above the limit of the track, it is consider a crash and the game will restart.

  • The first player taht make a lap win the race and the game restart itself.

  • The user can easly force restart the game by pressing the red button.

See the open issues for a full list of proposed features (and known issues).

(back to top)

Getting Started

Follow these steps to setup the project locally on your machine.

Prerequisites

For a correct installation of the project make sure to have both Java and Gradle installed on your local machine. These are the minimum version required for the project:

JVM 21+

Gradle 8.5+

To check the correct installation of both software please run:

  gradle --version

Installation

  1. Clone the repo
    git clone https://github.com/fres-sudo/formula1.git
  2. Build the project
    gradle build
  3. Run the project
     gradle run

(back to top)

Contributing

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

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  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

(back to top)

License

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

(back to top)

Contact

Project Link: https://github.com/fres-sudo/formula1

(back to top)

About

Formula 1 πŸŽοΈπŸ’¨ (Vector Rally) Java and JavaFx implementation

License:MIT License


Languages

Language:Java 96.5%Language:CSS 3.5%