-
Archives
- September 2010
- August 2010
- July 2010
- June 2010
- May 2010
- April 2010
- March 2010
- February 2010
- January 2010
- December 2009
- November 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- March 2009
- February 2009
- January 2009
- December 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
- May 2007
-
Categories
- CasualGameBlogs
- ComputerGamesTag
- Downloadable DVD movies
- Ecommerce strategies reviews
- GamesOnlineTag
- Movies for PDA
- PuzzleGamesTag
- Web Designer Blog
- Winterwolves
-
Search
Links
-
Meta
12 June, 2009 |
Game Producer: Rant ^ 3 (Debug vs Release)
pI#8217;ve encountered a very strange problem (and the roots actually lie in the decision to continue with the upgraded physics system with Leadwerks - and possibly with the upgraded BlitzMax version). I explain this in as non-techy way as I can - and I go in the very, very beginner basics./p
pFirst the basics: when one creates games, they compile the code which is like #8220;from human to computers translation#8221;. The .exe files are understood by the computers, and the code files are understood by human. Now, in order for humans to find bugs and errors a #8220;debug mode#8221; was invented, so that humans can see what#8217;s going on in the game while playing it. This error mode means slower performance (for example, a game might run at 50% speed), but it makes it easier to locate bugs and correct them./p
pAfter errors have been fixed (most of them anyway#8230;), the game can be compiled in #8220;release#8221; mode. /p
pRelease mode is the one that you customers use, the debug mode is for developers only. /p
pbNow my #8220;small problem#8221;/bbr /
About a week ago, I spotted a problem: my irelease mode/i wouldn#8217;t work right. The collisions were #8220;broken#8221; and acted really weird. I hadn#8217;t spotted this earlier, since I hadn#8217;t compiled release mode for some time. Since I never had any problems with debug versus release modes, I simply hadn#8217;t felt need to do that (game runs fast in debug mode in my computer, so it wasn#8217;t necessary - I was concentrating on other issues)./p
pSo basically:br /
- Debug (slow) mode worksbr /
- Release (fast) mode is broken./p
pI have zero errors. Zero warnings. All imy code/i is 100% the same for both debug and release modes./p
pI#8217;ve upgraded to the latest Leadwerks (LE2.24) and I#8217;m using BlitzMax (1.33 RC5). In earlier versions (LE2.18 for example) there wasn#8217;t this problem, but I had to upgrade to the latest version to ensure compatibility (that#8217;s another long story which was discussed some time ago here on my blog). /p
pAnyway./p
pIt#8217;s pretty hard thing to tackle. I#8217;ve never faced anything like this, and the bad thing is that ithere is no errors/i. Nothing about uninitialized variables. The only error is that the collisions between the player controller versus everything else acts weird. Other collisions (like boxes against ground or boxes to boxes) all work perfectly in both modes./p
pI#8217;ve used the past week to locate this error and trying to isolate what the problem really is, but so far no luck. /p
pThis actually didn#8217;t turn into Rant ^ 3, but I can now say that this is quite horrible problem that comes in horrible time (this has now turned into the biggest task left to be able to release the game. I have some other tasks on my list, and was hoping to release the thing already - but now my energy goes into solving this nice little thing). /p
pI know that this will be solved, one way or another - but it can be#8230; islightly annoying/i not to be able to release your game since the release version compiles differently from debug version. (I know that of course the problem can lie in my code - and I#8217;d hope it would be there - but still it#8217;s really strange that same (collision) code is treated differently depending on the compile mode)/p
pOh well, I#8217;ll just take a deep breath and continue#8230;/p
bIf you liked this entry, feel free to a href=http://www.gameproducer.netvisit GameProducer.net/a to read more similar articles./b

