CVS test server

What do you want to see in Armagetron soon? Any new feature ideas? Let's ponder these ground breaking ideas...
Post Reply
User avatar
Z-Man
God & Project Admin
Posts: 11585
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

Yes, I know they exist, they just don't matter to the game because when they happen, the game is already over. It's fixed anyway.

Ignoring the missing rubber this time, but I'll still look at the old ones.

Code: Select all

[13] Freewheelin'57 entered the game.
[13] Freewheelin'57 plays for Team blue.
[13] Freewheelin'57 wants to play for Team gold on the next respawn.
[7] nemostultae: BUG freewheel entered the game and immeaditly switched teams
[7] nemostultae: or requested a team change
Nothing wrong with that, I guess. Either he deliberately did it himself (unlikely, it looks fast) or it's a know old client bug (fixed): the automatic team selection code was executed on the client as well, which requests a team change. The same bug sometimes causes the second player entering a server to be put on the first player's team even though the server defaults say he should start a new team.
User avatar
Z-Man
God & Project Admin
Posts: 11585
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

Code: Select all

[0] gArIsImO core dumped [fe]meriton for 2 points.
[0] gArIsImO core dumped -SaNe-PsYkO for 2 points.
[3] -SaNe-PsYkO: **** that shit
[3] -SaNe-PsYkO: i went throught the hole
[3] -SaNe-PsYkO: and i died
[11] Arabia_X: try not going through the hole
[15] [fe]meriton: on my screen, you missed it ...
[7] joda.bot: BUG psyko died a strange death
[7] joda.bot: did not look like the should have died
A classical hole attack, only it failed. On the server, everything looked fine. meriton died at (248.524, 70.3702) on a straight segment of Garisimo's defense wall, and Psyko crashed at (248.514, 67.627) after some zig-zagging and the last client turn command at (246.787, 67.6271) turning to positive x direction. That's the same height as the crash, so it's not a lag slide problem. Explosion radius is 2 units and the crash site is well out of it from meriton's death location.

So, we're looking at a client bug. Apparently, Joda and Psyko both saw a bigger or displaced hole. The two crashes are far enough apart in time so it's not a late sync bug. Psyko was using rc1 or rc2, so it's not an a bug that was already fixed. Is there a clientside recording available?

I've also looked at the two middle bug cries of Joda reported in the RC1 thread. The one where he drove staight into his own wall is either a Joda brain bug or a client bug, the server received a clear turn command from the client. The other missing rubber bug is similar to the last missing rubber bug: the cycle on the server was a bit ahead of the cycle on the client at the same game time. Legacy simulation code was active, so I'll blame that. Again, the difference between life and death was less than .3 rubber points.

On Sumo:

Code: Select all

..round starts...
[0] the man core dumped dylan for 5 points.
[0] spell core dumped the man for 5 points.
[6] dylan: dam
[0] Geht ab  was awarded 10 points for conquering the enemy base.
[0] Geht ab  was awarded 10 points for conquering the enemy base.
[0] Geht ab  was awarded 10 points for conquering the enemy base.
[6] dylan: noobs
[8] received logout from 8.
[8] the man left the game.
[8] Killing user 8, ping 0.228906.
[0] joda.bot core dumped ghableska for 5 points.
[0] joda.bot was awarded 5 points for conquering the enemy base.
[0] RadLikeJesus was awarded 5 points for conquering the enemy base.
[0] RadLikeJesus core dumped joda.bot for 5 points.
[1] joda.bot: wah
[6] dylan: arghh
[0] RadLikeJesus was awarded 10 points for conquering the enemy base.
[0] Geht ab  committed suicide and lost 5 points.
[1] joda.bot: BUG timing issue ?
[0] spell was awarded 5 points for conquering the enemy base.
[6] dylan: YES!

Code: Select all

..round starts...
[0] ghableska core dumped dylan for 5 points.
[0] dylan core dumped ghableska for 5 points.
[6] dylan: HA
[0] RadLikeJesus core dumped spell for 5 points.
[0] Geht ab  was awarded 5 points for conquering the enemy base.
[0] joda.bot was awarded 5 points for conquering the enemy base.
[0] Geht ab  was awarded 5 points for conquering the enemy base.
[0] joda.bot was awarded 5 points for conquering the enemy base.
[0] RadLikeJesus was awarded 10 points for conquering the enemy base.
[6] dylan: JUST FELY LIEK IT
[0] RadLikeJesus was awarded 10 points for conquering the enemy base.
[3] RadLikeJesus: :D
[0] Deleting objects...
[1] joda.bot: :)
..next round starts...
[1] joda.bot: BUG ?
What was up?
User avatar
joda.bot
Match Winner
Posts: 421
Joined: Sun Jun 20, 2004 11:00 am
Location: Germany
Contact:

