Release Pandora Microbes!


Here are a couple logs for some crashes I had.

=======================================================================================


PND : /media/SD1/pandora/menu/microbes0.8-1.pnd


PND_FSTYPE : Squashfs


APPDATADIR : /media/SD1/pandora/appdata/microbes


APPDD_FSTYPE : vfat


PND_CPUSPEED : <unset>


EXENAME : run


ARGUMENTS : <unset>


=======================================================================================


[ START ]--- Mount the PND ----------


Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/microbes"


rmdir: failed to remove `/mnt/pnd/microbes': Not a directory


Mounting the Union FS : mount -t aufs -o exec,noplink,dirs="/media/SD1/pandora/appdata/microbes=rw+nolwh":"/mnt/pnd/microbes=rr" none "/mnt/utmp/microbes"


[sUCCESS]--- Mount the PND ----------


[ START ]--- Starting the application (run ) ----------


First run, copying levels to appdata


./run: line 20: 2496 Segmentation fault ./microbes


real 0m7.136s


user 0m2.664s


sys 0m0.477s


[sUCCESS]--- Starting the application (run ) ----------


[ START ]--- Restoring the frame buffer status ----------


[sUCCESS]--- Restoring the frame buffer status ----------


[ START ]--- uMount the PND ----------


[ START ]--- Waiting the Union to be available ----------


[sUCCESS]--- Waiting the Union to be available ----------


auplink:plink.c:223: AUFS_CTL_PLINK_MAINT: Inappropriate ioctl for device


rmdir: failed to remove `/mnt/utmp/microbes': Device or resource busy


[ START ]--- Waiting the PND mount dir to be free ----------


[sUCCESS]--- Waiting the PND mount dir to be free ----------


cleanup done


[sUCCESS]--- uMount the PND ----------


=======================================================================================


Return code is : 2



=======================================================================================


PND : /media/SD1/pandora/menu/microbes0.8-1.pnd


PND_FSTYPE : Squashfs


APPDATADIR : /media/SD1/pandora/appdata/microbes


APPDD_FSTYPE : vfat


PND_CPUSPEED : <unset>


EXENAME : run


ARGUMENTS : <unset>


=======================================================================================


[ START ]--- Mount the PND ----------


Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/microbes"


Mounting the Union FS : mount -t aufs -o exec,noplink,dirs="/media/SD1/pandora/appdata/microbes=rw+nolwh":"/mnt/pnd/microbes=rr" none "/mnt/utmp/microbes"


[sUCCESS]--- Mount the PND ----------


[ START ]--- Starting the application (run ) ----------


First run, copying levels to appdata


*** glibc detected *** ./microbes: corrupted double-linked list: 0x0025ef08 ***


Initializing SDL...


omapsdl: in_evdev: found "keypad" with 84 events (type 00100013)


omapsdl: in_evdev: found "gpio-keys" with 16 events (type 00000023)


omapsdl: found 2 evdev device(s).


omapsdl: detected 800x480 'lcd' (0) screen attached to fb 1 and overlay 1


OK.


Setting video mode: 800x480x32...fbdev: /dev/fb1: 800x480@32


fbdev initialized.


xenv: X vendor: The X.Org Foundation, rel: 10704000, display: :0.0, protocol ver: 11.0


xenv: display is 800x480


OK


Supported chunk decoder: [WAVE]


Supported chunk decoder: [AIFF]


Supported chunk decoder: [VOC]


Supported chunk decoder: [OGG]


Supported chunk decoder: [FLAC]


Supported music decoder: [WAVE]


Supported music decoder: [MIKMOD]


Supported music decoder: [OGG]


Supported music decoder: [FLAC]


Supported music decoder: [MP3]


num: 2


Found joystick nub0


axes: 2


found left nub!


Found joystick nub1


axes: 2


found right nub!


Level pack Tutorial: max lvl=7


Level pack Microbes: max lvl=3


Level pack Gadgetoid: max lvl=0


Level pack Self-made: max lvl=100


