Holiday Project

GEC: Discuss gaming, computers and electronics and venture into the bizarre world of STGODs.

Moderator: Thanas

User avatar
Imperial Overlord
Emperor's Hand
Posts: 11978
Joined: 2004-08-19 04:30am
Location: The Tower at Charm

Re: Holiday Project

Post by Imperial Overlord »

This is awesome.
The Excellent Prismatic Spray. For when you absolutely, positively must kill a motherfucker. Accept no substitutions. Contact a magician of the later Aeons for details. Some conditions may apply.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

The pace of development has slowed a bit due to a new piece of contract work I'm doing (the usual data mining tedium), but I am still making progress. Currently I am working on the lighting;

Image

Shadowing is always fiddly to do without killing performance. At the moment the water, terrain and creatures are shadowing ok, but the trees aren't.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

Fixed the lighting (mostly), implemented an improved vegetation system with bushes and rough grass, and put in visible thermals (Pilotwings 64 style) for the soaring challenges;

Image

I uploaded a video showing the thermal soaring in action.
User avatar
Steel
Jedi Master
Posts: 1120
Joined: 2005-12-09 03:49pm
Location: Cambridge

Re: Holiday Project

Post by Steel »

Starglider wrote:Fixed the lighting (mostly), implemented an improved vegetation system with bushes and rough grass, and put in visible thermals (Pilotwings 64 style) for the soaring challenges;
Is there logic behind thermal placement? Are they just arbitrarily placed or are they generated according to environment, fluid mechanics etc?
Apparently nobody can see you without a signature.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

Steel wrote:Is there logic behind thermal placement? Are they just arbitrarily placed or are they generated according to environment, fluid mechanics etc?
Currently they are manually placed, roughly based on my sketchy knowledge of competition gliding. I may do procedural generation of thermals later, but frankly since there will only be four islands, it's probably easier to just tune the pattern by hand (for optimal gameplay in the 'soaring challenge' levels - this is the kind of gameplay I am after).
User avatar
Lusankya
ChiCom
Posts: 4163
Joined: 2002-07-13 03:04am
Location: 人间天堂
Contact:

Re: Holiday Project

Post by Lusankya »

If you were procedurally generating thermals, you'd want to either put them on top of dark land, fires, or have a cumulus cloud sitting on top of them. You can also get some nifty lift on the front edge of a storm.

If you had areas of lift cued to environmental markers like that, then you could give the soaring challenges a hard mode where the thermals weren't visible.
"I would say that the above post is off-topic, except that I'm not sure what the topic of this thread is, and I don't think anybody else is sure either."
- Darth Wong
Free Durian - Last updated 27 Dec
"Why does it look like you are in China or something?" - havokeff
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

Added the defensive obelisks, although they aren't functional yet. In the later stages of the story mode, these will add a tower defense element to the game. To power them up you have to fly through an energy ring, then fly to the obelisk (trailing an energy thread behind you) and finally between the legs (to attach the thread to the crystal on the bottom).

Image

The lighting was broken when I took this screenshots, now fixed, although to be honest they're still a bit of a rough draft to be honest. I may go back and make them look nicer later.
Lusankya wrote:If you had areas of lift cued to environmental markers like that, then you could give the soaring challenges a hard mode where the thermals weren't visible.
To be honest, I think that's asking too much of a normal gamer. I tell you what, if there is good feedback on the soaring challenges after I've released, I will look at putting in a more realistic gliding experience. I'm not going to make it a primary goal because the really keen people probably already own serious gliding sims, and would sneer at this.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

Implemented roads and paths. These are procedurally generated (naturally) based on the location of the villages / hamlets.

Image

Some aliasing issues on the edges, but to be honest I prefer a fast implementation that maintains draw distance and frame rate over one that looks good up close. Most of the time you are way up in the sky and/or moving very fast, so hopefully I can get away with things that wouldn't be acceptable in an FPS. That paved area in the lower right image is the village square for an as-yet-unimplemented village.

I also implemented first person and distant camera modes to supplement the default close follow cam. You press (Back) to switch, just like in Ace Combat. :)
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

Implemented mist and rain;

Image

More importantly, I implemented the 'normal' physics model. This is a completely different code path to the 'realistic' physics model, and it's vastly easier to fly. It was taking experienced gamers an hour just to learn how to not crash constantly with the realistic model, whereas with the normal model my non-gaming parents were able to fly the bird competently after 10 minutes practice. Internally it spits in the face of aerodynamics, mechanics etc, but it looks and feels smooth and plausible.

Playtester input was that the thermal soaring was too hard because it was difficult to judge whether you were actually climbing or not (since the altimeter is a linear bar up to the max height you can reach). Thus I added a sensitive rate of climb meter, which is what those chevrons on the altitude bar are.
User avatar
salm
Rabid Monkey
Posts: 10296
Joined: 2002-09-09 08:25pm

