Facepunch / garrysmod-requests

Feature requests for Garry's Mod
84 stars 24 forks source link

Give the server browser genres #459

Closed ottworks closed 3 years ago

ottworks commented 9 years ago

As detailed in this post by TylerB:

I still think that genres in the server menu would be a good idea for filtering down gamemodes.

e.g.

All

  • all servers, no filtering.

Sandbox

  • Sandbox
  • Build To Kill
  • Sledbuild?

RP

  • DarkRP
  • HL2RP
  • BuildRP
  • etc

PvP

  • TTT
  • GunGaym
  • Murder
  • etc

Minigames

  • EFT
  • Fretta etc

Other

  • uncategorized?

it would at least make the lesser known servers not off the bottom of the page, right?

...

It'd be set the same way the gamemodes are set now.

GM.Genre = "RP" or something

if it's not a valid genre (as determined by the server list?) it'll fall into uncategorized

JoshuaDoes commented 9 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

ottworks commented 9 years ago

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.

ottworks commented 9 years ago

each individual gamemode would have to have it's category in the addon itself, not the server listings.

Care to elaborate?

JoshuaDoes commented 9 years ago

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.)

ottworks commented 9 years ago

And your point is?

JoshuaDoes commented 9 years ago

I'm just trying to show how one could abuse it if it were setup like that. No harm intended

willox commented 9 years ago

There would be a whitelist

ottworks commented 9 years ago

There's really no room for abuse. Anything not on the whitelist just gets dumped in the "other" section.

JoshuaDoes commented 9 years ago

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

JoshuaDoes commented 9 years ago

But yeah, it would probably just be uncategorized

willox commented 9 years ago

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.

ottworks commented 9 years ago

Or better yet use an enum. I like strings though, there's more room for customization.

JoshuaDoes commented 9 years ago

wiox: I don't mean to sound like I'm ruining an idea. It's just what I'm used to, sorry :/

TylerB260 commented 9 years ago

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?

TheFreeman193 commented 9 years ago

I'm all for this idea. I reckon it should be case insensitive and with some tolerance, though; e.g. RP, Roleplay.

AnonTakesOver commented 9 years ago

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

ottworks commented 9 years ago

The ratings. Miscategorizing your gamemode will only alienate you from the crowd you're catering to.

ottworks commented 9 years ago

Any official word on this?

SwadicalRag commented 9 years ago

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)

ottworks commented 9 years ago

That would be https://github.com/garrynewman/garrysmod/pull/815.

TylerB260 commented 9 years ago

Instead of having a moderated list of genres, perhaps we could just list the most populated genres?

ottworks commented 9 years ago

That would introduce the same issue that gamemodes have.

TylerB260 commented 9 years ago

How though? There's not going to be 20+ genres.

ottworks commented 9 years ago

I misunderstood.

DingoDown commented 3 years ago

Five years later and we're still using a shitty server browser...

robotboy655 commented 3 years ago

Duplicate of https://github.com/Facepunch/garrysmod-requests/issues/1593