Skip to main content

An open source randomizer patcher for Metroid: Samus Returns.

Project description

Open Samus Returns Rando

Open Source randomizer patcher for Metroid: Samus Returns. Intended for use in Randovania. Currently supports patching the following:

  • Starting Items
  • Starting Location
  • Pickups (Vanilla and Custom)
  • Items on Metroids
  • Shuffled DNA
  • Shuffled Baby Metroid
  • Elevator Destinations
  • Door Types
  • Configurable Final Boss

Installation and Usage

pip install open-samus-returns-rando

You will need to provide JSON data matching the JSON schema in order to successfully patch the game.

The patcher expects a path to a cia, 3ds, app, cxi or cci file of Metroid: Samus Returns as well as the desired output directory. Output files are in a format compatible with either Luma3DS or Azahar.

With a JSON file: python -m open_samus_returns_rando --input-path path/to/samus-returns/file.3ds --output-path path/to/the/output/mod --input-json path/to/patcher-config.json

Development

This repository uses pre-commit.

Native code patch development

The external/ directory contains the tools for compiling and patching the native 3DS code (via msr-remote-connector and magikoopa-py). These are managed as git submodules, so after cloning you need to initialise them:

git submodule update --init --recursive

See external/README.md for setup and build instructions.

Project details


Download files

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

Source Distribution

open_samus_returns_rando-3.6.0.tar.gz (672.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

open_samus_returns_rando-3.6.0-py3-none-any.whl (600.9 kB view details)

Uploaded Python 3

File details

Details for the file open_samus_returns_rando-3.6.0.tar.gz.

File metadata

  • Download URL: open_samus_returns_rando-3.6.0.tar.gz
  • Upload date:
  • Size: 672.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for open_samus_returns_rando-3.6.0.tar.gz
Algorithm Hash digest
SHA256 c764113e68d3f8357472ce1c8a87dc3f9343fee5d998c6f3206a6daa4b095688
MD5 bfcf035c32b23b002556e3fe791e4508
BLAKE2b-256 dc996675cc8540eb912ca7fdaee541d5f67aab09c54925c0a0257713c40af0c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for open_samus_returns_rando-3.6.0.tar.gz:

Publisher: python.yml on randovania/open-samus-returns-rando

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file open_samus_returns_rando-3.6.0-py3-none-any.whl.

File metadata

File hashes

Hashes for open_samus_returns_rando-3.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7513af39f378f1322ee4e554c10a27762abdf4d3ca41b0271846d4a9ae51b5d4
MD5 7c52f8a2d1c3e2ce75f285c5f9263ad1
BLAKE2b-256 8c0b9bb532fbca6af7a685ec677f1a89024e3294075e431ef37c645134036385

See more details on using hashes here.

Provenance

The following attestation bundles were made for open_samus_returns_rando-3.6.0-py3-none-any.whl:

Publisher: python.yml on randovania/open-samus-returns-rando

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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