Commit Graph

284 Commits

Author SHA1 Message Date
Kevin Cathcart 793eaeed65 Create a utils file for low level helpers like path utilities 2017-12-02 16:38:35 -05:00
Kevin Cathcart 7b7dcc12c6 Restructure README.md
Make the readme less command-line focused, since non-technical users are
encouraged to use the GUI.
2017-12-02 16:38:35 -05:00
Kevin Cathcart 2a4f0c58a8 Update Appveyer to use better naming for msi and zip. 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
Kevin Cathcart 91c7fdaf2d Update Spec File 2017-12-02 16:38:34 -05:00
Kevin Cathcart 06dbbce2be Add Appveyor integration 2017-12-02 16:38:34 -05:00
Kevin Cathcart 4271b4430a Add pyinstaller bundle support
Will allow creating generating pre-made builds for windows that do not
require python to be already installed.
2017-12-02 16:38:34 -05:00
AmazingAmpharos 619ad5a716
Typo fix
Fix three typos, two in comments and one that broke triforce hunt mode.
2017-12-02 02:30:48 -06:00
AmazingAmpharos 97c7fdaf59
PoD mislabel/softlock fix
Two addresses for PoD item locations were reversed, causing items to be placed with incorrect assumptions. This fixes that problem.
2017-12-02 00:18:38 -06: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
AmazingAmpharos 595e2a20b0
Merge pull request #2 from KevinCathcart/Dev
Dev
2017-11-24 18:42:58 -06:00
Kevin Cathcart 424fc3e6c6 Create data subfolder in preperation for new features
Move base2current.json to this new subfolder
2017-11-23 12:38:28 -05:00
Kevin Cathcart d4052ab60a Use sys.exit instead of exit
The global exit function is designed only for the interpreter, so use
the correct one.

