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

Add a FMS entry for disabling features #79645

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

RenechCDDA
Copy link
Member

Summary

None

Purpose of change

While this policy has been clearly stated on github, discord, the IN_REPO_MODS.md doc, and many other places, the suggestion keeps coming up that we should just implement 100000000 options to let people disable everything they don't like.

Describe the solution

Write it down right in the FMS. Since this is a frequently made suggestion the frequently made suggestion doc is the best place for it.

Describe alternatives you've considered

The proposed entry does not mention the maintenance burdens, and only addresses issues related to developer work time

Testing

Docs only

Additional context

@github-actions github-actions bot added <Documentation> Design documents, internal info, guides and help. [Markdown] Markdown issues and PRs json-styled JSON lint passed, label assigned by github actions astyled astyled PR, label is assigned by github actions labels Feb 13, 2025
@RenechCDDA
Copy link
Member Author

It could also do to mention #74053 and other bugs that arise due to having the options. That one was not simple for me to track down, because I always play with hordes on!

@Holli-Git
Copy link
Contributor

I'd include mentioning how maintaining options is a hassle to make sure they actually work, and how having stuff as options can give new players the idea that it's normal to turn off potentially key parts of the game, even if it's not. Also maybe a blip on how people's suggestions for disabling options isn't usually based on anything more than "I do not like/understand this feature", such as with skillrust?

@GuardianDll
Copy link
Member

Adding to what Holli says, we are okay to disable features if they are actually used in the mod and change the game experience, like aftershock disabling EMP ruining your electronic items

@github-actions github-actions bot added the BasicBuildPassed This PR builds correctly, label assigned by github actions label Feb 13, 2025
@RenechCDDA
Copy link
Member Author

Adding to what Holli says, we are okay to disable features if they are actually used in the mod and change the game experience, like aftershock disabling EMP ruining your electronic items

I really don't see a need to mention external options, since those are intended for mod developer. The vast majority of people reading these entries are not going to be mod developers.

@GuardianDll
Copy link
Member

The point is not to highlight external option, the point is to highlight "features are turned off only because they lead to some desired experience"
Sky island turn off player death, effectively, but since it leads to a better experience using the mod, it is allowed, comparing to "revive on death" out of repo mod that does only this - and it is not an external option either

@GuardianDll GuardianDll reopened this Feb 14, 2025
@GuardianDll
Copy link
Member

GuardianDll commented Feb 14, 2025

woops


Disabling features means they do not get worked on and there is no reason for developers to work on them, because the features will simply be disabled. There are several historical in-repo examples of this: Wandering hordes is a good one. Wandering hordes is one of the oldest game features, dating back almost as far as C:DDA's fork from the original Cataclysm. Wandering hordes is disabled by default, and as a consequence has several known major issues which have not seen any developer time in years. The presence of those major issues precludes removing the option, and the fact it's an option precludes people from working on it (nobody would see their changes without specifically opting in).

This is a catch-22, and clearly bad for development. The only reason wandering hordes currently has a toggle is that it was a legacy decision, implemented well before this current policy was written down.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
This is a catch-22, and clearly bad for development. The only reason wandering hordes currently has a toggle is that it was a legacy decision, implemented well before this current policy was written down.
This is a catch-22, and clearly bad for development. The only reason wandering hordes currently has a toggle is that it was a legacy decision, implemented well before this current policy was decided.


Simply put, features make it into the game because they are desired features which contribute to the game's intended direction.

Features are shipped in stable versions when they are deemed to be in a good enough state. Features in experimental may come with bugs, severe balance issues, so on. That is the nature of experimental.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Features are shipped in stable versions when they are deemed to be in a good enough state. Features in experimental may come with bugs, severe balance issues, so on. That is the nature of experimental.
Features in experimental may come with bugs, severe balance issues, so on. That is the nature of experimental. Making them optional reduces the value of including them in experimental.

@NyarlathotepZERO

This comment was marked as abuse.

@kevingranade
Copy link
Member

NyarlathotepZERO if you search for keywords like "options" in the repo you will find that people ask for features, content, and balance to be made optional constantly. Yes not thousands but there are actually hundreds of requests of this kind.

This is not about one thing, this is about an overall policy where if we made the things optional that people request it would be immensely unmaintanable and make the game worse for everyone, so we aren't doing it.

Also your accusations about people's motives are not ok, if you wish to be able to comment here don't repeat that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions <Documentation> Design documents, internal info, guides and help. json-styled JSON lint passed, label assigned by github actions [Markdown] Markdown issues and PRs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants