Casual Gameplay Design Competition #4
at Jayisgames.com

August - October 1, 2007.

This readme is included with the stub competition GUI that you may use to test your game with before submitting it to us.

UPDATE (9/27/07) - Added: two public functions in the GameManager for enabling and disabling of the UI console menu (optional -- use these functions only if you feel the console menu may interfere with the gameplay of your entry). Also, the game1.fla example file has been updated to illustrate the use of these functions through the right-click context menu.
	GameManager.getInstance().enableConsole();
	GameManager.getInstance().disableConsole();

Directions:

Simply name your main swf "game1.swf" and put it into the same directory as the stub. An example game1.swf is provided along with its .fla file so you can see the API calls and where you should put them in your own game.

Specifications for entries:

Your game will be loaded from an external swf into a common UI by a MovieClipLoader. Therefore, there are a couple of issues you must be aware of:

	1) Stage size must be 640x480.

	2) The background color of the common UI will be black (#000000). Therefore your game must either look good against a black background, or you will need to include a rectangle filled with the color you wish to appear as the background, and of the same size of your stage, on your main timeline.
	
	3) Frame rate should be set to 30 fps, as that will be the frame rate of the common UI that loads the external game swf files.

	4) Preloading your game will be handled for you, therefore you do not need to include a preloader with your game (but having one shouldn't cause any problems either.)
	
	5) AS2 games only: Your game will be loaded with _lockroot set to true, which means references to _root in your game will continue to reference the main timeline of your game; however, you may not use references to _level anywhere in your code. (If you do not know what this means, you probably don't have anything to worry about.)
	
	6) AS2 games only: For Sound objects to function correctly in loaded MovieClips, when instantiating new Sound objects you must pass a reference to the movieclip that's doing the instantiation, such as:
	
	var mysound = new Sound(this);
	
	If you leave out "this" your game will have no sound when loaded.


The common UI is designed to provide a consistent interface with which to easily navigate through each of the competition entries. To facilitate a smooth and functional common UI, your game must support our very simple API: applies to both, AS2 & AS3 games...

	start() - a function in the first frame of your game that gets called by the common UI (GameManager class) to start the game. This function will not be called until after your game has finished loading. Therefore, your game should remain on its first frame until it receives a call to start().
	
	reset() - a function in your game that is called to reset the game to its initial state/menu. It must exist so the GameManager can call it when the player selects "reset" from the common UI controls.
	
	quit() - a function in your game that is called to quit the game and return to the main competition UI menu. It must exist so the GameManager can call it when the player selects "quit/menu" from the common UI. This function must make the following call: GameManager.getInstance().gameDone(); // use this exactly as written.

If your game contains a win condition, be sure to create an appropriate ending to the game. Do not simply call the GameManager's gameDone() function without some congratulatory message to the player first, or the player will be disappointed and points will be taken off your entry. A few entries did that in our first competition and players were confused as to whether the game had been completed correctly.

If you have any questions at all about these specifications or about using the stub, you may contact me directly at my email address below, or by posting a comment to the competition #4 announcement thread at:

http://jayisgames.com/archives/2007/08/game_design_competition_4.php

Thank you for participating!

Best regards,

Jay Bibby
jbibby@gmail.com

jayisgames.com
casualgameplay.com
