Vote to Kick/Ban

Post your ideas and suggestions how to improve the game.
vtx
Fast Inserter
Fast Inserter
Posts: 150
Joined: Tue Jun 28, 2016 9:48 am
Contact:

Re: How to deal with griefers

Post by vtx » Thu Mar 16, 2017 7:25 pm

torne wrote: I don't know how the account verification system in Factorio currently works, and it's very likely that it *doesn't* currently work in a way that would permit this, but it's possible in principle to have a system such that one game server can prove to a third party (cryptographically) that a given player was actually connected to the server, in an unspoofable way, if it had the central authentication server's help. If that was available, then you could use that to build a system that could tell you how many servers a player has been banned from, and use that to evaluate whether you want them to connect or not. If you connected to a server run by mean people, they could indeed ban you and get you a single "black mark", but they wouldn't be able to report you over and over unless you connected to a bunch of other servers run by the same people. It could still be up to every individual server what the standard/systems are for you to get banned, and how many servers you have to have been banned from for the server to not let you on in the first place.
You can see the account verification as a READ ONLY data on factorio server. The fact to allow game server to WRITE data on factorio server. It's easy to "hack" directly that data so some people can affect your reputation without you to connect to their server.
DerivePi wrote:
torne wrote:I wouldn't be, I've done that to myself by accident enough times and had to clean up the mess (or even deal with defenses failing) as a result, so I'd find it pretty maddening if somebody did it on purpose
Then I have to say that you shouldn't be playing multiplayer. You can detect when something is changed you can't detect the purpose the player had in mind for changing it. Of course, as a last option you can beg the admin, if present, to kick that player.
torne wrote: I don't think that you can define a set of actual systems that dictate what constitutes "reportable" behaviour.
Of course you can. There is definitely a framework of rules that can be crafted (and should be) that emphasizes "fun" over unfair. I personally don't care for the global report system. I just want them removed, after due process, from the game I'm currently playing. Just give me a button that says "Do you want JackA removed from the game for griefing?" If a majority click yes, griefer is gone. Back to fun. Due process would be the occurrence of a specific offense as detected by the system, the lodging of a complaint and then a vote.
The griefing is subjective to everyone and not everyone have the same definition of what gried them. You can simply /kick or /ban someone a /votekick can be used against normal players.

torne
Filter Inserter
Filter Inserter
Posts: 272
Joined: Sun Jan 01, 2017 11:54 am
Contact:

Re: How to deal with griefers

Post by torne » Thu Mar 16, 2017 8:25 pm

DerivePi wrote:Then I have to say that you shouldn't be playing multiplayer. You can detect when something is changed you can't detect the purpose the player had in mind for changing it. Of course, as a last option you can beg the admin, if present, to kick that player.
..yes, which is why I'm not proposing a system that relies on detecting people's purposes (or indeed suggesting any mechanism to decide who to ban at all).
DerivePi wrote:
torne wrote: I don't think that you can define a set of actual systems that dictate what constitutes "reportable" behaviour.
Of course you can. There is definitely a framework of rules that can be crafted (and should be) that emphasizes "fun" over unfair. I personally don't care for the global report system. I just want them removed, after due process, from the game I'm currently playing. Just give me a button that says "Do you want JackA removed from the game for griefing?" If a majority click yes, griefer is gone. Back to fun. Due process would be the occurrence of a specific offense as detected by the system, the lodging of a complaint and then a vote.
I'm also not saying it's impossible to come up with any rules for a server, or have any system for voting on bans, or anything. I'm responding to the idea that you can have the *game* detect these situations in a sensible way. Humans can come up with any kinds of rules and systems they want, and there's lots of possible useful ideas there, but as you said yourself it's pretty hard for the game to judge intent.
vtx wrote:You can see the account verification as a READ ONLY data on factorio server. The fact to allow game server to WRITE data on factorio server. It's easy to "hack" directly that data so some people can affect your reputation without you to connect to their server.
I don't think you understood what I'm trying to explain here, because I didn't really flesh it out that much. This isn't about allowing anyone to write to data on the factorio server (or the factorio server having anything to do with this process whatsoever other than login attestation) - this is about enabling someone to run a service that individual game servers can use to report and judge people's reputations, while preventing servers from submitting reports about players who have never interacted with that server.

