Tragedy

Andrew Roals – aka Slaor, the person I would refer to as “my artist” but always felt that it wasn’t an adequate description has left our world. He died of a sudden heart attack on Friday, April 20th, 2012. I was informed by his sister, prior to this I had an odd feeling because I didn’t get an email from Drew for several days, which is very out of the ordinary. Some days we’d email each other more than a dozen times.

Drew was more than I could ever ask for and now he’s gone. I feel incredibly lucky that we found each other. I feel selfish for even thinking of the project – I know it will continue, but I also know that it will be less because of this loss.

Link to Slaor’s blog including his sister’s message: ‘ardWare

His sister asked if I’d like to include a message that will be sent with Drew. This is what I wrote:

Andrew, we never met in this world, but I hope that we will meet in the next. We were a sort of a Ouroboros, a snake eating its own tail. You inspired me and helped fuel my motivation. I got to thank you many times, but I hoped to thank you more when this project was completed. It will not be the same without you, I will not be the same without you.

Rest in peace my friend.

Paul

Iteration 11 thoughts

Had a playthrough of iteration 11, conquered the nearby base, overall I’m very happy because I had zero crashes in the play through, also another strong aspect is the ship to ship combat. But there are weaknesses and glitches, that need to be addressed.

One of the major ones is that control over your units is fairly hard, the units are a bit too independent, I need to work on giving the player the ability to issue “hold this position” and “patrol this position” orders. Most likely this will be done via something like a “navigational point” in tactical mode, where the player will click a spot to designate a go to point and then select friendly ships and right click on that spot to bind ships to that point. Right now there is no way to do this, although behind the scenes the code exists for wait here, or patrol here AI.

The other weakness is waiting on resources, this is far too inactive, although it is great that bases automatically produce reasources meaning that the player can focus on combat or issuing orders, there has to be a way for the player to actively gather resources to speed up ship/station building. If you’ve noticed asteroids can be shot at which yields what we internally call baby roids, these will in the future be ablet o be “harvested” and then dropped off at a transfer station to gain more resources. This too will be automated with ship’s crew doing most of the work, however this will attract attacks so the player should defend these miners to keep their output strong.

Its funny because the week after a release, I do very little coding, instead I jump on the forums and talk about the game, but its also a neat break from the frantic and obsessive drive towards a release, it also gives me time to prioritize and decide what I want to work on next.

Iter 11 thoughts

In final stages of releasing iter 11, most likely sometime Sunday (so over 24 hours). Few minor tweaks left as well as – creating the installer, updating the website – creating screen shots and videos.

Had a play through tonight, its been a while since I played this long and with the focus on taking over the enemy base. Thoughts: it shouldn’t be very surprising that I like the game I’m making, but still it is a welcome feeling for me. The art has improved dramatically, very pleasing and rewarding to the eye (and I hope a “hook” to the player – just one more ship to destroy… feeling). Overall very stable, though I encountered (and fixed) a crash bug – having to do with the “Command” ability on the Command ship which lets you take over enemy ships.

At first the game is seemingly very easy because resources are plentiful, but once you build stations and start to want to build the marine frigate ships to take over the enemy base resources start to become more scarce and enemy attacks intensify. One of the the goal is for the game to be a challenge, but also hard to lose, and this is somewhat the case.

Right now however the game is too much waiting for resources and not enough of substancial combat. One of the reasons being is that enemies are mostly equipped with corvette class ships, while the player can build powerful frigate class ships as well as having the Command ship. Its not very fair to the enemy. I’ve removed the heavier hitting enemy ships because their art was placeholders, so while the enemy suffers the look and feel of the game improves. A good trade off I’d say.

The other reason is that the game is very simplistic, the enemy base AI is very unsophisticated, and really just throws wave after wave of ships. This will be remedied, the goal is to have complex encounters, missions and objectives. Bases will need to be weakened, defenses will need to be strenghtened, territory will change hands, battles fought and wars waged. And because (I feel) that the game is already fun… I’m very optimistic about the future.

Happenings

