Skip to main content

Well, I Was Wrong

The simplest way of doing this [defending against malicious synchronization] is by having each of the servers send each other the data that they receive from the others. This will allow each of the servers to compare the data, and figure out if it is manipulated. Only one check is needed because it is majority prof this way; as long as the majority of the servers are reporting the correct data, the individual servers can judge vote whether to kick a client or not.

-One Twenty Eight, April 10th, 2017, 5 AM GMT, in this post

Quick Note

I use the words "server" and "player" interchangeably; this article is focused on the type of decentralized server that has one server per player.

Nope

Umm... No. That is not right. That is definitely not right.

In case you did not read that article, I went over the technicalities of a decentralized video game round. During this, I declared that as long as the majority of servers are reporting accurate data, the server is protected from malicious desynchronizing attacks.

Looking back at this, I realize that I was wrong. The majority is not able to protect against desynchronization attacks. A person carrying out the attack only attacks a few of the servers running the round, which is not a majority, and only a majority is able to kick players. The only reason why desynchronization attacks on a majority are majority-proofed is because a majority of the servers have prof that a client is trying to desynchronize them.

If only one server out of all of them was receiving incorrect data, the other servers could easily think that the server is lying to them about being lied to.

Somehow, there needs to be a way for the servers to be able to make it impossible, or lucrative to carry out desyncronization attacks.

Trust

Most of the time, clients will be playing with clients that they have never played with before; in order for a client to trust another client, the other client has to be trusted by someone that they trust.

Every client will have a trust level tied to their account. When the client joins into a round, it must give its public key to the other servers, and a signed document saying that they accept that the servers may rate them however they like.

But the client is still in control, if it sees a server that it does not like, it can choose to not connect, or consent.

The signed document contains the round number, and the public key of the server it is given to. The client fist connects to all of the servers currently running the round, and finds the round number. The client will then look through the record of the servers; the client will look to see if there are many low rated players (more on this later.) If the client likes what it sees, it will give consent (the signed document) to all of the servers. The servers will then send the client their signed document. The client will not be admitted until all of the servers in the round say that they have revived consent from the client.

The server can, once at any point in the round, rate the client on a scale (recommended 0-15). The client will the have the rating perminitally connected to their public key.

This will stop almost all attempts to desynchronize the game. If a server is accusing a client of trying to desynchronize the game; the other servers can look to the plaintif's and defendant's rating, and judge weather or not the defendant is guilty or not. If the servers vote the defendant guilty, its rating will take a plunge; if the servers vote the defendant not guilty, the plaintiff's rating will take a plunge.

But there is always room for error; and it is almost impossible to fix all of the errors, because there are hundreds of variables, and way more possibilities of what those variables could be.

Why the Rank Matters

People who have the intent of giving innocent players low ranks will have a very hard time. If servers see that there is a player giving low ranks to innocent players, they can do the same to them, and will lower their trust throughout.

Time must also be spent in order to receive high ranks; and people who just want to give innocent players low ranks are not going to waste their time doing that.

But the thought that anyone with a low rank must be someone with malicious intent will push new players away from the game. To fix this, players should need to have rank to give rank.

Whatever overall rank the player ranking someone has, the ranks that they give will be multiplied by their rank (as a percentage or a fraction.) Someone who has a rank of 1/255 will have a smaller impact of a players rank than someone who has a rank of 184/255.

There is also the possibility that two players could rank up to 1/255, and then constantly upvote each other. This could be stopped by requiring a very small fee for ranking, so that money has to be spent to rank each other up; or by limiting a player from ranking another a certain amount of times each block, but this is still not perfect.

If the video game itself is centralized, the single system that keeps track of the ranks will not have any issues when preforming the weighting. But a decentralized video game will need a blockchain to run the rank. Each rating will be a "transaction." For each bock, the rating of players will be calculated from the transactions of all the completely confirmed blocks before that. There will be no variable transaction speed so that certain transactions don't get left behind for a long time.

Is it Even Possible?

No. A decentralized video game round is not possible by any means, there are way too many latency errors accociated with decentralization, and players will always find a way to cheat, no matter what.

The ranking system is pretty cool though, it could be used in a decentralized video game with decentralized rounds.

Comments

Popular Posts

Virtual Reality

Virtual reality seems to be the only topic that is being developed at all in the realm of video games. Right now, it looks to be that virtual reality will be the next revolution in video games; a third of employees at Valve are working on something related to virtual reality. But Isn't Every Video Game Some Kind Of Virtual Reality? Yes, every game is a virtual reality of some kind, but the virtual reality that I will be writing about is a virtual reality that is able to completely trick a sense into thinking it is real. The virtual reality developments going on today are developments in sight, the predominant sense in Humans . Saying that all video games are virtual realities is not accurate, because, to date, no video game has been able to accurately portray a reality indistinguishable to our senses than a real reality. The Moral Importance Of Virtual Reality In Language vlass, I read an essay titled, The moral Importance of Fiction and Literature th

Net Neutrality

Sigh... I really do not want to comment on this. It's never a good idea to get political; getting political makes people who don't agree with your views stop consuming your content, and people who agree with your values pressure you into saying things that you do not want, which will cause all of the previous. I will try to be as unbiased as possible. I live in the United States, so I will be writing from an American perspective, and using current events in American politics; however, this is still an issue that applies to everyone. What is Net Neutrality Net neutrality is the principle that Internet Service Providers (ISPs) must treat all [legal] traffic on the Internet equally; no service receiving better or worse treatment. What is a violation of net neutrality Take a person who desires to search Google for "hilarious cats failing jumps" or whatever. With net neutrality in place, the person's ISP is forced to treat Google equally as all

An Open Letter To Valve and the TF Team

Dear Valve, It is no question that your match making service for TF2 is horrible. Players are met with long wait times, unbalanced matches, and matches the end as soon as they get there. Players, much like me, get infuriated about how i get matched onto a loosing team at towards the end of the round every time . you need to change something about this process, Team Fortress Two is loosing players because of it. Before the Matchmaking Update Before the Matchmaking update, the "Valve Servers" were searchable servers that the client-slash-player could choose from. Servers would never stop, and players could set the round to be whatever map they wanted. Experiences players would join them to use the non experiences players as cannon fodder, and the non experiences players would join because they didn't know how to use the game yet. You most likely changed the way players join servers for this reason, so that newer players could go up against players that wouldn't

Late Shift

Some people say we're all connected, all part of a bigger picture; some harmonious flow, endless and meaningful. Maybe that's how it looks from a distance; but up close, with eyes open, I see no evidence of some spiritual choreographer at work. No, I see nothing but random fractals of a selfish, queenless hive. -Exert of the opening narration suggesting that the player is an omniscient, "spiritual choreographer" WARNING: I try to keep it to a minimum, but there are still spoilers. For the last two weeks, I have been playing a game called late Shift . Late Shift is the first choose your own adventure game, and originally came out in April of 2016. About a year after that, it was released on steam; the game looked interesting, so I bought it. I found multiple parts of the game, and its platform interesting, and I wanted to share them The trailer for Late Shift is below. There is language that may be considered offensive to younger audiences. Firs