The account verification system currently provides a mechanism to check that players are who they say they are and that they own the game - nobody can go on a server that has verification enabled and claim they are "torne" except for me. This works by the server talking to both my client and the verification server and using a bit of cryptography: simplified, my client sends some data that identifies me, the server I'm connecting to forwards that data to the verfication server, and the verification server tells the server whether it's "legit" or not.

What I'm suggesting is that it would be possible to do that same process in a way that leaves the server I'm connecting to with a piece of data that basically says "torne connected to this server at this date/time", which would be possible for *anyone* to verify as being true, and which nobody can forge unless they know my account password. If the login process worked like this (which it probably doesn't right now), then someone could come along and use that as the basis to invent a reputation service. Servers could use this proof to submit reports about that user (good or bad, whatever form you wanted to have, entirely up to whoever makes the service), and while obviously the server might say "they're a griefer" when they're not, what it couldn't do is make a report about you if you'd never been on that server. So, a bunch of evil people could ban you from their server for no reason, and report that to a service, but they can't submit 500 separate reports about you unless you connect to 500 different evil servers.

This doesn't involve Wube actually getting involved in the process of saying who is a griefer or not, and there could be more than one different service tracking stuff - it would be entirely up to server operators which services they interact with, and what conditions they use to determine who to allow onto their server, or who to report. The only part that actually has to be implemented in the game itself is the cryptographic mechanism to prove someone was really connected to the server in the first place, without which it is indeed easy to just submit a huge number of completely made up reports about people.

I've experimented with building distributed reputation systems before and there's a lot of different ways to handle the reputation aspect, but what you always need as a starting point is a secure system of *identity* for proving who is who.

User avatar
ssilk
Global Moderator
Global Moderator
Posts: 10448
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: How to deal with griefers

Post by ssilk » Fri Mar 17, 2017 8:09 am

It might be useful to see, how bitcons blockchain works, cause I think that is the kind of idea that you have in mind.
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...

torne
Filter Inserter
Filter Inserter
Posts: 272
Joined: Sun Jan 01, 2017 11:54 am
Contact:

Re: How to deal with griefers

Post by torne » Fri Mar 17, 2017 11:04 am

ssilk wrote:It might be useful to see, how bitcons blockchain works, cause I think that is the kind of idea that you have in mind.
Not really :) It doesn't have to be that complicated; someone can just run a server that keeps track of reports. The crypto part is only relevant for the game account authentication and is going to be pretty similar to how it already works.

vtx
Fast Inserter
Fast Inserter
Posts: 150
Joined: Tue Jun 28, 2016 9:48 am
Contact:

Re: How to deal with griefers

Post by vtx » Fri Mar 17, 2017 1:19 pm

@torne I agree with you if the validated user use some crypto that kind of tool can be used and offer a layer of security. But I highly doubt when game server talk with factorio server that data use any crypto and mostly use plaintext to do that.

-Game server received request login from user torne
-Game server ask factorio server : do you know torne ?
-Factorio server respond : yes I do

Then :

-Game server received request login from user griefer
-Game server ask factorio server : do you know griefer ?
-Factorio server respond : Not found

You can allready check if a user exist by using mod portal webpage like that :
https://mods.factorio.com/mods/torne
https://mods.factorio.com/mods/griefer

I don't think factorio lua allow using socket so there is no way to create a third party service of reputation. Without a Centralized server to hold reputation service like factorio server it's pointless to have that kind of tool if it's per game server imo. Then if they hold that on factorio server they will need to add support for that service to fix false positive /report that prevent 2 friends to play together because one of them have too low reputation. Or a Staff have to check logs for hacking that affect many players.

I don't think that kind of tool worth their time they need to put and maintain that said service.

mrvn
Smart Inserter
Smart Inserter
Posts: 3125
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: How to deal with griefers

