Armagosdarnish? not reachable?

Here you can discuss Armagoshdarn, settings specific to it, what you think about it, etc.

Moderator: Verement

User avatar
root down
Round Winner
Posts: 344
Joined: Fri Jun 11, 2004 8:46 am
Location: closer
Contact:

Post by root down »

extend the grid beyond the wall, make the server kill/maim/etc anyone who ends up on this part of the grid
stakes is high
k
Random Identifier & Project Developer
Posts: 345
Joined: Wed Feb 25, 2004 12:54 am
Location: Northern California, USA

Post by k »

Tank had mentioned in a similar thread that he thought the server knew exactly where everyone was and the sliding was only on the client end...

Since the server knows the coordinates of the arena walls can't it check to see if the player's coordinates are outside the bounds of the arena (using a small delta to account for floating point issues)? Regardless of whatever position checking we do we should still keep the rendering errors from halting the game as there are probably other conditions that could happen to cause the errors.
Last edited by k on Mon Sep 13, 2004 4:38 pm, edited 1 time in total.
User avatar
philippeqc
Long Poster - Project Developer - Sage
Posts: 1526
Joined: Mon Jul 12, 2004 8:55 am
Location: Stockholm
Contact:

Post by philippeqc »

root down wrote:extend the grid beyond the wall, make the server kill/maim/etc anyone who ends up on this part of the grid
The grid extend already beyond the wall. The true shape of the grid is a big triangle. If I understand the situation properly, the crash occurs if something try to move outside of that triangle.

-ph
Canis meus id comedit.
k
Random Identifier & Project Developer
Posts: 345
Joined: Wed Feb 25, 2004 12:54 am
Location: Northern California, USA

Post by k »

Philippeqc maybe you could make a simple diagram of what you know of the overall grid/arena components? Does the rectangular arena sit in the middle of a big triangle? And the big triangle is what you see extending out from the arena when you have short walls on?
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:
root down wrote:extend the grid beyond the wall, make the server kill/maim/etc anyone who ends up on this part of the grid
The grid extend already beyond the wall. The true shape of the grid is a big triangle. If I understand the situation properly, the crash occurs if something try to move outside of that triangle.

-ph
What coordinate system is used for the bikes? Playing the game, it appears that the bikes get x,y coordinates and some corner of the arena walls are 0,0.

Also, it seems to be that checking if a bike is outside the wall can't be *that* hard. ;) It's a problem solved for Pong. Assume a grid of 60x60, and valid values of x,y must be positive. You have several statements:

if x < 0 killbike();
if x > 60 killbike();
if y < 0 killbike();
if y > 60 killbike();

Let rubber deal with x==0 or 60 and/or y==0 or 60. As you say, coordinates are stored as float, so checking for equality isn't going to work.

Oh yeah, in response to K: the impression I'm getting right now is that the client will render the bikes in any fashion according to what the server sends, but it won't kill the bikes. It'll go ahead and render local turns before the server sends them back (which is why we get sliding, because the server occasionally updates your position and your client disagrees with the server, but the server makes the call--not the client). So I'm not thinking a check like this will affect it, as long as the client never gets to decide independently to destroy the bike. So it should appear just like a "lag" kill already appears, you drive through the wall, go on a ways, and then blow up back at the wall you hit. Perhaps you should consider looking into putting bleachers on the other side of the arena wall so the bikes could drive through a crowd of spectators. ;)

Assuming that's the right idea (frankly I just can't imagine the code not already having a series of lines just like this), it's still only a patch fix. The *right* solution is to figure out why the server is crashing. To this end, a stack trace is needed. Any solutions to coming up with a stack trace? Also, if anybody knows how to *intentionally* rip the grid, then one of us server guys can setup the process for profiling (or whatever, I'd need some instructions to do this) and arrange a time for the ripping expert to come in and rip it a few times, getting several stack traces. I'm willing to volunteer for this, but like I say, I'd need instructions setting up the AA process to leave a stack trace when it crashes. I can grab cvs code and build it now (finally), if that helps.

Finally, a use for Zapple. :lol:
User avatar
philippeqc
Long Poster - Project Developer - Sage
Posts: 1526
Joined: Mon Jul 12, 2004 8:55 am
Location: Stockholm
Contact:

Post by philippeqc »

Edit:

Pretty much ignore the following. It got stuck in a buffer for a long time. Now it may not be relevant.

I dont erase it as it was a post and it will mess up ppl if it miss or if some ppl read it and other dont.

original follows:


I'm sorry if I'm a bit rude, but has anyone actually read what I wrote?

-No inside, no outside. So no checking if its inside or any variation of nearly inside.

-The game only deals with collisions. You hit a wall, you die. If there happen to be an opening in the wall and someone drive through it, yeppe day de!

-A valid game would be that everyone start OUTSIDE the rim (yes, outside, you all love that word) and just keep relatively close to the rim. That wouldn't crash the server.

What I've been trying to say is that what ever fix concerning "position vs the rim" is but a patch. And it doesnt address the REAL problem.

Now everybody take a minute to breathe deeply!!!!

What I need to finish fixing the problem, is :
a) a DETAILLED description of the last moment of a server before the crash
b) a detailled account of how to rip
c) Exact version in use on the server
d) the server setting in use in the crash.
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 »

k wrote:Philippeqc maybe you could make a simple diagram of what you know of the overall grid/arena components? Does the rectangular arena sit in the middle of a big triangle? And the big triangle is what you see extending out from the arena when you have short walls on?
I think your quite right but for one detail. The floor (on your screen) is and infinite plane (opengl element). The eGrid is a finite triangle, ableit very big, that is big enough to contain the whole rim section, and then some more (I dont know the size as there are many dynamical resize at 'game preparation time').

