20. RELEASE
game releasing, packing, support




Final steps

When your game is finally ready, there are a few things to do, before releasing it.

01. Check game's defines
Check the game's defines in the gamedef.gs file and see if they correspond to your game.

See if the GAME_AUTHOR, GAME_TITLE or GAME_WEBSITE are well defined.
The GAME_ID must be unique and you must change it, each time you realease an update of your game, to avoid previous versions of saved games to be loaded in the new game and lead to possible errors.

See if the number of coins (MAXCOINS) and the coin picking messages (in action.gs) are right.

02. Remove debug messages
In the release version, you must remove, or at least comment the debug messages from the scripts (println commands). If used in excess, they can have impact on the game's speed on slower computers, and players will see them in the log file or in the console. Don't leave information on the debug slots.

Keep your scripts clean, so others may learn something from it.

03. Remove unnecessary data files
Before packing the game data, remove all the unnecessary files, to reduce the game's size.

You may use the provided CheckTiles tool to see which tile files are not used in map.
Take care not to delete those files that are not used in map, but are needed in script or in engine. Like the tiles for loading screen, menu, player etc.

04. Write game information
Fill up the game's information in the data/dizzy.inf file. Some of this information is used by the setup application, so be accurate.

Grow the game_version each time you do an update on your game. It will also help you tracking bug reports from players.

05. Pack game data
Pack the game's data folder using the Pak tool. Include the dizzy.pak file in your release, instead of the uncompressed data folder.

06. Prepare the default configuration
The released games must have default options, in the configuration dizzy.ini.

Set the DirectX api (api=0) and the 640x480 windowed resolution with a x2 scale.
Have audio and input enabled, with volume levels at maximum.
Set log=0 to avoid dumping log messages. Players can change it from setup, if they need to.
Set cool=1 and completely remove the dev option.
The developer option may ruin the gamer's experience!

07. Write the "readme" file
Write the readme.txt file.

You should include the the name of your game, the current game's version, the author and some contact information. A version history is usefull, to keep track of the updates, or bug fixes. The readme file can also include a small introduction about the story, gameplay advices. Make sure you mention the DizzyAGE website too, in case players need assistance, or if they want to create a game of their own.

This text file can also be opened from the setup application.
See the game's readme file provided in the devtools, for example.

08. The release format
A DizzyAGE game must contain the following files, compressed in a single zip archive:

dizzy.exe is the game engine used to run the game.
dizzy.pak is the packed data, compressed with the PAK tool.
dizzy.ini is the .ini file with the default game's configurations.
setup.exe is the setup application.
readme.txt is the information file.

08. Testing the game
Create the release build, including the files presented above, and send it to the testers.
You can find beta-testers in the Dizzy Community forums.
Use their feedback to correct bugs or improve the final version.

The testing process is a very important part in the development of a game. Nothing is more annoying for a player than not knowing if he can't find a solution to a puzzle, or if the game has a bug and there isn't such a solution. So test, test and then, test again!

09. Releasing the game
When everything is fine, the game it ready to be released to the public.
Submit it to the official DizzyAGE webstite or to the Dizzy Community.


Packing and unpacking

The PAK tool can be used for both packing and unpacking game's data.

To pack, browse the game's data folder into the "From" field, like c:\dizzyage\game\data, and choose the name of the resulting pak file, in the "To" field, like c:\dizzyage\game\dizzyage.pak. Then press the "PACK" button. The process log will be displayed in the dialog and any errors will be reported.

The pak file must always be named dizzy.pak, to be loaded by the game engine. If such file is found, the engine will load the game's data from inside it, and it will ignore the uncompressed data folder, if still there.

Don't compress file formats that are already compressed or have a bad compression rate, like wav, ogg, ym, jpg, zip, etc.

To unpack some already packed data, select the "UNPACK" tab at the top of the dialog, browse for your pak file into the "From" field, like c:\dizzyage\game\dizzyage.pak and choose a destination directory into the "To" field, like c:\dizzyage\game. Press "UNPACK" and data will be extracted, including the data folder.

Warning: the extraction of data will overwrite, without warning, any existing files with the same name.
So, be careful not to loose your latest work.

Use the PAK tool to unpack the data from the demo game , "Dizzy And The Mushrooms Pie", and check it's scripts, as an example.

The PAK tool supports a protection password on the archive. This password can be set from the "PASS" button. However, DizzyAGE is supposed to be an open source community, were people can learn from the existing games. So, protecting your games is not really in the Dizzy spirit, unless you want to avoid players to access the game's content and ruin their playing experience...


DizzyAGE community

The official DizzyAGE web site is www.yolkfolk.com/dizzyage and it targets both players and developers.

Developers will find the latest DizzyAGE devtools, documentation, tutorials, articles, game data packages (like script templates, tiles, sounds and music), and a lot more. They can register their games to be listed on the DizzyAGE games page. Developers can also participate in the annual DizzyAGE Easter Competition, win prises and have a lot of fun.

Dizzy fans may visit the games section and download Dizzy games made with DizzyAGE.

If you want to propose some article or tutorial, tiles or sound packages, or maybe even an extended game template, you are welcome to contact me. Any help that makes the DizzyAGE community grow, will be highly appreciated.

DizzyAGE web site, is now part of Yolkfolk.com that offers a lot of support to Dizzy fans. Other Dizzy related websites can be found on the DizzyAGE web site's links section.


Homework

Well, you are now ready, to start working on your own Dizzy game.
Don't launch yourself in the greatest adventure, but start first with something small and nice.
Ask for advice, if needed and I'll be glad to help you.

Good luck!