MoSo Talk - How I Learned to Make Games

Post on 24-Jun-2015

766 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

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

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

PROLOGUE• Always loved games

• Make them? No way I could

• Then: THE INTERNET

• Can be applied to anything, not just games

NAME CHANGE• TESSER + BLACKALL

• TEER + BALL

• TREBELLA

PYTHON

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

GUESS THE NUMBER• Tutorial game from Invent With Python

JOKES• Tutorial game from Invent With Python

TIC TAC TOE• Tutorial game from Invent With Python

SONAR TREASURE HUNT• Tutorial game from Invent With Python

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!!!

• 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

• 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

IOS

Exactly 1.5 years.

ANSWER:

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.

BASIC COCOA

TIC TAC TOE

• 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

MORE COCOA APPS

FRACTION CALCULATOR

YES AND NO

BOUNCING HEADS

BREAKWHIT

MATCH 3

JUMPY GUY

ITENNIS

COCOS2D

• Game engine for iOS in Objective C

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

• Progressed a LOT since I used it

COCOS2D

• Based on a tutorial from raywenderlich.com

STAR SHOOTER

• Had local multiplayer!

• Multitouch

PONG

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

• Accelerometer controls

TILT TO CLONE

Tilt to Live Tilt to Clone

• 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

• Inspired by Simogo’s brilliant Bumpy Road.

CLONEY ROAD

Cloney RoadBumpy Road

PARTYMAN

by Craig Sharpe

• Practiced animation

• 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

• Inspired by Trainyard

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

PARTYBUS

Trainyard PARTYBUS

• 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

• 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

• Inspired by Doodle Jump

• Collision is HARD

• One-way collision is HARDER

DOODLE CLONE

FLIXEL DETOUR

• 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

POLYMER

• 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

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

EARLY AND FINISHED TITLE SCREEN

ITERATING BOMBS MODE UI

Early Mid Final

• Maybe not as pretty, but makes more immediate sense

BUGS. MANY MANY MANY BUGS.• Making Polymer

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

• 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

• 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

• 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!

IAP BACKLASH

• 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

PIVVOT

SIMILAR PROCCESS TO POLYMER• Prototype ideas until

one sticks

• Then POLISH!

• 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

• 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!

CONCLUSION

• Game 3 will have the same process.

• Multiple ideas. Prototype some until one sticks.

• Iterate a lot.

• Polish.

• Never stop learning.

WHAT’S NEXT?

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

MORAL OF THE STORY

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.

GO MAKE A STUPID GAME NOW.

@wtrebella

top related