Post by joda.bot »

ok, I'm sorry I should have posted about those earlier :P

About: psyko's death

His death looked wierd to me because I did not see him die at the location I exspected him to. My client might not have shown meriton's hole yet.

Code: Select all

<g-+<+
   | *
   | *  
   + p -------
     |
ok, I saw Psyko getting stuck on garismo's wall and then suddently he teleported/slided along the "**" part and exploded on the corner of some wall. I'm not sure if this is close enough to the situation in the recording...
I guess most of garismo's walls might be wrong. I'll check if I recorded this, but I guess not. I can't recall meriton being present, but I might just have looked after he had transformed into an explosion ;), I was down south and looking back AFAIK.

About sumo:
I basically died with about 1-2 points of rubber. I've got no recording because with recording on it did not happen (!) :(
-- Either the "old-client" code path wasn't active after joining with recording mode or the recording mode has another timing.

About "low FPS" on CVS Fortress (RC1):
The problem was I upgraded my nvidia driver and the refresh rate was set to 60Hz... I did not notice this for quite sometime.

I had to set a registry value to get the "Refreshrate Override" panel back,
and now I'm back to 100Hz instead of 60Hz. Also I usually disable Vsync which might be a reason I have some problems other's don't ?
User avatar
Z-Man
God & Project Admin
Posts: 11585
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

joda.bot wrote:ok, I saw Psyko getting stuck on garismo's wall and then suddently he teleported/slided along the "**" part and exploded on the corner of some wall. I'm not sure if this is close enough to the situation in the recording...
He did some weird things before he crashed. Usually, when you ride along a wall through a hole, you grind it quickly and enter the hole, right? Well, psyko did this: he passed through the bit of meriton's wall that got blown away (the wall going from right to left in your picture, psyko going up), then turned right away from the hole, then three times left and right again to grind his own wall into the hole. Only that this wall was .8 units too far up. Of course, if he really slided around, that would be another silly movement bug, but then I'd need the clientside recording.
joda.bot wrote:About sumo:
I basically died with about 1-2 points of rubber.
Ok, I'll have a look and see where the client thought it would be. You did try to turn, right?

joda.bot wrote:I've got no recording because with recording on it did not happen
Hmm, input is handled slightly differently. Without recording, input events are gathered during simulation and rendering for later processing; they get better timing that way (just noticed that that probably does not work, so maybe I'll just disable it.). And recording does cost some FPS, methinks: the recording file is flushed on every write so nothing is lost when the application crashes.
joda.bot wrote:Also I usually disable Vsync which might be a reason I have some problems other's don't ?
I can't rule that out, I always have it enabled unless I'm benchmarking. Are you one of the maniacs and go for 500+ fps?
User avatar
joda.bot
Match Winner
Posts: 421
Joined: Sun Jun 20, 2004 11:00 am
Location: Germany
Contact:

Post by joda.bot »

z-man wrote:You did try to turn, right?
Yes, I did. But I might have turned too late as I did not see it like the server did. I don't rely on the rubber meter for timing, just check it when I die.
z-man wrote:...I always have it enabled unless I'm benchmarking. Are you one of the maniacs and go for 500+ fps?
yes/no, if I get a constant 100 fps I don't mind but otherwise I usually disable it , because vsync can reduce performance at times if OpenGL has to wait for the vsync - especially at low fps.

If I had a TFT then I'd enable vsync to get rid of tearing.
My CRT does not produce such effects.
User avatar
Z-Man
God & Project Admin
Posts: 11585
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

I see. That's the setup where disabling vsync makes sense :)
The thechnology I'm personally waiting for would be a variable refresh rate LCD. These things are digitally controlled anyway, right? Not like the old CRTs that need fixed driving frequencies. So what I want is a LCD that displays images not at 60 FPS, but as fast/slow as the graphic card can deliver them. You would not get the "Looks good while you maintain 60 FPS, but if you only could make 59, you either get tearing or drop to 30 FPS. Oh, and anything more than 60 FPS is wasted" effect we have now.
Well, that or a PC that can render anything I throw at it with 60 FPS :)

