Presentation on theme: "Push and Convey Jonathan Blow 1 February 2008. My Circumstances I am an independent developer. About to release a game on Xbox Live Arcade. It’s a self-funded."— Presentation transcript:
Push and Convey Jonathan Blow 1 February 2008
My Circumstances I am an independent developer. About to release a game on Xbox Live Arcade. It’s a self-funded 2D platformer. 12 years of game industry experience, etc.
Braid is a 2D game. I chose 2D: For simple technology, so I could focus on gameplay. To enable a human-feeling art style. We will come back to these points!
My Interests Games that are meaningful to people (not just “fun”). Creating mind-expanding experiences. Pushing the boundaries of what a “game” is.
Three Creative Skills Programming Design “Art”
Actually Making The Game: Programming Design “Art” QA Marketing Production Support Roles:
Programming Design “Art” You might: Study these subjects in school. Be hired into these positions for a job. Do all of these at once as an indie developer!
Programming, Design, and Art are not orthogonal. Design Affects Art fg/bg, where can I stand, how does it feel? Programmers Design de facto all the time. Character movement ( Δv or μ )?
Programming, Design, and Art are “surface skills”. There are also crucial “guiding skills” that they don’t teach in school or publish employment notices for. Without these guiding skills, the surface skills will be misdirected and the game will miss its potential.
Focusing on problems we see all the time in work from indies and academia.
Two Guiding Skills Conveyance Pushing
is connecting the Game from your Mind to the Audience. Conveyance
Some games highlight the process of conveyance by giving you their main payload that way. The Marriage by Rod Humble Mr. Heart Loves You Very Much by Zaphos
is ensuring that the game in reality matches the game in your mind. “It’s very easy to make the game run well in your head.” Inverse Conveyance
Inverse Conveyance (usual) “It’s white. It has 5 points. I have succeeded!”
We see this coming from academia all the time. And indies. And students. And veteran pro developers!
Utopia by Santiago Siri
Good conveyance is more important than being a good programmer, designer, or artist.
Pushing Following through on the promise of your game design. Pushing yourself beyond the easy conclusions to find things that are not obvious.
Prince of Persia: Sands of Time Ubisoft
Prince of Persia: Sands of Time
Mr. Robot by Moonpod
There’s a little trinket outside, but it’s just there to distract you from the giant treasure chest behind the secret door.
Pushing Don’t accept something just because it is a successful implementation of what you set out to do. Reject it because it doesn’t feel as compelling as you had imagined. Pushing really is a skill to be learned and practiced, not just a thing you decide to do one day.
“The First One Sucks.” If it’s all you can do to barely get a game finished... that game is not very good. If you think it is good, your Inverse Conveyance is probably broken. Students and indies fall into this trap all the time. Braid was fully playable from end-to-end in December but it’s not done yet!
Your first playable version is not your game. It’s just the starting point for you to Push and Convey to a much better place.
Side-Effects of Pushing in Design, Art, Programming
Pushing Design Be prepared to change your idea of what the core gameplay is. Listen to what the game is telling you. It knows itself better than you do. Be prepared for a lot of detail-oriented special-case design.
Pushing Art Lots of preproduction, trying many alternative directions. Be prepared to throw away and re-do many things you thought were done. This is important because of the interactions between programming, art, and design that we saw before.
Pushing Programming Be prepared to rewrite subsystems 5 times! You have to be very productive. For Example: Don’t spend time debugging! Make code without bugs. Know the cause of a problem before looking in the debugger. For Example: Don’t fall in love with complicated code!
If you are a renaissance indie developer, programming needs to be extremely easy. A non-thoughtful, low-energy task or else it will eat all your time and effort. (and will dominate the mixing process mentioned earlier.)
Things that Distract Us and Kill Our Games
Too Much 3D! Bogs down all of Programming, Art, and Design! Very few games must be 3D. And the 3D of a student or low- budget indie project tends to be ugly and clumsy. The 3D eats all the effort for your project, and there is no effort left for the actual game. Yet schools seem to encourage 3D. It’s unfortunate. My game Braid was 2D and it still took 3 years to make!
Ludological Hermeneutics Sometimes you need a big word to describe something nuanced. But you never need to string many of them into an impenetrable sentence. If you’re too busy shouting big words, you’re not listening to the quiet, subtle reality of your game.
Overengineered Program Structure Deep and wide class hierarchies, excessive abstraction. Slow compile and link times. If you need a class diagram, It’s Too Complicated.