Dev Diary 007: Lowering Expectations

  • warning: Creating default object from empty value in /home/buckman/public_html/neo/modules/advanced_forum/advanced_forum.module on line 492.
  • warning: Creating default object from empty value in /home/buckman/public_html/neo/modules/advanced_forum/advanced_forum.module on line 492.
  • warning: Creating default object from empty value in /home/buckman/public_html/neo/modules/advanced_forum/advanced_forum.module on line 492.
  • warning: Creating default object from empty value in /home/buckman/public_html/neo/modules/advanced_forum/advanced_forum.module on line 492.
  • warning: Creating default object from empty value in /home/buckman/public_html/neo/modules/advanced_forum/advanced_forum.module on line 492.
  • warning: Creating default object from empty value in /home/buckman/public_html/neo/modules/advanced_forum/advanced_forum.module on line 492.
Matt Barton's picture

Space TaxiSpace TaxiAs you all know (this is the seventh installment, after all!), yours truly has been working on becoming a hobbyist indie game developer. It's an interesting and very enlightening project, and not just because I get to work with cool software and possibly make some cool games. The aspect that's been the most rewarding is realizing just how much work goes into making modern games. I'll definitely never play a game like L.A. Noire again and not have to pause a moment to think, "WOW. Somebody had to sit down and make every single 3D object in this game..." Somebody had to rig every animation, and somebody else had to script each behavior. The sheer enormity of the task pretty much takes your breath away when you really understand how much effort went into it. And let's not forget the producers, as well, who somehow have to bring all of this work together. It's no wonder the credits on a game can take upwards of an hour to scroll by!

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!

So I acquired some books on Unity and Blender and went to work. As usual with these sorts of books, you make huge progress at first, but quickly level out and then find yourself in over your head. I've read many such books on many topics over the years, and the pattern is always the same--they go really slowly as you're learning the basics, but then (for whatever reason) start to pick up speed precisely when they SHOULD be slowing down--that is, when you start to hit the really difficult stuff. It's kinda hard to say it's their fault, of course, since some of this advanced stuff really needs a book of its own to cover. For instance, rigging in Blender, or scripting in Unity. It's like those branching trees in RPG games--at first it's a straightforward progression, but quickly starts to fan out in a multitude of unrelated nodes. It starts to beg the question if any one person can hope to master even a fraction of them.

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. 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?

They say when you're climbing that you should never look down. It seems than when you're learning how to make games you should never look up!

Several folks have written in with lots of good suggestions to get me back on track. I'll summarize these below:

1. Go back to Gamemaker (or RPG Maker), create a prototype, and take it from there. The argument is that all of the CRPG mechanics and such will need to be worked out anyway, and there's no reason I need to be struggling with 3D and such at the same time. I could do the whole thing in GM with placeholder graphics, get it up for people to play with, and--assuming it all holds together and seems to warrant it--I could take it from there and start trying to make it into a Unity project.

This idea has merit, of course, but I see a few issues. For one, I think there's a big enough different between GM and Unity that I'd basically be starting over instead of "simply" converting it. Secondly, creating this prototype would be a huge task in and of itself...I can see months and months of work going into it. I think it'd break my spirit if, after all that, I found I could only salvage tiny parts to use in Unity.

In short, it seems to me that if I continue with GM, I just need to make a firm commitment to getting the most out of that software and ditch the plans to "move on" to Unity. On the downside, as I've seen with Thrust Lifter, there is very little interest in indie games made with Gamemaker outside of the Gamemaker community itself, and most of those guys are more interested in MAKING games than playing (and most importantly, buying) them!

Not to put too fine a point on it, doing an ambitious CRPG in Gamemaker seems like vanity to me. Nobody but a few dear friends would play it, I certainly wouldn't make any money off it, and everybody else would just roll their eyes and dismiss it as the equivalent of fan fiction. Even if people could appreciate it as a CRPG, it'd still have that stigma of being "only" a Gamemaker game and not a "real" engine. Silly as it is, that's the vibe I get. If I go this route, I'm doing it strictly for the sheer joy of doing it, and quite frankly, I'm not sure that's enough for me at this point.

