1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Advanced Debugging Tutorial

Discussion in 'Seed of Andromeda' started by Benjamin, Feb 24, 2014.

  1. Benjamin

    Benjamin Lead Developer

    • Dev Leader
    If you are experiencing crashes and want to help resolve them, you can do so with the help of the program gdebugger. This program uses the include .pdb file to give more detailed error messages and a call stack view when errors are detected. It seems to work most of the time, unless errors are thread related.

    Download it here: http://www.gremedy.com/download.php

    To set it up with SOA just start a new project.
    1. Select OpenGL as the project type.
    2. Navigate to SOA.exe and select that as the executable for debug session.
    3. Make sure SwapBuffers is checked for frame terminator then finish setup.
    4. Click the breakpoints tab at the top and check all the break options at the top.
    5. Hit the green play button and it should run the game. It will be slightly slower than usual.
    6. When the game encounters a bug or crashes, the gdebugger should pause the game and give a detailed output in the call stack as well as some other stuff.
    7. Take a screenshot of the entire gdebugger window and post it here and it should really help me find the bug!

    You can do some other advanced things such as setting up counters to see how performance is doing. If you do this use opengl context 2. But this is completely optional: http://www.gremedy.com/tutorial/

    Thanks very much guys!
  2. tetryds

    tetryds cus tet, that's it

    • Member
    Thanks for the tutorial.
    I didn't set the breakpoints before.

    Btw, when you crash it will auto generate a report.
    Then it will ask to auto upload to their bughunter or something.
    You can click to view that file and its a text file
    Then you can copy that text and paste it on pastebin.com
    Its easier to send and read than using screenshots!
  3. Benjamin

    Benjamin Lead Developer

    • Dev Leader
    Be careful about that, because that crash report might be a gdebugger crash resulting from my game crash, rather than the actual game crash call stack. Make sure the info you see there matches the call stack that is displayed in the call stack window.
  4. jessenic

    jessenic Web Developer

    • Dev Member
    • Lead Moderator
    • Moderator
    If memory dumps are useful for you Ben, Windows 8 task manager can take memory dumps. Find SoA in task manager (right click taskbar->task manager), right click SoA and create memory dump. It will tell you the path to the dump, zip it and upload and send link to Ben.
  5. entriage

    entriage Crash Landed

    • Member
    I'm hoping that this screenshot gives you something usefull.. I can play for about 1-7 minutes before it crashes.
    http://puu.sh/79qFM/89bdb14616.png
  6. Benjamin

    Benjamin Lead Developer

    • Dev Leader
    This is useful! If it happens again, try to make the call stack window a bit wider. You can see the line that has UploadFinishedMeshes isn't fully shown. Seeing the line number there would be helpful!
  7. entriage

    entriage Crash Landed

    • Member
    Played again since I saw this have same thing happend, made the call stack screen bigger http://puu.sh/7c8Pd/0f84c0aa63.png how is this
  8. Benjamin

    Benjamin Lead Developer

    • Dev Leader
    This is helpful thanks! I am working on this bug now. I know a definite solution but it results in the game running a little slower. That is better than it crashing though. I will try to fix the bug and keep performance at max but I am not sure that will work.
  9. entriage

    entriage Crash Landed

    • Member
    Do what you can, I would just like to play your game its amazing, from what I can get from it :p
  10. tetryds

    tetryds cus tet, that's it

    • Member
    When you have too many planets, the planet selection will go behind the loading button making it impossible to load that planet.
    It also looks ugly.
    Please add a slider.

    Also when i added new planets my settings cleaned up (not verified).

Share This Page