Double Binding is the crutch of the weak

General Stuff about Armagetron, That doesn't belong anywhere else...
User avatar
Tank Program
Forum & Project Admin, PhD
Posts: 6711
Joined: Thu Dec 18, 2003 7:03 pm

Post by Tank Program »

Lucifer wrote:Second, can chat be turned into P2P, instead of being routed through the server? Is it already P2P?
To do this as p2p people would have to have an open port to play Armagetron- something a larger number of people are not in favor of.
Image
User avatar
Lucifer
Project Developer
Posts: 8640
Joined: Sun Aug 15, 2004 3:32 pm
Location: Republic of Texas
Contact:

Post by Lucifer »

Tank Program wrote:
Lucifer wrote:Second, can chat be turned into P2P, instead of being routed through the server? Is it already P2P?
To do this as p2p people would have to have an open port to play Armagetron- something a larger number of people are not in favor of.
Hmm, large numbers wouldn't have to. The system could work like this:

1. Server probes clients to see who will accept a chat connection.
2. Server doesn't find any, runs chat itself (current behavior). Server finds one or more->
3. Server sends chat IPs to all clients.
4. Each client pings each chat, picks closest and connects to it.
5. Each chat server connects to each other for relaying chat messages.

The server would keep a list of chat IPs, and new arrivals would be asked if they will accept a chat connection. People leaving, if they're chat servers, would be removed from the list. They would, themselves, inform each connected client that they're leaving. And periodically the main server would send the updated list of chat servers to each client and let them resort themselves on their own.

A little complex, and tricky to make automatic. There are benefits, though.

1. Server doesn't host chat when it doesn't have to means less traffic to the server.
2. NO MORE LAG BOMBS through chat. There might be a way to lag bomb specific clients, but it wouldn't affect the server anymore and the damage of a lag bomb gets mitigated.

The same logic could apply to setting up relay servers and distributing the server's load itself. I wonder if that would help or hurt, though. Lot of work just to figure out whether it would help or hurt.

While we're discussing it, assuming that it's worth doing, what other duties does the server perform that could be delegated to clients? Are there any others?
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: Edit: With only 2 players, armagetronad-dedicated is now using 6.8MB of memory, but only 22% CPU. Memory leak, maybe?
[..snip!..]
... and some simple math shows that armagetronad only needs slightly less than 1 MB per client.
Not necessary a memory leak. Depends a lot at what point in the game you made the mesurement. The engine needs lots of objects to store all the cycle traces. So if a round has been running for a while, the memory need should be higher. You have a case (a bit like) of N*k1 + t*k2, where N is the number of players, and t is the time in game [actually, from my understanding of the underlying structures, I guess that the rate of object creation augments as more traces are in the game]. But nothing of that is visible for the user.

But, it is important to say that this behavior should not affect (directly) the lag as the trafic SHOULD be proportional to the actions of the players, and not the object creation in the game. But it MAY slow down the game a bit both on server and client side.

-ph
Canis meus id comedit.
Fritz
Posts: 7
Joined: Sun Jul 25, 2004 8:43 am

soccer rules

Post by Fritz »

I agree with boobert, soccer is the best sport ever.

Oh, and I double bind. I have a question about the basis for argument. What makes you so sure that it's a "bug", it seems a pretty obvious oversight if that is the case. Also, I didn't see anybody mention the fact that it varies by server. On some servers, doublebinding is just a way to make it easier. However on some servers, it is a part of the gameplay. If the minimum time between turns is .04 or lower, than double-binding is, and will be part of the game. Make a no double-bind server if you like. If some one joins that and uses double-bind, then you can call them a cheater. If the server doesn't specify, it's somewhat rude of you to go around accusing them of cheating.

-> Fritz
Fritz
Posts: 7
Joined: Sun Jul 25, 2004 8:43 am

Post by Fritz »

I know this is completely offtopic, but a note for philippeqc. . .

Believe it or not, Hippopotomonstrosesquippedaliophobia is a synonym for Sesquipedalophobia.

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

Post by philippeqc »

I remember hearing about the history of high jumps (without the pole).

The traditionnal way was a "scissors" way, the legs pass over the bar one after the other, the body somewhat upright over it all. Then one dude came and started jumping with his back rounded over the bar. Everybody complained about it, but then he started jumping higher than anybody else. Have you checked the olympics! Who still jumping the classical way?

On the subject of cheating, I'm tired of all those rim grinders cheaters. I mean its not even interesting play. All they do is delay the game forcing me to go around the whole arena to kill them, and then they crall away back into their hole. Its more hypocretical than camping. At least a good camper is assuming him or herself in that role. But the rim grinder consider it a worty strategy to make me waste my time and drive around pointlessly.

Of course its cheating, its over using the rubber feature that was introduced to compensate the irregularities of Internet traffic. If it was supposed to be a valid move, you'd get accelerated if you grinded the rim. But your not. I mean, is there a stronger argument to prove its a cheating behavior???

Sparks fly off their bike telling everybody they are getting destroyed. It should explode, and the client should turn off graphic acceleration too. Your packets should be routed to the 7 seas, and carried by pigeons part of the way. Sick pigeons. With a caugh. And dripping noses. These cheater should be ban from civilisation for using such a cruth and forced to eat only light mayonaise and to dress using only those single socks that dissapear in the dryer.

So, as soon rim grinding is banned, I'll fix the double binding thing, and all cheating will be gone. But until that, lets call it game features and enjoy them.

So what if my finger reaction time is a bit slow, should that force me to stop playing a game that I like?

-ph

