MoSo Talk - How I Learned to Make Games

73
HOW I LEARNED TO MAKE GAMES I KNEW LITERALLY NOTHING ABOUT MAKING GAMES. I WANTED TO MAKE GAMES. I DECIDED TO LEARN HOW TO MAKE GAMES. I MADE GAMES. @wtrebella

description

This talk is about how I learned to make games. Before October 2010 I hadn't programmed a day in my life. But I wanted to learn how to make games, so... I decided the best way to do that was just to make games. A LOT of games. In this presentation I'll take you through a ton of the dumb little games that I did along the way that helped me get where I am today.

Transcript of MoSo Talk - How I Learned to Make Games

Page 1: MoSo Talk - How I Learned to Make Games

HOW I LEARNED TO MAKE GAMES

I KNEW LITERALLY NOTHING ABOUT MAKING GAMES.

I WANTED TO MAKE GAMES.

I DECIDED TO LEARN HOW TO MAKE GAMES.

I MADE GAMES.

@wtrebella

Page 2: MoSo Talk - How I Learned to Make Games

PROLOGUE• Always loved games

• Make them? No way I could

• Then: THE INTERNET

• Can be applied to anything, not just games

Page 3: MoSo Talk - How I Learned to Make Games

NAME CHANGE• TESSER + BLACKALL

• TEER + BALL

• TREBELLA

Page 4: MoSo Talk - How I Learned to Make Games

PYTHON

Page 5: MoSo Talk - How I Learned to Make Games

INVENT WITH PYTHON• inventwithpython.com

• Free e-book

• “The + sign tells the computer to add the numbers 2 and 2. To subtract numbers use the ‘–’ sign, and to multiply numbers use an asterisk ‘*’.”

• Tutorials

• Guess the Number• Jokes• Hangman• Tic Tac Toe• Sonar Treasure Hunt

Page 6: MoSo Talk - How I Learned to Make Games
Page 7: MoSo Talk - How I Learned to Make Games

GUESS THE NUMBER• Tutorial game from Invent With Python

Page 8: MoSo Talk - How I Learned to Make Games

JOKES• Tutorial game from Invent With Python

Page 9: MoSo Talk - How I Learned to Make Games

TIC TAC TOE• Tutorial game from Invent With Python

Page 10: MoSo Talk - How I Learned to Make Games

SONAR TREASURE HUNT• Tutorial game from Invent With Python

Page 11: MoSo Talk - How I Learned to Make Games

DIFFERENCE BETWEEN TUTORIALS AND CREATIONS

• Tutorials

• Teach you syntax• Teach you how to copy• No bugs (unless author messed up)• No problem-solving!!!

• Creations

• Teach you how to solve problems• Teach you how to be creative• BUGS!• Despair• The satisfaction of solving problems!!!

Page 12: MoSo Talk - How I Learned to Make Games
Page 13: MoSo Talk - How I Learned to Make Games

• My first non-tutorial game

• Based on Guess the Number

• Even though super basic, I was proud and could share

THE MAN-RODENT IS IN THE BARN

Page 14: MoSo Talk - How I Learned to Make Games

• Culmination of my first week of programming

• Taught me TONS of technical issues

• "My code is messy and sort of a hack job, but it works, and that’s all I really care about. My code will get better and better the more I do this.”

• How do I make visuals without a console?

• Minesweeper Trailer

MINESWEEPER

Page 15: MoSo Talk - How I Learned to Make Games

IOS

Page 16: MoSo Talk - How I Learned to Make Games

Exactly 1.5 years.

ANSWER:

Page 17: MoSo Talk - How I Learned to Make Games

LOST• Read some books on C and Obj-C

• Learned a lot but also felt completely lost

• Console graphics -> visual sprites??

• Often felt completely overwhelmed in making the leap

• BIG change in thought process needed

• How to affect visuals through code• What is a sprite?• What is a class?• What is an object?• What is a delegate?• Etc.

Page 18: MoSo Talk - How I Learned to Make Games

BASIC COCOA

Page 19: MoSo Talk - How I Learned to Make Games
Page 20: MoSo Talk - How I Learned to Make Games

