Paper
Paper copied to clipboard
Add onboarding message after first start
This is a PR as a response to #10309.
What i have done here is by no means final and just an attempt to find a way to check if it is the "initial" start of a server.
I decided to go for the server.properties
file because this is the first file that came to my mind that you wouldnt really delete.
Basically, I am checking if the file exists and set a boolean if it doens't. After the server has been started, I check that boolean and print a message if it's the initial start.
Obviously, you could just delete the file and get that message again so it wouldn't be the "initial" start anymore. So, if you have any other idea how to handle this, please leave feedback.
The message is also not final.
This would also allow for a InitialServerStartEvent
later on once this is merged.
I think most of the time people that are starting the server for the first time see the eula message, I think it may be good enough to just add the additional info with the link to documentation after/before the eula message
I think most of the time people that are starting the server for the first time see the eula message, I think it may be good enough to just add the additional info with the link to documentation after/before the eula message
I think that would be too early.
I like the idea of improving the onboarding process
I'm not 100% sure about storing Paper things in the server.properties file. This would be the first time for Bukkit, Spigot and Paper to add a new value there. While it's not really gonna cause issues, this doesn't seem like the proper thing to do. IMO just using the paper global configuration would be fine - yes you get the message again if you delete your config, but it's just a log message, not a big deal, and idk if the event really is needed. There's a good chance users have no plugins installed during the first startup anyways.
I do agree that the EULA is too early though. Some panels also realise EULA acceptance with a checkbox or similar, so not everyone will see it.
I'm not 100% sure about storing Paper things in the server.properties file.
I'm not sure if I'm actually storing something in the server.properties. Besides that, thinking further this might still be too early. ~~Ideally the message would be shown after the first successful server start. So if a plugin crashes the server the message won't be shown at all since at the next startup the server.properties file already exists.~~
You are absolutely right. This is generally for people who set up a server for their first time. They won't have plugins if they do it for their first time. I will change it to the global config tomorrow.
Another thing: We could send the same message to the first person joining the server. Or would that be too much?
Another thing: We could send the same message to the first person joining the server. Or would that be too much?
Yeah I definitely wouldn't be sending the message to the first person joining. Just having it in console is fine in my opinion.
If we're going to add an onboarding message, we really should have an onboarding docs page. Just linking to a category is not really accessible, IMHO, and just leaves more "where do I go" questions than it answers;
We might also want to consider adding a header message to the GUI app too, in order to provide a clickable link for people not using a terminal
If we're going to add an onboarding message, we really should have an onboarding docs page. Just linking to a category is not really accessible, IMHO, and just leaves more "where do I go" questions than it answers;
That was the plan anyway I think.
We might also want to consider adding a header message to the GUI app too, in order to provide a clickable link for people not using a terminal
Good idea.
I addressed the comments and added a message in the GUI. It is centered by default, idk if we leave it that way. Also, should we display it always? IMO yeah.
Looks good GUI wise - is the link clickable? It can stay for the entire of the first launch I think.
Once I have made my page you can use that as a link - PR blocked by docs for now.
It can stay for the entire of the first launch I think.
I am more talking of a permanent component of this GUI. Like it doesn't really take up that much space and I think the GUI is used by relatively new people anyways.
is the link clickable?
yes.
Once I have made my page you can use that as a link - PR blocked by docs for now.
Obviously, I just used it as a placeholder.
- add a colon after "you can visit"
...you can visit: <link>
- make it obvious that the link is clickable, e.g. underlined and set to the color blue
I am more talking of a permanent component of this GUI. Like it doesn't really take up that much space and I think the GUI is used by relatively new people anyways.
Wouldn't hurt to permanently have it available in the GUI. It could also be abstracted into some kind of banner with rotating text.
Docs have been merged :) - https://docs.papermc.io/paper/next-steps
Thanks Ollie.
I changed the link, made it clear that its clickable (decided against a blue link since i don't think it would fit in the GUI if everything else is just black) and added more catches.
Yeah I like that, nice work