Skip to main content

Randomizer GUI to randomize the ROM of Pokémon Mystery Dungeon Explorers of Sky

Project description

logo

SkyTemple Randomizer

Build Status Localization Progress Version Downloads License (GPLv3) Supported Python versions Discord

Randomizer for Pokémon Mystery Dungeon Explorers of Sky.

It is available for Linux, macOS and Windows.

Downloads

Install on Flathub

Frontends

GTK frontend

When installing from source, you probably want to install the “gtk” extra (pip install -e '.[gtk]'), in order to have the actual GUI functional.

The GTK frontend requires GTK 4.14+, all related libraries and libadwaita 1.5+ to be installed.

When installing this way, the GUI can be started with skytemple_randomizer gui or python -m skytemple.randomizer.main gui. The command takes an optional argument, the path to a ROM to open.

Build

Install the required GTK and Adwaita versions. Under Windows, use gvsbuild in at least version 2024.4.0.

In addition to normally installing the Python package in dev mode, you also need to make sure you have all submodules checked out. After this you need to compile all MO files (localizations) and Blueprint Files to XML UI files. To do that:

  • Linux, possibly MacOS: make

  • Linux/MacOS without make: ./build-blp-to-ui.sh && installer/generate-mo.sh

  • Windows: .\build-blp-to-ui.ps1 with PowerShell and installer\generate-mo.sh with an MSys2 environment bash shell. Gettext must be available.

If you are working with the UI files you may want to use the Blueprint Compiler Language Server or setup file watchers to compile BLP files to UI files. More info about Blueprint Compiler can be found on its website: https://jwestman.pages.gitlab.gnome.org/blueprint-compiler/

CLI

SkyTemple Randomizer can be used via CLI. It’s available via skytemple_randomizer cli or python -m skytemple.randomizer.main cli.

Its documentation can be found in CLI_API.md.

API

You can also use SkyTemple Randomizer as a Python API. See the skytemple_randomizer.randomizer_thread for the entrypoint (specifically the class RandomizerThread). You will need to implement your own AbstractFrontend. The passed in Status object can be used to monitor the status of the randomization for progress display. See the GTK implementation for reference on how to use all of this.

See also

Source repository for the Flatpak: https://github.com/flathub/org.skytemple.Randomizer

Ko-Fi

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

skytemple_randomizer-2.0.0-py3-none-any.whl (3.1 MB view details)

Uploaded Python 3

File details

Details for the file skytemple_randomizer-2.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for skytemple_randomizer-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4e63ae621a2334d1791153e83a1eb4370acb668420e033bfb662a1975648aeec
MD5 7086f654b233eb35ce12c29a321ff4bf
BLAKE2b-256 cf1dfc9d6db6fef465e1ac21f928969feb7f49b20f82fe87d89822f1292aa123

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page