TIC TAC TOE

Page 21: MoSo Talk - How I Learned to Make Games
Page 22: MoSo Talk - How I Learned to Make Games
Page 23: MoSo Talk - How I Learned to Make Games
Page 24: MoSo Talk - How I Learned to Make Games
Page 25: MoSo Talk - How I Learned to Make Games
Page 26: MoSo Talk - How I Learned to Make Games
Page 27: MoSo Talk - How I Learned to Make Games
Page 28: MoSo Talk - How I Learned to Make Games

• Even simple-seeming things often require mental gymnastics.

• ASK FOR HELP.

• You *will* figure it out eventually. Don’t give up.

TIC TAC TOE LESSONS

Page 29: MoSo Talk - How I Learned to Make Games

MORE COCOA APPS

Page 30: MoSo Talk - How I Learned to Make Games

FRACTION CALCULATOR

Page 31: MoSo Talk - How I Learned to Make Games

YES AND NO

Page 32: MoSo Talk - How I Learned to Make Games

BOUNCING HEADS

Page 33: MoSo Talk - How I Learned to Make Games

BREAKWHIT

Page 34: MoSo Talk - How I Learned to Make Games

MATCH 3

Page 35: MoSo Talk - How I Learned to Make Games

JUMPY GUY

Page 36: MoSo Talk - How I Learned to Make Games

ITENNIS

Page 37: MoSo Talk - How I Learned to Make Games

COCOS2D

Page 38: MoSo Talk - How I Learned to Make Games

• Game engine for iOS in Objective C

• Recommended by Matt Rix (he made Trainyard with it)

• Progressed a LOT since I used it

COCOS2D

Page 39: MoSo Talk - How I Learned to Make Games

• Based on a tutorial from raywenderlich.com

STAR SHOOTER

Page 40: MoSo Talk - How I Learned to Make Games

• Had local multiplayer!

• Multitouch

PONG

Page 41: MoSo Talk - How I Learned to Make Games

• Inspired by Tilt to Live, a game by One Man Left

• Accelerometer controls

TILT TO CLONE

Tilt to Live Tilt to Clone

Page 42: MoSo Talk - How I Learned to Make Games

• Randomly thought it would be cool to have paper graphics.

• Accelerometer controls.

• Had to use a bit of basic trig to solve ball rolling. Felt GREAT.

PAPER WORLD

Page 43: MoSo Talk - How I Learned to Make Games

• Inspired by Simogo’s brilliant Bumpy Road.

CLONEY ROAD

Cloney RoadBumpy Road

Page 44: MoSo Talk - How I Learned to Make Games

PARTYMAN

by Craig Sharpe

• Practiced animation

Page 45: MoSo Talk - How I Learned to Make Games

• Started to practice parallax

• Feeling like real game

• Turning into dumb endless runner

• Got some art from Michael Hussinger

• Pizza Guy Trailer

PIZZA GUY

With my art

With Michael Hussinger’s Art

Page 46: MoSo Talk - How I Learned to Make Games

• Inspired by Trainyard

• Wanted to see if I could make a grid-based path

PARTYBUS

Trainyard PARTYBUS

Page 47: MoSo Talk - How I Learned to Make Games

• Added a depot where the bus left from.

• Added a speed slider (also Trainyard inspired).

• New (terribly ugly) UI

• Important lesson: representative index and exact pixel location

PARTYBUS 2: PARTYMAN’S BIG WEEKEND

Page 48: MoSo Talk - How I Learned to Make Games