Re: Holiday Project

Post by salm »

Looking good, looking good. Keep it coming. :D
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

I discovered that I was wasting signficant framerate by doing an independent effect pass for every parameter set, as this reloads the entire parameter set no matter how many parameters you have actually changed. I refactored the code to use incremental parameter commit, and it is now running at a steady 60 FPS even in the most complex parts of the level (in a bowl full of trees and shadows looking up at a horde of enemies partially obscured by clouds). This should give plenty of leeway for excessive particle effects on the magical attacks. In theory I could improve draw performance further by doing static occlusion culling analysis and compiling a big lookup table, but I don't want to sink effort into that right now when it is already running at max FPS.

I have also implemented background music. I have selected 90 minutes of music for the game, which I hope to squeeze into the release (200mb limit for XBL 'Indie' games).
User avatar
salm
Rabid Monkey
Posts: 10296
Joined: 2002-09-09 08:25pm

Re: Holiday Project

Post by salm »

Where did you get the license free music from?
User avatar
Zixinus
Emperor's Hand
Posts: 6663
Joined: 2007-06-19 12:48pm
Location: In Seth the Blitzspear
Contact:

Re: Holiday Project

Post by Zixinus »

Can you change the tree render bit? I find trees popping up randomly a bit jarring while I was looking at the videos.

Otherwise, awesome stuff.

As for squeezing the music down, can you use ogg format? I heard that its good for this sort of stuff.
Playtester input was that the thermal soaring was too hard because it was difficult to judge whether you were actually climbing or not (since the altimeter is a linear bar up to the max height you can reach). Thus I added a sensitive rate of climb meter, which is what those chevrons on the altitude bar are.
You could also make the birds have a different animation (like twitching the head or wings expanding or something), although I am unsure how realistic that is.
Credo!
Chat with me on Skype if you want to talk about writing, ideas or if you want a test-reader! PM for address.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

Zixinus wrote:Can you change the tree render bit? I find trees popping up randomly a bit jarring while I was looking at the videos.
I have significantly improved several aspects of tree rendering since making those videos.
As for squeezing the music down, can you use ogg format? I heard that its good for this sort of stuff.
Unfortunately with XNA you have to use WMA.
You could also make the birds have a different animation (like twitching the head or wings expanding or something), although I am unsure how realistic that is.
The animation is procedural, so you can definitely see the effect on the wings and feathers (particularly in realistic mode), but novice players are not looking for that and wouldn't know how to interpret it anyway.
Otherwise, awesome stuff.
Thanks; playtesters so far have liked it, even though only the 'free flight' mode is working and the landing physics are still broken.
User avatar
Steel
Jedi Master
Posts: 1120
Joined: 2005-12-09 03:49pm
Location: Cambridge

Re: Holiday Project

Post by Steel »

This is looking really great.

Just looking at the textures on the roads, it looks like theres a bit of repetitive tiling going on there. I think if you do some high pass/low pass filtering on your original texture you're generating everything from then you can really reduce that. This is the kind of thing I mean. Apologies if I'm teaching you to suck eggs or whatever.
Apparently nobody can see you without a signature.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

Steel wrote:Just looking at the textures on the roads, it looks like theres a bit of repetitive tiling going on there. I think if you do some high pass/low pass filtering on your original texture you're generating everything from then you can really reduce that.
Thanks for the suggestion. Unfortunately I could not get this idea to work in the drawing package I use (Paint Shop Pro 5 - the last time I spent money on a paint program - and Pixelformer for optimisation). In the end I just doubled the resolution of the road texture and changed it to a rougher one with less obvious tiling;

Image
Where did you get the license free music from?
It isn't license free, it's just very cheap to license.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

Completed the buildings and magical structures;

Image

These are created at runtime via constructive solid geometry, statically tessalated to three levels of detail. Obviously they aren't the hottest models or textures in the world, but there is just me working on this, and I'm a programmer not an artist. I think they suffice for making the world look inhabited.

I also uploaded another dev. progress video. Flying around in the mist really reminds me of my honeymoon; Ireland looked rather like that for about half of our stay there.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

"Fox two, fox two!"

Image

"Foxes? What have foxes got to do with anything?"

The default attack in this game works like this;
1) Hold down one or both sticks or shoulder buttons.
2) Move the central targeting ring over the enemy. Each thread (left and right) will lock on targets in the ring, closest first.
3) Once locked onto a target the bird is connected to the target by a glowing thread. The target will stay locked on as long as it's within the outer ring; if the target moves out of the big ring, the thread dissipates.
4) Optionally, wait for the attack to charge (i.e. the thread to get to max brightness).
5) Release the appropriate stick or shoulder button, launching a ball of energy that zips down the thread.
6) Keep the target in the large circle until the projectile impacts, otherwise the thread will break and the projectile will dissipate harmlessly.
JointStrikeFighter
Worthless Trolling Palm-Fucker
Posts: 1979
Joined: 2004-06-12 03:09am
Location: Brisbane, Australia