2. Put the CRPG project on hold and make a 2D game with Unity. I've been kicking around a project called "Rampin' Rescue" for probably a year here. I tried for months to make it with GM and failed so miserably it made me want to give up game dev altogether. It seems like such an easy mechanic--Space Taxi with a ground vehicle instead of a flying one. Instead of jumping or thrusting, you just get up speed and go flying off ramps. The problem came with the physics--to save my sanity, I had to give it up. Getting a car to roll up a ramp and behave realistically once it was in the air proved too difficult for me with GM, and the third party physics add-ons you can get are just too poorly documented and buggy for me to figure out. I gave up, and if you know me, you know that was a very soul-crushing experience to have to admit defeat.

However, Unity's built-in physics seem to be more than up for the task, and from what I've seen so far, will take a lot of this work off my hands and just let me focus on making fun levels.

I know it's possible to make 2D games with Unity, but I'm still not sure it's really any easier than making 3D ones from a programming standpoint. For one thing, I'll be fighting all the assumptions, since (let's face it) Unity expects you to be making an FPS, not a 2-D vehicle game. I'll have to figure out how to do the cameras, how to avoid taking the third dimension into consideration, etc.

In any case, Rampin' Rescue *seems* like a fairly easy game to make compared to a CRPG. I won't have to worry about a story, mechanics beyond the ramping and such, and the scope seems reasonable. Maybe a dozen levels or so...I see this project more or less taking the same amount of work as Thrust Lifter, though I'm probably being naive again.

3. Make the CRPG with Unity in 2D using placeholders. This is more or less a combination of 1 and 2. The argument is that just sticking to 2D will eliminate the necessity of learning Blender and there seems to be the expectation that if this version holds up well enough, I should either have built up the mojo to do it right, or can perhaps interest some other folks in jumping on board and helping me out.

Couple problems with this.

First, I don't want to have to rely on anyone to help me. I know from hard experience that even if people seem eager at first, that can fade quickly and leave me stranded with half-finished parts and no way to continue. I also know that anyone who DOES have the knowledge and ability to help me would much rather work on whatever projects he/she has going--there's no incentive to dedicate those resources to Joe Schmoe.

Others have suggested that if I have a prototype in place, I can use it to get funding from Kickstarter or similar services and then hire professionals, buy assets, or whatever to do the hard work for me. This idea seems the most realistic to me, though from I've heard the costs are so high that I'd need upwards of $30,000 or more. Call me crazy, but I just don't think my fundraising abilities are up to that. I think it'd be blindly optimistic to expect to raise a hundred bucks.

So what's my plan? I'm going with option 2. My plan is to try to break this project up into a few dozen discrete projects, then try to bring it all together as I get more comfortable with the software. I'll go into more detail with these as I go, but here's an idea:

Step one: get the camera setup to show a 2D terrain from the side view.
Step two: get a simple 2-D vehicle on screen and roll it around on the terrain using the arrow keys.
Step three: have the camera follow the vehicle as it moves across the terrain.

I figure those are pretty huge steps that will likely need to be broken down further, but they seem like good milestones.

Now it's time to quit yacking and start trying to figure this out...

In any case, if YOU, dear reader, have some experience with this and can provide some structural advice for me, go for it. Please, though, my problem is not that I can't find tutorials. Believe me, I'm drowning in them. What I really NEED is to hear how an expert would conceptualize this project and start to break it down into doable stages, or even how I should be THINKING about how to plan this project.

Comments

Jake (not verified)
You could show the models in

You could show the models in the isometric view only. Then you'd only have to make very small models with very little animation.

In one of your podcasts, I think you once mentioned an idea of an RPG where the 3D models were actual painted miniatures. I thought that was a clever idea. If you did that, you wouldn't need to animate *at all* save for perhaps physically moving and rotating the models in the isometric view.

Matt Barton
Matt Barton's picture
Offline
Joined: 01/16/2006
Miniatures
Jake wrote:

You could show the models in the isometric view only. Then you'd only have to make very small models with very little animation.

In one of your podcasts, I think you once mentioned an idea of an RPG where the 3D models were actual painted miniatures. I thought that was a clever idea. If you did that, you wouldn't need to animate *at all* save for perhaps physically moving and rotating the models in the isometric view.

That does sound like a great idea! I don't actually own any, though, just something I like to admire whenever I visit a proper hobby shop. I bet my wife would have a great time painting them and could possibly even sculpt some original ones.

The more I think about it, the more I like this idea. I think the miniature aspect would be a good hook, and perhaps fun enough to help people get over the lack of fancy animation. This bears thinking about!

n/a
Alan (not verified)
minis

Have you seen cardhunter.com? They're doing something much like this. Their trailer is a hoot.

Rowdy Rob
Rowdy Rob's picture
Offline
Joined: 09/04/2006
All my ideas are for Matt's projects!!! AAARRGHH!
Matt Barton wrote:

The more I think about it, the more I like this idea. I think the miniature aspect would be a good hook, and perhaps fun enough to help people get over the lack of fancy animation. This bears thinking about!

Matt, you're killing me....

Matt's Miniatures CRPG
-----------------------------
I read Jake's idea, which was based on your idea, and naturally my mind went in many directions....

The "miniatures" idea is actually quite an interesting one, with a unique hook and appeal to RPG enthusiasts. It's well worth considering.

Perhaps you could take this a bit further with some (artsy) variation of "graph paper dungeons," something like what they used back in the day....

Perhaps the best idea I've come up with: how about DICE!!!! With Unity's physics engine, the player could jiggle some dice in a dice cup, then "dump" the dice out on the map/table. The physics engine would handle all the collisions and movement, simulating an actual dice roll! Depending on the stat/weapon being used, different numbers of dice (or even different-sided dice, like D20's or such) could be simulated! The dice would drop into the cup (with Unity physics taking over).... the player "jiggles" the cup in virtual fashion, then dumps the dice out. The Unity physics takes over, rolling the dice around the surface, and viola! Virtual dice roll!

Think about it... An actual, simulated table-top "miniatures campaign" experience!!! Miniatures, table-top, dice.... that'd be really cool!

Rampin' Rescue and Thrust Lifter (Unity)
--------------------------------------------------

I also came up with some very good "leads" on how you could do your 2D games like "Rampin' Rescue" and "Thrust Lifter" in Unity, ironically in my rather failed attempt to do a Pac-Man-like maze game in Unity last weekend. I actually came up with these ideas about a week ago (whenever you first posted of your difficulties conceiving how to do it), but I haven't gotten around to posting about them. Believe it or not, the "solution" became obvious to me after fiddling with my Unity maze game, then reading about your troubles.

I was even tempted to do a prototype 2D car physics demo to pitch to you, but I don't know how you'd feel about me doing (stealing?) your idea for you. Ironically, I think the basic idea could be done without even doing any programming! Just using the Unity physics engine and the "3rd Person controller" script, with modified speed!

A slight bit harder would be Thrust Lifter (Unity version). I think Rampin' Rescue would actually be easier, but I think you can get a basic "thrust" going by modifying the "jump" action in the "3rd Person Controller" script.

I could post more on how I think it could be done (or even possibly work something up) if you're interested.

As for 2D-style gaming, I don't think it's particularly a difficult thing to do in Unity. Just think "point a camera at an ant farm." I think the basics are quite doable with minimal programming.

Matt Barton
Matt Barton's picture
Offline
Joined: 01/16/2006
I'm really loving this graph

I'm really loving this graph paper dungeons idea. I think it's DYNAMITE for two reasons:

1. It's DOABLE.
2. It's got some serious NERD APPEAL.

Thus, my biggest weakness--art assets--suddenly become a huge STRENGTH! That's just amazing. I'm going to talk to Elizabeth tonight about the possibility of getting the miniatures. I think it'd be pretty awesome if she could sculpt her own, but if not we might have some legal problems. I guess I'd have to get permission from whoever made the miniatures to use them in my game, and that might require a lot of licensing mumbo jumbo. Much better (IMO) to avoid that by making our own.

I'm on a hiatus here lately trying to get my mojo back for another stab at the Unity materials. It'd be nice to have someone to work with, Rob, even if it was just trading ideas back and forth or bouncing questions off of. I've only got a vague idea at this point of how the "3rd Person Controller" script is implemented.

I wish there was some way we could work together to try to learn the software, but I don't know how other than just posting stuff. It must be SO NICE to have roommates or local friends with similar interests on stuff like this. One point I made in the un-released podcast is that just being able to occasionally walk past someone's monitor who is working with Blender or Unity would be a HUGE advantage, even if you had no clue what they were doing. At least you could see what it is supposed to look like! When you're sitting by yourself in front of something like that, it can make you feel like a five year old in the cockpit of a 747.

n/a
Brian 'Psychochild' Green (not verified)
Some tips

Found this post via the Rampant Coyote blog. I'm a professional game developer (of the indie persuasion most of the time), so I'll provide some advice. Keep in mind that individual experiences are what make games great, particularly indie ones. I can offer guides based on my own experiences, but this isn't a one-size-fits-all situation.

If you pay attention to one bit of advice, here it is: the thing that separates real game developers from wannabes is actually finishing a game. It's fun and easy to start a game, but the hard part comes when the work piles up and seems endless. Sophie Houlden discusses this in a recent blog post where she brags about she "finally managed to become the kind of person who can finish [making] games." (Note that she had worked on some small indie projects before, but making a larger game is a very different thing.)

First, about organizing. You need to sit down and be methodical about what you need to do. Draw upon your previous experience with other games, just keep in mind that you'll need to go into more detail for a project like this. If this is a project intended to be commercial (I haven't read your older entries, so apologies if this isn't the case), then think about how you're going to make money now instead of later. "If you build it they will come," is a movie plot, not a business strategy. Anyway, post your to-do list on here and get feedback. (Feel free to email me a link, too, in case I miss it.)

Second, get help. It's admirable to want to do it all yourself. It's also insane. ;) Some part of your game will suffer because some part will get forgotten. Even one other person can help keep you grounded and be used as a sounding board. This is important because...

Most people don't realize their game (or, more broadly, any creative) ideas suck. Professionals have lovely phrases like "knifing your babies" that describe the painful process of getting rid of that super-cool idea that is getting in the way of the rest of your work. Having that other person can help give you perspective for when your pet idea just has to go. Of course, you have to actually listen to them when they do mention it.

So, what you really want to do is strip a game down to the bare necessities to make sure you finish something. An RPG is already a large, complicated beast, and trying to add all your cool ideas at once is asking for trouble. Take the long perspective, keep in mind that a great game will have opportunities for a ton of sequels where you can add in more of your original ideas. Keep it simple this time around, and save all those cool ideas you drop for the sequel, or the next game project.

Good luck! I enjoyed playing Jay's Frayed Knights, so I'll keep an eye out for news of your game's release. We need more smart games from passionate developers who recognize the importance of history to the game industry. And, as I said above, feel free to email me directly. I can't promise a lot of help, but I'm happy to lend advice when I can.

Matt Barton
Matt Barton's picture
Offline
Joined: 01/16/2006
Whoa!!! Meridian 59! Man, I

Whoa!!! Meridian 59! Man, I should get you on the show if you'd like to chat about it. I was really impressed when I played it a few years ago. I've always loved M&M so that was a real treat.

At any rate, I agree with your points. I would like to produce something of commercial value (I mean, who wouldn't?), but am more concerned at this point with just being able to get a game done with Unity. I've been trying to scale it back, but am getting advice that is conflicting. Some people are telling me that making a 2D game in Unity is actually HARDER than a 3D game! Huh? I REALLY need to get this resolved before I go further with this, because the LAST thing I need is increased difficulty!

I read Jay's post about my post. Funny to think of someone of his caliber bothering with my silly ramblings, but perhaps he's procrastinating again. Jay, if you're reading this, shouldn't you be making Frayed Knights 2 or something? :P Then again, maybe it's amusing watching the Ultimate Noob try to Leroy Jenkins his way through a professional 3D game engine. :)

I found this tutorial about 2D gameplay in Unity:
http://unity3d.com/support/resources/tutorials/2d-gameplay-tutorial.html

I plan to study that Monday and make note of the places that I'm befuddled. Then I'll try to get some clarity on those points by studying my various Unity books and such. If all else fails, I'm gonna start bitching and moaning here again in another Dev Diary and hopefully someone will feel sorry for me and come to my rescue. :)

n/a
Brian 'Psychochild' Green (not verified)
Matt, I'd love to do an

Matt, I'd love to do an interview. Always happy to chat about Meridian 59; I did an interview over at Massively a little while ago: http://psychochild.org/?p=1114 I'll drop you an email.

As for Unity, we're using it for Storybricks, so I know a little bit despite not working on that side of things. The big thing I've heard is that doing UI stuff in Unity is just painful. So, I assume trying to do something primarily 2D is going to be painful as well. Your best bet is to dive into that tutorial and if you come up battered and bruised, consider another alternative. As much as people are trumpeting the death of Flash, it's still a fairly robust tool that will last a few more years. You can develop in Flash for free using Flash Develop (http://www.flashdevelop.org/) and free SDKs from Adobe. That might be an appropriate tool for a 2D game.

Anyway, keep at it! As I said, we need more good people making great RPGs.

Jake (not verified)
If you do go with the

If you do go with the miniatures idea, how about using a Kinect to scan them into models with something like this?

http://www.blendernation.com/2011/10/17/3d-scanner-software-using-kinect...

Then your modeling efforts would be reduced just to cleaning up the output. Sanding the burrs down, as it were.

McTeddy (not verified)
My advice would actually be

My advice would actually be to split your work between learning unity and a tabletop prototype.

Creating a version that you can play with dice and paper will serve a number of purposes...

1. It will allow you to customize the flow of combat without needing to spend countless hours coding and recoding based on theory alone.
2. It will ensure that you know the rules of the game... which will make coding them far easier in the future.
3. There are no asset limits... no learning curve... no confusing bugs... etc. You can focus on the ensuring that the game plays in the way that you intend and then pick out the important aspects for the final product.

Now, the rest of your dev time will be dedicated to learning to do various things in unity.

1. Build a simple prototype to move a box around a flat map.
2. Build a tiny turned based battle about the Cubes vs. the evil Spheres.
3. Import an animation and have the model move based on input

Based case scenario, you can combine the minor projects into a good start for an RPG. Worst case, you are now smart enough to write these functions faster and cleaner than you did the first time.

You need the dev knowledge to make the game... and trying to jump into an RPG headfirst can be overwhelming even for experts. Any mistakes you make early in development will become major headaches in the later stages. You'd best take the time to learn the game before attacking the boss.

I've done the tabletop design method myself dozens of times. I've heard of professionals doing this on RPGs, Strategy games, and even First Person Shooters. I even had the pleasure of being taught board games by Dave Arneson during my Video Game Development degree for this reason.

Board games might seem crazy as a video game development tool but it's both cheap and effective.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.