(almost)MAV-less Blitz3D
Posted: Sat Aug 13, 2016 11:26 pm
I was bored so I grabbed MSVC 6.0 from a shady corner of the Internet and modified Blitz3D to make a version that can produce executables that don't crash immediately when an error is found.
Instead, each error is added to a queue that you can retrieve details from by calling ErrorLog(), like so:
When an error occurs, the function that had the error returns 0 instead of forcing the game to close, which means it could potentially keep running without major problems other than a missing or misplaced object.
MAV's aren't completely gone, but they should be a lot harder to get.
One instance where error checking is not performed is in WritePixelFast/ReadPixelFast, because adding that could ruin the purpose of those functions.
Download here:
https://www.dropbox.com/s/6pvl4sdldd8kx ... n.zip?dl=1
Source code:
https://github.com/juanjp600/blitz3d/
To install this, rename your Blitz3D bin folder and put this one in as a replacement. Any executables produced by this version require fmod.dll to run.
Instead, each error is added to a queue that you can retrieve details from by calling ErrorLog(), like so:
Code: Select all
Local errStr$ = ErrorLog() ;get first error
While Len(errStr)>0 ;if string is empty, there are no more errors
;do something with errStr here
errStr$ = ErrorLog() ;get next error
Wend
MAV's aren't completely gone, but they should be a lot harder to get.
One instance where error checking is not performed is in WritePixelFast/ReadPixelFast, because adding that could ruin the purpose of those functions.
Download here:
https://www.dropbox.com/s/6pvl4sdldd8kx ... n.zip?dl=1
Source code:
https://github.com/juanjp600/blitz3d/
To install this, rename your Blitz3D bin folder and put this one in as a replacement. Any executables produced by this version require fmod.dll to run.