I feel a little guilty about this, as I’m directly referenced as an example in Matt Barton’s latest development diary expressing his frustration, disappointment, and lowered expectations as he pushed for making a 3D RPG. He’s done some amazing stuff over the last few months, going from nothing to three(?) released games, including one commercial release. So he’s broken the ice and gotten some great experience, but the next step – attempting to do a 3D RPG with isometric battles (a la Pool of Radiance) in a new engine (Unity) is proving to be a bit of a doozy:

“Where I’ve been becoming increasingly disappointed, though, is what a dude like myself can hope to accomplish on his own. I had originally been naive enough to think that the tools had reached a point where you didn’t need a full-on team of professionals to make something that looked like, well, it was made a full-on team of professionals. I didn’t expect to make the next Bioware game here, mind you! But I thought it was within my ability to make something like Jay Barnson’s Frayed Knights game. Jay had help, of course, and plenty of professional experience, so I figured–heck, why can’t I learn the same stuff and make my own game? It *seemed* doable, and definitely fun!”

I’ve been kinda silent as he’s been working on these, because I’ve been both rooting for him and a little concerned that he was biting off more than he could chew. But I didn’t really want to pollute his experiment with my input. Or something.

And since Matt’s got some indie games under his belt, now, I hoped (and still believe) that the step up to a “lite” RPG or 3D game or a new engine aren’t such a big one as he is concerned about. The trick may be doing all three at once. Four, if you include the iso-style tactical combat. That adds up to what is probably too big of an elephant to east in one sitting.

I think his current plan is actually a good one – to take a single step at a time. In this case, creating a simpler 2D-based game in Unity, so that his attention is focused on learning the engine. I may even suggest looking at the improved 2D libraries that they have available for Unity out there – they aren’t too expensive, and can make things a little easier. And “2D” is really just a camera mode in Unity – everything is still 3D, and it’s possible to mix and match sprites with actual 3D models. It’s also possible (but harder) to mix and match them so that they look good, too.

Creating good 3D content (models and artwork) is something I can’t even do yet. I suck a lot less than I used to, but I’m still not good at it. I’m still proud of getting the doors and treasure chests in Frayed Knights to look halfway decent. But I’d say simple models – perhaps viewed from a 2D view (iso?) might be the next step for a game.

From there, tackling the RPG side of things – perhaps a bit scaled down from the original plans – would be not such a bad step. I mean, in the time it took me to create Frayed Knights in the first place, someone like Matt could have four or five games out, two of ’em RPGs… 🙂

As for what constitutes “scaled down,” I’d recommend three things:

#1 – Go first-person perspective or a third-person perspective. Don’t try to tackle both (yet), as cool as it was in Pool of Radiance. I’m not saying it shouldn’t be done (I’ve been kicking around a similar idea myself for a while… I even considered it for Frayed Knights for a little while), but it may be too much at once. In a sense, you’d be making two games at once… and you may need 2x the assets as well.

#2 – Start with a single-character based RPG rather than party-based. I know, my heart is more in party-based games more than single-character games too, but it definitely adds to the challenge, especially when it comes to the user interface issues. Of course, there are things that get harder with this choice as well (like making character development and combat more interesting), but on the whole I think it’s easier.

#3 – Throw out everything that doesn’t speak to the core of your game. For example – many of the older games featured the “town” as nothing more than a menu of options. Why not do that and keep that part as simple as possible, so you can focus purely on exploration and combat? Oh, and leveling, according to his second dev diary entry.

Maybe a cooler, better, polished, and most importantly finished game along the lines of my ancient little project Hackenslash. It may not sell a ton, but it would probably be a great way to learn.

Matt laments some issues that I think resonates with anyone embarking on something as massive as indie game development: He says, “By the time you stack up all the books, tutorials, websites, forums, or whatever you need to learn this stuff, you discover that even if you had the time to go through it all, you definitely wouldn’t have the memory power to retain it all, so it becomes rather hopeless.” My response is that if anybody was trying to learn Calculus without having learned anything at all about elementary mathematics or algebra, the feeling would be the same. You learn by doing, and you need to do it a step at a time. You eventually internalize it, though like everything else it’s important to keep brushing up on the basics from time to time.

He follows up with another comment to which I don’t have an easy answer: “To make matters worse, once you start learning HOW to do stuff, you learn how long it takes. If it takes weeks to create, rig, and animate a crude rat or hut, for instance, who are you kidding thinking you could create dungeons swarming with orcs and castles full of fiends?”

This was my bane in Frayed Knights. It will probably remain my bane (and that of about everybody else who makes games) forever. I don’t think there are any magic bullets here, but I do have a few (somewhat obvious) suggestions:

#1 – It gets easier (and faster) as your proficiency improves. But no matter how good you get, there are limits to how quickly you can get things done. And it definitely takes a lot more effort than one would expect.

