Commit Graph

342 Commits

Author SHA1 Message Date
CaitSith2 9c50d0ba28 Allow for team shared unknown initial seeds. 2021-02-22 12:42:14 -08:00
CaitSith2 8dc2a5748c Allow for possible reuse of er layout
This is done by assigning a unique seed to each player who doesn't have one set.  er layout seed is output in spoiler log.
2021-02-20 12:01:38 -08:00
Fabian Dill c55cf28229 allow ER coop 2021-02-20 02:30:55 +01:00
pepperpow fca64f1177
Removes Flashing instances in game (#168)
* Added reduced flashing, triforce hud and cutscene options

* Corrected parameters and replacement order

* Mixed up rom byte

* Removed triforce hud, smoothed cutscene speed and reset tables

* Removed triforcehud line and added bird cutscene speedup

* Added options to yaml

* Added check for race rom generation (is not internal asm)

* Added options to GUI (check sprite adjust crash)

* Fixed inconsistency in setting weight

* A "slow" setting for the cutscenespeed (#1)

* Slow wall setting

* Slow wall setting

* Slow wall setting

* Slow wall setting

* Slow wall setting

* Slow wall setting

* Update playerSettings.yaml

* Remove instances of cutscene speed modification

* Changed command to remove to mitigate frame advantage

* Antiepilepsy enabled for default/race roms, param change, RTL byte

* Found a frame independent antiflashing patch for real

* Further ASM patching style

* Reduce these changes to just two bytes

* Added patches for Dark Mountain and Ether Flashing palette reveal

Co-authored-by: StructuralMike <66819228+StructuralMike@users.noreply.github.com>
2021-02-19 17:45:54 +01:00
Fabian Dill 0af77421fc remove fairy and big magic from bonk prizes in hard/expert
remove arrow prizes in retro when "g" is not toggled
rename "difficulty_adjustments" to "item_functionality"
2021-02-10 07:01:03 +01:00
Fabian Dill 96d544ac84 Speed up Progression Balancing, mostly by using generators and pre-sorts where the opportunity exists
In some cases multi-thousand element lists were created in-memory with near identical contents, per player, then discarded and reassembled.
Was testing against a case with 3 GB of additional memory use (50 players) which appeared to get stuck, but really was just very slow. This example case is fixed with these changes.
Additionally, progression balancing is now run after ShopSlotFill, so it is now "aware" of the changed progression shops can produce.
As well, special handling for keys was removed, as not all games will have the notion of keys.
2021-02-05 08:07:12 +01:00
Fabian Dill 88980fb3b6 Make playthrough text deterministic, by sorting alphabetically 2021-02-03 14:26:00 +01:00
Fabian Dill 5503547663 use less memory to assemble playthrough 2021-02-03 07:14:53 +01:00
Fabian Dill 07866bbd3c Speed up Playthrough creation 2021-02-03 06:55:08 +01:00
Fabian Dill 2352445146 Remove all uses of "item.priority" as the remaining fill algorithms don't need it anymore. 2021-01-30 09:57:25 +01:00
CaitSith2 5cc8dd2c71 Fix mistake made while reverting changes 2021-01-29 20:57:38 -08:00
CaitSith2 90c3fe9df3 Count take-any caves into final total. 2021-01-29 15:42:28 -08:00
CaitSith2 1d93952ef1 Revert part of a previous change 2021-01-29 13:49:17 -08:00
CaitSith2 7f74aa7cb0 Implement open_pyramid yaml settings 2021-01-29 13:27:42 -08:00
Fabian Dill 8ddb1ab614 create per-team enemizer calls 2021-01-27 02:39:12 +01:00
Fabian Dill a6dad66b59 Merge branch 'multishop' 2021-01-24 20:30:52 +01:00
Fabian Dill 441fa3e5db Allow Plando'ing Dungeon Prizes
There be dragons beyond this point.
2021-01-24 08:26:39 +01:00
CaitSith2 a2eb666ae9 Shop location sram offsets now fully static. 2021-01-22 07:08:50 -08:00
CaitSith2 6095cfc586 If any shop shuffle slots are defined, define ALL of them to avoid information leakage. 2021-01-22 05:40:50 -08:00
CaitSith2 bd4e062d8d Revert "Store region/item name/id maps in multidata"
This reverts commit 6f1fc2ad4e.
2021-01-21 22:45:21 -08:00
CaitSith2 6f1fc2ad4e Store region/item name/id maps in multidata 2021-01-21 19:38:41 -08:00
Fabian Dill 7e18f93a3a copy shop slots to new world 2021-01-19 01:03:32 +01:00
Fabian Dill b775bfa916 Merge branch 'main' into multishop 2021-01-19 01:02:57 +01:00
Fabian Dill e2075686c2 fix ItemPlando defaults 2021-01-19 01:02:03 +01:00
Fabian Dill 51692e7668 Merge remote-tracking branch 'origin/multishop' into multishop 2021-01-16 02:23:33 +01:00
Fabian Dill f3e686ba9a Move Shop related stuff to a Shops module 2021-01-16 02:23:23 +01:00
CaitSith2 0c1b679100 Whoops, fix for backwards cherry-pick 2021-01-15 17:07:18 -08:00
CaitSith2 94b56d10f5 Add shops / old man cave to multidata 2021-01-15 17:04:50 -08:00
Fabian Dill d214783932 If due to DR or Plando the world is not fulfilling access rules, default to can_beat_game for Shop Logic 2021-01-14 00:26:49 +01:00
Fabian Dill e8a57a4d24 Change hint for shop items to be "for sale"
Lock Dungeon Prizes, as they're not supposed to be moved by any swapping mechanic
2021-01-13 14:58:40 +01:00
Fabian Dill 32c5ee53e5 Test both item swap rules 2021-01-13 02:41:29 +01:00
Fabian Dill 0978daba69 Make sure shop slots obey accessibility rules.
The way this is checked is quite computationally expensive, should revisit later.
2021-01-11 19:56:18 +01:00
Fabian Dill 058436e47f shop cleanup and correctly backreference swapped items' locations
Also fixes a false reference in progression balancing from 2019 (swapped Location.item.location was not updated)
2021-01-11 13:35:48 +01:00
Fabian Dill 322feb37f0 remove removed shop locations from relevant caches 2021-01-11 04:06:25 +01:00
Fabian Dill 3a99aedf89 safer failure in case of no more candidate swaps 2021-01-11 02:55:32 +01:00
Fabian Dill f47fafe7e3 remove empty shopslots from regions 2021-01-11 02:48:57 +01:00
Fabian Dill f12259dd7d Simplify ShopSlot Shuffling 2021-01-10 19:23:57 +01:00
Fabian Dill 52d5b96435 optimize price conditions 2021-01-10 16:01:04 +01:00
Fabian Dill 3df7c360ef mark todo 2021-01-10 15:52:04 +01:00
Fabian Dill 36123308a6 Refine Shop Item Candidate picking 2021-01-10 15:50:18 +01:00
pepperpow 4250004f11 Added Shop ID constant and forfeit values 2021-01-10 05:11:45 -06:00
pepperpow 6d28978480 Prevent shop slots rebalancing each other + dungeon item criteria 2021-01-10 03:33:28 -06:00
Fabian Dill 2a0d1962f1 Tag version required for sending items out of shops 2021-01-09 18:11:24 +01:00
Fabian Dill 9fcb317aca convert potion_shop_shuffle into 'w' shop_shuffle flag 2021-01-09 17:53:38 +01:00
Fabian Dill e36c6e97c1 Merge remote-tracking branch 'pepper/multishop-all' into multishop
# Conflicts:
#	EntranceRandomizer.py
#	Rom.py
#	WebHostLib/static/static/playerSettings.json
#	data/basepatch.bmbp
2021-01-09 16:03:59 +01:00
CaitSith2 2891d575f0 Fix bug where you can force non-local triforce pieces on a local triforce hunt. 2021-01-05 09:56:20 -08:00
Fabian Dill bd86a07115 make random world targeting smarter, in only considering possible unfilled locations 2021-01-04 15:14:20 +01:00
Fabian Dill c24a376dd0 Always check for beatability, ignoring playthrough setting 2021-01-04 14:28:33 +01:00
Fabian Dill e7beb80219 Allow Mystery setting Misery Mire and Turtle Rock medallions 2021-01-02 23:00:14 +01:00
Fabian Dill be162f5b8d Connections Plando Support 2021-01-02 22:41:03 +01:00