Closed ottworks closed 3 years ago
This would be really nice. But for it to work out the way you expect, each individual gamemode would have to have it's category in the addon itself, not the server listings. And with this in mind, addons could potentially abuse it and add many different unneeded categories based on how you suggested it to work, as being able to use any valid alphanumeral character in the string for the Genre variable.
Sorry if I popped the bubble :D I just wanted to show the different sides of things :P ~JoshuaDoes
There would be a whitelist. GM.Genre would be set in the server tags (like how gamemodes already are) and the client would choose how to interpret those tags. Everything that's not on the whitelist would be put on the bottom or in the "other" genre.
each individual gamemode would have to have it's category in the addon itself, not the server listings.
Care to elaborate?
Every addon that features a gamemode would have to specify which category it belongs to. From the way I interpreted your example, it would use any string found in the GM.Genre variable. Therefore, not only would -- GM.Genre = "Roleplay" work, but someone could also do this: GM.Genre = "Spam1203928" (Just an example. There could be word filters, but you should get the point.)
And your point is?
I'm just trying to show how one could abuse it if it were setup like that. No harm intended
There would be a whitelist
There's really no room for abuse. Anything not on the whitelist just gets dumped in the "other" section.
The better way to do it is assign each allowed genre to a number, ex. 0 = Uncategorized, 1 = Roleplay, 2 = Scenery, 3 = Fun, 4 = PVP, etc And it would be assigned like GM.Genre = 0, and if a number is specified that is not assigned, that would be up to the programmer to choose whether or not to put it in uncategorized or just not list it at all
But yeah, it would probably just be uncategorized
How the hell is using arbitrary numbers better than a human-readable string? I feel like you're just trying to find holes in a semi-decent idea.
Or better yet use an enum. I like strings though, there's more room for customization.
wiox: I don't mean to sound like I'm ruining an idea. It's just what I'm used to, sorry :/
or, adding on to my original post, if the genre isn't in the whitelist, perhaps it could be plopped into the other section, which would list all of the other genres?
I'm all for this idea. I reckon it should be case insensitive and with some tolerance, though; e.g. RP, Roleplay.
This is a good idea, but what's stopping someone changing their genre to something else? Like changing an rp to sandbox etc. I know it wouldn't be a massive deal but if lots of people do it, than it is.
However, the main suspects for this will be rp, so i reckon you should check the gamemode name to see if it contains "rp" in it, and force it's genre to Roleplay
The ratings. Miscategorizing your gamemode will only alienate you from the crowd you're catering to.
Any official word on this?
Also, something semi related, are we looking into changing the server priority calculations? I saw another issue/request about it, looks like it got buried.
For reference, just in case: https://github.com/garrynewman/garrysmod/blob/8b51995acc6c042cf7afc538ef3897a961aee33f/garrysmod/html/js/menu/control.Servers.js
data.recommended = data.ping;
if ( !data.hasmap ) data.recommended += 20; // We don't have that map
if ( data.players == 0 ) data.recommended += 100; // Server is empty
if ( data.players == data.maxplayers ) data.recommended += 75; // Server is full
if ( data.pass ) data.recommended += 300; // If we can't join it, don't put it to the top
(the higher data.recommended is, the lower the server is on the serverlist)
That would be https://github.com/garrynewman/garrysmod/pull/815.
Instead of having a moderated list of genres, perhaps we could just list the most populated genres?
That would introduce the same issue that gamemodes have.
How though? There's not going to be 20+ genres.
I misunderstood.
Five years later and we're still using a shitty server browser...
As detailed in this post by TylerB:
...