Loading level -1


Loading 1 enemy waves of max size 15


Done


Loading enemy data from data/enemies.dat


Loading thing data from data/techtree.dat


Loading level images...


Loading level bg image data/bg.png


ok


Loading menu bg


Loading level 0


Loading 5 enemy waves of max size 20


Done


Loading enemy data from data/enemies.dat


Loading thing data from data/techtree.dat


Loading level images...


Loading level bg image data/menubg.png


ok


Loading menu bg OK


Init menu


Intro message


Loading done


Loading level 1


Loading 30 enemy waves of max size 25


Done


Loading thing data from data/techtree.dat


Loading level 2


Loading 30 enemy waves of max size 20


Done


Loading thing data from data/techtree.dat


Loading level 3


Loading 50 enemy waves of max size 20


Done


Loading thing data from data/techtree.dat


Loading level 2


Loading 30 enemy waves of max size 20


Done


Loading thing data from data/techtree.dat


Loading level 2


Loading 30 enemy waves of max size 20


Done


Loading level sounds from data/sounds/


Loading enemy data from data/enemies.dat


Loading thing data from data/techtree.dat


Loading level images...


Loading level bg image data/bg.png


ok


./run: line 20: 2793 Aborted ./microbes


real 0m8.122s


user 0m2.305s


sys 0m0.352s


[sUCCESS]--- Starting the application (run ) ----------


[ START ]--- Restoring the frame buffer status ----------


[sUCCESS]--- Restoring the frame buffer status ----------


[ START ]--- uMount the PND ----------


[ START ]--- Waiting the Union to be available ----------


[sUCCESS]--- Waiting the Union to be available ----------


auplink:plink.c:223: AUFS_CTL_PLINK_MAINT: Inappropriate ioctl for device


