Topic: BGT Beta Version 0.5 Released!

Hi all,

I am happy to announce the release of BGT beta version 0.5! This is by far the most feature rich build, so please take the time to read through the change log carefully. Since the game compiler is now fully functional, we will be accepting pre-orders for the engine in the very near future. For the time being, however, the change log is as follows:

Beta Version 0.5:
* Updated the script interpreter to the latest version which fixes some more bugs found by users.
* Added a powerful sound management include class that handles positioning of an arbitrary number of sound sources in a 1d or 2d environment.
* Updated the functions in sound_positioning.bgt to be more flexible, and added two new ones with extra parameters. This will require some minor modifications to scripts that currently make use of position_sound_2d.
* Added support for high performance networking, optimized especially for fast paced action games.
* Added a method called run_extended to the dynamic menu include class which allows you to specify a starting position for the menu cursor, and to have the initially selected item automatically announced after the intro finishes.
* Added a reset method to the dynamic menu include class that allows you to remove all previously added items, as well as optionally reset all the behavior properties to their defaults.
* Added a boolean property called paused to the sound object which is set to true if a sound has been paused with an explicit call to the pause method.
* Added a function to convert numbers to their corresponding hexadecimal string counterparts.
* Added two functions (find_files and find_directories) that return a list of all the files and all the directories in a given path, respectively.
* Made the engine registerable, with automatic detection of the purchased version (lite or pro) based on the key given.
* Added the ability to compile scripts into standalone executables if a lite or pro license has been purchased.
* Added a credits section to the documentation.
* Added a function called get_call_stack_size to retrieve the number of functions currently on the stack.
* Allowed the use of multiline strings (e.g. string literals that contain a line feed) (thanks Nick).
* Restructured the script execution flow, which will allow the engine to invoke user defined callback functions in the future.
* changed the range of the rate property in the tts_voice object from -100 (slowest) to 100 (fastest), so that it is now -10 (slowest) to 10 (fastest) which prevents situations where no change is perceived even though the property is actually modified (thanks Jason).
* Fixed a slight inconvenience in the dynamic menu include class where the text to speech and the audio options were not cooperating with one another.
* Fixed a bug in the random number generator that would cause it to generate the same sequence of numbers every time (thanks Sorin).
* Changed the internal buffer size for streaming sounds in order to boost performance slightly.
* Fixed a bug that would sometimes cause static sounds to have an initial starting position greater than 0.
* Improved the error output when including script files that do not exist, so that the engine now displays all the locations in which it tried to find the file rather than just the last one.
* Fixed a bug in the #include searching algorithm so that it now derives the current base directory for a relative include path based on the location of the script that is trying to include it (thanks Damien).
* Fixed a few bugs that would cause crashes when calling certain functions during global variable initialization (thanks Damien).
* Made the exit function usable even during global variable initialization.
* Fixed a bug where the volume property in the tts_voice object would get incorrect values (thanks Jason).
* Fixed a bug where the key_down function could erroniously report that a key was down if the user left the window while the key was still down but released later.
* Fixed a bug where certain special characters would not be spoken properly by the tts_voice object (thanks Oriol).
* Fixed a few typos in the language tutorial.

I hope you find these changes and new features useful. As always, head over to the BGT page and grab your copy!

Kind regards,

Philip Bennefall