Monday, June 14, 2010

Mothership, version 1

There's now a mothership in my lunar-lander-on-a-disc game:

At the moment it just orbits around the planet. The idea is that after landing at all the ground targets the player has to rendezvous with the mothership to end the level.

The mothershp rendezvous necessitates additional camera work and probably also some work on the trajectory plots, so that is what I'll be doing next.


Andy Korth said...

The mothership is looking good! I also just finished reading my GameInformer, and they had a pretty awesome writeup about Infamous 2. It's also looking really good, and I'm pretty excited to see it- high hopes!

James McNeill said...

Thanks. Yeah, today's Infamous 2's big day at E3; I understand it'll be announced as part of Sony's keynote. It won't have the subtitle most of us were rooting for, though: "Infamous 2: Electric Boogaloo."

I'm still trying to decide what a 2D art mothership ought to look like but didn't want to spend any time on that so this is just a scaled-up version of the little rocket.

Your suggestion about ditching the random landscapes and just hand-placing stuff to save time has been ringing in my ears since GDC; I've nearly cut the random terrain several times. For now it is an important part of the game, though.

Your game's coming along at quite a bit more rapid pace than my lander; I've enjoyed the updates.

Scott said...

Nifty. I don't suppose you'll be posting another build soon?

Have you thought about keeping the random terrain generation and just hand tweaking things? Hand picking terrain seeds that produce interesting terrains and then hand placing points of interest on them?

James McNeill said...

I plan to put out another build some time relatively soon; I want to put a little bit more polish on it so it is a proper (if simple) game.

It's not terribly fun at the moment; perhaps there needs to be a higher player action event rate. To some extent this would be mitigated by adding enemy turrets or additional obstacles, but you still end up waiting around a lot.

I'm thinking about going back to direct heading control, because that seemed enjoyable in my initial prototype. It allows players to fly much faster because they are limited by their own reaction time more than by the rocket's turning rate. I'd like to have the rocket interact nicely with the terrain, though (both via landing gear and when crashing) so I'm trying to think of how to satisfy that desire as well. One possibility is to have direct heading control for the primary thrust, but turn the visible rocket via physical torques. This would give you instantaneous trajectory control without compromising the ground interaction.

Hand-picking generated terrains and placing objects on them is definitely a possibility; probably I would route them out to some intermediate format and back in, to allow for editing. I could dump them as bitmaps and then convert them back into polygons, say.

There are basically a couple of routes I see to go. One is to create a carefully concocted series of levels with tested difficulty curve, storytelling, and metered rollout of new elements. In some ways this would have more impact because it would allow players to compare notes on areas of the game, write walkthroughs, etc. Fewer players would wash out on an early difficulty spike. Story can be a compelling pull through a game, too.

The other route is to go "Rogue" a la Spelunky, and randomly create levels so players get a lot of replayability (of decidedly lower-quality levels). I've been leaning this way, but a canned experience is seductive nevertheless; I have a fair amount of professional experience doing that sort of thing so I can envision how it would go together.

Mark said...

Out of curiosity, are you intending to use sprites or vector graphics for the various game assets?

I'm using SVG format files to make assets for my current projects, but using Inkscape to draw them is agonizing and there aren't any functional alternatives. I'm this close to tossing the whole thing and going to sprites instead.

James McNeill said...

I've been intending to use vector graphics, but I haven't come up with an authoring pipeline for them. I'd been thinking of using Inkscape, and have started on some parsing code for that, but it is looking like a fair amount of work. Another problem is that I don't think it would be very easy to author skeletons or animation there.

I've also been considering just authoring 2D stuff in Blender as well, since I'm going to need it to be triangles anyway in-game. Blender's got Python built in with a fairly straightforward interface for rummaging around in the scene data from there.

Bitmaps are tempting; they antialias nicely as you zoom out, for one thing.