The latest information
Screen shots
Excited by the words? See it in its full techni-colour glory. [More]
Download
You've heard enough, and you want to feel it for yourself. [More]
The real deal
You like it, you want it, so what do you have to do to get it? [More]
Gallery of legends
All the big players with all the big scores, right here online. [More]
Links
Everything related to Ultra and Tempest, and then some. [More]
 
 

News

This is the complete news archive for 2005.

4th December 2005
I spent a while looking at tuning the difficulty curve today, and modifying some behaviour which was just plain unfair to the player. Behaviours such as a flipper firing just before it exits a web gives the player no time to react and no guarantee that if they try a last-second guns-blazing approach to try and shoot the flipper down that they won't get shot themselves. In a game like Ultra, or any game for that matter, such unfairness has to be avoided as there's nothing more frustrating than when you're about to capture that elusive high score and your last life is lost to an unplayable situation.

These sorts of issues are very important in game design, and believe me when I say that they are often ignored within the games industry, especially when relatively inexperienced people are involved (and the games industry has traditionally been full of young, inexperienced people). With Ultra, I want to make sure that gameplay is absolutely solid before it gets released. The audio and visuals are important, and they play a very large part in making a good game, but to me the gameplay is the primary issue and I'm very anxious to get this right above all else.

I also took a good look at the physics of the mines that the flippers leave behind - their collision response, although valid, did not look realistic enough. The problem though was that the motion of the mines is controlled so that they follow the outer rim of the web, and they also follow a sinusoidal pattern offset from the rim so that the player has a chance to pass a mine without being hit - much like in the original Tempest where you could pass by a flipper under the right conditions. Applying realistic physics responses to collisions when the motion in constrained in this way is more difficult than under unconstrained conditions, so this is something I initially avoided. But the visual response grated and forced me to find a solution - which I have now done. It's all looking very nice indeed.

3rd December 2005
I've not updated this news page for a little while, but much has been going on here behind the scenes. The menu system for Ultra is now practically complete, and all of the major functions are operational and ready for use. As part of that whole menu system task, a demo mode has been written that lets the game play itself behind the menu screens - giving you a flavour of what is in the game before you've even played it. A nice screen effect has also been used for this that obscures the visuals for the game so that it doesn't distract you from what you're doing with the menu system itself.

A lot of work has been done on the input control system - not only making it user configurable, but also working on tuning input motion to on-screen motion in a way that makes the game highly controllable. Of course, for a high-speed 'twitch' game like Ultra, this is essential and the last thing you guys want when you're playing a game like this are control problems.

The enemy flippers have now just become twice as deadly! Once a flipper exits a web because you've failed to shoot it down before it reached the end, it ejects a mine onto the outer rim of the web - a mine which you, the player, obviously have to avoid. As if that isn't enough, the mines circle around the rim of the web so you have to keep on moving to avoid them. This new gameplay mechanic mimics the original Tempest where the flippers themselves travelled around the web, a feature which I thought wouldn't look very good within Ultra itself due to the visual style that we have chosen. So now, a missing piece of gameplay has been restored, and one that will have you getting very twitchy when it kicks in - take it from me!

Oh yes, and we now have a pucker 3D sound system ... yay!

20th November 2005
Having done a marathon weekend coding session, the menu system for the game is now almost complete. There's only another day's work left to do on it, except for the more complicated and unnecessary parts which I will be leaving until later on in the project - parts such as music track selection and advanced input device configuration.

With the new menu system in place, the game is now fully playable and loops in and out of the menu system correctly. The pause menu within the game has also been completed, and you can configure everything from within this menu too, so long as it doesn't affect the game directly - such as the difficulty level. As far as menu systems go, I've seen few that are as easy to use or more flexible, so I've ended the weekend feeling very pleased with what I've achieved in such a short space of time.

The visuals still need some work, which I'll attend to later, but they're certainly passable and don't look too shabby even at this early stage. At this point in time, it looks quite plausible that we could be looking at an initial Christmas release of the game, with further improving work over the following couple of months.

18th November 2005
Despite what I've written about the collision system earlier in this chronology, it didn't handle player collisions very well because the player doesn't actually reside within a web lane and instead skirts around the outside of the web. This was not a huge problem as most collisions were still being picked up, but somehow it just didn't "feel" right and some collisions were being missed. This prompted me to take another look at the collision-detection algorithm today and I've added new 3D cylinder/ cylinder collision-detection specifically for the player.