rmdir: failed to remove `/mnt/utmp/microbes': Device or resource busy


[ START ]--- Waiting the PND mount dir to be free ----------


[sUCCESS]--- Waiting the PND mount dir to be free ----------


cleanup done


[sUCCESS]--- uMount the PND ----------


=======================================================================================


Return code is : 1


The first one was a seg fault. The second just quit when I tried to load a level. I have also had 2 crashes that have completely locked up the Pandora. I forgot to save the log for another crash but I will describe what happened in case it helps. I was trying out Microbes and played the first 2 levels of the tutorial levels and had to leave. When i came back I played level 3 and then went on to level 4. As soon as I tried to place my first piece, the game just crashed to the desktop. When I relaunched the PND I chose level 4 and the whole Pandora locked up. The only way to get it to launch after that was to delete the save and start over.
 
This is a rather strange error:


*** glibc detected *** ./microbes: corrupted double-linked list: 0x0025ef08 ***


You're not overclocking too high or something, are you? That would also explain the lock-ups - I don't think there is any way to go in an infinite loop on 0.8.1 except with evil constructed invalid self-made levels - loading a tutorial level should certainly not cause a lock-up. Did you try the cpu stresstest?


Or maybe these bugs are somehow related to the memleaks - in that case it should be fixed in 1.0.
 
I have a 1GHz unit and I am only clocking to 1GHz. I ran the stress test and it stopped at 1.2GHz so I don't think that is the problem. One of the lockups I had was really strange. I started the game after a crash and went into one of the tutorial levels. I played it and then quit to the menu and chose "Quit". As soon as I chose "Quit" the system locked up. It didn't even play the "Bye Bye" sound.
 
This is a rather strange error:


*** glibc detected *** ./microbes: corrupted double-linked list: 0x0025ef08 ***
This means heap allocator's (malloc(), free(), new() and the likes) internal data got corrupted. Usually happens when you overrun allocated buffers, as allocator keeps it's data inbetween your buffers. Also can happen on double free, valgrind is good at catching those.
 
Here's Microbes 1.0 rc2 (release candidate 2). I hope the bugs mentioned above are gone.


You get 10 days or so to stress-test this release candidate; if no serious problems are found, it'll become the first non-beta release. I want to upload Microbes 1.0 to the repo by mid-October.

microbes1.0rc2.pnd
 

Attachments

  • microbes1.0rc2.pnd
    9.6 MB · Views: 194
I think there must be a problem with my Pandora because I was only into the 3rd level of the tutorials when my system locked up again. I renamed the previous appdata folder so it would be a fresh go. I had turned on SSH yesterday just in case so I logged in and the pndrun_microbes.out only listed the first run message so I didn't bother posting it. I was going to redownload Super Zaxxon 1.51 and reinstall it after formatting my SD card but then I saw ED say a new firmware will be released next week so I think I will wait.


Edit: I don't know if this has anything to do with it but I was just playing around again and possibly saw a pattern. The first time I played RC2, I played levels 1 and 2 and then I paused the game and changed the volume of the music to 0 and the other two to 12. After that is when it crahed. Then after I rebooted the Pandora and deleted the appdata folder, I played it again until level 5 before changing the volume. After I completed level 6 with the changed volume it quit with the same glibc error as before.
 
Last edited by a moderator:
The new version looks great, and thanks for including my son's levels!


Only bug I can see so far, it still runs out of memory after a while. I'll have a go at debugging it.


I almost can't believe, you coded this on the Pandora itself with that little keyboard?! Amazing.
 
Aha, frefol, thanks for the detailed bug report! It is probably related to setting the music volume to 0 - I tried to be smart and not just set the volume to 0 but also actually stop the music playback so you're not wasting any cpu on it, but I probably messed something up there.


Edit: I did indeed mess something up there, fixed it on the train, is OK now.


DREDD: I suck at memory debugging (I'm too used to languages with built-in garbage collection, like Prolog) - are there any tools I can use besides valgrind? E.g. just something that tells me how much has been allocated and free'd during one run, that would help already. I think there are also some leaks in the SDL_mixer and libvorbis; on my own Pandora I upgraded those to the most recent version but I think the leaks are still there in the version used in SZ 1.51.
 
Last edited by a moderator:
Could someone with a TV out cable test whether it works with TV out now? I'm assuming it works now, but I can't test this myself, so it would be nice to have some confirmation.
 
I was playing it with my TV out cable last week. I have not tried RC2 but I will try it tonight. I am sure it will work the same as 0.8.1 but you never know.
 
memory debugging ... tools I can use besides valgrind?

maybe if you build it on PC you can use valgrind. In C I would write wrappers to log malloc/free with line numbers and check what's not being freed. In my shameless plug Rescue game please try the new version everyone it has nudity and gory violence woo woo, I use exec to restart / switch levels! just because it was easy to do that, but it would also avoid accumulating memory leaks.
 
Last edited by a moderator:
Here's Microbes 1.0 rc2 (release candidate 2). I hope the bugs mentioned above are gone.


You get 10 days or so to stress-test this release candidate; if no serious problems are found, it'll become the first non-beta release. I want to upload Microbes 1.0 to the repo by mid-October.

I'm missing my own deadline here - I was too busy putting nyan cats in system info :)


No more bug reports or suggestions? Would someone be so kind to make a video of the 1.0rc2 version (with TV out or just by filming the screen), to be used in the "official" release thread I'll start in the Software News section when I'll upload the (for now) final release?
 
I think it is a great game and currently my most enjoyed Pandora game. I love everything about it: gameplay, music, graphics. It is already very polished so ready for release IMO.


Not sure if this are the suggestions you like to have, but here are some:


- Would be nice to see how much levels a pack contains.


- Highscore per level


- Autogenerate levels and ability to save and later adjust them with the editor for everlasting Microbes fun
 
Great news.


I've such a bad feeling about not sending you more maps as I told you.


Studys and repairing Pandoras keeps me pretty busy.
 
How does the right nub take fun out of the game? Is it too powerful? Too tedious? It would help if you could comment a bit more, so I know how to make it better.
It may be that the nubs of my Pandora may not be very precise, but I think that the impact of having extremely precise control over the position of the targeting area is too big. What I mean by this is that sometimes, a slightly-off target area position (and when I say slighty, I mean slightly) in a single unit can have quite a huge impact on game balance. (Then again, in this game the same is true for unit placement (which is not necessarily the best thing either).)

I can of course make the building times shorter or remove them completely - they're not that long, are they?
The last time that I've been talking about the building times, I noted that I may simply not have gotten used to them yet. I've recently played some more Microbes, and now I would say that the building times are okay, but I would like to have some kind of building queue if that doesn't put the game out of balance (unlikely, see building in non-realtime mode).


I think that allowing unit upgrades to be activated, even while the unit is currently building or funds are insufficient, may actually be a good thing (the unit would then automatically progress through the building phases after an upgrade has finished and available funding is sufficient).

I don't see how reaching 9 requires hand acrobatics, if you can reach the right nub, you should be able to reach the 9 key as well.
I can, but unlike with the right nub, I need to move my whole hand when I'm reaching for the 9 key. Maybe we two are holding the Pandora differently. Even using the S key in combination with the P key (in non-realtime mode) is way less of a heassle for me.
 
Is there a repository for everyones homemade levels? this way it would be easy for me not to miss any, is the most recent version up on repo yet, as i'm without pandora at the moment i cant play but i like to keep my SD cards up to date for when my 1Ghz arrives (soon i hope)
 
Is there a repository for everyones homemade levels?

Nice idea. As far as I know _wb_ includes all levels that he receives if he likes them.


I already played all levels on normal level. They are a lot tougher on hard. I don't even know if it is possible to beat all levels on hard.


Played a couple of games today, and noticed that the game doesn't always start in the correct pack/level. Not a big issue.


Would be nice to see if you already finalized a level on hard.
 
I do include every level I receive, of course there could be other home made maps I don't know about. To everyone who wants to share maps: please either send them to me (if you want them included in the next release), or otherwise just post them in this thread.


About the building queue: I don't see the need for this, you can already upgrade a unit that is not yet finished building so you just get a massive discount in the total building time if you have enough energy to specialize the unit to the max immediately.


About the impact of the target zone aim: yes it is true that a small change sometimes makes the difference between just barely reaching something and not reaching it. When I play, I usually either keep the target zone centered, or I move it to an extreme position in some direction. So nub sensitivity is not that much of an issue to me.


I'm currently adding highscores before I release 1.0. It will remember the best score per difficulty setting. If you beat the level, it also shows stars in the level selector (1 star if you beat it at Easy, 2 stars at Normal, until 5 stars at Insane). So you will be able to easily see which levels you already did on some difficulty setting.
 
I'm currently adding highscores before I release 1.0. It will remember the best score per difficulty setting. If you beat the level, it also shows stars in the level selector (1 star if you beat it at Easy, 2 stars at Normal, until 5 stars at Insane). So you will be able to easily see which levels you already did on some difficulty setting.

Nice! Looking forward to that :)
 
Hey, look at this, it's VERY similar to Microbes as gameplay, but it ALSO has RPG style experience/skills/equipment... I think that even in Microbes may be something interesting to add (at least in some unknown future), after all the human defense system can learn from experience.


http://www.gog.com/n...defenders_quest


Example skills you can choose from after leveling: "Immunity to <something>", "Resistance to <something>", "Super Effective to <something>" (Pokemon Rulez !! :D ), "Double reaction speed", "<New kind of attack>"


Similar as is now, but with the difference to use the experience made by the single turret to pay the skills, and leaving automatically upgrading the Health/Damage as levels are reached.


Obviously the turrets experienced in a level must be "remembered" for the next level... (like in Dungeon Keeper, so you don't have to LINK the levels, you just have to remember the "veterans" and have them available on the next selected level, whatever it is)


Just an idea :)


P.S.: anyway, in Defenders Quest, look at the bonus content, but don't like it on facebook (for different times) !! :lol:
 
Last edited by a moderator:
Back
Top