Post by mrvn » Fri Mar 17, 2017 3:30 pm

DerivePi wrote:
torne wrote: I don't think that you can define a set of actual systems that dictate what constitutes "reportable" behaviour.
Of course you can. There is definitely a framework of rules that can be crafted (and should be) that emphasizes "fun" over unfair. I personally don't care for the global report system. I just want them removed, after due process, from the game I'm currently playing. Just give me a button that says "Do you want JackA removed from the game for griefing?" If a majority click yes, griefer is gone. Back to fun. Due process would be the occurrence of a specific offense as detected by the system, the lodging of a complaint and then a vote.
Player 1 -> Player 2: Hey, player 2. I see you are where I put iron and copper on a belt. Could you please make it so they are on the opposite sides?
Player 2 -> Player 1: Sorry, to change that I would have to grief and those stupid strict rules on this server won't let me.

I'm pretty sure by "a set of actual systems" me means some code on the server that monitors what you do and then says if that is griefing or not. And I'm damn sure that if you could define such a system you would have something that could pass the turing test playing factorio. As in you would not be able to say if it is a player or AI in a multiplayer game.

User avatar
DerivePi
Filter Inserter
Filter Inserter
Posts: 504
Joined: Thu May 29, 2014 4:51 pm
Contact:

Re: How to deal with griefers

Post by DerivePi » Fri Mar 17, 2017 4:54 pm

mrvn wrote:Player 1 -> Player 2: Hey, player 2. I see you are where I put iron and copper on a belt. Could you please make it so they are on the opposite sides?Player 2 -> Player 1: Sorry, to change that I would have to grief and those stupid strict rules on this server won't let me.
OK, interesting scenario but its already covered under my suggested rules.
DerivePi wrote:1. Changing small stuff (belts, inserters, power poles, 1 or 2 assemblers over a countdown timer...) is never griefing.
2. Changing big stuff is not griefing if:
- The person who built it doesn't complain (if a deconstruction limit of their factory is met by another player they are prompted to complain to that player and that player receives a warning)
- The person who is deconstructing stops and waits through a countdown for the complaint to be dismissed
- A quorum of the rest of the players don't agree that it was griefing. After continuing to deconstruct the rest of the players are notified of the complaint and allowed to vote on kicking that player.


Any other holes you can try to poke?

boksiora
Long Handed Inserter
Long Handed Inserter
Posts: 89
Joined: Thu Mar 10, 2016 7:45 pm
Contact:

Re: How to deal with griefers

Post by boksiora » Sat Mar 18, 2017 12:30 am

OK LISTEN


You all have gone to deep,

here is the simple solution



1) you can only use /report command once a day
2) to use /report you must be verified user
3) on player join the server send request to central factorio server to check if player is reported in the past


That's it!

How can you exploit that ?

Koub
Global Moderator
Global Moderator
Posts: 4614
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: How to deal with griefers

Post by Koub » Sat Mar 18, 2017 6:38 am

You can deal with griefers the same way you can deal with vandals in real life.
Koub - Please consider English is not my native language.

mrvn
Smart Inserter
Smart Inserter
Posts: 3125
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: How to deal with griefers

Post by mrvn » Mon Mar 20, 2017 11:42 am

boksiora wrote:OK LISTEN


You all have gone to deep,

here is the simple solution



1) you can only use /report command once a day
2) to use /report you must be verified user
3) on player join the server send request to central factorio server to check if player is reported in the past


That's it!

How can you exploit that ?
Goody Twoshoes reports Griefy Mac Griefanson. For the next month every day Griefy Mac Griefanson then reports Goody Twoshoes in retaliation. Now you have a report war.


Here is a totaly different idea. Why not take an idea from many other games. :) In multiplayer survival mode you can usually claim land. Once you have claimed land you decide who can alter things there. A griefer can fell trees, kill sheep, dig holes but only on unclaimed land. Unless the owner gives him permission and then you can't call it griefing. If someone abuses the trust the owner can just revert the permissions.