This new system is a little slower than the old one, but that was specifically optimised for collision-detection only on web lanes and didn't need an awful lot of maths as a consequence. The new system is employed only on the player, so we're not using much more processing time as the old one is still used for everything else.

With the new system in place, you die more often which causes you to change your tactics. You now more actively evade going near enemies and their projectiles and lives are more precious. This is a factor present in Tempest but until now was missing from Ultra - so another key aspect of gameplay has been covered.

16th November 2005
The player death is now complete, and you can die in several ways just like in the original Tempest. Hitting a spiker as you head down a web sends you spinning into the air, while colliding with an enemy or their projectiles disintegrates your craft in a bit of a light show. I'll revisit this feature later, as I will probably most of the features in the game, to make it better and add more variety to it. Variety is a key component of the design of Ultra - in some ways the original Tempest was a little repetitive, although on the later levels you didn't care because you were concentrating so hard just on staying alive.

15th November 2005
I tidied up a few loose ends with existing work today, so no new real work was done. It was all about adding new web designs, ensuring the flippers flip correctly on all existing webs, smoothed-out the incoming flight path of the flippers and tankers before they hit the web, added a new scoring system, added many new messages as you progress through the game and a few other minor things as well.

I also optmised some of the 3D renderer and fixed a few minor bugs that cropped up during testing. There's an in-game clock now so that you can see how long the current game has lasted. It takes over half an hour to play-through the existing 45 webs, so testing is now taking quite a bit of time! Still - it turned up a few glitches which have subsequently been fixed.

Next up is the player death sequence and modelling the 3D geometry for the player, flipper and tanker to their final form. Once these tasks have been completed, the game will feel a whole lot more cohesive and much closer to finished. This should only take a few days, at which point work will begin on the menu system for Ultra.

10th November 2005
The game took a new turn today as I created a tool to allow you (or rather Ben and I) to create web designs for the game. Previously, webs were created by hand involving typing numbers into the source code - this was obviously rather hit-and-miss, and not a little time consuming. The new tool allows you to create a new web in just a minute or so, so you can expect to find many, many webs in the game right from the start - thirty have already been created and are ready to play.

I also paid a lot of attention to the game's difficulty curve and it now ramps up quite nicely and is just about manageable at its peak. Weapons are also allocated and powered-up as the difficulty level increases - giving you a nice balance of gameplay and smooth progression as you go through the game.

I also added more messaging to the game, giving feedback to the player as they progress. I decided quite early on that this game is primarily intended for the original Tempest fans - all of whom are going to be well over eighteen (given that Tempest itself is almost twenty five years old). Therefore, the messaging is aimed squarely at adults and hasn't been sanitised for the ten year olds. I hope you enjoy it!

8th November 2005
As expected, I've now completed the new all-singing, all-dancing collision detection system that is far more accurate, flexible and functional than the last. But then, the last was just some mock-code to get the game running and it was never meant to be a permanent solution.

As a result of this newly-developed system, not only is collision detection now far more accurate, but as a side effect of the restructuring, the player can now die too. So the game has gotten an awful lot harder all of a sudden!

7th November 2005
Done quite a bit of work on the enemy flippers today, mainly centring on the death sequence when they have been shot down. It's one of those jobs that you really enjoy doing, visual effects as good as you can make them, and it turned out really well. Normally I would try and make semi-realistic visual effects for the games that I work on, but the style of Ultra is quite abstract and these new visual effects mirror that so it all fits nicely together.

In addition to that though, and the main thrust of the day's work, has been the development of the enemy tanker. This has bought with it a lot of new gameplay and Ultra is really starting to shape up! From years of experience I can tell you that you know you have a winner on your hands if the coder actually wants to play the game that they are developing. In the past, for me games like this have been few and far between. Yet already, Ultra has captured that same frenetic gameplay that Tempest had in abundance, and its addictive draw has been constituted.

Next up, the collision system is in need of restructuring as it's just not sophisticated enough to handle the complex interactions that can already be observed as the number of enemies on the screen increases and the action gets faster and faster as you progress through the game. This should only take a night to complete and I should be able to make a start on that tomorrow.

5th November 2005
Produced some of the sound effects for the enemy flippers and plugged them into the game. This has bought them to life quite a lot and they feel much more like real entities within the game now, rather than just visual effects. There's still a fair bit to do before they will be finished, but you certainly have a feel now for how they will end up. As the most complicated, and most common enemy within the game, once they have been finished the other enemies will surely be swift to follow.

Also, the player now rides down the web at the end of a level on their way to transitioning to the next. The collision detection with the enemy spikers is still missing though, so the gameplay here is incomplete and will need attending to at some point soon. As we haven't a death sequence for the player yet though, that too will need coding up at the same time.

4th November 2005
The enemy flippers, though working, are still far from complete. Namely; their entrance onto the web, the sound effects, the finished flipper 3D model, the death sequence and also a little surprise as they exit the web are all missing. So today I made a start on filling some of these gaps. The flippers now take a flight path from the space around the web in order to land on the web at their assigned location and smoothly start moving up the web as soon as they land. This has smoothed out their entrance into the game no end and gives a real feeling of oncoming hoards of enemies as you see them flying in to take you on - they're really beginning to come together now.

I also produced a sound effects editing tool for the game today so that Ben, our musician, can easily edit sound effects and plug them into the game on a semi-autonomous basis. Although I produce many of the sound effects for the game myself as I'm writing the code, Ben has a lot more experience in this area than I and will probably be able to improve upon the work that I've done, hence the need for an editing tool so that he can edit the sound effects without the need for any intervention on my part. As he works in Canada, and I in the UK, this is quite an important point!

3rd November 2005
I made a start on the enemy flippers and got them moving around the web, eventually. The flipping motion that was employed in the original Tempest is not replicable in Ultra as the webs in Ultra are solid rather than transparent. So, the flipping motion now has to take place above the web, rather than directly between web lane dividers. Although the motion is quite simple on the screen, the code behind it wasn't at all easy to write and turned out to be quite a bit more complicated than I had anticipated.

The flippers are now working though, spawning at regular intervals, moving around the web, firing projectiles at the player and exiting the web gracefully when they reach the top. Difficulty tuning has also been implemented with the action getting more and more frenetic as you progress through the game.

2nd November 2005
Today I made contact with an old work-friend of mine to see if he's interested in writing some music for the game. It was always the intention for Ultra to be an audio feast as well as a graphics light show, so music is to be a very important part of the game. Ben loved the idea of working on the game so we now have a musician on the team! Ben's an accomplished video games designer, musician and he even turns his hand to coding when the mood takes him. He's worked on many video games in the past so you can expect some excellent music to accompany Ultra when it gets released.

31st October 2005
The initial 3D model for the player was incorporated into the game today, albeit pretty much a placeholder model in order to test the rendering code within the game. As this is the first 3D model in the game, this bought up issues with model scale and in-game lighting, both of which have now been solved. For dynamic models I've opted for a fast lighting solution with a single ambient light and up to four directional lights. This will give us a lot a variability and scope for some nice lighting effects without burdening the engine with heavy light management. Ultra doesn't require a realistic lighting solution due to its graphical style, so the route we have chosen here is ideal.

The player movement around the webs was also written today, so for the first time the game is now in fact playable. The player moves around the web proportionally with the analog input from either mouse or joystick - giving the player acceleration control for both speed and accuracy around the web. The player's 3D model always comes to rest in the centre of a web lane, but I've been careful to never snap positions and movement is smooth at all times.

Pre October 2005
Features that went into the game prior to October 2005 (when this web site was originally created) are:

Time disruptor player weapon
Mega blaster player weapon
Blaster player weapon
Time distortion support
In-game statistics rendering
Status message rendering and animation
Inter-arena camera animation
Camera control and animation
Background rendering and animation
Web arena rendering and animation
Projectile / enemy spikers collision detection
Enemy spikers
Projectile / projectile collision detection
Player projectile animation and rendering
Enemy projectile animation and rendering
MP3 / OGG / WAV / AIF music player
3D model import
Bitmap support for Direct3D textures
Text rendering support
Graphical effects rendering support
3D maths library
Direct3D layer
DirectInput layer
DirectSound layer
Object management
File handling
Memory management
Main program core

 
     
Home     |     News     |     Download     |     Links     |     Contact
Copyright (c) 2005 The Code Monkey. All rights reserved.