Clawing our way toward iter 11… ok its not so bad, lots of new art has arrived, and much play testing and tweaking is happening.

Two important things happened recently – unified/made make sense the field of view setting, this is important because on wide screens with high resolutions models (the game world really) sometimes became distorted due to the fov settings, still may not have conquered this, but on a better path.

The other interesting happening is that the game would crash after about 2 minutes of a fight created via the battle editor. It started with getting reports from the other team member that the game would crash non-stop, which was kind of a shock to me because it didn’t crash on my side (for about a week now it has been very stable on my pc). When I can’t replicate an issue it worries me a lot, because its something I can’t fix/solve easily.

But luckily Drew sent over the instant action file that would trigger the crash and it crashed on my side as well. This is good news because if a bug/issue can be replicated then it can be fixed. Long story short: it turned out to be a crash due to the game using up its max allowed memory. The cause was particle effects, recently we’ve added a debri effect on explosions and impacts. These tended to linger for a decent amount of time while they float and spin away from whatever it is that exploded. The game engine is designed to re-use particles, but only if they stopped playing in the game world, if there aren’t any avaiable particles then the engine creates a new one, well if the debris were lingering then the particle system wasn’t stopped so new ones were being created, until a crash due to running out of memory. Interesting and new problem.

For now the band aid is to cap the amount of particle systems that can be created, but later on a more sophisticated solution will take place. Seperating the debris effect from the explosion effect so, because really they are somewhat independent is a start, testing distance to the player’s ship is another, and also putting limits on the amount of particles created.

Iter 11 update

Lots of things are happening behind the scenes, getting ready to release iter 11, ETA: next weekend. New models – ships, stations, etc. New tutorials. New effects, new sounds. Old ships removed, old files cleaned up. A re-vamped gui/interface and many other aspects.

The game is looking very nice and this enhances testing and makes me want to code/do more.

Very much looking forward to sharing it with you guys.

Happenings

Been meaning to update, always short on time so I’ll try to keep this short…

Currently working on turrets as main guns, watch them pivot/turn to their target, press the trigger and they fire, very neat. These go with the new corvette, very cool model. The barrels on the new turret weren’t positioning exactly on the center/top of the turret’s base so this threw off my muzzle flash positioning code, converted it to use “bones” instead (in case you aren’t familiar, models can have bones, which are used for animation and positioning). This method is much better than old method, but required some code re-writes.

Flying the new corvette with the “turrets as main guns” feels really neat, I enjoy it a lot, the turrets auto tracking gives them and the ship a “living/intelligent” feel. Looking forward to take advantage of this in the future on other ships.

The corvette also features a “secondary” weapon, a “charging gun” that can push objects away. Gotta code in the support for the secondary weapon…

Thinking that the end of March release goal for iter 11 maybe somewhat out of reach, but will try to get it done.

Iter 11 news and happenings

The goal is for iteration 11 to be available at end of this month (March). In keeping with this goal I’m trying to focus on general polish and readiness in addition to mostly minor additions… Sometimes polish gets boring so adding something in keeps me motivated, but I have to try to keep it to the less intensive elements so that I’m good to go by the deadline.

One of “less intensive elements” is the new HUD markings in ship mode, I’ve added a little HUD marker to show whether a ship is a friend or foe. Before this the only way to tell would be to target the ship or to switch to tactical mode (since tactical mode has objects colored with faction colors). This is a really cool thing because you get the sense of what’s around you, and will be especially important since the player will be able to capture/build a vast array of ships so simply looking at the hull configuration doesn’t always indicate whether it is a friendly or not.

Some minor tweaks and fixes: made the aim assist of projectile weapons more accurate, my code had an inconsistency which depending on the position of the weapon to the ship would throw aim off. The funny thing is that this inconsistency became apparent only when we changed the ship and weapon parameters, making everything faster, which also boosts projectile range as well (since distance = speed * time).

The other thing that I’m working on is tutorials. I’ve tweaked the old tutorials, for example showing how to use the afterburners and turrets. Also I’ve added a gravity drive tutorial which means I had to add a “go to object” objective.