#2 – Tools. The right tool for the job makes the job MUCH MUCH easier. I really like Blender and think it’s an excellent tool for 3D modeling. But there’s the old problem of the tools forcing a certain development path… like the old saying goes, “When all you have is a hammer, everything looks like a nail.” Should you build entire dungeons / levels in Blender? (Okay, I am totally projecting here with some issues I’m having on my own, sorry…)

#3 – Scope down the requirements. Should the enemies be all animated and rigged? Notch claims the blocky look in Minecraft came about because he was working within the limits of his own artistic abilities (and indeed, the earlier prototypes had far more realistic trees). Maybe something more stylized will work better. And going with a third-person perspective (especially a “distant” ISO-style camera view) means you can work with simpler models, you can probably ignore issues like Levels-of-Detail, etc. In fact, using an isometric view game with actual 3D models is arguably simpler than making one with 2D sprites! Again, doing something like making “town” a simple static menu (with maybe some cool background art) can really simplify things and allow you to focus your efforts.

#4 – Seek help. Besides just therapy, though you may need that too. I believe an indie developer should have the ability to “carry a project on his/her back” and do it all, that doesn’t mean that’s the best approach. Filling a game with stand-in prototype sounds and art is not a bad approach – particularly when you can give your outsourced content providers some very specific explanations of what they need to create. Unfortunately, if your luck is anything like mine, they’ll STILL get the requirements wrong every single time…

Anyway, that’s my $0.02. I’m armchair quarterbacking the guy from Armchair Arcade, I know, and I really don’t know that I’m qualified to offer advice. Or if it would be appropriate to do so publicly, but hey, Matt posted his diary publicly, so I’m counting it as fair game.

But really, this isn’t directed directly at Matt (or I’d just email him). I thought that since he was kind enough to make his experiences public, I’d respond publicly in a general-enough way that hopefully others who may be struggling with their efforts to create an indie game will find some semi-useful advice as well.

But really, while “lowered expectations” sounds like a negative (and I’m sure Matt’s feeling pretty disappointed), it’s really not. I think that in a lot of ways, the reason we remember many of the old classics so fondly is that the creators figured out how to do something very cool within their (strict) limitations, which were mainly dictated by technology. Today, technology is not nearly such a hindrance, but indie game designers are just as constrained by budgets, skill, distribution, you name it. I think many modern games suffer from really trying to do and be too much, “because they can.” They lose focus and flavor. If indies accept their limitations (yes, I have a hard time with it too) and choose to be creative about how they will create something those constraints, the results will be spectacular.

Ain’t that the truth! I’ve been down that road many times, myself. Sometimes I have the wisdom to stop before I go too far. Other times, I’ve managed to pull it off out of sheer stubbornness. But there have been times when it has nearly sunk the project by the time I was done. Or maybe it did sink the project and I just didn’t know that I was the cause of it being canceled, in my full-time game dev employee days.

Anyone who has ever lived in the commercial world and has written corporate critical software from scratch (you know the kind of software where a misplaced decimal point loses the company a gazillion dollars)… then games are a piece of the proverbial piss to write, technically.

Okay, so the types of games in question nhere are quite a bit different in expectations. But, I’m sure this is not a sentiment that Matt likely shares.

LateWhiteRabbit said,

@Brian Green

I’m sure games are “piss easy” to program for some people. One of my old professors was a freaking prodigy at coding, and could program in his sleep, far as I knew. I watched him program a 3D (using premodeled existing assets) randomly generated maze level with unique traps and constraints that could be set with variables, that had a ton of other features like checking for true paths and checking to make sure the maze arrangement was aesthetically pleasing, and he did it in just 2 hours while I sat watching as I felt increasing impotent.

He was gifted with languages and could speak several fluently, so I assume computer languages were just another language for him. He acted truly surprised and flabbergasted that it was not that easy for everyone else. To him it was the simplest thing in the world.

I guess we all have talents or skills that make parts of game creation easier or harder. I’m an artist, so producing assets is easy and second nature to me. I can do it while half-asleep and watching TV. I’m sure the same bewilderment I (irrationally) feel when I see people struggle with game art is the same as my old professor felt when he saw me screw up a “simple” function to process arrays.

Unfortunately, I am a poor to middling programmer, always needing to have a reference book or example close at hand. When I programmed my own version of the 3D maze – which took me 2 weeks – my code always placed exactly ONE tile incorrectly every time. My professor correctly diagnosed my problem with computer coding – my logic was/is often faulty, and I program that logical error right into the program for it to repeat. I almost never screw up syntax, but God help me when it comes to proper step assignment.

So my method for dealing with feature creep is less “will this create more art asset work” and more “will this require complicated programming?”

Avalon said,

Matt the naive, I suppose? 😉
Anyone who thinks he can follow some coding tutorials in under 30 days and then he’s a capable programmer is downright wrong. It’s a professional craft that takes many years to become adept in, and many more to master, like with any other professional profession. It requires a great level of dedication and passion.

On the same notion I love it every time a client comes and thinks “hey with computers you can do everything easily today! Just press a button and the machine does it for you! So it must be easy … and cheap!”. Shows how inept a client is!