The eGrid does hold all "walls", being rim or traces.

The problem is that when a wall get commited to the eGrid, if it cant place the latest point inside the big triangle, it crashes.

To make matters interesting, trace are not commited to the grid immediatly. I GUESS (not sure of that code yet) that its when you turn that its happens as the size of the wall get to be fixed.

I know I mention the automatic resize mechanism for the eGrid. I dont think it would be good to use in-game as it would
a) burden the grid at each augmentation (but that is a guess, there is some strange sizing and rotation involved)
b) allow player to go on for ever, which is worst than camping as you now have infinite place to cover, and if you just go away, possibly nobody would be able to catch up to the delinquant cycle, and it would allow him/her to hold the game on pause for ever.

My fix kill any object as it moves out of the gird (well, I still havent been able to test it). A second part of the fix would be to trap the insertion of wall outside of the eGrid triangle and deal with it more gracefully.

-ph

About my previous edited post:
Its pointless to write something, decided to sit on it to be sure not to say anything bad, and then 6 hours later to post it by mistake without revision. Very pointless. I'm sorry about that.
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 »

About lucifer's post:

I agree with all but one detail of your post.

As you mention, your proposed patch fix the ripping problem, not the crashing.

What I feel strongly about is that ripping is not a problem. Should crashing of the server be prevented, I'm all for ripping. Let the fight be out of the rim. Its just one more strategy.

Because of that, and all the work I'm doing on world (non regular arenas), Im opposing any change that
relies on the assumption of a bounded square rim and block free motion.

-ph
Canis meus id comedit.
User avatar
Your_mom
Match Winner
Posts: 653
Joined: Sun Jun 06, 2004 1:45 am

Post by Your_mom »

i dont really understand the coding side of this but im willing to help you guys out any way im capable of .... testing etc. sorry but im not a coder if you guys need assistance testing im free to help.
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:About lucifer's post:

I agree with all but one detail of your post.

As you mention, your proposed patch fix the ripping problem, not the crashing.

What I feel strongly about is that ripping is not a problem. Should crashing of the server be prevented, I'm all for ripping. Let the fight be out of the rim. Its just one more strategy.

Because of that, and all the work I'm doing on world (non regular arenas), Im opposing any change that
relies on the assumption of a bounded square rim and block free motion.

-ph
Heh, I'm actually in agreement with you about ripping. I think there should be other things outside the arena so that ripping might actually lead to something cool. But I think you should consider making a "Can't rip" option, because even without a crash I think ripping will continue to be perceived a problem by many people. If you make it optional, even disabled by default if you like, then everybody gets what they want. ;)

Of course, there's a reason software should never be engineered by committee....
ishAdmin
Match Winner
Posts: 625
Joined: Sun Jul 04, 2004 12:11 am
Contact:

Post by ishAdmin »

patch or not, I'm eager to have a short term solution to prevent crashing via ripping. after the problem is properly determined, go ahead and fix it. but for now, a patch is better than nothing. I still don't see why cycle coordinates can't be checked, and if they exceed the arena limitations, take action. Everytime someone crashes the game, I consider leaving it off.
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 »

I noticed that your cycle_brake is set to 5

Set CYCLE_BRAKE to 0 or even set it to -0.0001

Removing the brake (or making it ever so slightly accelerate) should make it harder to rip, if not making it impossible. (ie keep ketting closer to wall until ....)
User avatar
philippeqc
Long Poster - Project Developer - Sage
Posts: 1526
Joined: Mon Jul 12, 2004 8:55 am
Location: Stockholm
Contact:

Post by philippeqc »

Your_mom wrote:i dont really understand the coding side of this but im willing to help you guys out any way im capable of .... testing etc. sorry but im not a coder if you guys need assistance testing im free to help.
Good, I was waiting for news from your side. As you seem to be the ripper in question, I would like
a) Detailled instruction how to rip (you can send them privately)
b) Detailled description of your excursion outside the rim.

-ph
Canis meus id comedit.
ishAdmin
Match Winner
Posts: 625
Joined: Sun Jul 04, 2004 12:11 am
Contact:

Post by ishAdmin »

subby wrote:I noticed that your cycle_brake is set to 5

Set CYCLE_BRAKE to 0 or even set it to -0.0001

Removing the brake (or making it ever so slightly accelerate) should make it harder to rip, if not making it impossible. (ie keep ketting closer to wall until ....)
I've kept the cycle brake the same as old goshdarn. Where possible, I want to keep the settings as close to goshdarn as I can. At one point I had fiddled with the cycle brake. I found that double binders could still uturn quickly enough and rip. Eliminating rubber might be something that works, but I really don't want to do that.
Image
User avatar
Lucifer
Project Developer
Posts: 8640
Joined: Sun Aug 15, 2004 3:32 pm
Location: Republic of Texas
Contact:

Post by Lucifer »

subby wrote:I noticed that your cycle_brake is set to 5

Set CYCLE_BRAKE to 0 or even set it to -0.0001

Removing the brake (or making it ever so slightly accelerate) should make it harder to rip, if not making it impossible. (ie keep ketting closer to wall until ....)
Personally, I'd like a "explodes on brakes" setting, but removing brakes isn't exaclty a solution here. People use brakes, people like them, they add something to a player's tactical library (don't know what, brakes are for sissies you know), but they are kind of an expected part of the game at this point.
Post Reply