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.1.0.tar.gz (384.1 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.1.0-py3-none-any.whl (163.3 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for open_dread_rando_exlaunch-1.1.0.tar.gz
Algorithm Hash digest
SHA256 09e80e366c827cc0b5e0d072cf851167f3cebe953a97fee0c55b172a42db15f7
MD5 f3847cd21e543460d278b1910524a8d9
BLAKE2b-256 df872e91bed0d3952cc71a5ca6097bfa25611b5bfb30a972be7c77d2225dff0a

See more details on using hashes here.

Provenance

The following attestation bundles were made for open_dread_rando_exlaunch-1.1.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.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for open_dread_rando_exlaunch-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f86426895c9baf1c48d4f685c5e764b55d4e1954f168e5602d875d1dd8155ed5
MD5 cf874ea4cee3c8723f61412aa639e3d4
BLAKE2b-256 b0cb2cda0e92cd7c4c39d18f101f779e951aa9099c1541f2dbec546ab8b0c79c

See more details on using hashes here.

Provenance

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