Archipelago/worlds/ladx/LADXR
threeandthreee e1a1cd1067
LADX: Open Mabe Option (#3964)
* open mabe option
swaps east mabe rocks for bushes

* add open mabe to slot data

* use upstream overworld option
Instead of a standalone option, use upstream's "overworld" option, which we don't use yet but it leaves better space for the future

* use ladxr_setting for consistency

* newline
2024-12-20 07:55:32 -05:00
..
locations LADX: Improve icon guesses for foreign items (#2201) 2024-12-13 22:49:30 +01:00
logic LADX: Open Mabe Option (#3964) 2024-12-20 07:55:32 -05:00
mapgen
patches LADX: Open Mabe Option (#3964) 2024-12-20 07:55:32 -05:00
.tinyci
LADXR_LICENSE
README.md
assembler.py LADX: Add "boots controls" option (#2085) 2024-04-14 03:21:55 +02:00
backgroundEditor.py
checkMetadata.py
entityData.py
entranceInfo.py
generator.py LADX: Open Mabe Option (#3964) 2024-12-20 07:55:32 -05:00
getGFX.py
hints.py LADX: Add Hints (#1932) 2023-07-14 03:14:04 +02:00
itempool.py
main.py
plan.py
pointerTable.py LADX: Text shuffle (#2051) 2023-11-22 08:29:33 -06:00
rom.py LADX: AP egg title screen (#1683) 2023-04-11 09:18:33 +02:00
romTables.py LADX: Fix hints generation for longer location names #2099 2023-08-11 10:56:36 +02:00
roomEditor.py
settings.py LADX: Open Mabe Option (#3964) 2024-12-20 07:55:32 -05:00
utils.py LADX: Added some resilience to non-ASCII player names (#2642) 2024-02-13 22:46:18 +01:00
worldSetup.py

README.md

Legend Of Zelda: Link's Awakening DX: Randomizer

Or, LADXR for short.

What is this?

See https://daid.github.io/LADXR/

Usage

The only requirements are: to use python3, and the English v1.0 ROM for Links Awakening DX.

The proper SHA-1 for the rom is d90ac17e9bf17b6c61624ad9f05447bdb5efc01a.

Basic usage: python3 main.py zelda.gbc

The script will generate a new rom with item locations shuffled. There are many options, see -h on the script for details.

Development

This is still in the early stage of development. Important bits are:

  • randomizer.py: Contains the actual logic to randomize the rom, and checks to make sure it can be solved.
  • logic/*.py: Contains the logic definitions of what connects to what in the world and what it requires to access that part.
  • locations/*.py: Contains definitions of location types, and what items can be there. As well as the code on how to place an item there. For example the Chest class has a list of all items that can be in a chest. And the needed rom patch to put that an item in a specific chest.
  • patches/*.py: Various patches on the code that are not directly related to a specific location. But more general fixes