-
Notifications
You must be signed in to change notification settings - Fork 735
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WebHost: Make list options available from the player-options page #2567
Conversation
Maybe I'm in the minority here, but I think that for most games, this page is already overwhelming to new users, and that this PR makes that significantly worse. |
ba9a701
to
40ade0b
Compare
As discussed on the discord.
It is very underwhelming for experienced users. I would very much like to have the ability to create yamls on the website with all settings and not have to use the weighted settings page, the sliders for which I find very annoying, especially when I'm away from my computer and need to make a yaml on mobile |
I get where you're coming from, but power users are significantly less likely to be fully turned off of using the platform when their needs aren't met than new users are, and as such, the user experience of the new user should take precedence when both cannot be simultaneously met. Regardless, this has already been discussed at length in the Discord server, and Farrak has voice there his own concerns with this PR. |
Could it be possible to have the player options page have a tab for basic and advanced? |
const leftOptions = Object.fromEntries(entries.slice(0, Math.floor(entries.length / 2))); | ||
const rightOptions = Object.fromEntries(entries.slice(Math.floor(entries.length / 2) + 1)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this will cause the middle option to be omitted from the page
randomButton.classList.add('randomize-button'); | ||
randomButton.setAttribute('data-key', option); | ||
randomButton.setAttribute('data-tooltip', 'Toggle randomization for this option!'); | ||
randomButton.addEventListener('click', (event) => toggleRandomize(event, range)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This and all the later calls to toggleRandomize
should be this.#toggleRandomize
If I'm not mistaken, discussion of this took place in the Discord server, and forthcoming work from @LegendaryLinux will make this PR obsolete. |
PoryGone is correct. I have an in-progress PR which all but removes JS from player-options and drastically cuts down on the JS in weighted-options. |
I'm going to close this PR since it's been obsoleted by #2614. |
With this, players no longer need to go to the weighted options page
to set (or even discover) the Item Pool, Item & Location Hints, and
Priority & Exclusion Locations options, or any list-based options
defined for an individual game.
This also unifies more of the rendering code for player and weighted
options, so it'll be easier to share UI for new option types between
them in the future.
In a follow-up PR, I intend to make it possible for individual options
to specify whether they're visible on both options pages, the
weighted-options page only, or only usable from YAML.
How was this tested?
I manually tested loading up several pages, setting options,
refreshing to ensure that the options persisted in local storage, and
exporting the options as YAML.
If this makes graphical changes, please attach screenshots.