0.2.8_beta3: release process and bugs

Help test release candidates for the next release
Post Reply
User avatar
Z-Man
God & Project Admin
Posts: 11710
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

k wrote:Has the fortress server been updated?
No, but it should not matter; the blank screen bug is purely client side. It was not yet there in beta3; I forgot to mention that it was triggered by a seemingly harmless change in eTimer.cpp.
So, if you still get it: recording? With a debug EXE, preferably.
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: Can you tell me, how the timer causes a black screen ?
Gets me really scared if everything is soo depended on it... can't imagine why the render should stop rendering ?
Ah, and at times when I had the problem (after about 3-4h of playing *stop it joda stop*) the screen froze and only got rendered if I pressed enter or entered/exited a menu (as far as I can tell). That's the black screen issue is it ? I could talk etc. if I got the keys right (blind).

Is the problem just hidden now, that the timer works more reasonably ?
Last edited by joda.bot on Tue Nov 08, 2005 3:23 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 »

How much of this relates with GAME_TIMEOUT being set to 5 by default?

Just fishing ;)

-ph
Canis meus id comedit.
User avatar
Z-Man
God & Project Admin
Posts: 11710
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

joda.bot wrote:Gets me really scared if everything is soo depended on it
If you can explain how to write a realtime game where the not everything depends on some timer, I'm all ears :)

Ok, the whole problem explained: it was one of the weirder floating point problems. I basically did

Code: Select all

float a = something;
float b = a * a;
float c = a * a; // (using a different code path)
float d = 0;
if ( c > b )
   return d/( c - b );
else
   return something_very_large;
And this returned -NAN. I do understand that sometimes c != b, but the fact that c > b does not imply c - b > 0 with floats really surprised me. (Of corse, with the code used in different ways, b had a real chance of being smaler than c.)
Anyway, the returned value was then used in the timer calculation and made the current time -NAN, too. The blank screen was caused by the game code: it does not render the scene for the first second or so, because I expect small glitches during that time (timer skipping, cycles popping into existence) and I want them hidden. An educated guess of what you would have seen here without the protection: the cycles would have been frozen in place for the first second of the round, but would have started to jump around frantically, even worse than during a lag bomb or the timer bug in beta3. You see why I prefer a blank screen, this is less freaky for our average user, and it gives bug reports more clarity.

I don't know whether your previous problem is related to the timer problems we had lately, the code has changed a lot over the last few months.

The described problem is fixed completely, and there is emergency recovery code in place for the case the timer ever gets set to NAN or worse again; it will get a complete resync then.

Philippe: No, that's just how long the server waits maximally for clients to sync before it goes on with the next round.
User avatar
Phytotron
Formerly Oscilloscope
Posts: 5042
Joined: Thu Jun 09, 2005 10:06 pm
Location: A site or situation, especially considered in regard to its surroundings.
Contact:

Post by Phytotron »

Oh. :oops: I thought I had recalled dragging the app into the Terminal window. Guess not. Aight, here's the recording. Very small. Zipped it anyway. I just went to the Player 1 name field, deleted my name, and hit option-n. (Presumably, the same thing would happen if I were to try é, or any other special character. I seem to remember that being the case under 0.2.7.1 as well.) By the way, for future reference, am I supposed to name and/or compress these recordings in a certain manner? I thought I saw a post about that somewheres, but forget where.
You do not have the required permissions to view the files attached to this post.
User avatar
Jonathan
A Brave Victim
Posts: 3391
Joined: Thu Feb 03, 2005 12:50 am
Location: Not really lurking anymore

Post by Jonathan »