Re: Holiday Project

Post by JointStrikeFighter »

semi active radar bird.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

JointStrikeFighter wrote:semi active radar bird.
Yeah, technically I should have said 'fox one'...

Given the relatively low speeds, having a fire-and-forget primary attack would just be too easy, but an unguided attack would be too hard due to the fairly unstable aiming platform. I think this is a reasonable compromise.

The special abilities I have planned are (provisional names);

Raven : Dragon's Breath : Giant flamethrower attack.
Raven : Fireball : Slow unguided projectile, with airburst capability and massive splash damage, can be fired in pairs.

Hawk : Rock Egg : Single huge boulder-like projectile with gravity arcing, doing shockwave damage to ground targets in large radius.
Hawk : Meteor Storm : Macross Missile Massacre of fast, weakly homing fire-and-forget projectiles.

Swan : Monsoon : Creates a persistent rainstorm effect that damages grounded and low flying enemies, and more importantly washes away spreading pollution and puts out forest fires.
Swan : Typhoon : Creates a persistent swirling vortex that sucks in nearby enemies and traps them while constantly damaging them. Less effective on the really huge enemies.

Falcon : Ether Flight : Basically warp drive, good for zipping about the map in seconds rather than minutes.
Falcon : Chain Lightning : Forking lightning bolt that does a small amount of instantaneous damage to every enemy within a large radius (mainly good for killing entire swarms of the lightest enemy in one shot).

You have all four characters in play in the later missions, and can switch between them with the D-Pad. The friendly AI (for when you are not controlling a character) will be about as useful as Ace Combat 5, Blazing Angels etc, i.e. take the occasional pot-shot but leave most of the kills to the player.

Defensive Obelisk : Starburst : Spits out rapid-fire unguided projectiles that burst into glowing flak. Good against flocks of small enemies.
Defensive Obelisk : Hunter : Pereodically launches medium speed, medium damage homing projectiles. Good general purpose defense.
Defensive Obelisk : Searing : Sustained laser beam that does massive damage to a single enemy, always hits, very long cooldown.
Defensive Obelisk : Drain : Shoots a beam that sucks energy out of incoming projectiles, neutralising them before they can impact the island you are defending. Vital for reducing the effectiveness of long-range artillery enemies.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

No updates I'm afraid due to having to spend ages optimising to bring up the frame rate on the Xbox360. The C# VM on Windows is fairly good, not too far behind the Sun Java VM in performance (i.e. C++ equivalent when used competently). Unfortunately the C# VM on the Xbox360 has pretty sucky performance, and it's a real job to wring FPS out of it, even using all six hardware threads. If I'd known earlier, I would have exported even more processing to the GPU, but it's a bit late now.

On the plus side we've recorded nearly all the voice acting; there's about four hours worth waiting to be edited down to an hour or so.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

Completed the snowy and tropical islands (initial versions, at least);

Image

I've also started the process of submitting the prototype to Microsoft, for consideration as an Xbox Live Arcade release, instead of an 'Indie game' release. Frankly this is a long shot; the selection process is pretty tough, as they only have about one release slot per week. Even if they do like it the game will need major polishing to make the grade. Still, would be nice if they do go for it, as that would let me add achievements and leaderboards.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

The basic non-combat gameplay is now working;

Image

I've uploaded another dev video showing that and the sound effects (3D audio for world entities, plus ambience and game interface sounds - still working on it though). Unfortunately Youtube seems to have completely trashed the video quality - I will have to try fiddling with my video settings next time to see if I can get a better encoding.
User avatar
salm
Rabid Monkey
Posts: 10296
Joined: 2002-09-09 08:25pm

Re: Holiday Project

Post by salm »

Looking good. Level designwise it would probably make sense to create a couple of very narrow canyons the player has to fly through or steep mountain slopes the player has to race down at a very low altitudes. Caves would be awesome, too, but i guess a bit tricky to implement if you´re using grayscale maps to create the terrain.
User avatar
Starglider
Miles Dyson
Posts: 8709
Joined: 2007-04-05 09:44pm
Location: Isle of Dogs
Contact:

Re: Holiday Project

Post by Starglider »

salm wrote:Looking good. Level designwise it would probably make sense to create a couple of very narrow canyons the player has to fly through
The snowy map is mostly canyons, the swamp map has a couple.
Caves would be awesome, too, but i guess a bit tricky to implement if you´re using grayscale maps to create the terrain.
Caves and tunnels are on the todo list, but fairly close to the bottom, the current priority is now the core air-to-air combat.
Post Reply