Challenge #2

General Stuff about Armagetron, That doesn't belong anywhere else...
User avatar
philippeqc
Long Poster - Project Developer - Sage
Posts: 1526
Joined: Mon Jul 12, 2004 8:55 am
Location: Stockholm
Contact:

Challenge #2

Post by philippeqc »

Hi everybody!

The Challenge #1 will come soon to an end, so time to put a last bit of effort on it.

For the second challenge, I've readjusted myself. Rather than starting from a "close to the metal" situation, I used a situation that is more general, and should be more accessible to all of the a/aa players. And it is about the game we all love.

As before, there is not one good anser. And I surely do not have it. So just justify a bit yours in a way that your point is carried clearly.

In the question, I suggest a way to structure your answer. But if it doesnt fit your answer or yourself, then just ignore it! And remember, participation is the most important aspect, and the only bad answer you can give is not to answer!

Not all the questions are equal, or are targetted at the person with the same interests. After the questions, I present a bit who I think should anser which question. So dont stress and give up as you go through the questions! If you feel you need some clarification, some hints how to address the problem, or a good old push in the back, dont hesitate to contact me.

But enough discussion, and let us have:

-----
Challenge #2

Not so long ago, in the middle of a game I was ask by a fellow player "Could it be possible to have the server kick players that have a very high ping?". I thought is was a very good question and that it could lead to many good discussions. The problem is that having one player with an very high ping really affect the experience for all the players present. So:

1. Can you identify some situations that causes a player to have a very high ping? (If you have many, try to separate them in something that could be along the lines of "the ones the player has some control over" and "the ones that the player has no control over").

2. Automatically kicking players with a very high ping would surely 'fix' the problem.
a) What would be the drawbacks of such an automated method?
b) Explore alternatives where the drawbacks you identified would be minimized or even removed.

[Very very veyr optional question]
3. In this challenge I use the term "very high ping" very loosely.
a) Can you come up with a more accurate definition for it?
b) Can you determine some range of value for "very high ping", and describe the effect on the game. Determined person should even try to describe the experience for both the person having the very high ping and for the rest of the players.

------
Personnaly, I feel that most people in this forum should be able to tackle question 2-a. I would like to take all of your answers on this question and re-post them so after this challenge, we can have a discussion about them. I would feel this challenge is a big success if you really tryied on that question.

Question 2-b, well unless you have a stroke of genius and suddenly feel illuminated, or are the kind of person who can sleep if you know there is a problem out there that hasn't been solved, it may prove very difficult to answer. Just have a try at it. Even if you have wacky half-baked ideas, they could inspire someone else.

Question 1 is there for the person who like to learn a bit more. If you feel you dont have any idea what could cause it, feel free to search in the forums or ask the other players during a game.

If you feel you already know some of the causes, then maybe a bit of research on the topic is more for you. Try and anser some of the following through your research: What causes the high ping in the situations you identified? What can be done about it? What are some of the technical terms that describe the situation you identified? Of course, theses are only suggestions, feel free to use your own ideas if you choose to tackle this part.

Question 3 is there to spark the mind of someone who feel inspired by the problem of "very high ping" in the game. If you feel like that kind of person, but dont like the 2 elements stated, feel free to come up with your own.

As stated in the introduction, I offer myself to help anyone who request it.

The dead line is in 2 weeks, to give everybody a good oportunity to try. So somewhere before the 6 of december, you should send me your answer at (my username on the forum) @gmail.com

Good luck

-ph
Canis meus id comedit.
User avatar
Lucifer
Project Developer
Posts: 8640
Joined: Sun Aug 15, 2004 3:32 pm
Location: Republic of Texas
Contact:

Re: Challenge #2

Post by Lucifer »

Modified for fairness in response to Philippe's request.
Last edited by Lucifer on Mon Nov 22, 2004 9:41 am, edited 1 time in total.
User avatar
Lackadaisical
Shutout Match Winner
Posts: 823
Joined: Sun Dec 21, 2003 4:58 pm
Location: Amsterdam, Netherlands
Contact:

Re: Challenge #2

Post by Lackadaisical »

