PDA

View Full Version : Bug report to do! Horrifying inconsistent behaviour from gnubots2. Need help...


Mr. Picklesworth
October 18th, 2007, 03:31 PM
Okay, this forum is going to bug reports early ;)
There are still some Gutsy issues to clear up, and if they aren't fixed there with updates let's hope they get into Hardy.

Somebody mentioned in a thread that hardly anyone plays gnubots. This led me to a thought: Since people who ran the Gutsy devel versions had probably played the game before (it's fun the first few times), it was unlikely to have been tested much at all. Indeed, playing it just now, I have discovered a horrifying mess of bugs that I can only hope stem from a single source...

The trouble is that this is such a horrifying mess of bugs I cannot figure out where one ends and the other begins. I need help! We must return gnubots2 to its past glory by solving these issues.

-Run gnobots2 in the terminal
-Press Teleport Randomly continually, until the player loses
-(Repeat if necessary?)

You will notice that the game crashes when you die. Oddly, this seems to happen only after a certain number of teleports. I can't pin it to any exact pattern, but it happens very frequently! (While we're here: Gameplay failure! The only way to die now is to teleport randomly into an enemy. Since when were arcade games meant to be idiot-proof?).

When the game crashes, the following appears for me in the output:
(gnobots2:11221): GStreamer-CRITICAL **: gst_event_new_new_segment_full: assertion `start <= stop' failed
sh: jackd: command not found
Segmentation fault
The jackd not found error has been reported here (https://bugs.launchpad.net/ubuntu/+source/ubuntu-meta/+bug/154028), and happens absolutely everywhere that a sound is played with gstreamer, with no visible consequences. After installing the jackd package, the crash still occurs. Of interest may be that the segfault occurs before the program tries to run jackd.

There's more!

Whenever I teleport (the - quite unfortunate sounding - teleport sound plays), that critical GStreamer error appears in the output. (gnobots2:11711): GStreamer-CRITICAL **: gst_event_new_new_segment_full: assertion `start <= stop' failed

Actually, that critical error seems to happen with every game in the gnome-games package, almost whenever a sound is played. (Iagno, gnobots2, gnibbles, gnometris with sounds enabled). Teleporting in gnobots2 is just the easiest and quickest way to reproduce that...
Interestingly, the startup noise in gnometris does not give the critical error, though every sound in-game does.

Finally, the AIEEEE sound when the player dies in gnobots2. This sound plays whenever the player dies by Waiting via the toolbar or menu options. (Bug with Wait command: Clicking on the player to wait behaves differently from the toolbar / menu actions. The clicking on the player wait is designed such that somebody cannot lose by doing it).

However, the sound does not play if the play if the player dies by teleporting randomly into an enemy, even though the visual feedback is the same. Does not seem related to the crash, as in the rare instance that one dies and the game does not crash, that sound still does not play.

However, when the player dies by using the Wait toolbar / menu button, the critical gStreamer error does not happen! (Though the game still seg faults, on occasion).
sh: jackd: command not found is output when the AIEEE sound starts playing. The seg fault occurs when the sound finishes playing.

So, lots of corners. I can't find my way around this :(
Anyone here good at bug reporting? I can't decide how to report all of it...

Zdravko
October 18th, 2007, 04:08 PM
I think this is not the right place and time to post this...

