1 of 43

Game Development for Fun

(and not profit)

2 of 43

“Hobbyist” game dev

(a subset of “indie” game development)

3 of 43

Where I’m coming from

http://games.dylanwolf.com/

4 of 43

First, the bad news.

5 of 43

The bad news

  • Don’t quit your day job.
  • There’s no quick path to mastery.
  • Think small. Very small.
  • Don’t start with your dream game / magnum opus.

6 of 43

But!

7 of 43

The good news

  • You can beat the learning curve!
  • There’s a community.
  • It’s personally rewarding.
  • Even small games can be really cool.
  • Stick with it and you’ll be surprised what you can build.

8 of 43

This panel

  • Getting started
  • Entry-level tools
  • Other resources for staying involved

9 of 43

Tinker where you can

  • Mod other games
  • Play with board, card, or other tabletop game mechanics.

10 of 43

Getting started

It’s not as tough as it used to be.

  • Lots of visual, editor-centric tools now. Less (or no) code is necessary.
  • Lots of stock art and audio resources.
  • Mostly free.

11 of 43

Tools

Tools tend to be either flexible (and complex) or easy to learn (and limiting)�

  • Be willing to switch�
  • Own your tool’s weaknesses

12 of 43

Going Solo?

You need to wear multiple hats.�

  • Focus on one thing at a time�
  • Use stock art, music, audio, and code
    • But watch the licenses!

13 of 43

Game programming is different

  • Typically not like event-driven, business software development

  • Lots of optimization issues, but don’t obsess over them (yet)

14 of 43

Take it slow

  • Don’t start with grandiose designs--iterate!
  • Learn on projects you’re willing to throw away
  • Try cloning an existing game.
  • Start with mechanics that are easy to build--i.e., point-and-click over platformer.

15 of 43

Get support

  • Get involved in a local group, if you can.
  • Game jams are a good way to push yourself.
    • But study up before your first jam.

16 of 43

Entry-level tools

Learn to code:

  • Scratch
  • App Inventor

Flexible, but complicated:

  • GameMaker
  • Unity

Simple, but less flexible:

  • RPG Maker
  • GameSalad
  • Stencyl

17 of 43

Some similarities...

Usually, a game consists of discrete:

Scenes = Maps = Rooms

Containing one or more:

Objects = Actors = Sprites

Whose purpose is defined by:

Properties

Events = Behaviors

18 of 43

Scratch

  • Free, browser based (scratch.mit.edu)
  • Drag-and-drop designer and “block” editor
  • Good for learning basic concepts.
  • Third-party tools to compile to EXE/APP/JAR

19 of 43

App Inventor

  • Free, browser-based (appinventor.mit.edu)
  • Drag-and-drop designer and “block” editor
  • Builds Android apps
  • Access to devices
  • Both standard UI and canvas

20 of 43

Demo

AppInventor

21 of 43

RPG Maker

  • Commercial software with several versions available (Steam)
  • Made for JRPG-style games
  • Builds to Windows

To The Moon, several other games

http://store.steampowered.com/tag/en/RPGMaker/

22 of 43

RPG Maker

Configurable turn-based battle system with stats, states, and classes.

Maps with encounter regions and events

Scriptable (either point-and-click event selection or Ruby scripting)

23 of 43

Demo

GameMaker

24 of 43

GameSalad

  • gamesalad.com
  • Free to build Mac, iOS, or web
  • Costs to build Android or Win8
  • Demo projects on website

Mostly mobile games

http://gamesalad.com/featured-games

25 of 43

GameSalad

Games are composed of Actors in Scenes.

Actors and Scenes have Attributes that define position, size, movement, and physics.

Prototypes define reusable Actor templates; Instances are actual in-game Actors

26 of 43

GameSalad

Custom Attributes can be added to track your game’s rules.

Boolean: true or false (checkbox)

Integer: whole numbers (0, 1, 2, 3, etc.)

Real: floating-point numbers (3.141)

27 of 43

GameSalad

Actors have Behaviors and Rules that define how they interact with various events.

Otherwise, they don’t interact.

It’s like writing code, but a guided process.

28 of 43

Demo

GameSalad

29 of 43

�Stencyl

30 of 43

GameMaker

  • www.yoyogames.com/studio (or Steam)�
  • Free to build Windows games
  • Costs to build Mac, Linux, iOS, Android, WinPhone 8, etc.
  • Video tutorials on website and�demos downloadable in-app

31 of 43

GameMaker

  • Hotline Miami
  • Home
  • Risk of Rain
  • Nidhogg

https://www.yoyogames.com/showcase

32 of 43

Unity

  • unity3d.com
  • Windows or Mac
  • 3D or 2D
  • Builds for Windows, Mac, Linux, iOS, Android, Win8, web, etc. etc. etc. (free!)
  • C# and JavaScript code

33 of 43

Unity

  • Hearthstone
  • Rust
  • Kerbal Space Program
  • Gone Home

http://unity3d.com/showcase/gallery

34 of 43

Unity

It’s a bit like learning a 3D modelling tool, in that it’s not intuitive at first.

Very few “built in” features. Find scripts or write code yourself.

Asset Store can fill in missing pieces.

35 of 43

Unity

The basic unit is the GameObject.

Scripts hang off GameObjects to add functionality.

Prefabs create reusable GameObject templates.

36 of 43

Demo

Unity

37 of 43

Other free tools...

http://www.ludumdare.com/compo/tools/

  • Engines
  • 2D/3D graphics
  • Audio/music
  • Map editors

38 of 43

Game Jams

Ludum Dare - ludumdare.com/compo

  • Create a game in a weekend
  • No winner or prize, but rated

Compo: 48 hours, solo, from scratch

Jam: 72 hours, teams, with assets

39 of 43

Game Jams

Tons more: http://itch.io/jams

Forces you to think small.

Helps you learn to control scope.

Learning through experience.

40 of 43

User Groups

KnoxGameDesign.org - Knoxville, TN

  • Presentations
  • Show-and-tell
  • Game jam meetups

41 of 43

User Groups - My experience

  • Doesn’t need to be large, just have a core�
  • Don’t need to be experts, just willing to share

42 of 43

User Groups - My experience

  • Doesn’t need to be dominated by coders, because audio, graphics, and design matter�
  • Don’t need to use the same tools, because cross-training is beneficial�
  • Not everyone shares every meeting

43 of 43

Questions? Comments?