* Webhost: rename all references to forfeit and deprecate it
* needed some renames in multiserver for all the commands to function
* remove forfeit commands
* support forfeit_mode for clients
* rename `forfeit_player` to `release_player`
## What is this fixing or adding?
- Adds the majority of OoTR 7.0 features:
- Pot shuffle, Freestanding item shuffle, Crate shuffle, Beehive shuffle
- Key rings mode
- Dungeon shortcuts to speed up dungeons
- "Regional" shuffle for dungeon items
- New options for shop pricing in shopsanity
- Expanded Ganon's Boss Key shuffle options
- Pre-planted beans
- Improved Chest Appearance Matches Contents mode
- Blue Fire Arrows
- Bonk self-damage
- Finer control over MQ dungeons and spawn position randomization
- Several bugfixes as a result of the update:
- Items recognized by the server and valid starting items are now in a 1-to-1 correspondence. In particular, starting with keys is now supported.
- Entrance randomization success rate improved. Hopefully it is now at 100%.
Co-authored-by: Zach Parks <zach@alliware.com>
* WebHost: save datatables state
* WebHost: Fix DataTables local storage keys.
Co-authored-by: recklesscoder <57289227+recklesscoder@users.noreply.github.com>
* WebHost: On uploads, infer player name if missing in file name.
* Remove conditional logic for not including player name in file name.
* quick readability tweak to "fix"
* Refactored `upload_zip_to_db` to clean up redundancies and fix issues
* Rename `patches` to `files`
* fix comment
* WebHost: Remove "Random" as an option and move to separate button in …
* Merge branch 'main' into randomize-button
* Tweaked color and changed text of tooltip.
* Merge branch 'main' into randomize-button
* Fix wrapping too early if docstring is within 120 characters and re-indent other lines.
* Remove auto-word wrapping and tweaked all worlds' option docstrings formatting.
Options should wrap around the 120 character mark to prevent template files from being too long horizontally. This also allows manual-indentation to work again.
* Fix missing '#' on empty lines in output from docstring.
* add min and max comments for named special_range options
* comment all special range options and dictate the min and max in comment block
* make it cleaner
* make it cleanerer
* make it cleanererer
* Reformat template for more consistent comments.
* Fixed missing note on some special settings.
* Small tweak to template.
* Update playerSettings.yaml to match auto-generated template with all ALTTP options.
* Fix edge case with `special_range_cutoff` and revert playerSettings.yaml.
Co-authored-by: Zach Parks <zach@alliware.com>
* Option RangeWithSpecialMax
* amendment to typing in web options
* compare string with number
* lots of work on zillion
* fix zillion fill logic
* fix a few more issues in zillion fill logic
* can make zillion patch and use it
* put multi items in zillion rom
* work on ZillionClient
* logging and auth in client
* work on sending and receiving items
* implement item_handling flag
* fix locations ids to NuktiServer package
* use rewrite of zri
* cache logic rule data for performance
* use new id maps
* fix some problems with the big recent merge
* ZillionClient: use new context manager for Memory class
* fix ItemClassification for Zillion items
and some debug statements for asserts,
documentation on running scripts for manual testing
type correction in CommonContext
* fix some issues in client, start on docs, put rescue and item ram addresses in slot data
* use new location name system
fix item locations getting out of sync in progression balancing
* zillion client can read slot name from game
* zillion: new item names
* remove extra unneeded import
* newer options (room gen and starting cards)
* update comment in zillion patch
* zillion non static regions
* change some logging, update some comments
* allow ZillionClient to exit in certain situations
* todo note to fix options doc strings
* don't force auto forfeit
* rework validation of floppy requirement and item counts
and fix race condition in generate_output
* reorganize Zillion component structure
with System class
* documentation updates for Zillion
* attempt inno_setup.iss
* remove todo comment for something done
* update comment
* rework item count zillion options
and some small cleanups
* fix location check count
* data package version 1
* Zillion can pass unit tests without rom
* fix freeze if closing ZillionClient while it's waiting for server login
* specify commit hash for zilliandomizer package
* some changes to options validation
* Zillion doors saved on multiworld server
* add missing function in inno_setup
and name of vanilla continues in options
* rework zillion sync task and context
* Apply documentation suggestions from SoldierofOrder
Co-authored-by: SoldierofOrder <107806872+SoldierofOrder@users.noreply.github.com>
* update zillion package
* workaround for asyncio udp bug
There is a bug in Python in Windows
https://github.com/python/cpython/issues/91227
that makes it so if I look for RetroArch before it's ready, it breaks the asyncio udp transport system.
As a workaround, we don't look for RetroArch until the user asks for it with /sms
* a few of the smaller suggestions from review
* logic only looks at my locations
instead of all the multiworld locations
* some adjustments from pull request discussion
and some unit tests
* patch webhost changes from pull request discussion
* zillion logic tests
* better vblr test
* test interaction of character rescue items with logic
* move unit tests to new worlds folder
* comment improvements
* fix minor logic issue
and add memory read timeout
* capitalization in option display names
Opa-Opa is a proper noun
* redirect zz stdout to debug
* fix option validation bug making unbeatable seeds
* remove line that does nothing
* attach logic cache to world
Co-authored-by: SoldierofOrder <107806872+SoldierofOrder@users.noreply.github.com>
Co-authored-by: Doug Hoskisson <doughoskisson@novuslabs.com>
* WebHost: Modernized anchor code
* WebHost: Fixed scrolling to anchors
* WebHost: Fixed scrolling to anchors when fonts are being loaded
* WebHost: Anchor PR changes requested by LegendaryLinux
* allow string defaults in yaml templates
* have default_converter handle strings
* handle all default values in the yaml
* allow for random range options
* yaml dump dicts
* strip the whities
* rip out the converter
* accidentally stripped the dicts
* goodbye readability
* hostRoom.css Changes
Makes the console be a scrollable object, for easier use with commands
* Update hostRoom.css
* Requested Change
Requested Change
* some typing and docs in various parts of the interface
* fix whitespace in docstring
Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com>
* suggested changes from discussion
* remove redundant import
* adjust type for json messages
* for options module detection:
module.lower().endswith("options")
Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com>
* First pass at a contribution guide for the website. Suggestions are welcome.
* Attempt to make the WebHost change guide describe the intent of the style restrictions more accurately.
* Try to improve the explanation of the intention behind the style restrictions.
* WebHost: allow newlines in data-tooltip
* WebHost: Tooltips: strip surrounding whitespace
* WebHost: unify tooltips behaviour
* WebHost: unify labels around tooltips
* WebHost: changing tooltips width to max-width to allow small tooltips to not have empty space.
* Minor modifications to tooltips
- Reduce tooltip target to (?) spans
- Set fixed width of 260px on tooltips
- Add space between : and (?) on player-settings
- Removed cursor:pointer on tooltips
- Fix labels for checkboxes on generate.html
Co-authored-by: Chris Wilson <chris@legendserver.info>
* docs: add common terms documentation to website
* minor cleanup
* some rewording and reformatting.
* tighten up world definition clarity
Co-authored-by: Rome Reginelli <mduo13@gmail.com>
* Clarify seed definition a bit better
Co-authored-by: Rome Reginelli <mduo13@gmail.com>
* add text for "out of logic" and that slot names must be unique
* rename common terms to glossary
Co-authored-by: Rome Reginelli <mduo13@gmail.com>
* Add stone theme
* Fix h2 color, change rogue-legacy to stone theme (approved by Phar)
* Add stone theme preview to world api.md
* Different stone theme preview to match other images
* Options: introduce SpecialRange
* Include SpecialRange data in player-settings and weighted-settings JSON files
* Add support for SpecialRange to player-settings pages
* Add support for SpecialRange options to weighted-settings. Also fixed a bug which would cause the page to crash if an unknown setting was detected.
Co-authored-by: Chris Wilson <chris@legendserver.info>
* WebHost: request maximum amount of file handles from the system for autolauncher.
* WebHostLib: wrap resource import into try to restore windows compatibility
* WebHost: Make custom server prefer ipv4 for display
* WebHost: Make server retry saving in case of connection issues
* WebHost: fix autolaunch guardians getting stuck waiting for the oldest two rooms.
Probably not related to the issues of the system itself getting stuck, but should be fixed anyway.
* WebHost: logfile is meant to be guarded by access cookie
* WebHost: set patch target to null if port is not valid, disabling auto-connect
* WebHost: undo autoconnect link as not all browsers behave like Vivaldi.
* Increase tooltip z-index
Co-authored-by: Chris Wilson <chris@legendserver.info>
* Clients: now featuring tooltips and some general cleanup
* Clients: fade in tooltip over 0.25 seconds
* Clients: reset slot and team when disconnecting
* Clients: allow joining multiworld via link (TextClient only for now)
* Add Item cheat permission to generate page.
* Indicate that both remaining_mode and item cheat are disabled in race mode.
* Add server_password
* refine tooltips and help for server_password and !admin command.
* Add Plando options to generation page.
* Remove debugging code
* Style adjustments and HTML formatting and tag fixes with the goal of making the page nicer looking and not as vertical.
Co-authored-by: Chris Wilson <chris@legendserver.info>
* Add bug report link to WebWorld
* change bug_report_page to an optional
reword bug report link text.
* update Minecraft bug report page to a template.
* change wording of link.
* add `bug_report_page` documentation to api.md
* [WebHost] Update WebHost to include modular themes system, remove unused and outdated assets
* Landing Page Updates
* Markdown updates, colors coming later
* Remove testing theme from FF1
* Color updates for markdown styles
* Updates to generated pages, so many updates
* [WebHost] Update WebHost to include modular themes system, remove unused and outdated assets
* Landing Page Updates
* Markdown updates, colors coming later
* Remove testing theme from FF1
* Color updates for markdown styles
* Updates to generated pages, so many updates
* Seed download page improvements
* Add styles to weighted-settings page
* Minor adjustments to styles
* Revert base theme to grass
* Add more items to ArchipIDLE
* [WebHost] Update WebHost to include modular themes system, remove unused and outdated assets
* Landing Page Updates
* Markdown updates, colors coming later
* Remove testing theme from FF1
* Color updates for markdown styles
* Updates to generated pages, so many updates
* Seed download page improvements
* [WebHost] Update WebHost to include modular themes system, remove unused and outdated assets
* Landing Page Updates
* Markdown updates, colors coming later
* Remove testing theme from FF1
* Color updates for markdown styles
* Updates to generated pages, so many updates
* Add styles to weighted-settings page
* Minor adjustments to styles
* Revert base theme to grass
* Add more items to ArchipIDLE
* Improve Archipidle item name
* [WebHost] Update background images, waiting on jungle.png, added partyTime theme
* [WebHost] Fix tab ordering on landing page, remove islands on screen scale, fix tutorial page width scaling
* [WebHost] Final touches to WebHost
* Improve get_world_theme function, add partyTime theme to ArchipIDLE WebWorld
* Remove sending_visible from AutoWorld
* AP Ocarina of Time Client (#352)
* Core: update jinja (#351)
* some typing and cleaning, mostly in Fill.py (#349)
* some typing and cleaning, mostly in Fill.py
* address missing Option types
* resolve a few TODOs discussed in pull request
* SM: Optimize a bit (#350)
* SM: Optimize a bit
* SM: init bosses only once
* New World Order (#355)
* Core: update jinja
* SM: Optimize a bit
* AutoWorld: import worlds in alphabetical order, to be predictable rather than arbitrary
Co-authored-by: Hussein Farran <hmfarran@gmail.com>
* Remove references to Z5Client in English OoT setup guide
* Prevent markdown code blocks from overflowing their container
Co-authored-by: espeon65536 <81029175+espeon65536@users.noreply.github.com>
Co-authored-by: Fabian Dill <Berserker66@users.noreply.github.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Hussein Farran <hmfarran@gmail.com>
* documentation: add links to other guides in adding games.md
* documentation: add webworld to api.md
* documentation: point people to docs folder and discord for help with adding games
* tutorial: go a bit more in depth on downloading a template yaml
* Make Ijwu happy
* point to baseclasses.py in api.md and reformat links a bit
* Item Plando updates
Add True option for item count to place the number of that item that is in the item pool.
Prioritize plando blocks by location count minus item count, so that the least flexible blocks are handled first to increase likelihood of success.
True and False for Force option are coming in as bools instead of strings, so that had to be accounted for.
Several other bug fixes.
* Tracker tag will receive all items via server (including local)
* TextOnly tag will receive no items
* TextClient sends TextOnly tag
* precollected items / start_inventory does not get an "Order received" number anymore
* local items do always get an "Order received" number now
* multisave changed, includes version number now, upgrade works for games (not trackers)
Added new locations ids to tracker
Added new chest & logic for Ancient pyramid
Made tracker change available locations based on flags
Made tracker only show items that are progression based on selected flags
* Update Super Metroid setup tutorial
Setup no longer requires Super Metroid Client, and in fact it gives you an error if you use it. Removed references to it and updated step 5 in the snes9x Multitroid and Bizhawk sections.