philippeqc wrote: b) Explore alternatives where the drawbacks you identified would be minimized or even removed.
An alternative would be if the person in question would leave by himself. This could be achieved by making clear that he is ruining the game (and the fun that acompanies this) for other players. If he doesn't care about the welfare of other people, he is clearly an asshole, and thus he should be kicked manually.
User avatar
philippeqc
Long Poster - Project Developer - Sage
Posts: 1526
Joined: Mon Jul 12, 2004 8:55 am
Location: Stockholm
Contact:

Post by philippeqc »

please send your answers in private to let everybody a chance to attempt the challenge.

It's not a race for whom ever writes an answer first, but an occasion for everyone to reflect and come up with their own answers.

Lucifer: You identify one scenario that you have observed as you are a sysadmin. It is good that you incorporate your own personnal experience in the challenge.

Lackadaisical: Good answer. I think you should try yourself on the other questions.

All: please edit your posts so others can answer by themselfs

-ph
Canis meus id comedit.
User avatar
Tank Program
Forum & Project Admin, PhD
Posts: 6711
Joined: Thu Dec 18, 2003 7:03 pm

Post by Tank Program »

i think this challenge is one i can handle
Image
User avatar
subby
Shutout Match Winner
Posts: 1199
Joined: Sun Dec 21, 2003 1:18 am
Location: A cave, Melbourne, Australia.

Post by subby »

Phillipe I think you need to define what you think a high ping would be:

300+
400+
500+


etc otherwise there is no definitive answer....
User avatar
philippeqc
Long Poster - Project Developer - Sage
Posts: 1526
Joined: Mon Jul 12, 2004 8:55 am
Location: Stockholm
Contact:

Post by philippeqc »

subby wrote:Phillipe I think you need to define what you think a high ping would be:

300+
400+
500+


etc otherwise there is no definitive answer....
I refer to question 3-a)
3. In this challenge I use the term "very high ping" very loosely.
a) Can you come up with a more accurate definition for it?
I volontary chose this unclear term. I wanted to give everyone an opportunity to reflect on it. You can give a numerical answers (ie: a very high ping its anything above 1 million milisecond). Or you can give a more abstract answer that doesn't start from some value. Some hints are provided in white text at the end of this message if thats for you.

I try to make the challenge a open, so that everybody can find something in it for them. If someone want to answer everything in five minute, then for them its a five minute challenge. If someone feels that (s)he cant write an answer before having skribbled on a piece of paper, then thats the answer that person will give. But all the answer are good and welcomed.

It is not a quiz. This is not school. It is not about if you "know" or "dont know" the answer. Its a challenge. I _hope_ it gives you a place to ponder about a question. Or at least an opportunity to learn something. But that's me.

The only thing you should worry about is "Did you get out of this challenge what you expected to get out of it?" No, then you know what you have to do. Yes, then its ice cream time!

Otherwise, keep your mind working and your answers coming.

-ph

Darn, what is the color of the background! I couldn't find it!

DO NOT READ THE FOLLOWING IF YOU DONT WANT ANY HINTS
A qualitative answer could try to explain what a very high ping is only through description of game behavior. A quantitative answer could try to answer in descriptive terms, for exemple human perception, reflex times, information propagation. Again, these are just from the top of my head, walk the path that suits you.
Canis meus id comedit.
User avatar
philippeqc
Long Poster - Project Developer - Sage
Posts: 1526
Joined: Mon Jul 12, 2004 8:55 am
Location: Stockholm
Contact:

Post by philippeqc »

One week left before the end of the challenge!

fun mode:
I have already received an answer from someone who recently joined the forum. Will the veterans of guru3 just bow down in defeat to the new generation, or will they show the advantage of wisdom and experience? Will anyone considering themself new member of the forum let this participant stand along versus the titans? Only you can influence this, by participating NOW!

-ph
Canis meus id comedit.
User avatar
SuPeRTaRD
Round Winner
Posts: 300
Joined: Fri Nov 05, 2004 11:53 pm
Location: bedlam
Contact:

Post by SuPeRTaRD »

did i win yet?

do i get a car or huge sum of cash, or anything?

