May 23, 2012, 02:03:43 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: Please report any bugs or issues that you might be encountering with the Beta in the Support System so that we can better keep track of any oustanding issues that may come up.

GameCore Support System
 
   Home   Help Search Login Register  
Pages: 1 [2]
  Print  
Author Topic: Game Core Crashes When I Run  (Read 1647 times)
hikmayan
Full Member
***
Posts: 231



View Profile
« Reply #15 on: August 13, 2008, 01:46:51 PM »

I just can't see why an error such as that should ever have been allowed to crash the engine.....sorry.

Yeah!...it will all come to pass. All Beta Software do come to pass....meaning, all these issues will eventually be addressed.
Logged

You have to be in it.....to win it!
gekido
Guest
« Reply #16 on: August 13, 2008, 03:36:07 PM »

we do try to crash-proof the editor as much as possible - so things like missing files etc are checked and caught and handled properly.

from the game side - you and your scripts are responsible for the double checking of files / etc - again we do try to catch things so that you can see what the errors might be, but if you (as an example), delete an object from the world and try to access functions / properties via a handle that doesn't exist anymore - it's your responsibility for checking that this type of thing doesn't happen.

For example:

Code:
Object@ myObject = world.GetObject("myObject");

This gets a handle (pointer) to an object in the world.  Now this object may or may not exist in the world, and as a result the handle might be null.

If you then call a function on the object, for example:

Code:
   Vector pos = myObject.GetPosition();

And the handle isn't valid - this is the same as accessing a null pointer.  Now, this type of thing 'should' be caught by the engine and generate a fatal script error - but that isn't really an acceptable situation for a game (to effectively 'crash' the script, which pops up error messages etc).

What you SHOULD do prior to accessing the handle, is check to make sure that the handle is valid (ie not null) - and then perform whatever operations that you want to do on it.

This applies to anything that you might be requesting / getting a handle to.

Error checking (in your scripts) is just as crucial as it is in standard programming - and there's nothing that we can do to anticipate / fix this kind of thing from our end (aside from catching the errors and reporting them to you).

So, a proper version of the above would be something like so:

Code:
Object@ myObject = world.GetObject("myObject");

if (myObject != null)
{
   // do whatever we need to with this object handle
   Vector pos = myObject.GetPosition();
}

When accessing / loading files remotely, you can simply call 'DoesFileExist()' prior to loading / accessing the file - but again, the error checking is 100% up to you to do.

The issue with the above / original post really is that the templates / examples simply do not have this kind of error checking (for the sake of being brief and as simple as possible) - and is something that we should double check & fix.

You'll notice that the FPS template does have some checking in the main.gsl file now that checks to see if there is a valid player or not prior to trying to run the game - this kind of thing should be implemented throughout all of the templates so that they are a bit more 'newbie' proof. 

I'll do a pass on them to double check and add some basic checking for the templates to try and avoid this in the future.
Logged
IndieWerks
Newbie
*
Posts: 14



View Profile
« Reply #17 on: August 14, 2008, 11:33:58 AM »

I understand Gekido point of view. The problem is the crash WITH THE EXAMPLE supplied. I load the example game, ie. "car demo", click around and it crashes. I undertand the beta stage. But, at today, which games was produced with BV? I like the engine. I will use it in future.
Logged
hikmayan
Full Member
***
Posts: 231



View Profile
« Reply #18 on: August 14, 2008, 12:05:46 PM »

I undertand the beta stage. But, at today, which games was produced with BV? I like the engine. I will use it in future.

Many of us feel the same initially but quickly realized it's not just BV it's basically most Engines out there are not perfect.I have licensed a lot of Engines atm;I am sure so does manu many users here...and by far...in time;GC will kick a lot of many Engines's ...!. Sometimes it's a good idea to "FLOW" with the developer of the Engine in question and keep track of what's up!...one of the best way to do that is keep experimenting with what's available. Engines will crash no matter how perfect they seem to work....many "Highend Software" out there crashes all the time;after paying $$$$$$ then the suport guys tell you to re-start your PC.....blah-blah-blah....we just have to learn how to live with some of these temporary glitches in most Game Engines....eventually....all will be resolved. Cool
Logged

You have to be in it.....to win it!
IndieWerks
Newbie
*
Posts: 14



View Profile
« Reply #19 on: August 15, 2008, 11:38:50 AM »

I agree Hikmayan. I like BV. My case is: I bought BV, a year ago (?), to let me build a casual game. Not with very fancy graphics, not a AAA title. Just a casual game (a puzzle). In this months, I built all my graphics assets, my music and story line. Last month I return to BV do check if I can make a stable game with it. Not yet. So, I move on to Blitz3D, a software very stable. I can make my little game in it. I?m a very experienced Delphi coder. I know tall of the problems of a beta software. I like BV and I?m very excited to produce something in it, when BV improve in stability and documentation.

PS: I have many other engines too. Smiley

Best regards
Logged
Cosmas
Newbie
*
Posts: 11



View Profile
« Reply #20 on: August 18, 2008, 09:03:38 AM »

I'm from the Torque world, so I know what it means to truely get shafted by an engine. Oh sure, Torque LOOKED great, but once you tried to make anything with it it was an adventure into the depths of collosal $hit and failure. I would have liked to have had more information about GC before I bought it, but I think eventually it will pay for itself. I just.. like the feel of it. I'm very apprehensive about the cookie-cutter engines that are coming out soon (VS3D.NET,Blade3D,etc) that promise the moon and then some and I think the industry may end up in a sea of MORE mediocrity..but I'm rambling. GC's greatest strength of no low-level code is also its greatest weakness.

Anyway I look forward to future releases of GC because I think it has the potential to stand up near the top dogs, and minus a few things it's pretty intuitive. I've also been working with Lightwave since high school so the seamless integration of the art path is absolutely phenomenal. Try getting a high res LWO into the valvE Source engine.. not easy..not easy.

Getting back to the issue at hand though.. you're not running a x64 bit system are you? Try to set the compatibility mode to some earlier version of Windows. Also try to kill any other Direct3D progs running while GC is running, could be a conflict between programs. I know that all seems like silly second nature but...I've been reading through the conversation and I can't figure it out..it's got to be something on your end. I can run an empty project just fine, as can most people I would imagine. Maybe a reinstall?
Logged
Pages: 1 [2]
  Print  
 
Jump to:  

 
Powered by MySQL Powered by PHP bluBlur Skin © 2006, hbSkins
Powered by SMF 1.1.14 | SMF © 2006-2011, Simple Machines LLC
Valid XHTML 1.0! Valid CSS!