Camera work

The intent was to work on tactical mode enhancements, selection enhancements, a new overhead camera issuing orders, grouping, etc. After I dabbled for a bit with improving selecting (eg: hold down shift to add/remove to/from selected ships), I headed towards putting in an overhead cam.

The idea was that it would work like a standard real time strategy camera, sort of an angel’s eye view of the battle, but I quickly realized that this was somewhat silly idea, why put this “only look down” limit? So I scrapped that idea and took out the few good ideas that came along with the overhead cam, which is a better movement mechanic, basically the player would always want to go forward, but what does forward mean? Forward where the camera is facing? Or forward in terms of the overhead cam, where moving forward is sort of like looking down, but still moving “ahead”. The forward where the camera is facing already has a very intuitive mechanism – zoom. So I put in the “ahead” mechanic and voila much improved map traversal in tactical mode. Also I got rid of the rigid follow system, where you’d have to press F to follow an object then press F to un-follow, instead if the player is following an object, but moves the camera away from the focused object the camera will stop following automatically. Zooming in/out and orbiting the focused object is still ok and would. This automatic un-follow means that there’s less things keeping the player from traversing the map.

The follow mechanic also got a huge improvement, instead of an instant transition, which can be somewhat disorienting, following an object will now have a transition period where the camera flies towards that object than attaches itself to it to follow it. This preserves the distance and rotation of the camera, so it is a fairly nice system. Another less major improvement is that the tactical camera now ignores all roll, meaning that the camera is always “upright” which should be less disorienting on the player.

With these added improvements to tactical I wanted to use the same code on ship mode, so I used it to create a “death camera” – so now when the ship that the player is in is dying, the camera zooms out and sees the ship fly out of control and eventually explode. This meant that there is a time period where the player may not be in a ship – which is a first in the history of this project – this may one day lead to the player controlling something other than a ship, maybe a avatar in a space suit? Who knows.

Almost forgot to mention, the death camera and transitional cameras are optional. So if the player doesn’t want to wait for their ship to explode before moving onto another one, the player can still switch ships, or if the player doesn’t want to wait for the camera to travel from one ship to another the player can just jump into the cockpit/chase/etc cameras.

New weapon type

Been meaning to add this new weapon type for a bit now and am very glad that its in and works fairly as I expected.

Recap – current weapons:
Projectile – flies forward (has a velocity), when hits something does damage. Has a varient called a scatter gun (which is basically a shot gun) which fires multiple projectiles at once in a cone pattern.
Missile – same as projectile, but can turn to track its target. Has a variant called torpedo – which is much less maneuverable, but does more damage.
Beam – instant hit damage over time weapon (continuous while hitting target and has energy) – aka lasers/phasers/etc.

This new weapon type I call “rail gun” – it is is a hybrid between the beam weapons and the projectile weapons. Basically it has ammo like a projectile weapon, but instantly hits like the beam weapon, however unlike the beam weapon it doesn’t do damage over time, it does the damage instantly. This weapon has a variant that can be “charged” – basically the longer you hold down the fire button the more damage this weapon does, and when you release the trigger the weapon fires. The rail gun type weapons can also push objects away, what’s really neat is that because of the physics engine I’m using the objects are pushed away in a “realistic” fashion, so if the rail gun hits an object off center then what happen is that instead of being pushed away, the object spins. Which I think is pretty neat! I bet you’ve seen this in Half Life 2 with the gravity gun and other games, a very cool weapon. The push effect will be especially good versus fighters because of their lower mass, so this could be adapted to a sort of a defensive weapon.

Some interesting things come about the rail gun, because the weapon instantly hits it is un-dodgeable once the weapon platform (ship/station/etc) lines up the shot, therefore I should avoid giving enemy ships this weapon especially early in the game, otherwise this would frustrate the player too much. However giving it to the player at early stages could ease the player into the game fairly well because the non-charged version is easier to use than standard projectile weapons. The instant hit nature is also very adept against missiles and torpedoes.

Very much looking forward to adding this new gun type into the game and having battles with and against it :)