Also fix the plandomizer so it does not immediately error when run.
2017-11-19 16:00:26 -05:00
Kevin Cathcart 8158f5793d Rename Bottles for better display in spoiler logs 2017-11-18 20:56:45 -05:00
Kevin Cathcart 9d4d3b8456 Whitespace fixes
Removing trailing whitepace.
2017-11-18 20:43:37 -05:00
Kevin Cathcart 3e31502fc0 Add untimed OHKO mode 2017-11-18 20:36:42 -05:00
Kevin Cathcart b15cd2072e Refactored ItemList
It now has much less duplicated code, and a useful difficulty
abstraction.
No changes to pool results were made, and this was verified with
automated testing.
2017-11-18 18:21:31 -05:00
AmazingAmpharos 2b6d11bef3
Credits fix
The "Flute Boy plays again" text is supposed to refer to the item buried by the shovel, not the item given in the Dark World. Easy fix.
2017-11-14 04:25:12 -06:00
AmazingAmpharos 1752196f7f
Removing debug code
oops, wouldn't have hurt anything but good to remove it anyway
2017-11-13 16:33:38 -06:00
AmazingAmpharos cd803ffb53
Ganon flag fix
The correct address has been put in for this flag. Previously this conflicted with the 1/4 magic byrna spike cave damage.
2017-11-13 16:12:28 -06:00
AmazingAmpharos f9e7209a71
Bug fix for timed/triforce item pool
Apparently I don't know how to make subtraction commands. This has been rectified, and now the item pools should contain proper items instead of randomly selected "junk" items.
2017-11-13 16:11:35 -06:00
AmazingAmpharos 7e5edf87c2
Keysanity clarification
Clarifies how pendant and crystal dungeons are discerned in the keysanity mode.
2017-11-12 04:39:16 -06:00
AmazingAmpharos 399b83e6fe
Keysanity bug fix
This fixes the broken item menu in keysanity.
2017-11-12 04:38:41 -06:00
AmazingAmpharos 10d96bfa6c
Refactor bottle randomization
Bottle randomization refactored to be done on generation of itempool, not with the ItemFactory function. This allows difficulty settings to use different bottle pools more easily as well as allows the pedestal, credits, and spoiler logs to report bottle contents. Expert and insane difficulties deliberately set the same bottle content to all four bottles since the bottle limit is one in those modes so this only guarantees that all racers regardless of play sequence will get the same one free bottle content.
2017-11-11 20:22:44 -06: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 6c13056781
New parameter support
A one line change to make this file work with the existence of new parameters.
2017-11-11 18:43:02 -06:00
AmazingAmpharos 1f4470600c
Updating readme
The readme will not contain information about all the new stuff.
2017-11-11 18:37:58 -06:00
AmazingAmpharos 4bde13105e
Hard and above difficulty
Remove fairies from being pre-stocked in bottles on high difficulties
2017-11-11 18:10:34 -06:00
AmazingAmpharos 13197e4ffe
Timer display
Makes these two files support that setting. Also fixes a bug in the command line display for the timer settings.
2017-11-11 18:08:41 -06:00
AmazingAmpharos ff3420cab7
Timer display and balanced algorithm
-Makes this file support these too
2017-11-11 18:07:13 -06:00
AmazingAmpharos 17b18eb630
Timer display mode
-Adds support for the timer display mode
-Fixes the name for Link's House for insanity mode shuffle
2017-11-11 18:06:05 -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 ad047e6c9c
The last of the renaming
Courtesy of KevinCathcart
2017-11-11 18:03:42 -06:00
AmazingAmpharos 6644863007
Support overflow on hard and above
Added back in the normal number of progressive swords and bottles (and in the case of hard armor and shields) to the higher difficulties which will make it easier on average for players to find their earlier pieces of this equipment. Non-progressive alternatives were supported and set not to disrupt the average value of equipment. Hard still ignores progressive setting for armor since it doesn't change when players get armor upgrades (find one, get blue mail) but does allow non-progressive players to get the overflow item from the second armor discovery.
2017-11-11 15:47:44 -06:00
AmazingAmpharos a3ccc051f6
Ganon at Uncle softlock fix
-From KevinCathcart, this adds a new region to the world for the castle courtyard reachable from the exit to the uncle tunnel and from the upper ledge of Hyrule Castle but not the main gate. In effect, this changes nothing if Ganon is not at the uncle passage, and if Ganon is at the uncle passage, either Mirror + pyramid access, Master Sword, or a connecting cave to the upper ledge of Hyrule Castle will be required to access the main gate. This is necessary to fix a very rare softlock in which the player could defeat Agahnim, lose access to the Hyrule Castle main gate, and make the seed impossible.
2017-11-11 15:31:37 -06:00
AmazingAmpharos 9af7052e5f
Add balanced algorithm
-From KevinCathcart, adds a "balanced" algorithm that, in theory, fixes the dungeon bias of the v26/v27 algorithm while maintaining the desirable amount of randomness it provides.
2017-11-11 15:28:34 -06:00
AmazingAmpharos fe3bcd52a2
More difficulty features
-Properly set overflow counts and items for progressive equipment and bottles.
-Fairy fountains can no longer give free fairies on hard or above
-Shields now have hiked prices on hard and above consistent with vt rando
-KevinCathcart's new integer based writebytes functions are added for future backend use.
2017-11-11 15:25:56 -06:00
AmazingAmpharos 260a7072e0
Timed-OHKO and easy
-Dungeon item counts always displayed in easy mode if not also timed mode
-Timed-OHKO timer amounts updated to modern values (didn't actually measure out the red clock, set it to "large negative number" which should be functionally identical to the -32400 seconds that vt uses)
2017-11-10 04:50:50 -06:00
AmazingAmpharos cbb36fc5b3
New parameter support
Add support for new parameters
2017-11-10 04:18:39 -06:00
AmazingAmpharos a72097a52f
New parameter support
Add support for newly implemented parameters
2017-11-10 04:18:09 -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 0c0cd240ad
New File
This file contains the definition for the item pool generation function. I'm not going to sugarcoat this; what I wrote is a total mess. This considers all possible combinations between timed modes (two distinct sets of timers), triforce hunt, progressives on/off/random, and all five of the difficulty settings from the vt randomizer. Maybe it would have been better to just hardcode every combination as its own array instead of build smaller arrays and use some semblance of logic to piece them together, but this is what I did. I'm not satisfied at all with the ugly, ugly form of this code and hope to revisit later, but for now, it adds significant improved functionality.
2017-11-10 04:15:45 -06:00
AmazingAmpharos 168fd83c97
Fix for not placing Maps and Compasses
It turns out the previous rewrite actually disabled that flag completely in the v26 algorithm. This makes it work again (per KevinCathcart)
2017-11-10 04:12:49 -06:00
AmazingAmpharos 2bbba29497
Typo fix
A misplaced parenthesis is fixes, solving an old bug where spoiler logs couldn't be generated if Maps and Compasses weren't placed in dungeons (thanks KevinCathcart)
2017-11-10 04:11:40 -06:00
AmazingAmpharos 1b5ec76c8d
A few softlock preventions
-KevinCathcart's PoD small key fix for the back
-Per KevinCathcart, swordless mode now inherits open mode specific restrictions (per me, fixes a rare Hyrule Castle softlock scenario)
2017-11-10 04:10:30 -06:00
AmazingAmpharos 0ebeac5727
Many updates
-Set most flags for hard mode (todo: fix shield prices)
-Stop writing a flag that used to set pyramid respawns (it now messes with Cape quarter magic cost in the spike cave)
-KevinCathcart's checksum fix
-KevinCathcart fix for not placing Maps/Compasses
2017-11-10 04:08:59 -06:00
AmazingAmpharos f9b456313d
Credits and pedestal text
All filled in for every relevant item! I would like to improve this later in several ways, but for now, it's a lot better than allowing the defaults to be used.
2017-11-09 05:37:52 -06:00
AmazingAmpharos 990a466253
No filler in shuffled GT
This adds a check to adding filler into GT for the shuffle_ganon flag. If it is set, adding filler is skipped.
2017-11-09 04:46:59 -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
AmazingAmpharos 90f9046bda
Fix keysanity and older algorithms
-Fixes a wrong function call that made keysanity fail.
-Restores some logic in "key for key" situations that older algorithms relied upon, should slightly improve neutrality of key distribution even in v26 algorithm.
2017-11-09 04:34:29 -06:00