Closed iqualfragile closed 7 years ago
I am aware of that mod, but it does not really fix the problem, especially the 3rd point and it is still not minetest-wide but just on my own server
I agree that Minetest shouldnt set default to Guest Many people who come from MC may think that we also have a centralized account system, so they think that they actually have to use the Guest\ nick. By leaving it empty we would force them to choose a proper nick.
There is a disallow_empty_password
server configuration option that I think would address your third point, although again it only affects your own server.
Looking at the code, the Guest* names are chosen by the client if no player name is given; the server complains if the player name that is sent is empty. You could change the client to require a valid player name to be entered, and that would probably curb most of the Guest* names from appearing. (However, there is nothing stopping you from manually entering and using a Guest* player name of your choice.)
@matttpt obviously nobody would stop you from choosing guest* as nickname, but it would still be an intentional choice and thats the whole point.
Using the option "disallow_empty_password" I managed to reduce by 90% the number of Guests on my server. And I reduced even more using the option "strict protocol something". This way people from Buildcraft and other rubbish clients can't connect.
:+1: I get a bad vibe whenever i see 'guest#####'
The guest option should be removed, definitely. It's already the standard for servers to use no_guests, so pointless anyway.
I'm not sure why this was added in the first place... And no configuration to disable it.
Although, minetest should not require a password, since it would get annoying for people who just want to play a LAN server.
Although, minetest should not require a password, since it would get annoying for people who just want to play a LAN server.
By default it doesn't. It's configurable.
@rubenwardy Not right now, it doesn't. I just wanted to keep it that way. (Sorry, must have read something wrongly.)
Guest nicknames must die
By completely disallowing this guest situation, people will just either stay away or create an even worse one.
qwe231
iqual123
asdjada
auw3r
doaishd
oe209384
And whatever the cat produces when taking control of the keyboard. :smirk_cat:
I hardly ever check out a server, that doesn't allow me to guest-in the first time.
I'm too lazy to create a new password for every server i want to test and not brave enough to reuse passwords over several servers. (Apparently pw negotiation was improved, nice!)
Those guest-names can be better recognized automatically.
player_name:match("^Guest%d%d%d%d$")
You would not have to treat guest accounts like every other. E.g. A mod could time out and delete guests after a few days or already when the guest is leaving the server.
You won't be able to force people into a proper nickname all the time anyway. Some people just want to check out minetest or a server. By allowing that and by giving people more reason to use guest names for a test-run, you could actually decrease server maintenance by e.g. reducing the need for random names. :crying_cat_face:
Maybe we could even prevent guest accounts from being created at all. Everyone can check out servers yet passers-by just stay passers-by. Where's the harm in thaata?lpi3w764a9s7d :smile_cat:
Suggest the system-user name as a default.
Sounds good to me, some games already do this. However, we should ensure spaces and other disallowed characters (like special characters) are replaced with an underscore, for example.
Some people might object to this since they use their real name as system username, though. Also, is this possible on Android?
On my servers, "gibberish" names are filtered out with a bit of code that @sfan5 came up with, which tries to estimate whether the name can be pronounced at all, combined with a couple of regexes that filter out names with too many digits (or all-numeric). Between those, disallowing "Guest*" and a few others of similar type, disallowing names that are too short, forcing names to be case-insensitive, and requiring a password, the vast majority of crap usernames have disappeared from my servers.
@t4im i have to disagree with your point, at least in parts. First of all, choosing the system user name, which often is the actual real name of a person is a heavy breach of privacy. Not a good idea. Filling up the Auth.txt is not a problem at all, at least not computationally. I don't really see the reason why you would not use your actually nickname for joining servers, even on test runs. iirc minetest now does never send the actual password to the server, so just using your "default" password with the servername added will be enough.
The whole point of this issue was to filter out people who most likely won't contribute anything useful to the server. The point still stands. The majority of server administrators use a no guests mod, so it seems like the need is still there. This should still be integrated into minetest. The issue has been open for nearly 3 years now, i don't think the change is that complex.
Another issue, but that would be more of a feature request would be to maybe add a special minetest-wide visitor-account, that allows connecting and spectating servers maybe with things like fly-by-default and lower block-send priorities, but that, as stated is another issue.
It all seems so moot to me, and I always wonder what the fuss is all about.
I liked the points above about discouraging default names instead of disallowing them. I think no-op is still generally best, however. I feel this may be a modding discussion, and not an engine issue. The issue is better named "What should the default username string be, if anything?"
What if someone has an acceptable gibberish name, like 0gb.us? (pronounced Zero Gee Bee You Es)
Mine is C1ff. (pronounced See One Eff Eff)
Not all gibberish nicknames are unpronounceable trash.
@everamzah
"What should the default username string be, if anything?"
We could make a username generator, which could work something like this:
Step 1: Choose an adjective for a first name.
Choose from one of these names:
dirty
yummy
slimy
awesome
cheesy
etc.
(Maybe these examples aren't the best, but I'm trying to think of the kind of things that a children's MMO would use.)
Step 2: Choose a noun for the last name.
Choose a noun from this list:
apple
miner
diamond
block
seed
etc.
Step 3 : Put it together and add a good number:
Put an underscore between the first and last name and add a memorable number. Lots of numbers in usernames are simply the first digit, a second digit, and then the first digit again, like 242 or 676. So a number could be made by choosing a 2 digit number, multiplying it by ten and using the first digit in the ones place. (Because some people just can't handle numbers like 616 or 666, if the random 2 digit number is 61 or 66, the number needs to be regenerated.)
So you'd get something like this:
awesome_apple818
That should be easy enough for someone to read.
It was rhetorical, and perhaps I should apologize for that. I don't think the default username string should be anything; and if it must, I suggest "playername", as it is in other games.
If a player is unable to enter english alphabet characters into this string, that is a separate issue.
Well in the case of the filter I use on my servers, nicknames that are short enough are exempted from the filter anyway - my theory was that as the names get shorter, the chances of it looking like gibberish increase unfairly. Seems to be working okay so far. That said, you're right that a name like @0gb-us would probably get caught up in the filter.
I do like your two-dictionary-words idea, it has merit (it's good for passwords, too, so long as it isn't "correcthorsebatterystaple" :stuck_out_tongue: ).
Not sure how one would actually present such choices to the user though, without encouraging them to use only the few choices first visible on-screen (players seem to have a mental block against scrolling).
Not sure how one would actually present such choices to the user though, without encouraging them to use only the few choices first visible on-screen (players seem to have a mental block against scrolling).
I was thinking of the computer choosing randomly for the player, and then perhaps the player can edit that name after generation, right before connection to the server.
Just to make sure nobody uses the same or a similar username than anyone else, though, we would need 25 or more adjectives and nouns.
The username should also remain in the box to put your username after disconnecting a server, to avoid people making a user, mining materials and leaving the server, never being able to join back as the same user again to get those materials.
In which case, I guess it would be best to have that feature as a separate "Help me choose..." button that opens a new dialog/formspec, making it obvious what's going on.
We have the option to not allow empty passwords. Why not do the same for names?
I use the name_restrictions mod and set disallow_empty_password. We certainly should discourage the use of meaningless user names. I do like the idea of having a proper 'guest' account with settable reduced privs and a disposable auto-generated name, but that needs to be done without admin intervention, manually deleting player names is not desirable.
I'm not keen on the idea of having spectators on my server, but if there was a built-in mechanism I might use it.
By completely disallowing this guest situation, people will just either stay away or create an even worse one.
A random name is still better than guest#### and will be caught by anti-gibberish if needed.
You won't be able to force people into a proper nickname all the time anyway. Some people just want to check out minetest or a server.
If someone is too braindead to create a quickly improvised name they're not wanted on a server anyway. I don't agree with encouraging zombies.
First of all, choosing the system user name, which often is the actual real name of a person is a heavy breach of privacy. Not a good idea.
I agree.
A name generator is over-complex, all we need to do is prompt the player to enter a name, as in #5078
It seems like a lot of people would not choose a proper nickname before joining a server and according to my servers log not even choose any kind of password, they just click any server from the server list and try to join it by doubleclicking. This is not good for multiple reasons:
Sollution: minetest should tell you to choose a username and password before joining any server.