Now for how to claim land I would suggest one of three options:
  • everything placed by a player claims a bit of land around it. little for belts, more for gun turrets
  • only turrets claim land or a new claim land building is added
  • like above but land surrounded by claimed land is also claimed
And there is a second advantage to this idea. Consider adversarial multiplayer games. Griefing would be the point of the game and players would claim ore deposits to deny the enemy the resources. Other players would have to attack whatever claims the ore before they could build their own mine there. You could have teams, alliances, even selling and buying claims.

Sieneskil
Manual Inserter
Manual Inserter
Posts: 1
Joined: Tue Mar 21, 2017 9:19 am

Re: How to deal with griefers

Post by Sieneskil » Tue Mar 21, 2017 9:25 am

Best thing to do is to simply go to their Steam profile and block them. They will be unable to join any server as long as you are there. So far I have blocked 138 griefers, and it definetly has made a pretty big difference as I almost never come across a griefer these days.
Last edited by Koub on Tue Mar 21, 2017 11:50 am, edited 1 time in total.
Reason: Removed advertisement from signature

User avatar
darkfrei
Smart Inserter
Smart Inserter
Posts: 1888
Joined: Thu Nov 20, 2014 11:11 pm
Contact:

Re: How to deal with griefers

Post by darkfrei » Tue Mar 21, 2017 3:45 pm

Sieneskil wrote:Best thing to do is to simply go to their Steam profile and block them. They will be unable to join any server as long as you are there. So far I have blocked 138 griefers, and it definetly has made a pretty big difference as I almost never come across a griefer these days.
You have factorio nickname, not the steam nickname.

daniel34
Global Moderator
Global Moderator
Posts: 2757
Joined: Thu Dec 25, 2014 7:30 am
Contact:

Re: How to deal with griefers

Post by daniel34 » Thu Mar 23, 2017 8:42 am

darkfrei wrote:
Sieneskil wrote:Best thing to do is to simply go to their Steam profile and block them. They will be unable to join any server as long as you are there. So far I have blocked 138 griefers, and it definetly has made a pretty big difference as I almost never come across a griefer these days.
You have factorio nickname, not the steam nickname.
Ignore the answer from Sieneskil, the whole text was copied verbatim from a 7 month old comment to an anti-griefing guide for a shooter on Steam. Looks like a spambot to me.

Ghoulish
Filter Inserter
Filter Inserter
Posts: 306
Joined: Fri Oct 16, 2015 8:40 am

Re: How to deal with griefers

Post by Ghoulish » Thu Mar 23, 2017 10:32 am

