https://github.com/mechanicalflower/magic_combo
:star2: Utilities for games project management
https://github.com/mechanicalflower/magic_combo
ci game-development gamedev godot godot-engine godot4 godotengine python reuse
Last synced: 4 months ago
JSON representation
:star2: Utilities for games project management
- Host: GitHub
- URL: https://github.com/mechanicalflower/magic_combo
- Owner: MechanicalFlower
- License: mit
- Archived: true
- Created: 2023-09-17T13:04:58.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-27T16:49:16.000Z (over 1 year ago)
- Last Synced: 2024-12-14T19:19:46.588Z (6 months ago)
- Topics: ci, game-development, gamedev, godot, godot-engine, godot4, godotengine, python, reuse
- Language: Python
- Homepage:
- Size: 113 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
README
# `🌟 magic_combo`


[](https://github.com/RichardLitt/standard-readme)
[](https://github.com/charliermarsh/ruff)
[](https://github.com/psf/black)
[](https://github.com/python/mypy)A collection of Python utilities for seamless
management of my personal games project in
Godot Engine.## About
This project is used to **develop, contribute**
**and manage** my game projects, but it's also
completely **optional**.### Develop, contribute and manage
The package is split into 3 parts:
- **tasks**, that is a wrapper around the Godot
binary. It's allow to automatically download
the version of Godot used by your game...
- **playbooks**, that is a suite of tasks. It's
useful to build your game from scratch, like
in CI.
- **scripts**, that is more random stuff, like
generate credits from a dep5 file, or bump
your game version in the Godot export preset
file.And the second goal of this package is to pin
dependencies use in my `.pre-commit-config.yml`
files.### Optional
I attach importance to being able to do
things without extra tools, so my personal
game projects used this package
to simplify some tasks, but if you know
how to use Godot you can do anything
with Godot.This project was born to localize
my scripts in one place rather than having
them duplicated in each project.## Install
This project uses [python](https://www.python.org/)
and [pip](https://pip.pypa.io/en/stable/).
Go check them out if you don't have them
locally installed.```
$ pip install magic_combo
```## Usage
To list all sucommands, run:
```
$ magic_combo --list
Subcommands:playbook.build Build godot game for Linux.
playbook.clean Clean combo, godot and plug caches.
playbook.export Release export for any platform.
playbook.run Build and run godot game for Linux.
script.add-config-to-github-env Add 'godot_version' and 'game_version'
to Github env.
script.bump-version Updates the game version for export.
script.generate-credits Generate a CREDITS.md file.
script.new Create a new godot game project, based
on MechanicalFlower/godot-template.
task.clean-combo
task.clean-godot
task.clean-plug
task.editor
task.export-release-linux
task.export-release-mac
task.export-release-windows
task.godot
task.import-resources
task.install-addons
task.install-godot
task.install-templates
task.makedirs
task.run-release
```And to run any subcommands, run:
```
$ magic_combo
```