2. Background
• GameMaker
• Prof. Mark Overmars
• Originally created in 1999 by Mark Overmars,
Professor of Computer Science at the University of Utrecht
• Written in Borland Delphi (object-oriented Pascal)
• Created to teach game design principles to Computer
Science students who already knew how to program
• A fully-capable free version of Game Maker allowed
hobbyists to aspire to make money from games
• Extensible architecture (3rd party libraries)
• Gathered a worldwide hobbyist following and an active
online community (the GMC)
3. • GameMaker Book:
• The Game Maker’s Apprentice:
Game Development for Beginners
• Written by Jacob Habgood and Prof. Mark Overmars
• Covers basic GameMaker use and game design basics
• Not a textbook – “just in time” learning by example
Background
4. • Sequel:
• The Game Maker’s Companion:
The Journey Continues
• Written by Jacob Habgood, Nana Nielsen and Martin Rijks
Illustrated by Kevin Crossley.
• Covers intermediate Game Maker, storylines and
characters
5. What is GameMaker?
• Game Maker
• Drag and Drop Programming
• Event-driven, icon-based programming
• Trade-off… easy but limited?
• Not really!
7. What is GameMaker?
• Entry-Level Game Development
• Drag and Drop Programming
• Not as limiting as you might think…
• This remake of a Gremlin classic is made mostly using D&D
8. What is GameMaker?
• Entry-Level Game Development
• Drag and Drop Programming
• Not a game “construction kit”
• Visual programming language
• Object-oriented (inheritance)
• Logic, mathematics, probability
X axis = 640 pixels
Yaxis=480pixels
135 pixels
11. Object Behaviours
• Event-Driven:
• Actions for Events
• Each event can have many actions
• 7 tabs:
• move
• main1
• main2
• control
• score
• extra
• draw
12.
13.
14. Object-Oriented Concepts
• Instances, Objects and Parents
a kind of
obj_bigleg_move
obj_bigleg_move_small
a kind of
a kind ofobj_bigleg_small
obj_bigleg
Objects inherit events
and actions from their
parents, and can be
treated as a group (in
collisions, for
example)
15. State Machines
• Instance Change:
• State Transitions
• Animation End Event
• Key Press Event
• Collision Event
Stand
Hop Left
Hop
Right
Jump
Left
Jump
Right Key Press <right>
Key Press <left>
Animation EndAnimation End
Obstructed Not obstructed
Jump
Hop
Dead
Collision
State Objects are
special objects that
represent different
behaviours for the
same “thing”
State Transitions
show how instances
change between
different state
objects (arrows)
16. Scripting Language
• A High Ceiling
• GML
• Comprehensive scripting language
(C/Pascal hybrid)
17. Scripting Language
• A High Ceiling
• GML
• Functions, arguments, return values
• Instance variables, global variables
• Control flow statements (if, for, with, switch, etc.)
• Arrays, Hash maps
• Id (analogous to a pointer)
• Extensions
• Create your own icon actions from GML
• Create your own DLL in another language and call the
functions contained within it from GameMaker (PC only)
• Create your own JavaScript extension (HTML5 only)
18. GameMaker: Studio
• Game Maker
• YoYo Games
• In 2006 YoYoGames were a new media start-up seeking
to become the ‘YouTube of Videogames’
• Headed up by Sandy Duncan (Former Xbox Microsoft
exec)
• Mark sold Game Maker to YoYoGames and became a
director of the company himself
• Employed Mike Daily (programmer of Lemmings & GTA)
• By 2010 YoYo had a web 2.0 site containing 60,000+
games made by the hobbyist community
• The best games were offered a publishing deal and
ported onto mobile platforms by YoYo
• GameMaker: Studio was released in 2012 which allowed
users to publish their own games on mobile platforms
19. GameMaker: Studio
• Commercial Games
• Game Maker
• Interpreted language
• Runners on various platforms
• PC, Mac, Windows 8, iOS,
Android, HTML5, Win8 Phone,
(lots of titles) Ubuntu (new)
• PSP (one title: Mr Karoshi)
20. • Publishing to Windows 8
• The GameMaker Family
The GameMaker Family
21. GameMaker: Studio
• Teaching Perspective
• GameMaker: Studio
• More powerful, but longer compile times
• Interface/options are more intimidating for beginners
• Education version coming soon (.msi)
• Free version is only practical for evaluation
22. Teaching
• Game Maker?
• First year Game Programming module:
• Limited potential for writing games in C++ in year one
• A creative outlet for programming while learning C++
• Get a published product in their portfolio
• Realise just how much work it really involves to bring
something to market – even with GameMaker!
• Insights into the wider perspective of a project lifecycle
23. Teaching Examplers
• Sheffield Hallam University
• Game Maker
• Other Applications:
• Modules where the emphasis is on design rather than
the technical development skills: e.g. Serious Games
• Extra curricular competitions: Game Jams
• School’s outreach: Games Britannia
25. The Windows Store
• Publishing to the Windows Store
Focussing on GameMaker specific parts of the process
assuming a ‘least resistance’ first-time approach...
• Requirements
• Get a Windows Store Developer Account:
• A DreamSpark account (free)
• A Microsoft email account (free)
• A credit card
• A bank account
• Export your GameMaker game for Windows 8
• A PC running Windows 8 (free on DreamSpark premium)
• A copy of GameMaker: Studio ($50)
• A copy of Visual Studio 2012 (free)
26. The Windows Store
• Publishing to the Windows Store
• Design Considerations
• Minimum Resolution
• 1366x768
• GameMaker will scale for you, but better to design for it
• Touch Compatibility
• ALL interaction needs to work on both a touch screen AND
keyboard (e.g. Escape to quit)
• GameMaker supports “Virtual Keys”
• virtual_key_add(x, y, w, h, keycode);
27. The Windows Store
• Publishing to the Windows Store
• Design Considerations
• Settings Charm
• Publisher contact details
• Other options like turning off virtual keys:
• win8_settingscharm_add_entry(name, callback);
28. The Windows Store
• Publishing to the Windows Store
• Windows Store Developer Account
• Create a DreamSpark account (free to students/academics
using a .ac.uk email) and link it to a Microsoft email
account (hotmail.com, live.com etc.)
• Use your DreamSpark account to apply for a free Windows
Store Registration Code (normally $50)
• Use the code to register on the Windows Store
• You still need a credit card (a nominal fee is charged and
refunded to verify your account)
• You’ll also need a bank account to deposit any potential
income earned by your app
• Income from the US to UK is covered by a tax treaty and you
just need to fill in a W-8BEN form online
• Comprehensive instructions:
http://tinyurl.com/dreamspark4gm
29. The Windows Store
• Publishing to the Windows Store
• Exporting to Windows 8
• The standard edition of GameMaker: Studio ($50) includes
Windows 8 support via HTML5 (JavaScript)
• Yet $50 is potentially prohibitive to students:
• Creating a publishable game takes A LOT of time and
students need access to GameMaker outside of lessons
• Possible to develop using GameMaker 8.1 Lite (free) and
import to GameMaker: Studio just to publish it
• But you cannot take a GM: Studio project back into
GameMaker 8.1 once you have edited it
• NOT practical to develop with GM: Studio free version as it
imposes limits on the number of resources
30. The Windows Store
• Publishing to the Windows Store
• Development Environment
• You will need Windows 8!
• Free to download as part of DreamSpark Premium
• Dual boot is an option (e.g.
http://tinyurl.com/dualbootgm)
• Install Visual Studio 2012 (Express version is free
http://tinyurl.com/vsexpressgm)
• Install GameMaker: Studio
31. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Log into your Windows Store Dashboard and select
“Submit an App”
33. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Log into your Windows Store Dashboard and select
“Submit an App”
• App Name: Reserve a name for your app
• Selling Details:
• Price and Markets
• Free and just English-speaking territories (or just UK)
• Paid and just US and UK (or just UK)
• Hardware Requirements
• Available to all systems (DirectX and RAM)
• Advanced Features:
• None – just click save
34. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Age Ratings:
• Self-certification
• Formal ratings are optional for most markets
• Getting a PEGI (European) rating is free and easy
http://apps.pegi.eu/Games/Submit
• Avoid Korea, South Africa, Brazil and Taiwan
• The lower the age rating the bigger the market
• Be aware of the content of the game you are
publishing – you are potentially liable...
• Cryptography:
• Select “No” unless you’ve added any encryption
36. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Preparing to Create a Package:
• Launch Visual Studio Express 2012
• Select Store -> Open Developer Account
• Log into your account
37. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Preparing to Create a Package:
• Launch Visual Studio Express 2012
• Select Store -> Acquire Developer Licence
• Log into your account
38. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Preparing to Create a Package:
• Select File->New Project
• Settings are irrelevant, but note the location
• Select OK
39. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Preparing to Create a Package:
• Select “Store->Associate App with the Store”
• Sign in (again!)
• Select your app and Associate it
40. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Preparing to Create a Package:
• Double click on package.appxmanifest
in the solution explorer (RHS)
• Select the Packaging tab
• Copy the Package name, Package display name and
Publisher display name to somewhere safe
41. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Preparing to Create a Package:
• Look in the Visual Studio project directory you just created for the
StoreKey (e.g. App3_StoreKey.pfx in c:usersfreddocumentsvisual
studio 2012projectsapp3)
• Copy this to somewhere safe (with your GameMaker project perhaps).
You can rename it appropriately too.
• RevengeOfTheMole_StoreKey.pfx
• Launch GameMaker: Studio and open the Global Game Settings for your
game and select the General tab
42. The Windows Store
• Publishing to the Windows Store
Enter the package
settings copied from
the manifest EXACTLY
as they were shown
Version is up to you
Create and update
images for the store
icons.
If Foreground Text is
Light then
Background colour
must be dark and
visa versa
43. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Preparing to Create a Package:
• Switch to the Installation tab and select the Certificate we
generated earlier (the .pfx file)
• Click on Install
• Save the project
44. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Preparing to Create a Package:
• That’s it for the setup.
• This process doesn’t need to be repeated until you
change the name of the app, or want to develop a
different app.
45. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Creating a Package for Submission:
• In Game Maker:
• Go to File->Create Application (select output folder)
• When the game runs, switch back to the Start Screen
• In Windows:
• Launch “Windows App Cert Kit”
• You may need to search for it on the first run, but it should
appear on the Start Screen after that
• Select “Validate Windows Store App”
• Select the version of your game which doesn’t have _test at the
end of the name
46. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Creating a Package for Submission:
• Common App Cert Kit failures:
• Running the test on the _test (debug) version
• Not enough contrast between foreground text and
background colours
48. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Creating a Package for Submission:
• Uploading the Package
• Find the .appxupload or .appx files generated in the output folder you
specified on “Create Application”
• Upload one or the other under “Packages” on the App Dev Centre
• Once upload is complete it will perform more automated tests
• Common Failures:
Entering the package /publisher names incorrectly or using the
wrong .pfx file
49. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Description:
• Describe your game and upload screenshots
• MUST be 1366x768 resolution images
50. The Windows Store
• Publishing to the Windows Store
• App Submission Process
• Notes to Testers:
• It is unlikely you will pass on your first submission
• Remember to tell them exactly what you have changed between each
submission.
• Common Failures
• Not having equivalent key/touch controls for everything
• Including a “quit application” option (don’t do it!)
51. The Windows Store
• Publishing to the Windows Store
• Monty Mole: Revenge of the Mole
• Available Now!
• Please download and rate it (its free!)
• Also available on Facebook:
• https://www.facebook.com/appcenter/gamesbritannia