A player joins a server and has a number assigned to them, normal users are say 10. Anything this player builds will be flagged as level 10 (lowest possible). A regular then joins the server and this person has a user level of 5 (it's set in the servers config). User level 5 can deconstruct anything that the player with 10 built, but player level 10 cant deconstruct anything that 5 built (or anything by players with 1 though 9 user levels). The root account would be 1 and this would be the admin account, who can do what they like.

So the public would have level 10 as default, and regulars less that 10, with the admin only being on 1, so anything the admin account built no one else could deconstruct.

Is this a good idea? Easily implemented? (I'm thinking not) Though the big question would be performance impact as well as time.

vtx
Fast Inserter
Fast Inserter
Posts: 150
Joined: Tue Jun 28, 2016 9:48 am
Contact:

Re: How to deal with griefers

Post by vtx » Thu Mar 23, 2017 10:45 am

Ghoulish wrote:A player joins a server and has a number assigned to them, normal users are say 10. Anything this player builds will be flagged as level 10 (lowest possible). A regular then joins the server and this person has a user level of 5 (it's set in the servers config). User level 5 can deconstruct anything that the player with 10 built, but player level 10 cant deconstruct anything that 5 built (or anything by players with 1 though 9 user levels). The root account would be 1 and this would be the admin account, who can do what they like.

So the public would have level 10 as default, and regulars less that 10, with the admin only being on 1, so anything the admin account built no one else could deconstruct.

Is this a good idea? Easily implemented? (I'm thinking not) Though the big question would be performance impact as well as time.
As long it's optional. As I play with friends this kind of tool will just be an unacessary performance costs, also I like that my friend can remove entity I place save me time to return to that place just to remove them.

Robots did not belongs to anyone, so they can bypass this system.

mattj256
Fast Inserter
Fast Inserter
Posts: 203
Joined: Sun Mar 27, 2016 7:25 am
Contact:

Re: How to deal with griefers

Post by mattj256 » Sat Mar 25, 2017 5:25 am

When a player is kicked or banned, I would love for that to be aggregated somewhere.
The actual decision of whether to kick or ban should be left in human hands.

Admins should be able to set some threshold of who is allowed to join their server. (Example: no more than three bans in the last 30 days.) Factorio is a game about automation!

User avatar
darkfrei
Smart Inserter
Smart Inserter
Posts: 1888
Joined: Thu Nov 20, 2014 11:11 pm
Contact:

Re: How to deal with griefers

Post by darkfrei » Sat Mar 25, 2017 10:02 am

mattj256 wrote:When a player is kicked or banned, I would love for that to be aggregated somewhere.
The actual decision of whether to kick or ban should be left in human hands.

Admins should be able to set some threshold of who is allowed to join their server. (Example: no more than three bans in the last 30 days.) Factorio is a game about automation!
I was banned one time for nothing. It was very big factory and we have all smelting in electrical furnaces. In few days we have less and less energy, and it was easy option how to fix it: Efficiency Module, we can save around 80% of energy in smelting production.
I made assemblers, that do modules and was banned for it. Am I griefer or admin was not too smart?
Last edited by darkfrei on Sat Mar 25, 2017 8:10 pm, edited 1 time in total.

User avatar
ssilk
Global Moderator
Global Moderator
Posts: 10448
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: How to deal with griefers

Post by ssilk » Sat Mar 25, 2017 12:24 pm

Well, as the game feels for me now, we are in the stage of kindergarten: All play in sandbox, the bad guy comes and destroys the sandcastle and all cry.
And there are also the masters of the sandbox: if you build a roof on the tower and the master don't likes it you are kicked out of the sandbox.
Or the small brother of the sandbox-master destroys your bridge and you get kicked.
And so on... there are hundreds of such cases.

It's not always the bad guys from outside, that destroys a good game.

In reality there are more consequences, if you do this or do that and all we need is to adapt the (already) working (and the right!) mechanisms of reality into the game.

Sounds wired. Is wired. Is super complex. But there is and will never be an easy solution for this problem.
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...

mattj256
Fast Inserter
Fast Inserter
Posts: 203
Joined: Sun Mar 27, 2016 7:25 am
Contact:

Re: How to deal with griefers

Post by mattj256 » Fri Mar 31, 2017 10:38 am

darkfrei wrote:I made assemblers, that do modules and was banned for it. Am I griefer or admin was not too smart?
Based on what you've said it sounds like the admin made a mistake. Punishing you (or anyone) for an admin's mistake is foolish. What I was trying to say is that if a player is repeatedly being kicked or banned, Factorio should provide some mechanism to help admins deal with that. (I'm not sure if this should be the Factorio developers or a third party.)

heiwashin
Manual Inserter
Manual Inserter
Posts: 1
Joined: Wed May 17, 2017 12:57 am
Contact:

Re: ANTI-GRIEFING System

Post by heiwashin » Wed May 17, 2017 1:05 am

I agree that a better ban control system needs to be in place. I request only a mod level user with more limited powers, only being able to ban and unban, with all cheats disabled. It's fairly easy to promote people you see behaving on a server for only a few minutes, and so far i've had no issue doing so on three dedicated servers. There is a risk associated with it, so i would also like chat logs to be included in the server logging, verbose or not.

I'm aware that command removal is possible in the experimental version and i think that i would be satisfied with using that to remove cheat commands. I'm assuming it should also be possible to write a script to output chat to a file, i'll probably do it later, but i imagine including that in the logs is trivial work.

Post Reply

Return to “Ideas and Suggestions”

Who is online

Users browsing this forum: No registered users