Tech vs Cats is a non-profit 2D game written in C++ with the usage of Qt framework (5.15.2+). The game is designed for PC and Android phones.
Tech vs Cats is a Tower Defense game. This means that there is a number of roads that are followed by the enemies. Their aim is to attack the player's base, so the player, in return, must protect it - at all costs! To do this, you can build or upgrade existing towers, which shoot the enemies with the different missiles. The enemies would cast different spells on the towers and come in tight groups, hoping to breach the player's defences. To complete the level, you will need to destroy all of them.
The game is a team study project of the BSU Faculty of Applied Mathematics and Computer Science students (February-May 2020), developed by:
The music Crytek, Electronic Arts and Emad Yaghoubi was used in the software.
The development was finished in May 2020. The last version: 1.0.
In releases one can find the zip-archive with the program files needed to run the game on Windows, and the apk-file needed to install the game to an Android phone. To run the program on another OS, clone the repository and compile the game according to the instructions below.
To run the game on Windows, unpack the archive and run techvscats.exe.
To run the game on Android, install the apk-file.
The automatic build and static analysis run after every commit. Usually it takes up to three minutes. If the widget turns green, the commit has passed the checks. Otherwise some errors have occurred. To see the description of the errors, click on the widget. To see the build and checks results in other git branches, follow this link and choose the required commit.
Travis logs help to determine the step on which an error has occurred. The command that caused the error turns red:
make
: project build.cppcheck
: static code analysis.cpplint
: static code analysis.Messages about the build are printed before the result of running make
. Cppcheck
messages are printed after running cppcheck
. Cpplint messages are printed
after running cpplint
.
Cppcheck notes don't change the build status, but it is recommended to read an fix them if it is needed. Other messages can't be ignored.
To build the project with Qt Creator's QMake, clone the repository and run techvscats.pro.
It is recommended to build the project with GCC64 if you're using Linux, and with MinGW64 if you're using Windows.
The instructions on building the project for Android can be found in Qt documentation.
To edit the translations of the app you will need the Qt utilities lupdate, lrelease and Qt Linguist.
Sometimes you might want to work, for example, in Clion IDE, which doesn't support QMake. You will need to build the project with CMake, which takes a few additional steps.
First, clone the repository. You will need to edit the file CMakeLists.txt. Change the line describing the path to CMake config files contained in Qt. For example, as in the script in the repository,
set(CMAKE_PREFIX_PATH "~/Qt/5.14.2/gcc_64/lib/cmake")
If you work with Linux, the job is done. You can now import the project into CLion.
For Windows, do the following. Add the path to Qt compiler and libraries to the Windows variable Path. For example:
C:\Qt\Tools\mingw730_64\bin
C:\Qt\5.14.2\mingw73_64\bin
We recommend to move these lines to the top (beginning) of the value of Path. The reason is that Qt might be used in other software, so the paths to it might have been already present in Path. During the compilation the first found libraries are used, so some problems might occur if their versions differ.
After editing Path, reboot Windows. Then, we recommend to choose the Qt compiler in CLion (write the path to it to Settings - Toolchains). After that you can work with the project.
Note that some Qt features are not accessible via CLion, such as
Use the latest Qt version (5.15.2+) while building the project. Otherwise, the game won't compile for Android.