and the pigeons should be dislexic too!

Nota 1: I remember going to a net cafe once in France to write emails while traveling. Some guys where playing half-life there using only the keyboard. Told them they should use the mouse. Said they didnt like it or something like that. After I was done with my emails, I joined the game and had a blast. I'm not such a good player, but I was making a killing. Didnt take them 15 min before they ask me how to re-set the config to use the mouse.

Nota 2 : I'm mostly bad at grinding the rim. Dont know why, there must be a psycological barrier. I still need to improve my general grinding skills, but I seem to be having the worst problems with the outer rim. Had a few frustrating time where I grinded it the best I ever could only to have ppl find a way to pass there 2 or 3 times. Which led me to this rather humouristic comment. O yes, and of course they must be cheating. ;)
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 »

Fritz wrote:I know this is completely offtopic, but a note for philippeqc. . .

Believe it or not, Hippopotomonstrosesquippedaliophobia is a synonym for Sesquipedalophobia.

-> Fritz
I'll need some serious references before I truly beleive that. Worth investigating.

I took sesquipedalophobia from some list of phobia. I was just browsing around, but this one really stroke my attention. Been in my sig for like 3 years now. Many ppl comment about it. But I still have problems remembering the exact spelling.
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 »

Lucifer wrote:1. Server probes clients to see who will accept a chat connection.
2. Server doesn't find any, runs chat itself (current behavior). Server finds one or more->
3. Server sends chat IPs to all clients.
4. Each client pings each chat, picks closest and connects to it.
5. Each chat server connects to each other for relaying chat messages.
If you are convinced that this method would reduce lag on the serverm that may be. But what about the poor sucker that gets stuck hosting all the chat? Technically wouldn't lag dubble, tripple, or quadrupple for him? I don't think that would be fair. And in general I don't think people would like the idea of the server probing around their computer & hosting stuff... It's a nice theory but I think there's a reason no other game uses it... I just think because of the possibility of screwing one user over pretty badly that it just wouldn't work.
Image
User avatar
Lucifer
Project Developer
Posts: 8640
Joined: Sun Aug 15, 2004 3:32 pm
Location: Republic of Texas
Contact:

Post by Lucifer »

Tank Program wrote:If you are convinced that this method would reduce lag on the serverm that may be. But what about the poor sucker that gets stuck hosting all the chat? Technically wouldn't lag dubble, tripple, or quadrupple for him? I don't think that would be fair. And in general I don't think people would like the idea of the server probing around their computer & hosting stuff... It's a nice theory but I think there's a reason no other game uses it... I just think because of the possibility of screwing one user over pretty badly that it just wouldn't work.
Heh, in an ideal world this wouldn't be a problem because we could trust users to actually check their settings. I should point out that P2P filesharing programs already do something like this setup as default and you have to disable it, but the people you're concerned about here are the same people who don't know about it there, and might worry if they knew. Ignorance is.... Hrm. Anyway.

Tell you what, I can't promise this would reduce server lag without seeing some math that proves it's at least worth pursuing, and I can't offer the math without first looking at the code, and so on and so forth.

So I'll swear off AA for a few days, clear off my plate so there's room for coding again, and then crack open the code and see if I come up with suggestions that are better than the pie in the sky stuff I"m offering now, and hopefully be able to test some of them. Right now I've got to write an article, sell the guy at OSTG on at least two more articles (and start those), do some story work for Crimson, more work on the mod file for AA I'm working on, and a tourney script for eggcozy. Somewhere along the lines I'm intending to try out the new Blender by making a cute little graphic for Breakfast. (Something about eggs frying on a grid just strikes me as being cool, pretty quick to do, and would teach me the new features of the new Blender) After all that, there should be some coding time for me. Naturally, since I'm unfamiliar with AA sources right now there will be significant lag just from me having to find my way around the sources first.

May as well swear off AA for a few days anyway since I've been literally sucking ass on the grid the last couple of days.
User avatar
Tank Program
Forum & Project Admin, PhD
Posts: 6711
Joined: Thu Dec 18, 2003 7:03 pm

Post by Tank Program »

That's fine- there's plenty of time... I'm just a little skeptical about the whole p2p for chat... Afraid some unlucky dude is gonna get stuck with a lot of lag because he is hosting the chat...
Image
User avatar
iceman
Reverse Adjust Outside Corner Grinder
Posts: 2448
Joined: Fri Jan 09, 2004 9:54 am
Location: Yorkshire, England. Quote: Its the fumes, they make one want to play
Contact:

Post by iceman »

i think there is a memory leak in this program
Image He who laughs last, probably has a back-up
Image
Image
sorry about the large animated gif
User avatar
/dev/null
Shutout Match Winner
Posts: 819
Joined: Sat Sep 04, 2004 6:28 pm
Location: Chicago-ish

ON double binds

Post by /dev/null »

I never used to use double binds, but after learning thier use i find they increase my gameplay immensly. Im not the kind of guy who will use double binds to 180 someone, i use double binds to increase my manueverability. I more than likely could not tunnel to near the degree i do without double binds, and im sure many players will agree. I agree in that players who use doublebinds solely for the purpose of 180'ing people on the wall have a pretty nasty lame factor, but claiming that they are a bug is foolhardy, to think the developers didnt realize that this could occur is just naive. Anyone who writes a substantial amount of code also spends a substantial amount of time debugging and testing the code. Knowing that they wrote in functionality for multiple keys to the same action im 100% sure they either intended, or discovered and left in that functionality, because it added another degree of depth and fun to the game.
Post Reply