PunchablePlushie/godot-game-settings

Documentation Feedback

MarkMcCaskey opened this issue · 1 comments

Hey! Sorry if this isn't the place for this but I thought I'd quickly share some feedback with you because you were asking. The google feedback form had too many required irrelevant questions for what I wanted to say and I didn't want to pollute your data with fake answers.

I tried to use this project for a 7 day game jam (currently on-going) so I do want to preface this by saying that I didn't give this project anywhere close to the proper time or thought it deserves (about 15-20 minutes total) and that I'm sure it's great but I can share my perspective as an outsider that saw this project and thought "oh I can make a quick settings menu? Great!" and tried to use it with no context.

Going through, installation and set up seemed good, there were no real issues. The troubleshooting page seemed pretty good and fixed an issue I had. My primary issue is that as far as I can tell, nowhere in the docs does it describe how to actually connect the settings page. My vague impression was that stuff done in the editor view was making some kind of settings type somewhere that I could edit or drop into my SceneTree and make it appear when a button is pressed. Perhaps I was supposed to drag components into my own settings scene? But if so then it's less clear why I was going through the process of using that editor view.

Either way, I just thought it might be helpful to share that as someone with 0 context on this project coming in and trying to make a quick and dirty menu in about 30 minutes or so that my impression was that I could make what I needed faster without this project. Primarily because the "Time To 'Hello World'" was too long and the path there was unclear. I think it could be invaluable to have a bit in the docs about what node I should add to my scene tree or what API call I should make to make the settings page appear or hit me over the head with an explicit "This plugin provides components to build your own settings page, here's a Hello World example". I did see that you had a demo project so perhaps that would have been sufficient for my needs but it seemed like too much work to get that set up when I was hoping to see screenshots/code snippets to get the smallest possible menu set up immediately.

The project seems really cool and I'd love to check it out again later when I have more to dedicate to figuring it out, and if quick and dirty game jam menus made by people with 0 context aren't the goal of this project then you can safely ignore this feedback.

Hi there! Really appreciate the time you put into writing this feedback. But I may be having trouble understanding a few parts of it.

how to actually connect the settings page

I'm not sure I understand this part. What do you mean by "connect" to "the" settings page? To clarify, GGS does not have it's own settings menu. It comes with a few pre-built settings and pre-built UI components/nodes. You can use said components to create a settings menu of your own design. The documentation explains how to add components and assign settings to them.

This is done to make it more flexible for the user. They can choose how their settings menu looks and they can use Themes to style it as they wish. The user can also create their own settings logic which is explained in the documentation (so you're not limited to just the few pre-built settings GGS comes with).

I did see that you had a demo project so perhaps that would have been sufficient for my needs but it seemed like too much work to get that set up when I was hoping to see screenshots/code snippets to get the smallest possible menu set up immediately.

The demo project is there to provide a simple example of a finished settings menu made with GGS. It is not meant to be used as a basis for other projects.

Overall, I don't think it's really time-consuming to create a very simple settings menu with GGS. It's just a matter of:

  1. Add some settings via the GGS editor and tweak them in the inspector. GGS comes with a few common settings so you don't even have to worry about their logic/script. Just need to add the ones you'd like to use.
  2. Add UI components to your own settings menu scene via the GGS editor. Again, the UI components are complete, you don't have to write code or anything for them. There's no need for an API call or anything else you have to do.
  3. Assign a setting to the component (this is done automatically if a setting is already selected beforehand). Tweak the component in the inspector if necessary and that's it.

That's if you're interested in making a super simple menu. You can always add your own custom settings or even custom UI components that work with GGS if necessary.

I recommend taking a look at the demo project and reading the documentation (again if you've done so once already).

hit me over the head with an explicit "This plugin provides components to build your own settings page, here's a Hello World example"

Yeah, I'll add something like this to the README to clarify things. Apologies for the confusion.