• Based on a Flash tutorial (http://www.strille.net/tutorials/snake/index.php)

• Translating from Flash to Cocos2d was a good exercise

• Breakthrough in how I thought about snake movement

SNAKE

Page 49: MoSo Talk - How I Learned to Make Games

• Inspired by Doodle Jump

• Collision is HARD

• One-way collision is HARDER

DOODLE CLONE

Page 50: MoSo Talk - How I Learned to Make Games

FLIXEL DETOUR

Page 51: MoSo Talk - How I Learned to Make Games

• Took hiatus off programming in beginning of 2011

• Half year later got into Flixel

• Game engine in ActionScript 3

• Fun to learn a new language

• Gave me motivation to get back into game-making

FLIXEL

Page 54: MoSo Talk - How I Learned to Make Games

POLYMER

Page 55: MoSo Talk - How I Learned to Make Games

• Started out as “another dumb game.”

• Started as simple number matching game.

• Over time I realized the numbers were unnecessary.

• Match 3’s just connect any tiles; Polymer’s need to be completed.

• This time: POLISH!

POLYMER

Page 56: MoSo Talk - How I Learned to Make Games

Title, font, menu items, game mode names, UI all changed

EARLY AND FINISHED TITLE SCREEN

Page 57: MoSo Talk - How I Learned to Make Games

ITERATING BOMBS MODE UI

Early Mid Final

• Maybe not as pretty, but makes more immediate sense

Page 58: MoSo Talk - How I Learned to Make Games

BUGS. MANY MANY MANY BUGS.• Making Polymer

taught me more about bug-fixing and problem-solving than anything else

Page 59: MoSo Talk - How I Learned to Make Games

• Didn’t have a specific method

• Near the end of dev, tons of little to-do’s popped up

• Now I use Trello.com

MANAGING TO-DO’S

Page 60: MoSo Talk - How I Learned to Make Games

• Polymer was designed without any IAP’s

• Polymer’s unlock progression was NOT intended for IAP originally

• Near the end of dev, decided to put IAP insta-unlocks in

• Everything can be unlocked in game, so who cares?

IAP’S

Page 61: MoSo Talk - How I Learned to Make Games

• Launched April 26th, 2012 on iOS

• iPad launched couple months later

• Android launched about a year and a half later

• 58th in U.S. games

• 107th in all U.S. apps

• Polymer Trailer

POLYMER LAUNCH!

Page 62: MoSo Talk - How I Learned to Make Games

IAP BACKLASH

Page 63: MoSo Talk - How I Learned to Make Games

• I did NOT take the backlash well at first

• First time I’d been judged outside of my “dumb games”

• It was “real game” so criticism was harder to take

• Was only a vocal minority

• But I greatly respected these people

• Around a year later, I took all non-cosmetic IAP out

• Corrupts gameplay

• Design issue; not ethical

RETHINKING IAP

Page 64: MoSo Talk - How I Learned to Make Games

PIVVOT

Page 65: MoSo Talk - How I Learned to Make Games

SIMILAR PROCCESS TO POLYMER• Prototype ideas until

one sticks

• Then POLISH!

Page 66: MoSo Talk - How I Learned to Make Games

• Polymer was soothing, slow-paced, thought-provoking and relaxing.

• Super Hexagon inspired me to do the opposite: fast, hard, twitchy.

• Code-based drawing instead of just sprites.

BUILDING ON MY SKILLS

Page 67: MoSo Talk - How I Learned to Make Games

• Launched August 1st, 2013 on Universal iOS

• Android launched a couple weeks later

• 41st in U.S. games

• 74th in all U.S. apps

• Pivvot Trailer

PIVVOT LAUNCH!

Page 68: MoSo Talk - How I Learned to Make Games

CONCLUSION

Page 69: MoSo Talk - How I Learned to Make Games

• Game 3 will have the same process.

• Multiple ideas. Prototype some until one sticks.

• Iterate a lot.

• Polish.

• Never stop learning.

WHAT’S NEXT?

Page 70: MoSo Talk - How I Learned to Make Games

The ONLY way to get better at making games is to…

MORAL OF THE STORY

Page 71: MoSo Talk - How I Learned to Make Games

MAKE.GAMES.

Page 72: MoSo Talk - How I Learned to Make Games

• Make LOTS of games.

• Keep trying.

• Keep making.

• No matter how much they suck.

• Make STUPID games.

• Each game is a tutorial for the next.

• I learned SO much from all the stupid little games.

• 1. Think of idea 2. Make it!

• Even if fail, you’ve learned.

• Don’t just copy me. Follow YOUR path.

• Goal should determine tools, not other way around.

MAKE. GAMES.

Page 73: MoSo Talk - How I Learned to Make Games

GO MAKE A STUPID GAME NOW.

@wtrebella