Skip to main content

Exlaunch binary files for open-dread-rando.

Project description

Dread Remote Lua

A further modification of Dread depackager, that makes the game listen to a socket, running any lua code sent to it.

Original readme

dread depackager

A modification for Metroid: Dread allowing redirection of files from within pkg files to loose files in RomFS.

usage

dread deapackager expects a json file called "replacements.json" to be placed into the root of the RomFS directory for your mod, and the subsdk9 and main.npdm files in the exefs directory.

replacements.json can have two structures, and it will be automatically detected.

format 1 example:

{
	"replacements" :
	[
		"file1/path/within/pkg",
		"file2/path/within/pkg"
	]
}

with format 1, file1/path/within/pkg will be directed to rom:/file1/path/within/pkg when the game tries to open it from within a pkg, and instead will open it from the same path within RomFS.

format 2 example:

{
	"replacements" :
	[
		{ "file1/path/within/pkg" : "rom:/mymod/file1" },
		{ "file2/path/within/pkg" : "rom:/mymod/file2" }
	]
}

with format 2, the RomFS path is arbitrarily defined for any pkg file path, allowing for more flexible organization of the reaplced files in the finished mod

How it works

Dread depackager uses the filepaths listed in replacements.json to selectively replace paths in the game's path to crc conversion code. All file paths first pass through this function, and by hooking it and replacing the string, it can selectively redirect file paths into romfs

dread depackager uses a few libraries:

  • exlaunch, a code injection framework for switch executables. Its original readme can be found below
  • cJSON, a json parsing library written in C. Dread depackager uses a slightly modified version of this library.

Original exlaunch readme

exlaunch

A framework for injecting C/C++ code into Nintendo Switch applications/applet/sysmodules.

Note

This project is a work in progress. If you have issues, reach out to Shadów#1337 on Discord.

Credit

  • Atmosphère: A great reference and guide.
  • oss-rtld: Included for (pending) interop with rtld in applications (License here).

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_dread_rando_exlaunch-1.2.0.tar.gz (390.8 kB view details)

Uploaded Source

Built Distribution

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

open_dread_rando_exlaunch-1.2.0-py3-none-any.whl (165.6 kB view details)

Uploaded Python 3

File details

Details for the file open_dread_rando_exlaunch-1.2.0.tar.gz.

File metadata

File hashes

Hashes for open_dread_rando_exlaunch-1.2.0.tar.gz
Algorithm Hash digest
SHA256 b924d67c99a5614367229822d20865b8c883640c8c8e8cbd2a1a4d6c9a57cdc2
MD5 cebe891cbb43f8d41c55cbe0f2e51281
BLAKE2b-256 43d7beca22eb7f03dbc7176b56af6fefdf60fa4faf64d9dfe4d41be8f5f62bdb

See more details on using hashes here.

Provenance

The following attestation bundles were made for open_dread_rando_exlaunch-1.2.0.tar.gz:

Publisher: build.yaml on randovania/open-dread-rando-exlaunch

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_dread_rando_exlaunch-1.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for open_dread_rando_exlaunch-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d6b212c170b53d2a0606ef85eaaa32fb5989e41a74ace881b8fa6a59ef49f8ea
MD5 3067fe402f6e9ce497f92a49a11cf4f7
BLAKE2b-256 d84c5b62c550c1917b80a4409923aba426899201e9a56fcf6d9ea859519cc97d

See more details on using hashes here.

Provenance

The following attestation bundles were made for open_dread_rando_exlaunch-1.2.0-py3-none-any.whl:

Publisher: build.yaml on randovania/open-dread-rando-exlaunch

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