Episode 8: Michael Maulbeck

Welcome to the eighth episode of Indeviews! In this episode we are joined by indie game developer Michael Maulbeck of Code Avarice, the team behind the upcoming game Paranautical Activity!.

❖

For those who don’t know you, who are you and what do you do?

Michael: I’m Mike. I do all the programming for Code Avarice. I also do most of the PR stuff as well. I work with Travis, a tattoo artist turned game artist. He’s crazy talented, and tons of fun to work with.

Which game engines/game making tools do you use for your games? Did you build your own? If you have used different engines/game making tools, which one is your favorite and why?

Michael: I wrote several engines using OpenGL and C++ back in the day, before I was really seriously making games. I’ve also played around with lot’s of 3rd party tools. From simple C++ libraries like SDL and Ogre, all the way up to engines like Unity and UDK. I always liked writing low level OpenGL and C++ code. The mystery and sense of discovery I would get implementing new features as almost a game unto it'self.

For Paranautical Activity, we’re using Unity. It was recommended to me by a game developer friend of mine, and I’m really loving it. I’ve been using it for several months now, and it’s got everything I need. It’s a powerful engine that supports rapid development and has a great license. Not much more I can ask for. I kinda miss the excitement and freedom of C++, but it’s hard to argue with the productivity boost.

Do you use the same development process for all of your games?

Michael: I haven’t worked on 2 games the same way yet. Thus far I’ve used a different language, framework, engine, ect for everything I’ve worked on. Mostly just because I was trying to find something I really liked. I think for the foreseeable future I’ll continue to do things how I’m doing them now though. We’ve got an efficient pipeline going with Unity right now, and I can’t think of anything that would make me switch to something else. In terms of the creative side of the development process, that’s been pretty consistent. Either myself or Travis will come up with an idea, we’ll spend some time fleshing it out, then dive into working on it and see how it evolves. Our process tends to be very organic. No matter how much we try to plan out a game, it always ends up really different from what I expect. It’s more like we’re discovering the game than designing it, which is always really fun and exciting.

image

What programming language do you prefer developing your games on? Why do you choose it over others?

Michael: Right now I’m working with C# in Unity. It’s a fun language to work with, since it’s really simple and hard to mess up. I’d still have to say I prefer writing C++ code. C# is almost too easy to write. It removes all the fun and excitement that comes with writing C++ code.

Do you use third party tools (map editors, sprite managers, animation suites etc) or you build your own?

Michael: Unity provides us with most of that stuff. For asset creation, Travis uses 3DS Max for modeling and animation, and occasionally ZBrush for high poly sculpts depending on what the asset requires.

Which tools and applications you usually use when developing a game (favorite IDE, text editor, do you use static analysis tools, revision control system etc)?

Michael: We use Dropbox to send assets, builds, ect back and forth, and that’s been essential to keep the pipeline really quick and efficient. I keep a backup of all my code in there as well, but other than that I don’t use any version control, even though I know I really should. I’ve used Git in the past, but I’ve never really gotten into a good routine of using it.

We use AIM to keep in contact (since we’re not in the same room, or even same state for that matter). I usually use Skype to chat with press and the musician we’re working with.

I really like Visual Studio as an IDE, and I’ve also really enjoyed my time with Code::Blocks as well. Right now I’m using MonoDevelop, though. Really for no reason other than the fact that it’s the default IDE that Unity links to, and it’s good enough that I haven’t really had a reason to use anything else. My favorite though would probably be Visual Studio, especially when I’m writing C++.

I use Notepad++ as a sort of digital whiteboard to keep my ideas and to-do list in check. I used to use an actual whiteboard for this, but I found that having it all stored on my computer makes making easy changes more efficient, since I don’t have to get out my white board markers and eraser every time I want to jot something down or remove something from my to-do list. Plus, with Notepad++ I don’t have to worry about reading my awful handwriting.

Is there any specific library, framework that you always use on your games?

Michael: Unity. Previously SDL was a favorite of mine for render context creation, 2D asset importing, and keyboard/mouse input. If I ever do go back to writing my own engines, SDL will definitely be a part of it.

What is your computer setup? Do you use Mac or PC? What specs? Do you have a dual monitor setup?

Michael: I use Windows. I dual boot linux, but that’s mostly just to test linux builds. I’m running a GTX660 2GB with 16GB of ram and an Intel i7-3770K clocked at 3.5GHz.

I have one standard monitor on my desk, and a second monitor that is actually just my 42" TV. I usually either keep Youtube videos or Spotify on my second monitor.

Do you have any photos from your working environment & a screenshot of your typical development setup?

Michael: Development setup:

image

Working environment:

image

That’s my messy and haphazardly slapped together work environment. Got my standing “desk” on the left, and my TV/second monitor on the right, teetering on a bar stool. I usually have a podcast or a lets play up on the second screen just to have something to listen to and occasionally glance over at so I don’t go crazy staring at code in silence all day.

Which games inspired you the most? Do you have a favorite developer from the games industry (indie or not)?

Michael: For Paranautical Activity, Doom and Binding of Isaac are huge influences. I really love old school FPS, and I’ve been falling in love with a lot of indie roguelikes lately.

If I had to choose a favorite developer, it would definitely be Jon Blow. He’s one of the smartest guys in the industry today. I could listen to him talk all day, and fortunately for me he’s done tons of lectures and interviews. A close second would be Ed McMillen. He’s a really cool guy, and an extremely talented artist/designer.

What’s the single piece of advice that you would always give to someone, and what is something that you will absolutely avoid/never do again?

Michael: I think most people would say “start small” and I would definitely tend to agree. It’s shockingly easy for even a simple project to spiral out of control and end up never finished. Even our last game, Eris had that problem. We should have finished it (or at least reached a public beta) in under 6 months. But we kept getting distracted and adding silly features. The game quickly became too ambitious for our 2 man team to tackle. We may go back to the project in the future, but we’ll need to do some serious trimming of the fat. If you want to make indie games. Start super small, and slowly work your way up.

What is your opinion on the rise of free game development “suites” like Unity, UDK, CryEngine etc? Given that you already use Unity for Paranautical Activity, is it safe to assume that you will use it for your next big project or you will switch to an in-house engine?

Michael: A year ago I would have said that using an engine was a cop out. I was a hardcore “write your own engine or go home” guy. Now that I’ve spent so much time with Unity and similar engines, I definitely see the value in them. There isn’t a single project I can think of where I would rather spend ages writing my own engine when I can use one of the excellent 3rd party engines available. I’m definitely going to continue to use Unity for the foreseeable future.

The only problem they have is that they are almost too easy to use. Tricking young developers into thinking they’re making a great game, when all they’re doing is throwing together a bunch of crummy pre-made assets that come with the engine.

What are your future plans? What games are you working on right now?

Michael: We’re still working on Paranautical Activity. We’re hoping to get the game out of beta in a few months, then we’ll be moving on to our next project. We know what we’re gonna do for our next project, but the concept isn’t quite fleshed out enough for me to be able to describe it easily. It’s a first person game like Paranautical, but it’s gonna have a much bigger focus on 1v1 combat, without guns.

Thanks so much for this interview!

Michael: No problem! :)

❖

Stay tuned for the next episode next week! :)

Note: If you are an indie game developer and wanna be part of the series, just send us an email at info@evilwindowdog.com