[In this Game Developer Magazine postmortem, reprinted here on Gamasutra, Edmund McMillen and Tommy Refenes candidly discuss the development process of smash Steam and Xbox Live Arcade hit Super Meat Boy, diving into the punishing process that lead to the retro revitalization that took hardcore gamers by storm.]
When I was in middle school I would draw up designs for what I thought would be the ultimate video game: full of blood, huge bosses, epic worlds, and a story that would follow an immortal hero through hell, the end of the world, and beyond.
Then I grew up... and not much changed.
Super Meat Boy originated as a simple Flash prototype that an online friend of mine (Jon McEntee) and I made during our free time over the course of three weeks. I had no idea it would become one of my most-played Flash games, let alone spawn a full-fledged console game.
In 2008 I was contacted by Microsoft and Nintendo about working on something for their download services. Originally my first pitch to Microsoft was Gish 2, and Nintendo was more interested in an expanded version of Aether, but the deciding factor was actually determined by a chance friendship.
I met Tommy Refenes in 2008. I've worked with a lot of programmers over the years, and my past artist/programmer relationships were always a bit alien. Working with Tommy felt a lot like hanging out with my best friend in junior high, nerding out and going off on tangents that would annoy just about everyone around us. I knew right away that whatever we decided to work on together would be fun, and this was how Super Meat Boy got made.
We just wanted to make something fun and have fun making it.
Getting this console deal was basically our one big break, our one shot to show everyone who we were and what we could do. No pressure.
1. Using Our Own Engine and Toolset
Tommy: When I tell most people that I made the engine and tools myself, they usually ask, "Why did you do that?" My friends over at FlashBang try to cram Unity down my throat every single time I talk to them, but I stand by the decision to make our own tools and engine.
One huge reason is control. I'm sort of a control freak when it comes to code; I like to understand everything that's going on in my codebase. That way, if something breaks, I know exactly where and how to fix it. Also, I got into games to program games, not to script them. I enjoy all aspects of game programming, from the engine to the gameplay. Since we're indie and can do what we want, and since I had the skill set, I simply enjoyed doing the engine.
Development of Super Meat Boy took 18 months from the first line of engine code I wrote to the last line of error messaging code I wrote before final submission to XBLA certification. Personally, I think that's record time for a game made by two guys with as much content as it has. I honestly feel the reason we were able to do this is because I was so involved with the code. When a bug would pop up, I could track it down immediately no matter how low to the hardware it was.
There weren't many tools used with Super Meat Boy. The in-game level editor was invaluable because it provided Edmund the ability to make levels with a "what you see is what you get" mindset.
The only other tool we had was the Flash Exporter I made. Basically it was a script that packed all the Flash symbols into one texture and exported animation information with sound cues. This paid for itself with the very first export of Meat Boy that Ed did. We had sounds, animations, and everything with one quick export that the engine could easily manipulate and call when needed.
2. The Design Environment
Edmund: Very early on, both Tommy and I became a bit frustrated by the very rigid work environment most developers told us we needed to have in order to be taken seriously and get things done.
I remember the day we got an email from Nintendo asking for head shots and a developer bio. It suddenly seemed so insane how serious everyone takes an industry whose goal is supposed to be entertainment.
Tommy and I went out that day in search of the most ridiculous sweater vests we could find, broke into Sears Photos and used their setup to take what would become our team headshots. I believe we also submitted some totally ridiculous dev bio to Nintendo that was printed in their press release alongside our photo.
Tommy Refenes (L), Edmund McMillen (R)
The point I'm trying to make is that everything about our design environment was fun. It was important for us to always enjoy what we were doing, and let the love of our work come through in interviews, videos, conventions, and even the game's design.
Tommy and I bonded over the course of development, and Super Meat Boy was an expression of that. We had fun making this game and didn't hold those feelings back when it came to the decisions we made. Super Meat Boy was a schoolyard inside joke that just got out of hand. I think one of the things that is most appealing about SMB is anyone who plays video games gets to be in on that joke.