AmazingAmpharos
564495648d
Custom item pool feature
...
This is the starting point for the new custom item pool feature that will let users specify the item pool. It is functional, perhaps due for some minor tweaking and definitely needs more testing. The command line side is bad, just two parameters that hopefully don't do anything under any circumstance if the user tries to use them (don't really intend to support a command line version of this feature); maybe there's a better way to let the command line ER work in general without having any opportunity to activate this feature. The GUI should probably show the user the sum of the current item pool out of 153 so the user knows how to size the item pool more easily, but that's a todo.
2018-01-21 20:43:44 -06:00
AmazingAmpharos
9f76ab025b
0.5.2.1 new logic hash
2018-01-18 01:10:39 -06:00
Kevin Cathcart
9a2198ac8f
Bump version number & new logic hash
2018-01-07 04:49:47 -05:00
AmazingAmpharos
193b3323b7
Merge pull request #8 from KevinCathcart/Dev
...
Update through Bomb Shop in paths
2018-01-06 18:58:19 -06:00
Kevin Cathcart
a155d455bb
Add Bomb Shop to paths output if Pyramid Fairy Entrance is needed
...
Tweak internal handling of paths
2018-01-06 16:25:14 -05:00
Kevin Cathcart
a86573d529
Add an extra pass to get correct spheres after culling
...
For an example of a circumstance in which the existing code produces
incorrect spheres, consider the following item locations in the vanilla
entrance layout:
* byrna in sphere 0
* hammer in sphere 0
* gloves in sphere 0
* bottle in sphere 0
* bow in spike cave (sphere 1)
* cape in hype cave (sphere 1)
* flippers on bumper cave Ledge (sphere 2)
* lastly both Swamp and PoD are pendants.
Well the culling phase will remove Byrna, because cape is good enough to
still get the bow. But now the bow in sphere 1 depends on the cape also
from sphere 1.
2018-01-06 14:55:30 -05:00
AmazingAmpharos
398de826f8
Fastmenu update
...
Fastmenu is now a variable menu speed setting instead of an on/off toggle. This update reflects that and gives the player a lot of options for the particular setting (normal, instant, double, triple, quadruple, half). A smaller change in this update is removing quickswap and fastmenu from the output file name of the randomizer (reflective of how the adjuster allows them to be shifted freely anyway) and shortening the verbiage for when progressive settings are changed (quality of life change there).
2018-01-05 16:53:29 -06:00
Kevin Cathcart
79f1b0bbf3
Fix progressive requirements to respect overflow limits
2018-01-04 23:01:09 -05:00
Kevin Cathcart
c3bdef5c6c
Add a paths section to spoiler log
...
This section will contain the first path found to each location listed
in the spoiler log's walkthrough.
Also implemented is a performance enhancement that more than cancels out
any slowdown caused by the above code.
2018-01-04 22:58:56 -05:00
Kevin Cathcart
73ad4e5fbb
Fix balanced algorithm to actually use restrrictive fill for dungeon items
2018-01-02 21:19:18 -05:00
Kevin Cathcart
e3ac7ee4a6
VT28 update: Keysanity has dungeon items in normal item pool
2018-01-02 21:19:18 -05:00
Kevin Cathcart
3adf4fadd1
Partial vt28 logic update
2018-01-02 21:19:17 -05:00
Kevin Cathcart
823657bc26
Style fixes
...
A bunch of style fixes. Mostly white space and style import order
tweaks, but a few other stylistic changes are present too.
2017-12-17 17:05:39 -05:00
Kevin Cathcart
8b20e39588
Merge branch 'Dev' into sprites
2017-12-16 19:13:21 -05:00
Kevin Cathcart
6bd0664b7f
Preliminary bunny logic
2017-12-14 20:09:02 -05:00
Kevin Cathcart
073ab728c1
Rework how the main form handles sprites
...
makes the presence of a Sprite Picker screen more obvious
2017-12-08 19:29:39 -05:00
Kevin Cathcart
d31a7d6791
Preliminary implementation of new sprite screen
2017-12-08 10:36:44 -05:00
AmazingAmpharos
d9182a4adb
Updated version number and logic hash
...
Pretty self explanatory
2017-12-02 16:15:25 -06:00
Kevin Cathcart
793eaeed65
Create a utils file for low level helpers like path utilities
2017-12-02 16:38:35 -05:00
Kevin Cathcart
0de4a5857c
Preliminary msi support
...
Added a proper icon
Fix output directory for packaged builds
Added a button to open the ouput directory, and a button to open
documentation for packaged builds.
2017-12-02 16:38:35 -05:00
AmazingAmpharos
572cffc264
Add disable music feature
...
This is a feature the vt rando has that we haven't had until now. It was a fairly basic feature... though I confess I tested it minimally.
2017-11-28 04:54:14 -06:00
Kevin Cathcart
9d4d3b8456
Whitespace fixes
...
Removing trailing whitepace.
2017-11-18 20:43:37 -05:00
AmazingAmpharos
cde90cbc84
Update version number
...
Update the version number and logic hash for 0.5.0 release
2017-11-11 20:19:29 -06:00
AmazingAmpharos
a64fb33f4b
A little more polishing up
...
-Support for balanced algorithm
-Handle output file naming for new parameters
2017-11-11 18:05:06 -06:00
AmazingAmpharos
3b495dde1f
Maintenance
...
The itempool definition is moved to the new ItemList file to keep the main clean. Several function calls were adjusted to account for world having two new parameters.
2017-11-10 04:17:28 -06:00
AmazingAmpharos
3d60d3ab50
Keysanity in older algorithms
...
This just makes older algorithms use v26's dungeon item distribution if keysanity is enabled.
2017-11-09 04:45:13 -06:00
Kevin Cathcart
24b0c4a132
Rename forgotten location
2017-11-08 19:23:21 -05:00
Kevin Cathcart
17cd963665
Simplify the only-beatable mode.
...
This also makes it faster.
2017-11-05 22:08:36 -05:00
Kevin Cathcart
5b3d4449c1
Whitespace fixes
2017-11-04 23:54:35 -04:00
Kevin Cathcart
cdf04b8a45
The Great Renaming
...
This is the Great renaming. Renaming to match V27. I've renamed pretty
much all Item locations to match, with a small number kept deliberatly
deferent for clarity.
There is probably more renaming that should be done at the Enterance and
Region levels, but that can be done later.
2017-11-04 23:54:35 -04:00
Kevin Cathcart
f2ea4b6442
Implement Key-sanity
...
Still need to add documentation for this mode.
2017-11-04 23:52:57 -04:00
Kevin Cathcart
51a892e869
Enable fast menu
...
Fast menu is an instant-open menu. It is an alternative to quickswap.
2017-11-04 23:52:56 -04:00
Kevin Cathcart
9c6d649996
Updating logic and features to better match VT26
...
Updates include:
* Allow acticating tablets with hammer
* Remove 1/4 magic from the normal mode pool
* Incorporate OHKO compatible cape/cane-of-byrna requirements
* Upgrade Mirror Shield, Progressive Shield, and Bug Catching Net to
qualify as advancement items
* Allow Mirror shield as alternative to cape/byrna for Laser Bridge
* Prevent Waterfall Fairy from upgrading Boomerang or Shield
* Change PoD key logic to match VT26.
* Add restrictions on small key placement (to match VT26). I think these
restrictions may be redundant, but I'm adding them just in case any of
them are not.
2017-11-04 23:52:56 -04:00
Kevin Cathcart
fcc97cef81
Tweak fill algorithm to more closely match VT26
2017-11-04 23:52:56 -04:00
Kevin Cathcart
dcc34bd39f
Move item fill and distribution functions to new file
2017-11-04 23:52:56 -04:00
Kevin Cathcart
d78a3ce7a5
Add VT26 style shuffling of dungeon items
...
Also adds new VT26 algorithm type that uses this, and makes it the default.
the new type also includes the GT junk items randomization.
2017-11-04 23:52:53 -04:00
Kevin Cathcart
2e9814882e
Refactor dungeon and item classes to support VT26 style dungeon item shuffling
2017-11-04 14:28:48 -04:00
LLCoolDave
963ce00657
Fix typo in logic_hash.
2017-08-05 20:53:21 +02:00
LLCoolDave
1717511e76
Update version.
2017-08-05 17:52:30 +02:00
LLCoolDave
1d8f17de6f
Improve crystal placement algorithm.
2017-08-05 17:52:18 +02:00
LLCoolDave
8fbb6ba04e
Normalize filenames to better resemble the VT naming scheme.
2017-08-01 19:47:57 +02:00
LLCoolDave
b7a8cedf42
Improve information on selected options in spoiler.
2017-08-01 19:43:46 +02:00
LLCoolDave
9e05284df9
Update Rom and Version.
2017-08-01 19:26:06 +02:00
LLCoolDave
7187d63108
Add config option that can disable respawning at pyramid after death to ganon if he happens to be shuffled to elsewhere. Slightly untested, but should cause no harm.
2017-08-01 19:08:46 +02:00
LLCoolDave
abff299f25
Remove starhunt, replaced by triforce hunt. Change to match VT normal settings (collect 20 out of 30 pieces). Rename restrictive algorithm to vt25. Add crystals goal, which removes aga2 requirement for hurting ganon. No noticeable difference without --shuffleganon enabled.
2017-08-01 19:07:44 +02:00
LLCoolDave
91bee83de1
Add Chests in Waterfall of Wishing.
2017-08-01 17:25:08 +02:00
LLCoolDave
b6e0956fdb
Fix using wrong object type when placing crystals in dungeons behind ganons tower entrance.
2017-07-20 19:12:55 +02:00
LLCoolDave
037c643aab
Remove pre-filling of gtower with trash items to match vt25 implementation.
2017-07-20 11:22:35 +02:00
LLCoolDave
51943b17ef
Update Rom.
2017-07-18 13:42:33 +02:00
LLCoolDave
b6c4bf6bd6
Refactor spoiler generation for VT integration.
2017-07-18 12:44:13 +02:00
LLCoolDave
9105bd1a34
Specially placed Crystals need to be marked as events for sweep pickup.
2017-07-18 00:05:46 +02:00
LLCoolDave
0514ade3b3
Store Trock Back Entrance state so it can properly be copied between worlds for the playthrough.
2017-07-17 23:13:39 +02:00
LLCoolDave
1af6edf793
Update crystal placing logic to consider implications of --shuffleganon option.
2017-07-17 22:29:32 +02:00
LLCoolDave
1e644836bb
Add --shuffleganon option to include Ganon's Tower and Pyramid in shuffle pool.
2017-07-17 22:28:29 +02:00
LLCoolDave
132a264d8a
jsonout parameter now dumps to stdout instead of file.
2017-07-16 23:20:54 +02:00
LLCoolDave
33e166fb8c
Update version number.
2017-07-14 18:25:51 +02:00
LLCoolDave
83c448f14d
Introduce classes for Rom patching to enable json patch output for VT integration. Remove halfassed door frame overlay fixes (solved in randomizer rom now), make bonk prize shuffle optional.
2017-07-14 14:37:34 +02:00
LLCoolDave
c3854f4d2d
Move cmd entry point to EntranceRandomizer.py. Add very barebones tkinter Gui.
2017-07-14 14:34:33 +02:00
LLCoolDave
6b0a506b65
Update version number to 0.4.1-dev.
2017-06-24 19:11:59 +02:00
LLCoolDave
7bef9f6aaa
Add support for swordless mode.
2017-06-24 18:48:03 +02:00
LLCoolDave
acd54cbbff
Turn preplaced items into events to avoid double dipping on them when checking if game is beatable.
2017-06-24 11:11:56 +02:00
LLCoolDave
30bec2d7db
Update Readme to incorporate latest settings.
2017-06-23 22:57:40 +02:00
LLCoolDave
8f2e8505d1
Set restrictive algorithm to default and add flag for beatable only setting to seed hash.
2017-06-23 22:32:29 +02:00
LLCoolDave
28a2e3cf2d
Add flag to only check for beatable, not fully clearable configurations (only works with restrictive algorithm for now).
2017-06-23 22:15:29 +02:00
LLCoolDave
350c688d93
vt23 updates
2017-06-23 21:33:04 +02:00
LLCoolDave
4ec20fa997
Fix up TRock key rules. Should be good enough, may still prevent some valid fire rod/cane of somaria placements with shuffled entrances, but not a big deal I hope.
2017-06-23 21:32:31 +02:00
LLCoolDave
197b341940
Some fixups to restrictive algo
2017-06-23 19:07:34 +02:00
LLCoolDave
2308a96884
Add restrictive filling algorithm, which only restricts an item from being placed in a location if it would not be possible to beat the game if done.
2017-06-19 21:42:03 +02:00
LLCoolDave
a73dba985f
Make keys, pendants, crystals and agahnim fights "events", which we sweep for everytime we have new unlock potential. Simplifies searching for items significantly.
2017-06-17 14:40:37 +02:00
LLCoolDave
d853db308e
Fix flood algorithm not checking if item is valid for selected location.
2017-06-04 18:32:10 +02:00
LLCoolDave
e8cf884b7e
Set correct cutoff threshold for vt22 algorithm. Collect required location names for statistical analysis from playthrough calculation.
2017-06-04 16:15:59 +02:00
LLCoolDave
c3482bbd67
Adjust Rom name and identifier (for main screen hash).
2017-06-04 15:02:27 +02:00
LLCoolDave
a20eaae13f
Add support for starhunt and treasurehunt goals. Add timed difficulties.
2017-06-04 14:44:23 +02:00
LLCoolDave
4ed2a5b510
Add priority attribute to items. They are placed after advancement items, but before the rest. Ensures they are available even in seeds that overfill the itempool.
2017-06-04 14:43:13 +02:00
LLCoolDave
fd158e332f
Update to latest Rom and add writing support for timed modes and treasure hunt.
2017-06-04 13:10:22 +02:00
LLCoolDave
b87eb3891d
Allow option to suppress writing an output rom (for instance, for batch spoiler creation for statistical analysis)
2017-06-04 13:09:47 +02:00
LLCoolDave
94030f469e
Ensure we place all "nice" items first before placing the trash, making the filling better in cases where we exceed the itempool limit.
2017-06-04 13:09:11 +02:00
LLCoolDave
30f2c1746b
Implement new filling algorithms to hopefully avoid ice rod in trock biases.
2017-06-03 21:28:02 +02:00
LLCoolDave
52e172b8fa
Rename default entrance shuffle to vanilla.
2017-06-03 16:02:42 +02:00
LLCoolDave
7949da8d07
Patch from base J1.0 rom now.
2017-06-03 14:20:39 +02:00
LLCoolDave
1011618de3
Seeds should now get unique in game identifiers based on seed # and settings.
2017-05-30 07:33:23 +02:00
LLCoolDave
c58e63b695
Add support for custom Link sprites.
2017-05-26 18:39:32 +02:00
LLCoolDave
2f10495248
Improve debug logging.
2017-05-26 09:55:24 +02:00
LLCoolDave
f99d63b257
Ensure that playthroughs for Pedestal goal never lead to Ganon, even if it is the shorter goal. This only affects the spoiler playthrough output.
2017-05-26 09:53:34 +02:00
LLCoolDave
7076666dfc
Fix swamp palace fix not being copied when cloning world, leading to potential endless recursion on creating a playthrough if mirror is inside swamp palace.
2017-05-26 09:52:38 +02:00
LLCoolDave
8e7a8d7a8d
Use unique hashtable for entrance randomizer.
2017-05-25 21:41:37 +02:00
LLCoolDave
6ef621fe66
Shuffle the bottles you receive from a fairy exchange.
2017-05-25 17:52:31 +02:00
LLCoolDave
e4e0304b40
Refactored Locations, added heart beep setting.
2017-05-25 17:47:15 +02:00
LLCoolDave
bbd52c780d
Refactored Items to one concise table and factory. Added credits texts.
2017-05-25 15:58:35 +02:00
LLCoolDave
7af2425c9f
Add option to enable item quickswap with L/R
2017-05-25 12:50:42 +02:00
LLCoolDave
1630215a24
Add Prize Pack shuffling and standard/open mode rom switches. Can now work off one base rom.
2017-05-25 12:09:50 +02:00
LLCoolDave
4e6484dd1d
Experimental: Disable open door sprite overlays when exiting caves, which get totally misplaced with shuffled caves.
2017-05-22 23:21:37 +02:00
LLCoolDave
034715c4e1
Ensure that remaining items get placed if we run into a dead end while creating a seed.
2017-05-22 21:34:38 +02:00
LLCoolDave
090ea5282b
Add experimental insanity mode that shuffles crossworld. Mirror and Pearl are provided so fake LW/DW and bunny issues in filling logic can be prevented. Should work for now, but would be much more interesting with Pearl and Mirror in pool.
2017-05-22 19:52:50 +02:00
LLCoolDave
316ffc2117
Fix issue with rom writing when agahnim fix is applied in simple dungeon shuffle rules, where we swap trock ledge east with mimic cave to put agahnim in LW.
2017-05-22 19:51:57 +02:00
LLCoolDave
8a33bf9be1
Fix Hera Basement Item
2017-05-22 00:06:09 +02:00
LLCoolDave
3cab83f074
Improve Command Line Interface.
2017-05-21 16:30:21 +02:00
LLCoolDave
5c0a192eac
Update command line arguments to include new shuffle algorithms restricted and madness
2017-05-21 16:06:12 +02:00
LLCoolDave
0b0f43f5bf
Minor bug fixes, added text to all NPCs.
2017-05-20 20:03:13 +02:00
LLCoolDave
72947fa32f
Added Rom Patching and Command Line Interface.
2017-05-20 14:07:40 +02:00
LLCoolDave
f374c637c3
Fixed remaining key logic, correctly implemented sewers. Added support for other game modes, create playthrough.
2017-05-16 21:23:47 +02:00
LLCoolDave
abcacd36eb
First Iteration (can handle no glitches open/standard logic), WIP
2017-05-15 20:28:04 +02:00