Game Maker 3.0

Game Maker 3.0 was a major Game Maker release, directly following Game Maker 2.0 adding many new features. It was the first version to use DirectX for drawing. Also, Game Maker files now have thier own file format, which is the .gmf extension.

Note about the image: Please note that this image has been cropped from different places to fit to the view nicely, if you actually run Game Maker 3.0, you will notice a big difference in the sizes of the windows of the real Game Maker window and the image shown.

Compatibility issues
Although version 3.0 uses a completely different file format it is still almost completely compatible with past versions. When you start the program it will convert all old game files to the new format. The only possible incompatibilities that might arise are due to the many new variables and functions introduced. If your games use code and this code uses some of these names, this can cause problems. This might in particular happen with the variable xprevious, yprevious, direction, and speed.

Changes

 * In fullscreen mode DirectX is used and the game graphics are scaled, making it look much more professional.
 * A new form with Game Options is available. Here you can set a number op options for the game among which
 * full screen mode
 * a list of music files to be played during the game
 * whether the game should react to certain keys
 * a startup screen to show
 * and a lot more
 * Game Maker now allows for splash screens that show graphics, text or video.
 * The file format has been changed completely. This has some major effects
 * standard file dialogs for loading and saving
 * games can now be saved everywhere
 * Game Maker can be started by double clicking on a game maker file (*.gmf)
 * much faster loading
 * the new file format no longer uses gif files (these give licence problems for commercial games); of course gif files can still be used
 * stand-alone games are now protected and can no longer be changed
 * upon start the program will convert all old games for you into the new format
 * Speed improvements. For some games twice as fast as the previous version.
 * Support for mp3 music files.
 * New motion actions:
 * move objects easily in arbitrary directions
 * friction and gravity is added
 * bounce action
 * Possibility to have else parts in conditions in events using the else action
 * Many new functions in the built-in language:
 * routines and variabled for the new motion actions
 * routines to show splash screens with e.g. a video
 * more control over the highscore list
 * many string handling routines
 * arcsin, etc.
 * routines for alignment with the grid
 * variable fullscreenmode
 * routines to execute programs
 * It is now possible to use exact (pixel-wise) collision checking. (Can be switched on in the advanced tab of the options form.) It is slightly slower that normal collision checking using bounding boxes.

Extended the event mechanism

 * there is now a keyboard event that appears when no key is pressed. Very useful for e.g. stopping motion
 * mutiple alarm clocks
 * seperate mouse events for different buttons
 * a drawing event that you can specify (replaces advanced drawing)
 * there are now functions in the built-in language to perform events in other objects
 * there is now the notion of other events. A few other events exist
 * Additions to the interpreter
 * new construction forallinstances
 * support for 1-dimensional arrays
 * Improved the debug window, showing more information clearer. There is now also a function debug_message(str) to add your own messages in the debug window.
 * Many small additions add correction, e.g.
 * hints in the object creation form to give information about the actions
 * games now work reasonably well in 256 color mode (but this is not recommended)
 * solved some problems with midi files
 * web-site link
 * info on instances when designing rooms
 * other default room size
 * solved errors in string_width and string_height
 * more consistent behavior when closing forms
 * joystick events are treated better
 * bug that sometimes occurs when closing game maker is solved
 * running errors give some information about event and object
 * actions are default not relative
 * action to check whether there is a collision at a position
 * moving to random positions no longer hangs from time to time
 * program is more careful with resources