Your death on Sumo was a classical lag death. The turn command the server recorded was way behind Rad's wall, and Rad's wall was quite fresh. Rubber usage was lower on your client for the obviouss reason that your client did not see the wall you crashed into yet. You're playing without prediction, right?
User avatar
joda.bot
Match Winner
Posts: 421
Joined: Sun Jun 20, 2004 11:00 am
Location: Germany
Contact:

Post by joda.bot »

@z-man: gonna check the lag prediction option :P
meriton
Round Winner
Posts: 256
Joined: Sun Nov 20, 2005 3:33 am

Post by meriton »

Here the recording for the BUG I cried out tonight (Mazuffer driving through a wall and killing me).

The incident happens very near to the end of the recording.
Attachments
mazuffer drives through wall.aarec.bz2
(1.92 MiB) Downloaded 113 times
User avatar
Z-Man
God & Project Admin
Posts: 11585
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

Thanks, I'll look at it. Do you have the exact time index (+- some seconds) handy? If not, I'll just get it from the server side recording I'll have to look at first anyway.

The bug cry about garisimo teleporting (possibly) is in a recording that does not play back to the end :(

On unrelated news, I harshened the automatic bans. The first kick will now already give you 20 minutes banning, the next one usually at least two hours.
meriton
Round Winner
Posts: 256
Joined: Sun Nov 20, 2005 3:33 am

Post by meriton »

No, I don't.
User avatar
Z-Man
God & Project Admin
Posts: 11585
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

It looks like the same BUG I talked about in the rc2 release thread; the wall is only locally visible on your client. If you play the recording back (the relevant round starts at t = 1450), you'll see the cycle it belongs to doing really strange things, an indication that it is not getting syncs.

Playing it back in rc1 with the bug fixed (nNet* copied over) lets the wall vanish indeed. But now one of the cycles (I think the one the wall belongs to) blows up, but is not really dead! I'll investigate further, a useful recording.
Edit: Aha. Your client got three object deletion messages, but never the corresponding objects. The problematic cycle was later attacked by one of them. I gave the stored deletion messages a timeout, that fixes the recording completely.
This is a server bug as well. I'll add a database entry.

The server side recording did not play back either, but that's probably not too bad. Strange, the second one in a row. I reverted some things in the server environment and enabled more debug logging, perhaps that finds something.
User avatar
joda.bot
Match Winner
Posts: 421
Joined: Sun Jun 20, 2004 11:00 am
Location: Germany
Contact:

Post by joda.bot »

@z-man: logout messages and some other messages have been repeated three times too, but that might be due to three master servers... I just noticed while making a level7 filter for armagetron. Now my router is able to prefer Armagetron connection's to all the other stuff my roommates throw at it ;). I guess the tcpdump is still on my drive.
meriton
Round Winner
Posts: 256
Joined: Sun Nov 20, 2005 3:33 am

Post by meriton »

I have had another bug with ghost cycles, this time, my client nearly crashed (1 FPS for a few seconds). I am still on RC1, though. Want the recording?
User avatar
Z-Man
God & Project Admin
Posts: 11585
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

Joda: that's deliberate. When terminating a connection over unreliable media, there is no protocol that ensures both ends know the connection now is terminated for good. So all server and client do is send the logout message three times in separate packets and hope at least one of them comes through. If not, no big deal, the connection will time out. We could probably try harder, but it seems to work well in the real world.

Meriton: if it's small (<2Mb), there's no harm in sending it over. If it's not, it's probably not worth it.

Some **** who calls himself KRABBELBABY has been haunting the server lately. He's also impostering people, Lucifer seems to be his favorite. I banned him by name, but he hasn't used it today; he may have changed his strategy.
He's on dynamic IP starting with 84.168.152 - 84.168.196. I could ban the whole range, but it's some thousand addresses. Well, I can ban Lucifers from that range... So, if you see him (he likes to say LOOOOOOL with really many OOOOs), tell him to behave like an actual human being, or else he gets nuked.
meriton
Round Winner
Posts: 256
Joined: Sun Nov 20, 2005 3:33 am

Post by meriton »

It's a lot larger than that. Ok.
Post Reply