Skip to content

Turn-based real-time-strategy (RTS) videogame university project inspired by Starcraft 1 - Developed with Java, JavaFX (for the UI) and JUnit (for the test suite) [2Q2022]

License

Notifications You must be signed in to change notification settings

gabrieldiem/AlgoStar

Repository files navigation

AlgoStar Banner

tp2 codecov es

Project 2 - Algorithms and Programming 3: AlgoStar

Project number 2 for the subject Algorithms and Programming 3 [75.07 - 95.02] Suarez's course 2Q2022 at the Faculty of Engineering of the University of Buenos Aires (FIUBA).

The documentation, variable names and functions names are mostly written in Spanish as it is the language the course is teached on.

Brief summary

This project consists of developing a turn-based game inspired by the famous video game Starcraft (hence the name Algo (Algorithms) - Star (Starcraft)). The game focuses on the war between empires, the clever use of strategy, and it is based on the construction and management of an empire. It consists of an OOP class model, sounds and a graphical interface, accompanied by a suite of unit and integration tests (game use cases). The implementation was written in the statically typed programming language Java, version 11.0.7. For the development of the solution model, object-oriented programming principles were applied and we worked with TDD (Test Driven Development) and CI (Continuous Integration) techniques, design patterns were also applied where deemed appropriate to solve a specific problem.

Group #5

Evaluator: Pablo Rodríguez Massuh

Software used

Software Version
Java SDK 11.0.7
JavaFX 19
JUnit 5.4
Maven 3.8.6

App

The most recent version of the app can be found in the releases tab and the jar file can be executed in Linux, Windows or Mac by running the next command:

$ java -jar <filename.jar>

For Windows users it is also provided a .exe executable file, also in the releases tab, that serves as a self contained version of the game, meaning you do not need a JRE (Java Runtime Environment) to run this file, it comes with it included. You just have to run it and it is playable.

Warning: The executable file may trigger a warning from your antivirus software. This is a known issue and it is caused by the fact that the executable is signed with a self-signed certificate. This does not mean that the file is unsafe or malicious. If you wish to proceed with running the executable, you may need to add an exception for the file in your antivirus software or disable the antivirus temporarily. We recommend only disabling the antivirus temporarily and after running the file, please remember to turn it on again. As a general rule, it is advised to only run executable files from sources you trust. I apologize for any inconvenience this may cause. If you have any concerns or questions, please reach out.

This Windows executable was made by creating a launcher for the .jar file with Launch4J and linking it with the corresponding JRE (version 11.0.18). Then this was bundled in a SFX (Self-Extracting Archive) file with 7-Zip and 7-Zip SFX Maker, resulting in a .exe file that extracts the JRE and the game itself to a temporary folder (in the Windows TEMP directory) so it can be run.

Development

Those interested in colaborating in this project can read the development guide.

Project Report

The project report can be found in the next link.

License

This project is licensed under the terms of the MIT license.

Images

Image 1

Image 2

Image 3

Image 4

Image 5

Image 6

Image 7

Third-Party Assets

This project includes images, visual content, music, and sounds derived from Starcraft 1.

Attribution

Certain images, visual content, music, and sounds on this videogame are derived from Starcraft 1 and are the copyrighted property of Blizzard Entertainment, a subsidiary of Activision Blizzard, Inc. All rights to these assets are fully reserved by Blizzard Entertainment. This project is not affiliated with, endorsed by, or associated with Blizzard Entertainment in any way. The use of these assets is intended solely for non-commercial purposes.

About

Turn-based real-time-strategy (RTS) videogame university project inspired by Starcraft 1 - Developed with Java, JavaFX (for the UI) and JUnit (for the test suite) [2Q2022]

Topics

Resources

License

Stars

Watchers

Forks

Languages