Archives for : 2012-01

2012
01.10

After the pirate game for Free Realms, we moved on to a Star Wars IP. The game was called Attack Cruiser, for the MMO Clone Wars Adventure. Specifically this cruiser game was to resemble a top view twin-stick shooter, like geometry wars, but also with formations of ships like galaga. This game was co-op and had modes where you raced to finish as soon as possible, or tried to avoid death, or score as many points as possible.

The main gameplay involves flying an attack cruiser around, and enemy ships have elaborate AI to charge towards the player, or travel on a predetermined path, maybe decide to leave, spawn more ships, or stay at a certain range. It is also 3D as the little ships will fly above or below you instead of crashing into the side of you.

Uniquely on this game, I had a lot of fun with bezier curves. We had many things moving on snake-lines.
Keeping ships in formation is extremely hard though! Flocking algorithms they call it. You could launch your own fighters which were allies and attacked things intelligently on their path. They actually did heavy damage and were great for blowing up the massive ships.

Working with one other programmer, we made very powerful design tools to allow a base of 10 or 20 ships turn into hundreds of variations for types of weapons fired, physical movements, difficulty for damage and armor, and also huge flexibility for AI. It was the first time I thought of a designers tool as actually programming tool instead of simple changing of numbers. Using conditional statements to change AI, launch more ships, and end the game in a tool with user interface for designers certainly lightened the load for the programmers.

The edge of the map being a ‘soft edge’ and forcing a warp out, and warp back in, was kinda fun to rig up. We used animations quite heavily. The death animations were interesting too, which parts of the ship crumbling and different camera angles used. The beginning scene has all the ships fly by the camera but the players in the videos below just skip past them sadly.

Other things you probably can’t see, the turrets on the gun actually spin toward your cursor. As you fly toward the top of the screen you will curve around the planet. Flying down you can see a more top view, flying up you see more of the side. The scoring system has complex logorithmic scale and is based on how quickly score is achieved combined with how little damage is taken, to avoid all the bullets will give a larger points multiplier.

2012
01.10

Upon moving to a new job in America this time, I started working on an MMO. But instead of the normal boring walk around talk to people part, we made a multiplayer minigame called Pirate’s Plunder.

This is the first time I helped make all the parts of a whole game. It was thoroughly design balanced and had great 3d models, animations and effects. Also the code was smooth for 6 players on various internet connections.

My favorite part was the special code for ram damage. If you hit your nose in someone’s side you can take half their health. If you rub noses, it doesn’t do as much, but if you smash at full speed, it can be significant. I graphed it out on paper and them wrote the formulas to match.

Also not pictured is parking in your cave. I had to write code to disable user movement, and collision and manually pull the car into the hole like a car wash. Except you could come in at weird angles so you had to SPIN and MOVE in, ugh, it was an elaborate motion problem with all sorts of factors I had to consider. I’m very happy with how it turned out, but when it was buggy, it was really bad. Ha!


2012
01.10

My game development life started long ago on calculators but at my first full time gig, I was working on World Cup PSP soccer game and I finished up my task to update some audio and basic front end revamp. Another developer was working on creating a 3D globe in the menu system but they could not get the shader code to illuminate properly with directional lighting, texture UV maps and alpha transparency. This developer went on vacation and the feature was going to be cut, but I really thought the feature was a great visual idea if it could work. So for the sake of making the game better, I investigated HLSL shader code on my own, and found some other parameters to fix the lighting, transparency and texture map for selecting each country. I even did some artistic touches by adjusting the lighting range with some simple algebra. In the end, the final product had a very unique fresh look. I wrote the spinning code too which was a bit weird when you cycle countries too quickly. I heart matrix math, but it gets very difficult very quickly.

Someone else recorded video

Why did he choose Burundi? I never knew where it is until it shows up on the globe! Geography!

I didn’t work on gameplay, and I dont really recommend this game over any other PSP soccer game, but hey! the menu is cool!