FYI: you can use any name. pathtorecording means "path to recording". Try ~/Desktop/some\ recording and see a recording "some recording" appear on your desktop. Try dropping a folder F and adding a file name N and see a file F/N appear. Try /dev/null and (don't) see it all disappear in a black hole. Try /dev/random and see if its quality improves. OK, you don't need to understand the last 2.
ˌɑrməˈɡɛˌtrɑn
k
Random Identifier & Project Developer
Posts: 345
Joined: Wed Feb 25, 2004 12:54 am
Location: Northern California, USA

Post by k »

z-man wrote:
k wrote:Has the fortress server been updated?
No, but it should not matter; the blank screen bug is purely client side. It was not yet there in beta3; I forgot to mention that it was triggered by a seemingly harmless change in eTimer.cpp.
So, if you still get it: recording? With a debug EXE, preferably.
I got the latest code out of CVS a little while ago and it seems to be working fine now. I'll make a debug recording if it happens again. VC6 throws one compile error.

Code: Select all

armagetronad\src\engine\eTimer.cpp(265) : error C2065: 'finite' : undeclared identifier
I had to add

Code: Select all

#ifdef WIN32
#include <float.h>
#define finite _finite
#endif
to get it to compile. I don't know if this is a problem for other Windows compilers. Maybe _MSC_VER would be better if this is a VC only issue.
User avatar
Z-Man
God & Project Admin
Posts: 11710
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

K: Thanks. #include "tMath.h" also solves the problem, this is not the first time.

Oscilloscope: It's not our fault. The recording shows you hitting the left alt key, then a small pause, then nothing. So the crash happens before the n keypress reaches AA. Only nemostultae may help here.
User avatar
dlh
Formerly That OS X Guy
Posts: 2035
Joined: Fri Jan 02, 2004 12:05 am
Contact:

Post by dlh »

Oscilloscope wrote:I just went to the Player 1 name field, deleted my name, and hit option-n. (Presumably, the same thing would happen if I were to try é, or any other special character. I seem to remember that being the case under 0.2.7.1 as well.) By the way, for future reference, am I supposed to name and/or compress these recordings in a certain manner? I thought I saw a post about that somewheres, but forget where.
No crash here, I can enter accented characters but how you enter them doesn't work as expected (in relation to Mac OS X). For example to enter an ù in Mac OS X I would press option-` and then u (option key is alt key on windows keyboards). In armagetron I can't find the key to do lowercase ù, only Ù, and it is option-shift-;

Edit: Actually I can't enter most accented characters, I can only do çÇÙ
User avatar
dlh
Formerly That OS X Guy
Posts: 2035
Joined: Fri Jan 02, 2004 12:05 am
Contact:

Post by dlh »

What versions of automake are supported? automake-1.6 does not work :|
User avatar
Lucifer
Project Developer
Posts: 8743
Joined: Sun Aug 15, 2004 3:32 pm
Location: Republic of Texas

Post by Lucifer »

Code: Select all

[dave@ghostwheel ~]$ automake --version
automake (GNU automake) 1.9.4
Written by Tom Tromey <tromey@redhat.com>.
I don't know what else people have used, I suspect you'll need at least 1.8, I think that was the last release that broke backward compatibility.
Check out my YouTube channel: https://youtube.com/@davefancella?si=H--oCK3k_dQ1laDN

Be the devil's own, Lucifer's my name.
- Iron Maiden
User avatar
dlh
Formerly That OS X Guy
Posts: 2035
Joined: Fri Jan 02, 2004 12:05 am
Contact:

Post by dlh »

minor_version in b0_2_8 is _beta3, shouldn't it be alphaYYYYMMDD?
User avatar
Z-Man
God & Project Admin
Posts: 11710
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

Nemo: right you are. I'm correcting it.
User avatar
Phytotron
Formerly Oscilloscope
Posts: 5042
Joined: Thu Jun 09, 2005 10:06 pm
Location: A site or situation, especially considered in regard to its surroundings.
Contact:

Post by Phytotron »

Not that this thing is a big deal, and actually when I originally mentioned it I didn't expect z-man (or whomever) would actually want to tackle it. But since it's already out there, I just figured I'd point out, for me to create an ñ, it's option-n which places the tilde, and then n again. The game just crashes before I get to the second n.
User avatar
dlh
Formerly That OS X Guy
Posts: 2035
Joined: Fri Jan 02, 2004 12:05 am
Contact:

Post by dlh »

These two configuration settings do the same thing, right? WALLS_LENGTH and CYCLE_WALLS_LENGTH. That is a little confusing.
Post Reply