So if you’ve read my previous post, you are familiar with the three ideas I’ve been going between for the uDevGames contest. If you haven’t, here they are in a nutshell:
- TANK
- A side-scrolling shmup
- An experimental arcade shooter
So if you’ve read my previous post, you are familiar with the three ideas I’ve been going between for the uDevGames contest. If you haven’t, here they are in a nutshell:
For uDevGames 2008, I’m currently in the phase where I’m still choosing an idea to expand on and turn into a game. As I mentioned in my previous post, it’s important to both choose one that’s doable in the three-month time frame but also one that’s ambitious enough to challenge me, inspire me, and also wow people when we get into the voting stage.
I have no shortage of ideas for games, so I’ve been quick to identify three that would be most suitable for the next three months.
The first is TANK. TANK is a kind of running joke on the Best Damn Podcast Ever. We came up with it in ages past, but all we really said about it is you have a “tank that is so big it shoots out smaller tanks.” I have a pretty good vision for where I’d like to take the concept. It’s kind of similar on the surface to Arachnoid, with a few gameplay enhancements, as well as discrete, linear levels and the appropriate enemies and bosses. While this would be awesome, the amount of art assets it would require are actually quite high. Even if art was my strong point (which, I assure you, it is not) I would be very hard pressed to complete this in three months. That, plus the gameplay at the moment is the least engaging of the three ideas, this might not be the one.
The second idea is an unnamed space shooter. I’ve been dying to do one for a long time. I was actually going to enter one for the OMG Cup back in 2005, but I got a job at the same time and ended up shelving it. (This game is my first truly independent effort since then.) The genre plays to my strengths very well, as I tend to focus best on hardcore action games, and I live for the twitch. It also begs for lots of visceral effects, which I also have a thing for. While it wouldn’t be the most original idea, I do know a few innovations that I can bring over from other genres that would make it something that people haven’t seen before. Complexity wise, we’re not talking as much as TANK, since spaceships and the like don’t tend to need to animate nearly as much as soldiers running around tanks. But I still need enemies, levels, and scrolling backgrounds. And like I said, my art tends to be shit.
The third idea is in place as a fallback in case even the shmup ends up being too complex. It’s also a shooter, but it’s more oldschool arcade cabinet in style, where you have one totally visible playfield, a few lives, and you play until you die. The concept is tried and true, but I’ve got a pretty original idea. It’s an experiment in adaptive difficulty that I’ve been toying with and that I’ve been dying to prototype. It’s the least complex of the three ideas by far. Artwise, it’s very abstract, to the point where the enemies can be simple geometric shapes. It also has no levels, just “waves” between which are a simple breather, then the game algorithm starts up again. The downside, is that this game may not be ambitious enough for me. It’s much harder to work tons of guns into this idea, for instance. But the fact that it needs little art, no levels, and the fact that I still have a full time job that takes priority means that I may have to scale back my delusions of grandeur.
Perhaps that’s advice for fellow uDevGames veterans: resist the urge to step up the scope too much just because you’ve done it before. I’ve heard it said that your second game is a much, much harder than your first, and perhaps it’s because the whole time you’re trying to top what you’ve already accomplished. I was a bit lucky in that my second game had to be a three-week effort, but now, faced with another three-month contest, I may need to restrain myself from going too apeshit, especially since I can only put maybe 10-20 hours a week into it. We’ll see what happens.
As you may know, uDevGames 2008 is now underway. Congrats to Carlos and the hardworking crew at iDevGames on the launch, and best of luck to everyone involved.
Following are some hints and tips gleaned from my experience with the contest, for those entering for the first time, or maybe even veterans looking for some extra advice. I’d say I’m qualified at this point to give it– in 2004, I wrote Kill Dr. Cote for uDevGames, which took first place in the Gameplay category, and landed a publishing deal with Freeverse. It now earns me royalties and also led to my career in the industry.
If you take one line of advice from this entire article, let that be it. I certainly won’t be the only one to tell you, either. You need to choose an idea that you can turn into a game in three months. If this is your first time in the contest, you’re not going to be able to pull off an engrossing RPG, or a 3D third person action game. You need to keep things feasible. You’ll score higher with a smaller idea that’s fully executed and polished than a half-finished, really complicated idea. In fact, if you’re half finished at the 3 month mark, you will tank. I guarantee it.
That said, you can overdo it. Many people will say that when you start off, you should make Pong. Then move up to something like Pac-Man. Then maybe do something that remotely resembles a game you want to make. I actually do not condone this advice. You should definitely push yourself for uDG. Kill Dr. Cote was a top-down, 3D, sprite-based arena shooter, and it was my first game using C++ and OpenGL. The fact that I loved the idea so much inspired me to work harder on it, which would not have happened if I had tried to make, say, a Breakout clone.
Also, score wise, even well-done ideas that are very un-ambitious will not rise to the top. For instance, a game I very much enjoyed playing in the 2004 contest was PictureFrameX. It was a Mac version of a solitaire game. For all intents and purposes, there were no visual flaws with the program. It was a perfect solitaire game, and it never saw top marks in any category. So definitely aim high, but always realize that whatever you come up with, you have to follow through and make.
Plan your development process to be iterative. That is, get a playable version of your game as early as possible. That playable version is called a Prototype. Love the prototype. That will tell you if your idea is fun, and you will get ideas on how to make it more fun. You can distribute the prototype to others for feedback, and THEY can help you make the game more fun.
The “iterative” in the dev process means that you will be working to “iterate” on your prototype. You will concentrate on making a version that is playable that adds something to your current version. As long as you focus on that, you will always have something playable when the three months comes to an end.
The wrong way to do it would be, say, to spend a month designing everything, spend a month making a game engine, then finish up the game on month three. It’s a natural way to think, but realize you have over TWO MONTHS before you can even play your game! If it’s not fun, you’re screwed! So prototype fast, and get people playing it! And if it’s really, REALLY fun, they might even play your game instead of working on their own
This is also important. You’re here to make a game. Not an engine. You can write the prettiest, best-designed code in the world, but if your game isn’t fun, you will tank.
During every game I’ve made, the dev process has been in two phases. The first is the foundation phase. This is where you write reusable code, get each system of your game running in harmony with the rest, and generally build things out of stone. The second phase is a balls-out code-like-a-bat-out-of-hell phase where readability and interoperability be damned, and to the blazes with reusability: the code has to work, it has to work for this one game, and it has to work RIGHT NOW. You need to recognize that you will go through both phases, and that’s fine. At some point, that meticulous engine you’ve designed will have shit code sprinkled everywhere in it by the time you’re done. You have to learn not to hold it sacred, and when you’re at that point, you code what you need to code to get the game working.
Three months is a long time, and you need to pace yourself so you minimize the time you spend burned out, and also not lose interest in the game. Make no mistake, this contest will drain you. You WILL burn out. You WILL get sick of your game. Pacing yourself will prevent you from completely crashing and burning halfway through.
uDevGames, like any good play, has three acts. A beginning, a middle, and an end. Conveniently, it’s a three month contest, so you can consider each month to be a certain act.
Month One is when everyone flies out of the gate. Everyone is excited about their project, everyone’s working on full tanks. You’ll see some prototypes and mockups flying about. Energy is high. During this month, you’ll want to have a solid playable game. If that seems like a fast amount of time, that’s only because you’ll want to be prepared for Month Two.
Month Two is the valley. You will burn out in Month Two. Your energy reserves will be used up, and personal issues will affect you more than usual. During this month, your job is just to stay focused, and keep iterating. Leave a few fun things to do for this time. When I burned out from coding Kill Dr. Cote, for instance, switching over to composing music was how I kept my focus. If you don’t have a prototype by Month Two, you’re in danger of fizzling out completely.
Month Three is the race to the finish. Everyone’s got their energy back, and everyone’s going apeshit trying to finish their game in the deadline. This is where you will need to start drawing lines in the sand. That is, you need to freeze features at some point during this time. Freezing features means you’re adding no more new elements to the game, and you’re instead focusing on bug fixing and adding polish.
Us programmers love little details. It’s in our nature. We love writing that brilliant line of code. Or a wicked cool function. In a project of tens or even hundreds of source files, we love looking at a few lines at a time. But it’s easy to lose focus like that, and get lost in the minutia. Succeeding at uDevGames means keeping your eye on the prize, and remembering that you’re here to make a GAME.
Say we’re solidly in month three. It’s go time. The end is in sight. But you have a nasty bug with the physics you’re working on for your game. It seems in one strange condition, it behaves incorrectly. You don’t know why. You’ve torn up your code looking for the cause. At this point, you might be tempted to alter your system in such a way that this weird condition now behaves. This may not be the best course of action. In month three, you will probably want to just slap a band-aid on it, and focus on other aspects of your game that are lacking. Like how there are no menus, at all. Or maybe, you may even need to just ignore the bug, since it might not be as bad to others as it is to you.
As I mentioned, us programmers love little details. Logical instructions. But the development cycle of a game is hardly that. It’s very subjective, artistic, and chaotic. You will need to take that chaos and break it down into steps in order to do well.
So say you’re making Pac-Man. You may first break it down into the following pieces: The Maze, The Player, The Dots, The Enemies, The Powerups. But that’s not enough. You will have to break the maze up further: Drawing it, creating it, being able to access where the walls are for the player/ghosts, etc…. You’ll have to break the player up into: Drawing it, controlling it, dying, respawning, and so on.
The more you break down these steps, the easier each one is to process. You can better estimate times needed to complete each task, and you can also get a better sense of progress when you can complete one smaller task instead of working vaguely on a larger one. What sounds better, “I worked on some player stuff”, or “I added player dying and respawning”?
In some extreme cases, you will need to break things down into trivial steps. During the second month in 2004, I was burned out, and literally had to focus on the step of “Open Xcode, Open File x” in order to get momentum going. No shame in that. Do it. If the step before you seems too big or complicated, break it down until it’s the size of something you can digest.
The uDevGames site has developer diaries. Use them. Stay connected with your peers, your players, and yourself. Document what you’ve gotten done, what you’re going to work on, and how you’re holding up. This is all precious data that you can use later on. You’ll also build up hype for your game. Plus, it’s fun.
There is a section in the uDevGames site for past developer diaries. If these get posted, I recommend you read through some of them. Remember that precious data I talked about? You can collect that from everyone else. Pay attention to the dates, and recognize which entries are from Month One, Two, and Three.
There’s another cool trick that used in 2004 that may not be totally ethical, but provided great results. In 2004, I often blogged about features I added– BEFORE I added them. “But Fic,” you say. “Isn’t that lying?” Maybe so, but what that does is put you in a position where you then HAVE to deliver that feature. You’ve already said you did it! In my case, that added pressure helped me to implement those features faster, so I wouldn’t be caught lying! :) Of course, there’s always the risk of that happening, in which case the whole trick will backfire, so use with caution!
That’s all for now. I will definitely have more advice for you as we get on in the contest. Stay tuned to this site, and I’ll help you follow through with your game idea, help you with more concrete things such as making sure you’re distributing a working, double-clickable app that conforms to the rules, and how to finish up the contest with a bang. In the meantime, best of luck to you. This is your chance to show us all what you’re made of!
Until then,
FIC OUT.
So the uDevGames 2008 contest starts tomorrow, and I’m still unsure whether or not I want to enter. It’s the first uDev contest since 2004 (when Kill Dr. Cote won Best Gameplay) not counting the OMG Cup, so it’s been awhile.
I’m still undecided on whether or not to enter. On one hand, I love this contest. It’s where I got my start, and the Kill Dr. Cote development cycle was one of the best things I’ve ever been a part of. And frankly, I’ve yet to match that excitement. Not even the development of Marathon could come close.
It was definitely the unrestrained creative output- Kill Dr. Cote was the result of me being able to go absolutely apeshit with a game, without external forces telling me that what cannot or should not be done, or that it won’t be commercially viable, or universally approachable. Since beginning a full time career, these forces have always been present, and their presence is suffocating. Trying to develop an idea with these aspects in mind is like trying to get into an elevator full of half a dozen sumo wrestlers. It’s claustrophobia of the mind. Taking part in uDev 08 would allow me to go apeshit again, and possibly repeat the most creative and fun period of my life.
The timing is perfect, too. I’ve been working on and revising an engine since August 2007, and this would be an opportune time to open it up. From what I know of engines in general, I think mine is fairly unconventional, in that it’s meant for rapid development over things like 3D scene graph management, and it’s meant for myself instead of other people. Selfish, perhaps, but being able to make games as quickly as I think of them means I need a set of tools that I’m incredibly comfortable with. While the engine will be open sourced as a result of the contest, it won’t make the code any friendlier to human eyes
On the other hand, there is actually some internal resistance to entering the contest. The more I think of it the sillier it seems, but there it is. Part of that resistance is the urge to go back with the bar set extremely high, and top my performance from 2004. And I would need to do it on a part time commitment. I have a job now, and it’s a job making games. And I’m lucky that I’m at Freeverse, where these sort of projects are encouraged– in fact, I wouldn’t be the first FV employee to enter a game in uDev. Mark Levin also entered in 2004.
If I can pull it off part-time, I’d love to be a part of it. The prizes don’t even matter to me this time- I have all the tools I’ll need. I’m doing this because it feels like my soul needs it. Call me a pretentious artiste or whatever’s clever, but the personal expression is what I’m after. These games really do mean something to me spiritually (for lack of a better word). It’s that unbridled expression that gets me off as a developer, and only Kill Dr. Cote and Arachnoid have achieved a satisfactory level of that expression.
The registration deadline is January 18. What I’ll probably do is start prototyping some stuff (I have three really strong ideas that I want to explore, including one that BDPE listeners will probably be glad to see) and if I can have something good by the stroke of midnight of the new year, then it’s go time.
Updated site get.
I’ve been going OCD on themes when it comes to the site. They’re either too narrow and claustrophobic or they’re too open and have no structure. Anyway I dig this one for now; I just need to whip up a background graphic. If I can keep the momentum going I’ll have something by the end of the weekend. In general, it’s been hard to stay focused on things outside of work lately. Even taking the time to play games has become a much bigger undertaking than it should be. (It should be NO undertaking.) I noticed I had the same problem while working for Petroglyph in Las Vegas- my time management skills are complete rubbish when I’m scheduling around a full time job. Weekday nights I’m basically worthless, and weekends feel horribly rushed. Something I have to figure out, because this is how mid-life crises happen.
In other news, I just gave a Keynote presentation at the NY Games Conference here in Manhattan on Thursday, “iPhone Games: Bum Rushing New Platforms For Fun and Profit.” I think it went quite well, despite only having about 24 hours to prepare something. The younger folks especially seemed to dig on it, and the suits (by which this conference was primarily attended) not so much, but with stills from the movie Predator, David Bowie, and comparing the launch of the iTunes App Store to a Zerg rush, that was to be expected. Could this lead to future public appearances? If so, god help you all.
I couldn’t get to see much of the show (half of Day 1, and none of day 2) but I hope it takes off. The east coast needs more game conferences. I’d love to see it bigger, and expanded past the company bigwigs. Personally, I’d also love to see E3 come back in all its circus-sideshow glory, but that’s a topic for another post.
If you own an Xbox 360, you WILL buy Braid. That’s an ORDER.
As you should already know, this game is brilliant. Inspiring, even. Jon Blow just showed the entire gaming industry that two guys with a lot of talent, a clear vision, and a lot of tenacity can tangle with multi-million dollar AAA titles. And Braid just showed the gaming industry that gameplay design, direction, and artistic statement can stand proudly against the most expensive 3D engines, squad AI, and bouncing-tit-physics.
If you are one of those people who won’t buy it just because it’s $15, then you’re an asshole. For $15, I had more fun with, and got more out of Braid than anything else I’ve played recently, including every 360 game I shelled out $60 bucks a pop for, and including the total fucking steamers I’m playing through courtesy of Gamefly just to quench my insatiable thirst for achievement points.
When I reached “Closure” I was already calling Braid one of my favorite games, ever. And it wasn’t even fucking done yet. I won’t spoil anything, but all I will say is keep playing. Which you should do anyway, because it’s awesome. Braid is so unbelievable that every game that ISN’T Braid sucks a little bit more now that Braid is out there.
If Braid doesn’t change the entire gaming industry from here on out, it won’t be Jon Blow’s fault. It’ll be ours.
If there be any of you who still doubt my awesomeness, let ye now be silenced. I was walking home tonight from Freeverse HQ, and at one point look up, and staring right back at me was this beauty. Me and Mr. Bruce Morrison have been kicking around setting up a game cabinet, and I thought this would be perfect. Really, the majority of the work goes into sawing the wood, putting it together, and making it look cool and/or authentic. And if Bruce’s woodworking skills are anything like mine, that would have ended in tears.
So with a little planning with Bruce, a handtruck loaned no charge from the nearby 24-hour Rite Aid (the only thing that’s open), two passers-by, who I will call Dude One and Dude Two, who helped me navigate some tricky gates, and finally a lovely local gal by the name of Jenna, who steadied this beast while I handtrucked it all the way back to my building, up the stair, through the door, up the elevator and into my apartment. It was a night of heroics that will not soon be forgotten.
That aside.
The cabinet is an interesting creature. It was originally a Mortal Kombat II machine, but has since been altered: if you look close, there are two light guns bolted to the front of it. (The guns themselves are in the cabinet here.) And since then, it’s been gutted. Which makes it perfect for us. What’s crazy is that this machine was going to be trashed. Cabinets are endangered enough as it is. I’m hoping we can give this baby a little love, bring it back to life, and it will preserve the classics as it rightly deserves.
Finally, while I was hauling this fucker around, sweat stinging my eyes, I was thinking how awesome it would be to make a coin-op game. It’s such a tiny niche that it would probably not be profitable (if you’re going for the old stand-in-front-of-cabinet-with-a-joystick-and-buttons approach) but I’ve always wanted to do it. When I was a kid, arcades were the height of gaming. You had your NES, but the arcade was where all the heavy shit went down. That’s where you went when you needed your mind blown.
Anyway, I’ve been kicking around a coin-op version of Kill Monty. It’s a perfect match for coin-op: quick games, killer difficulty, lots of smoke and eye candy. I would just need to turn all the menus into a looping attract mode, throw in my supremely awesome joystick code from the FicEngine, and tie it to some X-Arcade sticks. I’d also love to play around with my beat-em-up prototype more, drop it down to two players, and make it a new game for our cabinet. I would love like a Golden Axe type game, or maybe Narc. But first thing’s first! Now I just need to get this thing out of my place and into Freeverse HQ. That said, it does look kind of awesome just sitting in my apartment. I’ll miss it for sure!
Fic out.
At long last, the conclusion to my epic 4 piece blast-to-the-past featuring games I created when I was between 7 and 8 years old. It’s fitting that I stumbled on all of these, right before starting work as a designer/programmer for Freeverse. Deciding between staying as a pure indie developer and taking a full time gig was a very difficult decision for me, and seeing these really reminded me of why I do what I do. I sincerely believe this is my artistic purpose… I’ve written and designed games on whatever medium I had available to me, whether that be in C++ code, pencil drawings, action figures, for as long as I can remember. There’s no way I could do anything else.
Anyway, enough ego stroking. On to the games.
Yo! So here’s the third set of games from my library of old-ass games I made as a kid. It’s been awhile in posting- I’ve been busy beginning work at Freeverse and finding an apartment in NYC. That’s a whole different rant, but the end result is I found a sweet place in the Upper East Side and I move in June 1. Woot! Anyway, on to the games.
Some time ago, while preparing to move to NYC I dug through a pile of old Mac floppy disks and found a bunch of old “games” I made as a kid (7-8 years old, almost twenty years ago) by drawing their title screens in a paint program called Modern Artist. This is the second of four five-game-set where I share the best with all of you. You can find the first set here.