I mostly finished up the explosion enhancements – having them push and damage objects. Created some funny “unintended consequences” while testing – such as infinite explosion loops. What would happen is – I’d have an explosion damage nearby objects – in this case an asteroid, which would spawn baby asteroids as a result, that when they’d explode would damage the parent asteroid. Infinite loop of explosions and thus a hang up of the game – have to be careful with these guys.
Then I jumped off to begining of re-doing the docking mechanism, previously docking was handled via a distance check – when a marine ship collided with an asteroid base that it was intent on capturing and if the marine frigate was within 30 units in distance of the docking area, then the marine frigate docked with it, but this method isn’t very precise. So instead of a distance check I’ve created an invisible collision object (just like the explosion area of effect invisible collision object) that waits for a ship to collide with it, this object is located at the docking tube, so this is now much easier to predict and more precise. This will lead to better docking mechanisms, potentially allowing the player to dock with bases for trade, story, capturing, and other purpouses.
After this I went back to command mode – I left it a bit because I became frustrated at the now much more complex control mechanism, but I found a better way and am very satisfied with the current state of it. Also I’ve updated some of the commands to be more intuitive – for example for the “go to or move” command – before I had the player use the A and S keys to move the go to position left/right, but now I changed this so that the mouse left/right movements do this, I think this is better and easier. Feeling pretty good about it. But now we are coming to some of the annoying polishes and more decision making. I might jump off to another area before tackling command mode again.
Here’s a new video showing off the current state of “Command mode”:
What do you think? I think its off to a good start, it is funny how these things evolve and how excited I get followed by the inevitable realization how much complexity even seemingly simple things need when I get into the guts of it. A lot of small issues have been resolved, but many still remain. I’m also hitting up against the control issue – meaning that now there’s ship mode controls, tactical controls, and now command mode controls. Each of these share some keys in common and have unique keys for unique actions, argh… I’m running out of keys – because I’m trying to keep things strictly left hand on keyboard and right hand on mouse… now this makes me wonder how left handed people will deal – well there will be keymapping don’t worry 10% of humanity But with these challenges overcome eventually I think command mode will add that something extra special – which is the lifeblood of this project, trying to draw people in, giving them options and a new twist on one of the oldest genres in gaming.
Off to explosions – I left command mode in about 1/2 polished state because I was a bit frustrated by the little issues, and wwanted to do something quick, and surprisingly this time the something quick actually turned out to be something quick. That something was getting explosions moving. When I say explosions I mean anytime a bullet or missile hits something or when an object (eg: ship) explodes. Before the little tweak (that took about 2 week day nights) hits and explosions would be still, and this would mean that if a ship is moving, and that ship gets hit, then the little hit effect would be left in the dust behind the ship, now they get their momentum from the object hit so they faithfully follow along. Its something that players might not even notice, because it just makes sense, but if it was in its old state, I think people would feel that there is something wrong.
The neat thing about the little explosion tweaks, is that in doing them I prepped explosions to be more sophisticated, leading to the goal of having “area of affect” explosions – basically an explosion that damages and/or has an effect on another object. Imagine a large ship blowing up, and that explosion’s shockwave pushing smaller ships away. Or imagine a weapon that fires explosive rounds that have a similar effect. Pretty excited about this, just another neat little thing.
Wish I updated this blog as much as I thought – man I should update the blog… Anyway while working on “multi turret mode” which allows the player to control more than one turret at a time – I realized that creating a seperate “command mode” doesn’t make sense. Multi turret mode is really command mode, but with the addition of issuing orders for the ship. The camera is already zoomed out a bit, and allows for 360 view around the ship so its only natural to extend multi turret mode with other capabilities for commanding the ship.
In a way command mode is a hybrid between ship modes and tactical, you can fight like in ship mode, but you can also issue orders like in tactical mode. The goal being of creating an interesting way of controlling large ships, so instead of moving the mouse and waitnig for the large slow ship to turn, you issue a command for it to turn, then you can controll turrets and pick targets while the ship turns, its sort of a task based auto pilot. You issue a command and then are free to control the weapons. Pretty excited about it – because without it large ships would be no more than large versions of small ships, thus making them somewhat pointless to even include in the game as player controllable ships. Hoping that command mode changes this.
I ran into a few problems, I wanted for the player to be able to issue a “maneuvering thruster” order, basically tell the ship to ascend/descent thrust right/left/forwards/backwards etc, struggled a bit with the coding behind this, but about an hour ago I figured it out, the problem is related to the ever present 3dness of the project, when there is no up/down/left right you have to translate positions to simpler terms where there is up/down/left/right – reletive to the ship that has to do the maneuvers, so that it knows which thrusters to fire. Hoping that the maneuvering thruster one day will complement ramming spikes/shields/maneuvers Maneuvering thruster’s are also important in terms of AI – right now its not very bright in certain situations, but with maneuvering thrusters ships will be able to more easily – dock, go through gates, and even fly in formation.
The past few days have been very productive – usually after I realse an iteration the week after is barely any coding/development – due to burn out, but I feel good right now. This could be because instead of my usual “release during the weekend” deal I released during weekdays. Tinal testing Tuesday, creating the installer on Wednesday then created the youtube “promo vid” on Thursday, meaning that I couldn’t spend the entire two weekend days on working on the project instead I did it in sections – since development/work on this project happens after my day job. Anyway somehow I avoided burnout.
On Saturday I started working on Turret mode. Meaning manual control over turrets, from their point of view. This actually was somewhat implemented about a year ago. What happened was that there were some issues with it (for turrets that were side mounted), and I didn’t have nice turret art so I disabled it and moved on. Because a lot has changed I had to re-work the existing turret mode and rebuild the gui, that took most of Saturday. Sunday was a bit more polish to the gui and I started on “multi turret mode” meaning control over more than one turret. So the player can hop from oen turret to another, or grab more than one, then spin the camera aorund the ship and have the turrets track the player’s view and if the player choses fire on that location.
I think its pretty neat Its my hope that this will enhance the “capital ship” mode of game player, fighters are already fun to fly, but cap ships turn slow, so what their appeal hopefully will be in this turret mode.
As I was putting in multi turret mode I ran into a problem – the player ship sometimes would obscure the target – since the camera spins around the player ship – the player ship is usually in view meaning that sometimes it can be in the way of your target, so what to do? I could automatically move the camera’s psoition up and down to look over/under the ship, but should the camera move up? or down? Both are valid answers – so what I came up with is to allow the player to manually control the camera up/down movement in multi turret mode (just like the player can controll the zoom) so I think this means that multi turret mode will be more fun and active Hopefully players will feel the same way too.
Still a bit to go, hopefully I’ll be done with turret mode this upcoming weekend, if it takes me two weekends to get a neat feature in, I’ll take that time line and be very happy with it
Almost forgot – because turret mode allows the view from the turret I’ll be modifying some of the heavier turrets to have a recoil when they fire, to give a bit more to the experience.
Doing final bug fixes/polishes and play testing – hoping to release iteration 13 tomorrow or Thursday. What’s left is to create the installer, grab a bunch of screen shots for the website and then create a “promo” video – though I’ll probably release iter 13 first then create the video – damned things take a over a day some times.
Thoughts on the play test: very neat little game. There’s a big gap though when the player waits for resources enough to build the shipyard and the marine ships for taking over the bases. That will definatly need to be repaired with more missions, sub objectives, a iterative attack on the bases (destroy a weapon, or defenses first etc). Also the passive act of bases getting resources needs to be augmented with a bit more active form of mining, and having pirates/enemies take notice and try to grab those resources for themselves. There’s no shortage of improvements to be made, but as usual everytime I release an iteration I’m feeling pretty good
Here’s a very rough – sketch/draft/notes of what I plan on working on for the next iteration – after which the game would reach “beta” stage and then the focus going more towards creating a story.
add colony platform – adds to population limit – if destroyed takes populatin with it – boosts food production
pursue – engage – flee AI
some kind of a free cam to see action better in ship mode – eg: select an object press F6 to view it, some kind of a free cam – potentially as a “probe” or “recon drone” deal
free cam – potential – alt left click in ship mode to look at another target in ship mode
turret AI fixes – close enough to fire – avoid friendly fire
error correction on path finding – eg: marine ships entering in a asteroid base – if they get confused they can find their way again dynamically
missiles MIRV able to shoot projectiles
skybox enhancements – tactical “see through” – rotation
hud for base and nearby landmarks
enemy base AI – store defensive ships for when attacked, or launch ships to patrol before attacks
enemy base AI – help other’s being attacked – call for help
independent/pirate stations/bases launching attacks
in battle editor – swap sides/take sides button – eg player has 5 ships versus 7 enemy ships – player clicks swap sides – player now takes those 7 ships as own and gives 5 ships to other faction – eg: easily play scenario from other side of the fence.
visualize objectives – eg: if destroy target – highlight target in a different manner, if go to, highlight target or spot on hud and tactical mode
fix turret mode – both single turret and multi turret
re-code transport ships to take advantage of new art (showing pods that they have)
capital ship “maneuver” mode – like in tactical mode
“collision detection” on explosions – leading to flak and area of effect weapons and push backs on death
better explosions – attach them to object hit to avoid an odd trail of hits when the hit object is moving at a rapid pace
better “landing” (use a collision box to detect)
command ship abilities
ctrl left click in ship mode to issue command ship ability – in ship mode
Working towards it, hopefully within the span of 7 days, working on adding ships to the game, after which will work on getting them to spawn out of the gates, then play testing and bug fixing. Should be fun – looking forward to it
The goal is to release iteration 13 in about two weeks. Things that are left to do: iron out some small issues with the new ship changing interface, and add some of new Outsider ships to the game, playtest and bug fix.
I originally thought I’d update the main game to allow the player to travel through the gate, but upon further thought, I’m not ready for that yet, plus I’d rather release iter 13 and focus on the story elements in iter 14. The basics of the code is there, but I’d have to give the player a reason to do it, and since that is the realm of missiones/story I’ll leave that alone for now.
In other news, the “basic” beam weapons (and beam turrets) have been vastly improved, they are basically ready now, yay. The more advanced “particle fx” beam weapons still need work, but since none of those ships will appear in iter 13 (they will be saved for the commercial version) this portion isn’t a priority right now. There’s also been coding happening on the “shield” system, good stuff.
In other other news, this blog is a good resource for me, I read it and got some interesting reminders of previous challenges and accomplishements. So I’m glad that I took the time to write some of those things down, and hopefully I’ll get back to the semi weekly update schedule of the blog. Ditto on some of the videos, watching the old ones and the newer ones gets me motivated.
But project is moving along – iteration 13 is scheduled for the end of September, though it might cut a week or two into October.
Happenings – gate travel is mostly in – new map loads, and multiple ships can come and go, even some developments on the sound design phase. Here’s a very rough video video – its unlisted on youtube since its so bare bones.
In other news the game engine now supports “beam” (aka “lasers”) weapon turrets (which also allow for multiple beams per turret) – these go along with some very exciting new ships for the Outsider faction.
The past two weeks were very busy “real life” wise. Me and my wife painted the living/dining rooms (including the ceelings) – about a week ago, and after the cleanup and some other real life getting in the way (some of them very nice) of game development deals.
Anyway this weekend was a bit of a catchup on doing “nothing”, partly to blame was the rain all day today weather. But this meant that I had a very good productive game development weekend during which I worked on the “gate travel” system. Basically right now there are “rock gates” in the game out of which ships of the “Outsider” faction come into the “sector” and cause trouble. To add variety to the game and to have a more interesting story and elements I always intended the player to be able to travel via these gates as well. So right now the player is able to activate/deactivate these gates for travel and pass through the gate. Which right now results in a panning back of the camera and the ship speeding off into the void and then the ship is removed form the game world.
This took a bit of a engine re-design, basically adding a collision object class. A collision object (as opposed to a physical object) isn’t shown in anyway on the screen yet ships can still collide with it. Basically its an invisible square/rectangle. When a ship collides with it something will trigger. Right now the gate travel – but in the future other possibilites are on the table, for example mission triggers, objectives (eg: go to position), weapons (flak/granade weapons), and even a push back on a ship blowing up within a certain radius. Lots of interesting stuff I hope.
Next up is having a new map load and the ship exiting the new map’s gate.
Gate travel has a lot of interesting possibilities and it brings a lot of complecities, right now I’m trying to take it one step at a time and see where it leads.