hmmmmm?

if you're having trouble picking out a car, a 66 chevelle would be nice

but anything old & not a ford is ok.. unless its REALLY old & then fords ok too.

u gonna post my uber-intelligent contest winning entry?

(i need a car!)
User avatar
SuPeRTaRD
Round Winner
Posts: 300
Joined: Fri Nov 05, 2004 11:53 pm
Location: bedlam
Contact:

Post by SuPeRTaRD »

first letter:
-------------------------------------------------
i think this is a good idea, especially if you could make it where it senses someones ping staying high, not just peaking above a certain level for 1 second.. like if it stays above 600 for more than 15 seconds, that person should deffinately get kicked..

-supertard
-------------------------------------------------



second letter:
-------------------------------------------------
re-read the questions, i should go into more depth..


1. Can you identify some situations that causes a player to have a very high ping?

(If you have many, try to separate them in something that could be along the lines of "the ones the player has some control over"
TRYING TO PLAY WHILST DOWNLOADING

and "the ones that the player has no control over").
BEING DIALUP :-)
BEING DIALUP & CONNECTING TO OVERSEAS SERVER
(still... i rarely get over 400 ping in that situation ^)



2. Automatically kicking players with a very high ping would surely 'fix' the problem.
a) What would be the drawbacks of such an automated method?
Ping spikes would kick people, unless the fix watched for a steady high ping
I've seen everyone on a server ping above 1000 b4 when lots of packets are being dropped..
so, the fix should look for someone with a steady high ping or it would eventually become frowned upon
by all, IMO

b) Explore alternatives where the drawbacks you identified would be minimized or even removed.
poll for a 600+ ping that lasts 20+ seconds or so

[Very very veyr optional question]
3. In this challenge I use the term "very high ping" very loosely.
a) Can you come up with a more accurate definition for it?
Some people have blatantly high pings when they are downloading something in the background
like 900+

b) Can you determine some range of value for "very high ping", and describe the effect on the game.
700+ is VERY HIGH ping... pretty much inexcusable if it lasts for more than a few seconds.

Determined person should even try to describe the experience for both the person having the very high ping

Laggy/jumpy graphics, innability to "race" anyone.. a.k.a. you will be MANY bike lengths behind where u are shown on screen

and for the rest of the players.
reverse lag: a.k.a. sliding, warping,.. inexplicably blowing up <-- warping into outer rim
mostly just really bad slides.. like driving for many seconds blind, or with very little to go on by whats showing up on your screen..


hope that helps!

:-)
---------------------------------------------
User avatar
philippeqc
Long Poster - Project Developer - Sage
Posts: 1526
Joined: Mon Jul 12, 2004 8:55 am
Location: Stockholm
Contact:

Post by philippeqc »

SuPeRTaRD wrote:first letter:
-------------------------------------------------
i think this is a good idea, especially if you could make it where it senses someones ping staying high, not just peaking above a certain level for 1 second.. like if it stays above 600 for more than 15 seconds, that person should deffinately get kicked..

-supertard
-------------------------------------------------



second letter:
-------------------------------------------------
re-read the questions, i should go into more depth..


1. Can you identify some situations that causes a player to have a very high ping?

(If you have many, try to separate them in something that could be along the lines of "the ones the player has some control over"
TRYING TO PLAY WHILST DOWNLOADING

and "the ones that the player has no control over").
BEING DIALUP :-)
BEING DIALUP & CONNECTING TO OVERSEAS SERVER
(still... i rarely get over 400 ping in that situation ^)
I'm unable to locate my notes, so I dont know if I had found other items here. The answer from super was what I was expecting.
SuPeRTaRD wrote: 2. Automatically kicking players with a very high ping would surely 'fix' the problem.
a) What would be the drawbacks of such an automated method?
Ping spikes would kick people, unless the fix watched for a steady high ping
I've seen everyone on a server ping above 1000 b4 when lots of packets are being dropped..
so, the fix should look for someone with a steady high ping or it would eventually become frowned upon
by all, IMO
I also had the following:
-A hacker/cheater could probably use the mechanism to kick players off the game. He could fake late packet from the player, or attack a player and thus making it highly delayed, and then kicked.
-New players with ping problems do not get the chance to talk with other players. Often it takes only a "you should stop your downloads/Kazaa to fix your ping" and the new player gets to enjoy the game. Automatic kick would deny them this help. New players trying for a quick game would not get to know the game, and stop trying it.
SuPeRTaRD wrote:
b) Explore alternatives where the drawbacks you identified would be minimized or even removed.
poll for a 600+ ping that lasts 20+ seconds or so
This was very dependant on the solutions proposed. Here Supertard balance his system by giving it a memory, a period of observation. This would even out any bumps.
SuPeRTaRD wrote:
[Very very veyr optional question]
3. In this challenge I use the term "very high ping" very loosely.
a) Can you come up with a more accurate definition for it?
Some people have blatantly high pings when they are downloading something in the background
like 900+
My own answer is:

