Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the contact cvar and server info string to contain contact information to reach out the server admin when needed #1465

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

illwieckz
Copy link
Member

@illwieckz illwieckz commented Dec 16, 2024

  • sv_init: add the contact cvar and server info string to contain contact information to reach out the server admin when needed
  • common: disable logging suppression in Info_Print() (used by commands like /systeminfo and /serverinfo)

@illwieckz
Copy link
Member Author

The abuse system info string can be read (if set) inside the game with the /serverinfo command, and outside of the game with this command:

qstat -R -unvanquisheds <server>

The idea is that we will encourage public server owners to give some contact information, be it a chat or forum nick, or email address, or whatever we can use to reach them.

This could be usable to reach out server admins outside of the game for processing abusive behavior from players. It is why it is named abuse, like the abuse mail address convention.

This could also be usable to reach out server admin to tell them to update their servers.

Actually writing there the forum nick may allow us to integrate the web server list with the forum private message feature. At some point we may recommend this.

@illwieckz
Copy link
Member Author

At some point we may enforce this string to be set for starting public servers. People will still be free to put garbage there so giving information will still not be mandatory, but it would be mandatory for the public server owner to decide to not give contact information on purpose.

So people wanting to remain fully anonymous (even not disclosing their forum/chat nick name) but actually doing things right would not be bothered.

But if we need to contact a server owner because of abusive behavior not being processed and we discover the server owner intentionally doesn't want to be reached out, we may decide to blacklist the server. So basically it would help to make the difference between neglect and intentional ill-will.

That's why I believe we may require that value to be set in the future for starting public servers, as making it a requirement:

  • doesn't require good people to leave anonymity if the admin job is done right,
  • would help making the difference between good will and bad will if the admin job isn't done right,
  • it would encourage nice people to give contact information so it help us coordinating things in a better way.

What we can do is to have it optional (with the warning) for the next version and the next-next version would make it required.

@@ -437,6 +440,12 @@ void SV_SpawnServer(std::string pakname, std::string mapname)
SV_ShutdownGameProgs();

PrintBanner( "Server Initialization" )

if ( SV_Private( ServerPrivate::Public ) && cvar_abuse.Get().empty() )
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The condition is inverted here. Also I suggest including sv_networkScope so that it matches the condition for advertising to the master server. So !SV_Private(ServerPrivate::NoAdvertise) && sv_networkScope >= 2

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is still not fixed

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

@@ -52,6 +52,9 @@ static Cvar::Cvar<std::string> cvar_pakname(
"pakname", "pak containing current map", Cvar::SERVERINFO | Cvar::ROM, "");
static Cvar::Cvar<std::string> sv_paks(
"sv_paks", "currently loaded paks", Cvar::SYSTEMINFO | Cvar::ROM, "");
static Cvar::Cvar<std::string> cvar_abuse(
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why call it "abuse" if that's not the main motivation for providing it? How about "contact" or "admin"

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can be named contact, I first named it admin but then it sounded weird because there are other admin* commands and this would be confusing. Then my next example in mind was the abuse@ mail address convention. But I'm fully open to other names, like contact.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I renamed to contact.

@illwieckz illwieckz changed the title Add the abuse cvar and server info string to contain contact information to reach out the server admin when needed Add the contact cvar and server info string to contain contact information to reach out the server admin when needed Dec 16, 2024
@illwieckz illwieckz force-pushed the illwieckz/abuse branch 3 times, most recently from 0050dbf to e8eeed3 Compare December 17, 2024 18:16
@slipher
Copy link
Member

slipher commented Dec 19, 2024

A commented-out example in dist/configs/config/server.cfg would be good.

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants