Two significant visible changes in this update.
First off, I always thought the space above the horizon was pretty empty. It’s also difficult to come back to a point on the map once you’ve moved away from it, since there’s no easy way to tell what direction you’re moving in. Accordingly, I’ve implemented a starfield. The stars are randomly generated, and defined as a yaw and height… so if you’re traveling north (0 degrees yaw) you’ll see the same stars ahead of you (until you reload the game). Under the hood, the starfield is it’s own sprite, which the stars get rendered to every frame. A check is performed on the terrain, to prevent stars from appearing underground… there’s at least one condition where the check fails (tank in a deep hole where one or more of the points defining the rim is above the screen), and I’m not entirely happy with the way I’m handling occlusion (one high point in the terrain will cause all the stars near the horizon to not render), but it works more or less.
I also added airplane enemies. Right now they’re worth 5000 points… because they’re a little hard to hit. (To look at all right, they need to move faster than the bullets!) Currently they continuously drop ‘bombs’ (which are the same as all the other shots), and just fly towards wherever the player is when they’re generated. I haven’t decided whether to turn off the bomb dropping until the airplane is near the player… I think it looks pretty neat to see the airplane flying by with a wake of explosions behind him.
Although the idea was to provide an incentive to keep moving, it’s not guaranteed that an airplane passing overhead will drop a bomb on the player. This isn’t trying to be an exceptionally punishing game.
At this point, I’m at 15.2kb- 15,534 bytes exactly according to Flash Develop and my FTP program. Since the game needs to weigh in at 16.0kb (16,384 bytes) I need to be close to wrapping up. I probably don’t have enough space left to put in another model for example, even after I optimize for .swf size. There is also quite a bit of tuning left to do. My current plan of attack is to spend through Wed working on tuning, and fixing a few remaining internal errors* then branch the game and implement the Mochi and Kongregate APIs for a public (non-contest/larger than 16kb) version ideally releasing that when the list of entries in this contest goes live. That should leave me with the weekend open to participate in the Ludum Dare.**
As before, click the read more to play the game. Comments always welcome!
*- For example, if a player holds down W for 27.7 minutes, he’ll drive off the map array…
**- If Notch can release a major update to Minecraft the day after LD19, I don’t have much of an excuse to skip just to tune this game.
W- Move Tank Forward I- Pitch Turret Up
S- Move Tank Backward K- Pitch Turret Down
A- Rotate Tank Left J- Rotate Turret Left
D- Rotate Tank Right L- Rotate Turret Right
C- Align Turret With Tank SPACE- Shoot
P- Pause V- Change Graphics Mode M- Mute