Before we go to the definition of levels of experience, we need some other information to give us a reference.

Films! Films are only a series of pictures projected on a screen. Each picture is projected only a short time, before the film is moved to the next frame, and the processus starts again. But the human eye percieve motion as it can differenciate the individual frames. Films operate at 24 frames per seconds. It means a frame is displayed every 41 milliseconds (1 second/24 frames). Television works at 30 frames per seconds, which give us 33 milliseconds per frames.

Human reaction. Well that is trickier. Googling for this wasnt that helpfull. But I found 2 references. http://www.exo.net/~pauld/books/car_sci ... timer.html mention .16 seconds, (160 milli seconds), and another link (but my browser crashed, and I lost the first version of this post, so I'm not that incline to go looking for it again) was at 360 millisecond in a study where they displayed a black square on a screen and the person needed to press a button. Here we will just average both values to give us a reasonnable estimate (160+360/2 = 260 milli seconds)

I'm quite sure this value is only a rough estimation, as I can see 2 types of action for a armagetron player: preemptive and reactive. Preemptive is when you plan to turn as some position, let say a corner, and just wait to get there. Good players learn to time this in advance, giving time for their muscles to contract and press the keyboard. Reactive is when you have to adapt to a new situation, like a player dashing in front of you unexpectedly. This is closer to the second value (360ms) as it is similar to the study that they made. But for simplicity, only the 260 ms will be used.

The scale. I will try to differenciate different level of gaming experience. For each level I will try to estimate some associated ping time. But because I want only to discuss communication time between computer and no other factors, I will assume an idea computer, able to compute any amount of information in an infinitesimal time. This mean that only the time for the information to travel will be important, not the time to process it, nor to display it (for example, slow computer or computer without 3D hardware do not display information rapidly, spending too much time generating the graphics).

High quality (very low ping time): In this level, the player cannot notice any difference between the state of the game on his computer and the state of the game on the server. This mean that the communication between server and client occur very rapidly, keeping both highly synchronized. To offer this for a human, the exchange must occur within the 24 frames per second, and thus fool the human eye. So here we will say a ping of less than 41 millisec on our ideal computer would do this.

When a situation occurs and the players react, 260ms pass before the key gets to be pressed. Even if the communication are instanteneous, it mean 6 ideal frames (at 24 frames per seconds) have been displayed, which mean possibly up to 6 different updates where exchanged with the server in this High Quality scenario. This is a lot. Maybe this High Quality is idea, but surely not required for all the players. What are more reasonnable quality levels.

Good quality (low ping time): In this level, the player can notice some small differences in the state of the game, but the biggest handicap should stays himself and its reaction time. But what would be a ping time for this level. If we take 260ms for the ping time, the same as the reaction time, it mean that when a player reacts to a situation, 260 ms later the computer gets a key stroke and process it. It sends a message to the server (260ms/2=130ms to reach the server), the server process it and then it sends the results to the player (130 ms again to reach the player). A new frame is displayed immediatly on our idea computer. Total time for the player 520 ms (260 ms for reaction, 260 for the round trip). This is now twice the reaction time.

