Skip to content
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

Advanced Settings option #30866

Closed
KoBeWi opened this issue Jul 27, 2019 · 6 comments · Fixed by #96467
Closed

Advanced Settings option #30866

KoBeWi opened this issue Jul 27, 2019 · 6 comments · Fixed by #96467

Comments

@KoBeWi
Copy link
Member

KoBeWi commented Jul 27, 2019

Godot version:
94aabf5

Issue description:
Recurring problem with some feature proposals is that they absolutely can't add any Editor Settings, because settings are bloated and editor becomes complex etc. This is problematic, because more options is sometimes useful. Well, the settings really have some not-so-useful options (probably) and aren't well-organized, but that's for another issue.

Discussion in #30816 spawned an idea for a nice feature that could do something about the problem of editor becoming "too complex" - Advanced Settings option. Basically, upon opening Editor Settings, you'd see only a set of very common options (like editor language or theme) and most of the settings would be hidden (like interface dialogs or file server). To show them, there would be an "Advanced Settings" checkbox.

This way, when you open Editor Settings, you will see stuff that is mostly relevant and you are likely to change. It would keep users from being lost and if someone wants to tweak more things and have option for literally everything, it would be possible. The biggest problem here is determining which options should be considered "advanced".

Also, here's how it looks in VLC, which does it really well:
Basic settings
image

Advanced settings
image

Anyone disagrees? Any proposals for basic and advanced settings?

@groud
Copy link
Member

groud commented Jul 27, 2019

Recurring problem with some feature proposals is that they absolutely can't add any Editor Settings, because settings are bloated and editor becomes complex etc

Please don't exaggerate, that's not what I said ;)

The most important think is likely how to present it. I was thinking about having something like the "about:config" page of Firefox, where you can define a significant amount of different values with a search bar. This is likely what we could go for, where we could store all the cryptic settings people are asking for and all the editor's internal things.

I think this should be kind of an "hidden page", not accessible easily and eventually with a warning, so that we don't have to worry much about how many settings we add or how they are presented and organized (it makes me think that a lot of built-in constants could go there). Consequently, I don't think it should be presented as an "show all" mode, but likely with a button granting you access an "advanced configuration".

@lawnjelly
Copy link
Member

Personally I am in agreement with the idea.
Of course there are pros and cons with exposing more of Godot's parameters to the user, and some people might not be in favour:

Pro
Can be customized to the needs of the game, less need for a 'one size fits all' approach. Easy for developers to expose decisions to the users rather than make decisions for them.

Con
Easier for users to break things by setting one of many settings incorrectly. Inevitable that there will be more end users needing help with choosing wrong settings.

So if this is done, it might be worth taking a small effort to help reduce the potential downsides. One method might be that if there is an advanced section for each area (physics etc), have e.g. a checkbox where you can temporarily revert to default behaviour for a whole section, and a checkbox to temporarily revert all advanced settings to default.

That way it might be easier to track down what is causing a problem if a game is not behaving as expected (and easier to remotely debug issues). Users could be instructed to try temporarily reverting all advanced settings before creating an issue on github, for example.

@KoBeWi
Copy link
Member Author

KoBeWi commented Jul 28, 2019

Of course there are pros and cons with exposing more of Godot's parameters to the user

But it's not about exposing more parameters. Consider current Editor Settings as Advanced Settings. The idea is that "Basic Settings" would be a simpler version of what we have now and then when we add new option, it will likely fall into Advanced Settings too, so the base settings aren't cluttered as much and more accessible.

The "temporarily reverting to defaults" thing is not needed here.

@lawnjelly
Copy link
Member

But it's not about exposing more parameters.

The original discussion stemmed from exactly that, and given that Godot is adding features all the time it may be wishful thinking to expect the number of settings to stay similar in the longterm.

i.e. The advanced settings may be proposed here as a method to better separate the existing settings, but in the longterm their primary purpose may be to prevent the overchoice problem.

@KoBeWi
Copy link
Member Author

KoBeWi commented Mar 22, 2021

Partially implemented by #46127
We need to do the same for Editor Settings I guess.

(also I still like the VLC basic settings more)

@passivestar
Copy link
Contributor

First thing I do when I create a new project is enable advanced project settings because the regular ones don't have the most basic features like graphics quality controls or making the game window stay on top. I don't know if that's simply a problem with categorization or with the very idea of advanced settings in the context of a game engine. I'm concerned that if advanced editor settings are added I'll have to enable those as well. To be honest I'm not really sure it's possible to make good decisions as to what's "advanced" without telemetry and statistics. It's hard to predict the details of how a general-purpose game engine is used. If a handful of contributors make those decisions it's bound to be incorrect, adding friction by requiring users to enable advanced settings, which is probably what happened to the advanced project settings

@akien-mga akien-mga added this to the 4.4 milestone Sep 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants