Game Development Community

dev|Pro Game Development Curriculum

Juggling cats.

by Phil Carlisle · 09/21/2007 (10:11 am) · 31 comments

Balls

To me, part time indie development always feels like juggling. Trying to juggle work commitments with your indie life can be a very difficult thing.

images.wikia.com/uncyclopedia/images/thumb/1/14/Kittenjuggler.gif/118px-Kittenjuggler.gif

Almost like juggling cats.

Anyway, I wanted to post about how things have gone since last year, just so I have some retrospective next year to think about.

Around this time last year, we were working on Air Ace, our multiplayer dogfighting game. It was starting to look good, but we had a big issue with networking the flight physics.

Air Ace Screenshot (large)


To cut a long story short, after some deliberation, we realized that we couldnt ship Air Ace without the physics being fixed and we couldnt find anyone capable of fixing it. I know that many of you would have
probably fudged something together, we did consider that, but truthfully I had a very specific feel in mind for the game and without at least some semblance of the flight model I wanted, I dont think I'd have liked the game. I'm not about to make a game I dont like playing myself.

So, we took the decision to shelve the game until such time as we found someone to work on the physics again.

Our next plan of action, was to take the multiplayer aspects of Air Ace (team based combat, various game modes etc) and move it into a new game. This was to be a NON physics based game (lesson learnt there).
So we chose to use tanks, as they are very combat oriented, have less issues compared to humans when it comes to content and generally we like em!

And thus, Panzer Ace was born!

We did some initial work, getting a few tanks from 3drt, getting them rigged. Adding in all the Air Ace code. One decision we made, was that given we didnt need the vast horizon distance that we did in Air Ace,
we would use TGE instead of TGEA, in order to work with the more stable codebase and reduce our system requirements.

So we set about building Panzer Ace. Here I want to talk you through a few of the interesting problems we've come across in its development.

We started Panzer Ace by taking a load of the code we'd created for Air Ace, backend systems, scripting, plane choice etc. Ported it across to TGE and stuck it in. This saved us many months of work and seemed to go pretty well. However it later caused us some issues, which I'll go into at the end of this post.

Because we had to change to Tanks, our starting point for the new game would be to take the tank pack and essentially replace plane* with tank* in the game. Anywhere you'd have selected a plane, you now
selected a tank. Simple really.

Only, well, there are issues with the tank pack as it is now. Its still a great starting resource, but using it for a scalable multiplayer game is not really a good idea. Let me explain some of the problems we encountered.

* Treadmarks - This was a feature of the tank pack. It produced pretty nice looking treadmarks on the terrain as you drove it around. Unfortunately, the way this was implemented wasnt really suitable for
a multiplayer game, as it constantly emitted new decal objects. Essentially we'd see the object count in the game spiral as we added more players into the game. The result was that we had to ditch the treadmarks, although we do have a solution to implement further down the road (using a ribbon of quads).

* Control system - This wasnt really an issue with the tank pack so much as our own desire to have a system that felt "nice". I know this kind of thing is pretty subjective, but I think a big part of being a
designer/developer is that you have to take responsibility for how things "feel". I didnt like how the tank pack felt to control. The plan was to try out a scheme I knew I liked from playing Call of Duty. In that game, you control tanks using keyboard and mouse, but the mouse is essentially a free look (spun around the turret at its axis) and the turret turns to follow where the mouse cursor lands. After some playing around, I got this system working reasonbly well. It still has a few bugs but I didnt really worry about those once I felt the system worked.

Strangely enough, the control system led me to another issue. That of targetting, or rather, the ease of hitting the target. Its hard to explain this, but somehow the ease of targetting when you are firing fast moving projectiles with no ballistic drop simply doesnt make for an engaging game. It is simply too easy to line up your cross hair on a target and pull the trigger. It felt like there was no skill involved and a multiplayer game MUST be about the relative skill of the players involved. A skilled player must always be able to beat a lesser skilled player over an average number of games. This is a very subjective thing I know, but having played a lot of combat based games, I know that what drives people, is feeling thier skill get better and that somehow the skill involved has a direct effect on the outcome of any given combat.

* Ballistic trajectory - The outcome of this, is that I decided to have a look at the difference between direct trajectory (i.e. fire projectile along a straight line) versus ballistic trajectory (where the projectile drops with gravity). Well, I can tell you, for a tank combat game, introducing ballistic trajectory really helped the feeling of skill! it is a minor change for the code, involving twiddling the projectile datablock, but it sure makes a hell of a difference to the feel of the game. Where as before I could just blam away at targets, now I had to consider the flight time, distance, relative motions etc. I had to lead the target, had to consider the
drop of the shell, in essence it added a much lacking element of skill.

* Optimisation - this will have to wait for another post to go into in more detail, suffice to say that often times, performance can be gained from tweaking the details and considering what really matters to the game. I've done some tweaks recently that have sped up the game immensely and took almost NO time to do the tweak, but took a LOT of time to figure out how and what to tweak. I want to pass on some of
that process, but it'll wait.

www.militarygarage.com/gallery/main.php?g2_view=core.DownloadItem&g2_itemId=1835&g2_serialNumber=1
Early Panzer Ace screenshot

So back to the history...

Production on the game was going pretty well at the start of summer. Barring technical glitches, we could definitely get a multiplayer tank game working well, so we were looking at the various options of how to
monetize it. Around this time, a few of us got into crunch in our day jobs, production fell off quite a lot. In fact a lot of the early summer was that way. As with any spare-time thing, it can fall off quite quickly when large projects happen at work. Both myself and Thomas had major gigs happening over the last year and at times that has hurt the game development rather more than we'd have liked.

So a few months back, as we both got free from the projects that had been eating away at our time, we had a good long look at the project. It had come some way from the Air Ace changeover, but looking at it as
a commercial venture, we knew that we had a long road ahead. Given our time available, we had to make a big decision about how well we could deliver what is essentially a service based game. Online games must always be thought of as a service in my mind, because they require a longer term commitment to keep the game fresh, add content, make sure servers are up and running etc. Add to this, the problems of building a player base, keeping forums alive, billing etc. It all came pretty clear that we simply didnt have the time to finish the game we wanted it to be. There simply wasnt any way of building up the game with
enough players, managing the community etc. We could technically complete the game, but we simply couldnt find the time to work on the business and marketing side of it post release.

So we decided that rather than push forward with the online game. We'd take what we had from that game and push on with a scaled down offline version of it. Taking what we had produced and scaling the game down in terms of its back end business requirements and essentially produce a more intense single player combat game from it.

Since that decision, we've been working on AI to flesh out the singleplayer game. I'll post another post soon about how that AI has been working and the fun challenges it produces. We've also been working on mission designs and scripting. It turns out that its actually quite fun doing singleplayer mission design. Although actual level design for singleplayer has quite a lot more to it than multiplayer, you can at least isolate the requirements and build mission specific helper code (for an example, I built a message into the AI code recently that allowed me to tell a whole platoon to move or stop moving from the mission script).

So we're pushing on with this COD like singleplayer combat game with gusto, even the early completely unpolished mission scripts feel like they could eventually be quite nice. Hell, even the tutorial scripts Thomas put together showed some promise! So we're pushing this forward and we're aiming for a chrismas release, with as many highly polished levels as we can muster. Push push push.

And then the IA thing came out.

Now there's a spanner in the works. A service that seems to offer the business logic of multiplayer games a shot in the arm. A service that kind of fits in with our old plans for Panzer Ace.

Our goal right now, is to really put our all into getting PA singleplayer completed. After all these years of not having a product completed, it really is do or die. To do otherwise would just be insane. Even if there is a business case for going forward with a multiplayer version again. I think at this point, we dont really care
about the business issues anymore. Its about shipping. No matter what.

Longer term, we will have to wait and see how the IA plans pan out. How that its with what we were working on with Panzer Ace multiplayer (or indeed if Panzer Ace fits in with IA), but it sure would have been
nice to know six months back :)

Anyway, thats where we are. I'm not going to show you more shots as we still need to flesh out the issions and get theme playable and script complete before we hand them over for artwork (the method we're working on right now, is that we script up the mission gameplay, using whatever stand in art we need. Then we'll hand that almost competed version over to the artists in order for them to complete the level design and assets for the missions. But getting the missions to feel right in terms of pacing and action is the main goal right now.

Man, it is an interesting time to be working on this stuff. Singleplayer design is a blast and totally different from the multiplayer stuff.

It would just be nice if juggling those cats were a little bit easier.
Page «Previous 1 2
#1
09/21/2007 (11:29 am)
I was expecting actual pictures of cats in the act of juggling.
What a disappointment!

Panzer Ace makes me think of a more realistic version of Shelled, maybe check it out for ideas?
Loved Shelled, will probably love Panzer Ace, too!

Great read!
#2
09/21/2007 (11:31 am)
Interesting reading, again ;)
Thanks Phil, good luck and keep it up coming!
Any chance it works on Os X? no real tank game on our platform but COD/COD2.
#3
09/21/2007 (12:13 pm)
I hope those are not full grown Maine Coon Cats :)

Nice update thx. Was curious about Air Ace. Flight model is super important. That's how SOE screwed up JTL. A week before launch they gutted the flight system. Which was loved by most testers including myself and put in some schleep that made Tie fighters and in general fly like ... well.. like crap.
#4
09/21/2007 (12:16 pm)
@Vashner: JTL?
#5
09/21/2007 (12:19 pm)
Very interesting Phil. Double so since we recently made a choice to switch from our giant, online-orient project to do a smaller-scale, single player project. It's comforting to know that other people have made the same decision and believe it is the correct one.
#6
09/21/2007 (12:33 pm)
Vikking - Star Wars Galaxies expansion - Jump to Lightspeed. It was 2nd twich mainstream mmo (Planetside 1st). The original beta flight model was very much like the SW franchise of PC flight sims. It was replaced with something that lacked that Star Wars "feel". IMO - NDA expired ** :)
#7
09/21/2007 (2:24 pm)
Would it help motivate you to ship the single-player game if I promise to buy *two* copies? I swear Phil - I'll do it. ;)
#8
09/21/2007 (9:30 pm)
Cool, reminds me of the Amiga game Conqueror. I loved that.
#9
09/21/2007 (9:55 pm)
Awesome screen shot, looks awesome for a tge game, look forward to seeing the final product.

too bad about airace, was looking forward to a cool flight game, i need me crimson skies fix :)
#10
09/21/2007 (10:37 pm)
I know this is gonna sound like crap, but here are some points I've wanted to make for a while Phil:

1. What happened to that ai pack? You posted so many "plans" that in 2006 it was like...ai pack, then ai pack details, then air ace & ai, and then air ace. Poof! Ai pack gone like the wind. Did you write a plan about canceling this and I missed it? I hate vaporware. :/

2. Sorry you had to cancel Air Ace. The plans were cool and maybe there was an indie market for something like that, I dont know.

3. About this panzer game. I do really wish you the best and I think a lot of people here will support it, but outside that, I think its going to be really really tuff for this pick. Maybe the same old grognards that buy all the other WW2 games will pick this up too. Are they burned out by the genre? Indie games are about doing things differently to stand out. Your going into a genre (WW2) that has been flooded with games for what seems like 5 to 7 years now. Im just very skeptical of the choices made so far. I'm probably the only one who will say such thing so I'll just be quite now.
#11
09/21/2007 (11:45 pm)
WOW. looks outstanding.

love the tank. looks really good for TGE

.
#12
09/21/2007 (11:51 pm)
Just wanted to chime in about Air Ace

As Phil posted, we had/have an issue in the flight model with physics getting out of sync on server/client. Slowly building up to become major jitters.

Now this issue is _multiplayer_ related! And Air Ace is on the shelf - not in the trash bin.

So barren our push to complete Panzer Ace in single player (in any completed but professional form), I would definitely want to revisit Air Ace in single player form too!

Its actually been a blast to do the single player stuff. You feel right away that you are working on the fun stuff rather than on some obscure online support/helper system that no one will notice is there.

With mission count nearing 3-4 more or less script completed missions, it will soonish turn to polish, polish and more polish.

Hell - I would even be willing to release the game free with these few missions in place. And then maybe sell some campaign packs on top.

But as Phil said IA suddenly popped up again. Given that we know as little as everyone else about it, that could be a way do go. Until now though, I'm still thinking that its viable for a single player game as much as multiplayer.

I WANT A SHIPPED GAME ;-)
#13
09/22/2007 (2:04 am)
John: About the AI pack. It wasnt really *my* ai pack as *our* ai pack. That is, a number of people worked on it, so its not really mine to release. As it happens, when we looked at the issues that would come up after release, it became apparent that not everyone was into releasing it due to the support hassles. In the end, because it wasnt really announced, we didnt feel it warranted further explaination.

About the choice of WW2 tanks. I agree to a certain extent, it will be a hard sell. But actually the choice of WW2 and tanks is a choice made because it fits with our target audience. I regularly play such games online with a group of friends and even though there are a ton of choices in that space, we regularly turn to one or two games. Why? because they have a certain feel to the gameplay. All I'm hoping for is that we can get the feel right. Commercially I'd agree its not the best choice, but frankly, as Thomas points out, we want a shipped game, in addition, we want a shipped game we like :)

So dont think of it as a hard nosed commercial choice. Frankly we dont expect much in the way of profit on it really, because its very much niche. But it will be a professionally produced product that at least some people will enjoy, I think thats enough for me.