Instead, lets take a round trip time of half the reaction time, 130ms. This would give us a total time between event and displaying the frame with the players reaction of (130+260=) 390ms. To raise the reaction time by 50% seem reasonable, as a low number of possible eye detection (3 in this case) are added to the period the player need to wait. This seems to fit the definition we set for this quality level, which was that the player could notice some small differences between the states. So for this level, we associate with ping times between 41 ms and 130 ms.

medium quality level(high ping): In this level, we will say that the players notice differences in the states of the game between its client and the server (sliding, players appearing), but still can act.

This was calculated before with our first hypothesis. A round trip time of 260ms doubles the total reaction time of the player. The player notice the difference at it is on par with its hability to react. So this level would be from 130 ms to 260 ms.

low quality level(very high ping): In this level, the player notices heavy differences between his client state and the server state.

For heavy difference to be noticable, the ping time must be a factor of the reaction time of the player, 2 time, 3 times, 5 times slower that its ability to react. So ping times greater than 260 ms.

Well, hummm. My scale sets the bar quite low for very high ping. Rather than to argue about that (knowing some of the answer because we have experience in the game), I would invite you to see my process. There are many unknows, many assumptions (I use the reaction time as a base for the perception of desynchronization, you might find other reaction times value that what I've used, many more), many way to target only the problem at hand (ideal computer). But in the face of unknows, I've tried to give an order to my answers. Even if I'm worng about a couple of items, for example its at 2x, rather than my 1x, of the reaction time in round trip delay that the experience become unaceptable, its still gives a base for comparaison.
SuPeRTaRD wrote:
b) Can you determine some range of value for "very high ping", and describe the effect on the game.
700+ is VERY HIGH ping... pretty much inexcusable if it lasts for more than a few seconds.

Determined person should even try to describe the experience for both the person having the very high ping

Laggy/jumpy graphics, innability to "race" anyone.. a.k.a. you will be MANY bike lengths behind where u are shown on screen

and for the rest of the players.
reverse lag: a.k.a. sliding, warping,.. inexplicably blowing up <-- warping into outer rim
mostly just really bad slides.. like driving for many seconds blind, or with very little to go on by whats showing up on your screen..
Yes, that is a good definition, when these effects appear.

Well, I mostly answered to this in my previous point.

SuPeRTaRD wrote: hope that helps!
I hope you got something from this exercise.

As I've said before, all answers are good. I try to write the question so its easy to give a simple answer, but there is place for adventurous persons. Dont freak because of the long one I gave to 3-a. While I think people can (and should) attempt a similar line of thought, I do not expect it, nor does it have to be as long. As long as you get something out of the challenge.

-ph
Canis meus id comedit.
User avatar
SuPeRTaRD
Round Winner
Posts: 300
Joined: Fri Nov 05, 2004 11:53 pm
Location: bedlam
Contact:

Post by SuPeRTaRD »

YAAAAAY! :P
User avatar
philippeqc
Long Poster - Project Developer - Sage
Posts: 1526
Joined: Mon Jul 12, 2004 8:55 am
Location: Stockholm
Contact:

Post by philippeqc »

Was there anyone else who sended answers to this challenge. I've checked my mail account, but I couldn't find anything.

Please tell me if I forgot u.

-ph
Canis meus id comedit.
User avatar
Lucifer
Project Developer
Posts: 8640
Joined: Sun Aug 15, 2004 3:32 pm
Location: Republic of Texas
Contact:

Post by Lucifer »

philippeqc wrote:Was there anyone else who sended answers to this challenge. I've checked my mail account, but I couldn't find anything.

Please tell me if I forgot u.

-ph
I had an answer, and then removed it when you asked me to. Never got around to sending it privately.
User avatar
philippeqc
Long Poster - Project Developer - Sage
Posts: 1526
Joined: Mon Jul 12, 2004 8:55 am
Location: Stockholm
Contact:

Post by philippeqc »

Lucifer wrote:
philippeqc wrote:Was there anyone else who sended answers to this challenge. I've checked my mail account, but I couldn't find anything.

Please tell me if I forgot u.

-ph
I had an answer, and then removed it when you asked me to. Never got around to sending it privately.
Just post it and I'll revise it if you want.

-ph
Canis meus id comedit.
Post Reply