Mr. Picklesworth
October 18th, 2007, 04:11 PM
You are right! I put this in the wrong forum :(

I believe this thread should be here (http://ubuntuforums.org/forumdisplay.php?f=201).

Zdravko
October 18th, 2007, 04:13 PM
Yepp. :)

Wolki
October 18th, 2007, 04:50 PM
You will notice that the game crashes when you die. Oddly, this seems to happen only after a certain number of teleports. I can't pin it to any exact pattern, but it happens very frequently!


I tried for several minutes, pressing nothing but Teleort randomly (tried with menu, toolbar and keyboard) but I can't reproduce it :-/

(While we're here: Gameplay failure! The only way to die now is to teleport randomly into an enemy. Since when were arcade games meant to be idiot-proof?).

This is actually a preference issue. You can specify how dangerous you want the game to be. (I'm not sure what the default values are, but you can

The jackd not found error has been reported here (https://bugs.launchpad.net/ubuntu/+source/ubuntu-meta/+bug/154028), and happens absolutely everywhere that a sound is played with gstreamer, with no visible consequences.


No wonder I keep seeing this line in various .xsession-errors. Thanks for the info.

Actually, that critical error seems to happen with every game in the gnome-games package, almost whenever a sound is played. (Iagno, gnobots2, gnibbles, gnometris with sounds enabled). Teleporting in gnobots2 is just the easiest and quickest way to reproduce that...


You're right. I doubt this is a relevant bug, but it's a bit ugly. I'm trying to check bugzilla, but it's a bit slow today.

(Bug with Wait command: Clicking on the player to wait behaves differently from the toolbar / menu actions.

Check the manual, clicking on the player is not waiting, but standing still. Standing still is one turn, waiting is until you win or die.


However, the sound does not play if the play if the player dies by teleporting randomly into an enemy, even though the visual feedback is the same.


Hm, you're right. I'll check bugzilla once I can access it again.

Mr. Picklesworth
October 18th, 2007, 05:03 PM
Ah, Super Safe Moves had turned on in the preferences. It was also set to Nightmare mode. Weird default, but ah well.

No crash now, after turning that off. I suspect the high score dialog; perhaps it crashed because it couldn't find a file to store high scores for Nightmare Mode with Super Safe Moves turned on. That would also explain why the crashing is random seeming, since this would tie it in with what the player has done. (The high score window does not appear when you have 0 points, for example).
Aieee sound still will not play consistently with a teleport death, but it plays when the player walks into a robot.
(Another bug: Scores in the menu is disabled when the game is run, and only enabled when the high score menu displays after playing).

The crash is definitely completely unrelated to sound, as I can turn that setting off and it still happens.

Thank you, Wolki!

I realize that most of these belong here (http://bugzilla.gnome.org/buglist.cgi?query=component%3Agnobots2+product%3Ag nome-games+), by the way ;)

Wolki
October 18th, 2007, 05:20 PM
Ah, Super Safe Moves had turned on in the preferences. It was also set to Nightmare mode. Weird default, but ah well.

Ah, the bugzilla issue made me forget I didn't finish that sentence ^^;;

Hm... did you do a fresh install or update? Does sound like an odd default, might be intended though. If you want to see it changed, try filing a bug.

The Super Safe Moves may be intended though - It's like defaulting to "easy" difficulty, which may make sense in games.

No crash now, after turning that off. I suspect the high score dialog; perhaps it crashed because it couldn't find a file to store high scores for Nightmare Mode with Super Safe Moves turned on. That would also explain why the crashing is random seeming, since this would tie it in with what the player has done. (The high score window does not appear when you have 0 points, for example).


Sounds like a bug though. Did you get a bug-buddy window with a stacktrace?

(Another bug: Scores in the menu is disabled when the game is run, and only enabled when the high score menu displays after playing).


Hm, you're right. I wonder why that is.

[edit] OK, now I can reproduce the segfault. Do you want to file it yourself or should I do it?
Same question applies to the highscore thing.

[edit2] So after I was able to reproduce the bug, i decided to investigate a little. Got the debug symbols and put it in gdb, which gave me a backtrace. Then I searched bugzilla, and found this: http://bugzilla.gnome.org/show_bug.cgi?id=482188 which links to this: https://bugs.launchpad.net/ubuntu/+source/gnome-games/+bug/147485
So it's a known and by now fixed bug. :)
The highscore thing however doesn't seem to be filed yet.

Mr. Picklesworth
October 18th, 2007, 05:47 PM
I have reported the crash and high score bugs:
http://bugzilla.gnome.org/show_bug.cgi?id=488060
http://bugzilla.gnome.org/show_bug.cgi?id=488057

I don't have a stack trace yet, though, so that would be much appreciated!

Wolki
October 18th, 2007, 06:02 PM
I have reported the crash and high score bugs:
http://bugzilla.gnome.org/show_bug.cgi?id=488060
http://bugzilla.gnome.org/show_bug.cgi?id=488057

I don't have a stack trace yet, though, (re-downloading debug packages...) so that would be much appreciated!

Ah, so I was too late. See the edit in my last post, the crasher was already filed (and fixed, yay!). Thanks though, and especially for taking the effort to install debug packages. It's great to see people interested in helping out (even more so if they have such good attention to detail).

Didn't find a previous bug for the highscrores thing yet, so that may well be a bug that wasn't filed yet.

[edit] I closed the crasher bug. If you get a different stacktrace, feel free to reopen it (or tell me and I'll reopen it myself).

Mr. Picklesworth
October 18th, 2007, 06:10 PM
Thanks again, Wolki. I'll mark mine as a dup, then. (Mixed feelings of happiness and disappointment :P)

Edit: Darn, it's already marked! That Gnome bugzilla is fast.

Wolki
October 18th, 2007, 06:39 PM
Ah, sorry, I forgot that reporters can mark their own bugs as dupes, or I would've let you do it yourself. I'm still very new at triaging. ^^;;

Zdravko
October 19th, 2007, 07:19 AM
I have never done a bug report in my life (with a few exceptions!).