If I were making a commercial game, I'd of course look at differentiation as a major part of it.
#14
09/22/2007 (2:17 am)
Hmmm, I'm a bit dissapointed about Air Ace. Personally I would have fudged something together, or changed it to pure single player perhaps. I don't mean this as an attack on you personally but quite frankly I see too many devs chasing a "perfect vision" of a game. And never, ever finishing because it will never ever be perfect. In commercial development people cut out features all the time, because they HAVE to ship. Indies get the luxury of choosing, but to me it almost seems like a curse, because most choose to constantly chase some feature instead of objectively choosing to cut it while still pushing for a release in the same time frame. I like to call it Duke Nukem Forever syndrome.

I really wish you'd chosen to cut your feature set, get it out the door with the hope that AA2 could add in the features you want.

I think more indies need to focus on crossing the finishing line even if they have to ship something imperfect. Until we see that mindset (I see it in games like MoM, sorry Josh, I don't mean that as an insult at all, I think it is admirable), I don't think we will ever get to the point were a steady stream of indie games are released with Torque each year.

I saw another post by someone recently, he was talking about seeing no reason whatsoever for everyone NOT to port their projects to TGEA, I simply shook my head sadly. Just another example of that mindset.
#15
09/22/2007 (2:46 am)
Quote:
I saw another post by someone recently, he was talking about seeing no reason whatsoever for everyone NOT to port their projects to TGEA, I simply shook my head sadly.

I fully agree. If you're really in production and get something finished you'll quickly notice that TGE is _way_ more stable and battle-proven than TGEA and gives way less headaches. But to see this point you need a lot of experience in both TGE and TGEA.

(Don't get me wrong, I'm not saying it's not possible to create or ship a product with TGEA, but the effort to get it shipped is way higher and requires more tea, cookies and chocolate.)
#16
09/22/2007 (2:49 am)
I don't think they are going to TGE with the tank project because a vision to do projects on TGEA is some kind of bad idea. It's a great idea and genius to work on TGEA. It's the future. Correct me if wrong but I think going to TGE for them was just uh .. like Phil said above in his own words. Because if anyone could make a TGEA came it's these guys. All have been around TSE since it was born...

Being pro TGEA is not being anti TGE if your heart is in the right place. That is to use TGEA as an additional tool to make great games. Not just eye candy but an enhanced gameplay experiance utilizing modern COTS programmable GPU's.
#17
09/22/2007 (3:07 am)
@Phil: may I recommend thinking for an add-on with ultra-futuristic-modern tanks?
Not specially in the damages and behavour, but mostly in the shape design side.

I would really see something like that... and yes, by preference on the Mac side too ;)

Currently the only competitor I can think of is: DropTeam
#18
09/22/2007 (4:24 am)
Gareth: For the most part I would agree with you. It wasnt an easy choice, but I wasnt after perfection so much as the right feel for the planes. With what we had, the planes didnt feel right in multiplayer. It was slightly better in singleplayer (as the networking issues didnt build up), but still not quite right. The major sticking point was that we simply didnt have the knowledge of physics engines (and our physics middleware in particular) to be able to affect a fix.

Basically, we made some relatively poor choices that we couldnt fix in an easy way. Not an easy decision to stop a project, knowing our track record and all, but it seemed more timely to make that decision and get on with finishing rather than throw more effort into something that was on shaky ground technically.

I think we've learnt a bunch of pretty hard lessons in terms of project design and planning and for that I'm grateful. Its painful, but no pain, no gain!
#19
09/22/2007 (5:55 am)
Like NEVER rely on uncontrollable 3rd party developers for your core game feature (in this context the flight physics).

We simply do not have the choice of fudging it, as a flight game without flight physics.....is kind of not a flight game anymore. So no choice in cutting that feature :-)

But as I staid - will definitely want to do some single player stuff with it. Minimum for proof of concept. As well as trying to implement some other physics engine for the multiplayer part. But one thing at a time.

Regarding TGE and TGEA - the choice of TGE for Panzer Ace comes down to not requiring large terrains like in a flight sim. TGEA is definitely the future etc.etc., but its lack of terrain tools that you can use for detailed manipulation kind of decided it for us. For a flight game you can make a terrain in l3dt and get away with it. For a tank game where you drive on the terrain and it has to look fantastic - it just has to have a good tool chain. Thats at least my view on it.

And if you look at the terrain that Ando has produced for us, TGE is still a viable platform for good games.
#20
09/22/2007 (6:33 am)
I.m not creating an argument either way here however TGEA has the same terrain engine as TGE does it not? I.e. the older legacy style terrain as seen in TGE as well as the newer Atlas terrain.
Page «Previous 1 2