Fabian Dill
1288f15e45
Core: Fill fix local logic conflict ( #1271 )
2022-11-28 07:03:09 +01:00
Doug Hoskisson
f298b8d6e7
Zillion: validate rescue item links ( #1140 )
2022-10-28 21:56:50 +02:00
Fabian Dill
b57ca33c31
Logging: more digits for IDs and counts ( #1141 )
...
* Logging: we now need 9 digits for IDs
* Logging: we now need {dynamic} digits for IDs
* Logging: we now need {dynamic} digits for counts
2022-10-27 09:18:25 +02:00
Fabian Dill
b533ffb9e8
Locality: rewrite for linear memory consumption, from quadratic ( #1091 )
2022-10-17 03:22:02 +02:00
Jarno
e708bea819
[Sudoku] Added new BK mode game ( #910 )
...
Co-authored-by: Hussein Farran <hmfarran@gmail.com>
Co-authored-by: SoldierofOrder <107806872+SoldierofOrder@users.noreply.github.com>
2022-10-13 07:55:00 +02:00
Fabian Dill
c2d69cb05e
Core: add generic interface to add ER data to hints ( #1014 )
2022-09-18 14:30:43 +02:00
Fabian Dill
4a2a184db1
Core: remove game-specific arguments from Generate ( #971 )
...
Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com>
2022-08-30 17:12:33 +02:00
black-sliver
ffe528467e
Generate: remove period for easy copy&paste
...
Double-clicking in terminal may select the period, resulting in a bad filename in clipboard.
Also fixing quotes.
2022-08-11 01:06:43 +02:00
Fabian Dill
21f7c6c0ad
Core: optimize away Item.world ( #840 )
...
* Core: optimize away Item.world
* Update test/general/TestFill.py
* Test: undo unnecessary changes
* lttp: remove two more Item.world writes
Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com>
2022-08-05 17:09:21 +02:00
Fabian Dill
73fb1b8074
Subnautica: updates ( #759 )
...
* Subnautica: add more goals
* Subnautica: fix wrongly positioned Databox
* Subnautica: allow techs to remain vanilla
* Subnautica: make zipimport compatible
* Subnautica: force two Seaglide fragments into local sphere 1
2022-07-15 17:41:53 +02:00
alwaysintreble
122590fc68
lttp: move open pyramid to new options system ( #762 )
2022-07-14 09:39:53 +02:00
Fabian Dill
b86ee20f3f
Core: fix ItemLinks setting advancement flag
2022-06-17 05:26:11 +02:00
Fabian Dill
d0a98949f5
LttP: split Retro into Retro Bows and Retro Caves ( #588 )
2022-06-01 08:29:21 -07:00
CaitSith2
c0fb7d9f9a
Add local and non_local items to item_links ( #506 )
...
* Add local and non_local items to item_links
* Whoops, don't pass list of list to verify_items.
* Give a did you mean result in the exception.
2022-05-15 07:41:11 -07:00
Fabian Dill
5f4b2cfa52
Main: compress world type output log ( #509 )
2022-05-14 11:52:57 -07:00
espeon65536
894a30b9bd
Check for ROMs at beginning of generation ( #475 )
2022-04-30 03:37:28 +02:00
black-sliver
42fecc7491
Core: change how required versions work, deprecate IgnoreGame ( #426 )
...
`AutoWorld.World`s can set required_server_version and required_client_version properties. Drop `get_required_client_version()`.
`MultiServer` will set an absolute minimum client version based on its capability (protocol level).
`IgnoreVersion` tag is replaced by using `Tracker` or `TextOnly` with empty or null `game`.
Ignoring game will also ignore game's required_client_version (and fall back to server capability).
2022-04-08 11:16:36 +02:00
Fabian Dill
64ac619b46
Core: use assert correctly ( #345 )
...
Core: add some more types to State and add count() method
2022-03-25 20:12:54 -04:00
Fabian Dill
75de616465
Core: remove sending_visible ( #339 )
...
* Core: remove sending_visible
Only used by Factorio and that use predates start_location_hints, which works perfectly fine for this purpose.
* Factorio: minor cleanup
2022-03-24 12:15:52 -04:00
Alchav
affcaf1c02
ItemLink - ensure no extra fillers are created ( #316 )
2022-03-20 16:07:51 +01:00
Fabian Dill
7e314c0d7a
Multidata: don't include start inventory events in sendable items ( #319 )
2022-03-18 13:19:21 -04:00
CaitSith2
48669e96d1
Remove players from item_link pool if they don't contribute any items to the pool.
2022-02-22 16:35:41 -08:00
CaitSith2
f046d76c59
make sure starting location hints also apply to all applicable item_link players.
2022-02-22 12:49:43 -08:00
Fabian Dill
f38b970ea2
ItemLinks: hopefully fix remaining generation issues
2022-02-22 10:14:26 +01:00
CaitSith2
de5249f99e
start_hints now work for items in item_link pools.
2022-02-21 15:33:39 -08:00
CaitSith2
4f47709d32
Add entrance info to start hints.
2022-02-19 10:52:05 -08:00
Fabian Dill
daea0f3e5e
Core: provide a way to add to CollectionState init and copy
...
SM: use that way
OoT: use that way
2022-02-17 07:07:34 +01:00
Fabian Dill
c525c80b49
ItemLinks: move item links to events, mess up their logic in doing so and lock them behind plando option "item_links" until they're fixed.
2022-02-17 06:07:20 +01:00
Fabian Dill
f98063b97a
Options: move name verification into class methods, out of Generate.py
2022-02-06 16:37:21 +01:00
Fabian Dill
8242d4fe92
ItemLink: fix wrong variable use
2022-02-05 20:15:56 +01:00
Fabian Dill
43ff476d98
AutoWorld: add "Everything" item_name_group to all worlds
2022-02-05 16:55:11 +01:00
Fabian Dill
28201a6c38
Core: implement first version of ItemLinks
2022-02-05 15:49:19 +01:00
Fabian Dill
dc4b064c73
Options: change displayname to display_name
2022-02-02 16:29:29 +01:00
Fabian Dill
0f20888563
Options: allow yaml access to Priority Locations
2022-02-01 16:36:14 +01:00
Jarno Westhof
0ff7fe8479
[Generation] Fixed creation of new Slot-Info
2022-01-30 17:09:10 +01:00
Fabian Dill
0bd252e7f5
Server: add slot_info key to Connected
2022-01-30 13:57:12 +01:00
Fabian Dill
a6cca3094d
WebHost: give proper incompatible version error message.. in the future when this is deployed for next time.
2022-01-18 08:23:38 +01:00
Fabian Dill
028207022a
Factorio: support new colors in-game
...
Various: cleanup and comments
2022-01-18 06:16:16 +01:00
Jarno Westhof
c9fa49d40f
[Network_Item] Add item flags to network item so client can distinct some details ( #210 )
2022-01-18 05:52:29 +01:00
Fabian Dill
b8afc27e2f
Docs: improve "sending_visible" comment
2022-01-14 19:27:54 +01:00
Fabian Dill
246a5c568b
Core: add some more types
2021-11-30 05:33:56 +01:00
Fabian Dill
1f61d8322c
LttP: Attribute locations to dark/light world if they are directly present in them, ignoring routing requirements.
2021-11-23 22:47:41 +01:00
lordlou
77ec8d4141
Added Super Metroid support ( #46 )
...
Varia Randomizer based implementation
LttPClient -> SNIClient
2021-11-12 14:00:11 +01:00
Adam Ziegler
583819c4ae
LttP, beemizer: support fine-tuned trap replacements ( #113 )
...
* update beemizer logic to separate replacement chance and single vs trap chance
* convert beemizer options to new style
2021-11-03 06:34:11 +01:00
Fabian Dill
6af1f98c88
CommonClient.py UI: add progressbar representing % of checks done.
...
CommonClient.py UI: add Commands button that points out /help and !help
CommonClient.py: track permissions
CommonClient.py: track missing locations and checked locations in lib
2021-10-22 05:25:09 +02:00
Fabian Dill
833de94ab0
Generate: You can now have triggers in a game section that get run after common triggers and after the game is selected. Their format is the same but they can't overwrite game.
2021-10-17 20:53:06 +02:00
Fabian Dill
78443bffac
Core: fix missed precollected change
2021-10-11 01:39:25 +02:00
Fabian Dill
a8b105267c
WebHost: add hint cost and forfeit mode to webgen page
2021-10-11 00:46:18 +02:00
Fabian Dill
f7bd637073
Core: fix chain != chain.from_iterable
2021-10-11 00:12:00 +02:00
Fabian Dill
e66a2a7c30
Core: change precollected_items to dict-style
...
Core: make sure there are enough threads available during generate_output to prevent deadlocks if event waiting is used
2021-10-10 16:50:08 +02:00
CaitSith2
438e53d25e
hints for visible tech should be free no matter who it is for.
2021-10-09 20:48:13 -07:00
CaitSith2
f8deb1bd7f
Make visible_sending part of AutoWorld.
2021-10-09 20:38:53 -07:00
Fabian Dill
6acd08431e
Core: fix set_seed seed passthrough
2021-10-09 02:30:46 +02:00
Fabian Dill
9ebab4a382
Core: fix set_seed argument order
2021-10-08 12:16:15 +02:00
Fabian Dill
1217179f8a
Tests: Implement generic default options reachability test
...
Tests: remove duplicate TestDeathMountain.py
LttP: Move er_seeds out of Main
OriBF: Fix Mapstone typo
2021-10-06 11:32:49 +02:00
Fabian Dill
c937167a11
Options: add option start_location_hints, works identical as start_hints, just for locations
2021-10-03 14:40:25 +02:00
Fabian Dill
858d4c74ce
Options: fix start_hints
2021-09-30 19:49:36 +02:00
Fabian Dill
8db8c60e75
Core: fix start_inventory ignoring count
2021-09-23 03:53:16 +02:00
Fabian Dill
8e569a1d1f
AutoWorld: split remote_start_inventory out from remote_items
2021-09-23 03:48:37 +02:00
Fabian Dill
f85dde6323
LttP: remove rom handling from Main.py
2021-09-18 22:13:19 +02:00
Fabian Dill
a82bf1bb32
Options: raise Exception if per-game options are in root
...
Options: implement progression balancing and accessibility on new system
Options: implement the notion of "common" and "per_game_common" options in various systems
Options: centralize item and location name checking
Spoiler: prettier print some lists, sets and dicts
WebHost: add common options into /templates
2021-09-17 00:17:54 +02:00
Fabian Dill
5d68dc568f
Fill: fix non_local_items breaking in single player
2021-09-15 01:02:06 +02:00
Fabian Dill
007a393ab5
Generate: don't count the 0th output file.
2021-09-13 03:38:18 +02:00
Fabian Dill
033adceb6f
LttP: move some simple Toggle options over to new system
2021-09-13 01:32:32 +02:00
Fabian Dill
89984a0d09
Core: don't start threads for 'pass'
...
Core: print output progress every 10 files (OoT output may take a while, so let's give some user feedback on progress)
Subnautica: remove empty output method
2021-09-03 20:35:40 +02:00
Fabian Dill
2e2ca1665b
Core: don't start threads for 'pass'
...
Core: print output progress every 10 files (OoT output may take a while, so let's give some user feedback on progress)
Subnautica: remove empty output method
2021-09-03 17:30:10 +02:00
Fabian Dill
5daadcb2d5
LttP: implement new dungeon_items handling
...
LttP: move glitch_boots to new options system
WebHost: options.yaml no longer lists aliases
General: remove region.can_fill, it was only used as a hack to make dungeon-specific items to work
2021-08-30 16:31:56 +02:00
Fabian Dill
baa7992a7a
AutoWorld: add post_fill
...
LttP: Move ShopSlotFill to post_fill
2021-08-30 01:16:04 +02:00
Fabian Dill
7ba4bfc0d5
Generate: make sure no None items make it into multidata.
2021-08-30 00:52:57 +02:00
Fabian Dill
de567cc701
LttP: Move more functionality into ALttPItem from Item
...
LttP: More efficiently build !hint entrance info
LttP: More efficiently check for and build Big Bomb Shop playthrough path
2021-08-28 12:56:52 +02:00
Fabian Dill
de4775b0c8
LttP: Move difficulties and er seed sharing to generate_early
2021-08-28 00:26:02 +02:00
Fabian Dill
104cc0ea83
document World.hidden
2021-08-27 20:46:33 +02:00
Fabian Dill
21255b3b46
LttP: Rename Shop Slot 1, 2, 3 to Shop Slot Left, Center, Right
...
General: Move generic IDs from LttP to new Generic World
Generate: ensure thread errors are collected before data from their completion may be referenced in playthrough/spoiler
2021-08-27 14:52:33 +02:00
espeon65536
b8b51965d2
skip first sweep_for_events in playthrough computation, so keys are no longer treated as special
2021-08-27 07:44:05 +00:00
espeon65536
be46d128bc
do not double-collect keys during playthrough computation, since they are progression items now
2021-08-27 07:44:05 +00:00
Fabian Dill
f4f043ac87
MultiServer: categorize methods
2021-08-26 16:19:37 +02:00
Fabian Dill
72610d8c2f
Core: log world ID ranges
2021-08-16 18:40:26 +02:00
Fabian Dill
9d6fa855d8
Multidata: fix accidental format change
2021-08-12 04:23:07 +02:00
Fabian Dill
8c7404edf9
Spoiler: fix built-in variable name shadowing
2021-08-11 12:45:03 +02:00
Fabian Dill
9ec0680ce5
LttP: move game specific fill to new AutoWorld fill_hook
2021-08-10 09:03:44 +02:00
Fabian Dill
ab7a5b07eb
YAML: Make player pick a game, error out if step is skipped.
2021-08-09 23:00:28 +02:00
Fabian Dill
ba3bb201cd
Multiple: Followed a rabbit hole of moving LttP Rom generation to AutoWorld
...
Generator: Re-allow names with spaces (and see what breaks)
Generator: Removed teams (Note that teams are intended to move from a generation step feature to a server runtime feature, allowing dynamic creation of an already generated MW)
LttP: All Rom Options are now on the new system
LttP: palette option "random" is now called "good"
LttP: Roms are now created as part of the general output file creation step
LttP: disable Music is now Music, removing potential double negatives
LttP & Factorio: Progressive option random is now grouped_random
LttP: Enemy damage option random is now Enemy damage: chaos
2021-08-09 09:15:41 +02:00
Fabian Dill
01d88c362a
AutoWorld: Add "stage" methods and implement LttP Dungeon fill as an example.
2021-08-09 06:50:11 +02:00
Fabian Dill
95350a1fa9
Fill: Cache get_all_State
2021-08-09 06:33:26 +02:00
Fabian Dill
cc458ca5b1
LttP: Remove no longer reachable code
2021-08-09 06:19:01 +02:00
Fabian Dill
1b4762715c
print final output name
2021-07-25 16:15:51 +02:00
Fabian Dill
af30d8b7cd
ensure Hyrule Castle Small Key locality in standard + small key shuffle
2021-07-24 01:42:00 +02:00
Fabian Dill
39a5921522
round of post-test fixes
2021-07-23 20:04:51 +02:00
Fabian Dill
21af3bf563
move LttP create_regions and set_rules to AutoWorld
2021-07-22 15:51:50 +02:00
Fabian Dill
b2f5f095fc
turns out windows' built in zip hates LZMA
...
also fix APMC output path
2021-07-22 01:08:44 +02:00
Fabian Dill
2fc4006dfa
RIP: MultiMystery and Mystery, now there's just Generate
...
Other changes:
host.yaml Multi Mystery options were moved and changed
generate_output now has an output_directory argument
MultiWorld.get_game_players(<game>) now replaces <game>_player_ids
Python venv should now work properly
2021-07-21 18:08:15 +02:00
Hussein Farran
b809d76b79
Move setting of `MultiWorld.is_race` to `MultiWorld.secure`.
2021-07-20 18:38:38 +00:00
Hussein Farran
bfad85223b
Add race flag to APMC if AP is run with the race arg.
2021-07-20 18:38:38 +00:00
Fabian Dill
20b173453d
(for now) only collect ER hint info for LttP
...
Optimize Entrance
2021-07-16 12:23:05 +02:00
Fabian Dill
01f0f309d1
add AutoWorld.generate_early, optimize Location
2021-07-15 08:50:08 +02:00
espeon65536
7493b7f35e
Implement excluded locations
2021-07-15 06:04:09 +00:00
Fabian Dill
62a6cdc9f7
allow remote_items to be set via AutoWorld
2021-07-13 19:14:57 +02:00
Fabian Dill
ae32315bf7
add World.location_names
2021-07-12 15:11:48 +02:00
Fabian Dill
38bc3d47ad
Fix: No longer allow setting starting items from other games
2021-07-12 14:32:39 +02:00
Fabian Dill
b53d6c370b
AutoWorld: remove Games Enum (AutoWorldRegister.world_types replaces it)
2021-07-12 14:10:49 +02:00