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.5.0.tar.gz (595.6 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.5.0-py3-none-any.whl (597.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: open_samus_returns_rando-3.5.0.tar.gz
  • Upload date:
  • Size: 595.6 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.5.0.tar.gz
Algorithm Hash digest
SHA256 7aa47e563f536a9cbf31e28d7cac71e997ee99559ffbc8b6b94788ceefa07f87
MD5 ccb0f26c227464b6ee3739a90e84e4bc
BLAKE2b-256 e955be83828e328466efcb4d06a7f3ac92a9679ec98d479aa4dcaec1b0c60c67

See more details on using hashes here.

Provenance

The following attestation bundles were made for open_samus_returns_rando-3.5.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.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for open_samus_returns_rando-3.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 724570a2fd3241a58f592ce7300bed25a3c82654f68b6126629353b1c9f73a7c
MD5 c080be4c646dd79118d5a20a9e812cd0
BLAKE2b-256 3f2a2f01eefdcbadfe23601880b03499496e95a0e451407ee4d00def558cb0bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for open_samus_returns_rando-3.5.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