2D Platformer Game for Teaching Game Hacking.
Language: C++
Engine: Cocos-2dx
Platforms: Windows, OSX, and Linux
Steam Page / Discord: https://discord.gg/3maVXN5
To show support and help us finish development, get the game on Steam.
For those that wish to help with development, just hop over to the Issues tab and look for things to improve:
Issues |
---|
Easy |
Intermediate |
To edit maps, download Tiled. Maps are kept in Resources/Public/Platformer/Maps/*.tmx.
To minimize cross-platform effort, we develop Squally using VsCode with the following extensions:
- C/C++ for Visual Studio Code
- CMake Tools
- (Mac only) CodeLLDB is recommended, as this debugger works better than the default. Just be sure to go into Debug > Breakpoints > Disable C++: on throw
You will also need the following software to compile the project:
-
Cmake (The CMake Tools extension does not include the cmake binaries)
-
Python 2.7.x or 3.x -- all scripts should be compatible with either version.
-
Mac Software:
- brew install cmake
- brew install ninja
- brew install freeglut
Squally is comprised of several subrepos, including:
- Cocos2d-x
- Spriter2d-x / SpriterPlusPlus
- Breakpad / AFNetworking
- SquallyResources* (Not public, copy this from Steam library)
Linux Release These steps are only for compiling Squally specifically for RELEASING to Steam. Linux is agonizing torture, but the steps are as follows:
install podman (apt-get or whatever)
run podman pull registry.gitlab.steamos.cloud/steamrt/sniper/sdk
cd into Squally
modify ./proj.linux/LoadSteamRuntime.sh
to point to your Squally directory. Then pick which directory to mount it to in the Steam Runtime.
Run ./proj.linux/LoadSteamRuntime.sh
cd into the mounted Squally directory
run mkdir build
run cd build
run cmake ..
run cd ..
run cmake --build ./build
Important: We do not have the legal rights to distribute the art/sound in Squally. To get a copy of the Squally/Resources/Private
folder, copy it from a purchased copy of the game. See the section below for details.
To do a fresh build and pull in dependencies:
git clone git@github.com:Squalr/Squally.git
cd Squally
git submodule update --init --recursive .
From here, simply open the Squally/ folder in VsCode and compile using one of the following:
- OSX: Clang 7.0.x
- Windows: MSVC (VS2019 x86)
- Linux: GCC
To update dependencies later:
git submodule update --init --recursive .
We could not include the Squally/Resources/Private
folder in this repository, because a lot of the art in this game comes from asset stores. This means we have non-exclusive rights to the art, and cannot redistribute it for free. This means the Resources must be copied from a legally purchased copy of the game.
The Squally/Resources/Private
folder in the Steam copy of Squally will correspond to the master branch of this repository.
Learning game hacking? Check out content from our partner Guided Hacking