Files
GGJ26/addons/maaacks_game_template/docs/UploadingToItchIo.md
minimata 44f251ed66
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 6s
Create tag and build when new code gets to main / Export (push) Successful in 1m1s
Basic game template addon
2026-01-30 19:45:56 +01:00

41 lines
2.0 KiB
Markdown

# Uploading to itch.io
This is a guide on using _Butler_ along with a _Butler Manager_ helper script to rapidly upload and deploy your builds to itch.io. It's useful for game jams!
## Butler
_Butler_ is a command-line tool provided by itch.io to upload content to project pages on itch.io.
Get it here: https://itchio.itch.io/butler
After installing it, run `butler login` and go through the login flow. You should only have to do this once.
_Butler_ automatically compares builds and only uploads what has changed, so the first upload will take the longest, but every upload after should be faster.
## Exporting
It is recommended to create an `exports/` directory for your builds, add the directory to your `.gitignore` file (if applicable), and also add a `.gdignore` file to the directory to avoid having Godot add `*.import` files to it as well.
## Butler Manager
This script provided at `addons/maaacks_game_template/extras/scripts/butler_manager.sh` can be used to rapidly deploy 4 different builds to your project page. Make sure you can run `bash` shell scripts on your OS. Copy the script into your `exports/` directory and mark it as an executable, if required.
Run the script with `./butler_manager.sh`. On the first run, it will ask for the destination for uploads. This is a combination of the page owner and the project's URL.
The Butler Manager will look for directories named the following:
- HTML5
- Linux
- Windows
- MacOS
Matching directories will be uploaded by _Butler_ to their corresponding channels on itch.io. They will then be processed by itch.io servers and eventually appear on the page (usually within 2 minutes).
The owner of the project page will also get a notification when the builds have finished processing.
You can re-run `./butler_manager.sh` right after an export from Godot to keep your builds synced.
## Automating export and publication
You can use Github Actions to automate these steps. Look into the `.git/workflows` folder [and this guide](./BuildAndPublish.md).