Fusion of Souls is a Roguelike Auto-Battler that adds a new level of difficult decision-making by allowing you to fuse units and items into a powerful hero opening up a whole new layer of strategy to the genre.
GitHub Actions are setup to build, test, and package the application. The packages are outputted for Windows, MacOS, Ubuntu, and RedHat and these are the packages used for release builds.
Primary Branches
current-release
must always reflect the code used to generate the currently playable version on Steam
next-release
must always reflect a mostly-stable, playable version of the game that players can opt-in to preview upcoming changes to the game.
working
is the mainline branch where continuous work is merged into from feature branches. This branch is likely to be unstable.Secondary Branches
v0.2.0
) are created off of one of the two release
branches when a release is being prepared. This makes it easy to not have to differentiate between minor or patch releasesFusionOfSouls-20
) are created off of either the working
branch for work on a future Minor release or off of a Version branch if prepping fixes for a patch releaseLet's say current-release
is stable at version 0.1.0
, next-release
is stable at 0.2.0
, and working
contains work that is being prepped for 0.3.0
Release to current-release
process
current-release
matching the current version in next-release
, let's say v0.3.5
in this casenext-release
targeting this new Version branchnext-release
is bumped to the next Minor version (0.4.0
in this example)current-release
If a patch is required for the Current Release
current-release
with the patch version bumped by 1 (e.g. v0.3.6
following example above)current-release
process aboveRelease/Patch to next-release
process
This mimics the current-release
process using the working
branch as the source of new code. The main difference is that the tag and release are marked as pre-release, and it's shipped to the Beta branch on Steam.