Tuesday, 25 November 2014

Mining


Lots of changes to mining and asteroids.

There is now just one "metal" resource that is mined from asteroids rather than the previous Common, Reactive, Radioactive and Rare metals that have been in the game until now. This is to reduce the orders micromanagement for mining ships. Now there is no need to constantly keep track of what they are mining and balance the amounts of each resource you need.

To keep some complexity there are now a lot more asteroid minerals, each having a different maximum yield and mining multiplier (accessibility). Yield is the maximum amount you can mine from the asteroid and the mining multiplier affects mining laser module speed.

Rare asteroid minerals will be faster to mine and take longer until they become depleted, but every mineral type still provides the same "metal" resource used for building stuff.

During galaxy generation there will be an option to re-spawn asteroids some time after they have been mined completely. When an asteroid re-spawns it will return as the next smaller size (Large becomes a Medium etc.)

Larger asteroids have much higher yield and mining multipliers. This is to discourage mining in the same asteroid belt forever if you are going to use the re-spawn option. It will still be better to look for larger asteroids.

Asteroid stats example:

Large: Yield = 2400, Multiplier = 140%
Medium: Yield = 1200, Multiplier = 120%
Small: Yield = 600, Multiplier = 100%
Depleted: Yield = 300, Multiplier = 80%

Asteroid Minerals

Listed below are the asteroid minerals currently in the game. I decided to use real mineral names found on Earth rather than made up ones. Not sure if this would be realistic as I expect there are some minerals below that wouldn't be found on asteroids. (let me know of any)

The element composition of each mineral shown on the tool-tips have no effect on gameplay, just something interesting I wanted to add.

Common Minerals: Sphalerite, Chalcopyrite, Pyromorphite, Cuprite, Stibnite, Kamacite, Acuminite and Pyrolusite.

Uncommon Minerals: Chromite, Boehmite, Wolframite, Cobaltite, Faustite, Rutile and Barite

 Semi-Rare Minerals: Ruthenium, Molybdenite, Polarite, Thorite, Rhodium, Iridium and Gold


 Rare Minerals: Rhenium, Bromellite, Palladium, Osmium, Gadolinite, Monazite, Churchite and Sylvanite.

Planet Tooltips

Asteroid details will be shown on discovered planet tooltips.

Bonus Screenshot

(One of the new mining ships)

Saturday, 23 August 2014

Research

The research system in Galaxial has undergone many redesigns over the summer and has turned out quite different to what I originally had planned. The user interface still needs some work but is now mostly finished.


Once you have enough research data it can be spent on projects to instantly 'unlock' them. Rather than choosing what to research and then having to wait for it to be completed. The reason I choose to do it this way is because the research data already takes a long time to accumulate and will also be required for building really advanced ships and modules.

The technologies shown in brown are unique to the faction you are playing and will generally provide strong bonuses. The same basic technologies, ships and modules will be available to all factions but there will be a lot of faction unique stuff that is more specialized and will allow different play styles and strategies.

I am still undecided on how many levels to have for each research project. I would like for there to be no limit (unlimited research) possibly with diminishing returns the more you research a technology, but this could potentially lead to a lot of balancing issues.

Maybe its not a problem? For example if the player becomes too powerful then all other empires could become afraid and form a coalition against you.

Resources

A resources bar has been added along the top of the screen to show your empires total resource stockpile.


The resources are (from left to right): Credits, Research Data, Crew, Troops, Common Metals, Rare Metals and Precious Metals.

Crew and Troops are a recent addition and I will explain how they work in a future development log as they are not quite finished yet.

Ore mined from asteroids require transporting to colonies that have refinery facilities and after being processed into metals they are then added to the resource stockpile.

Colony Graphics

Graphics for the colony populations have been improved slightly again to match the same style used for the ships. Facilities such as shipyards, refineries, hydroponics will be constructed at the empty inner circles. New graphics for those haven't been created yet.


Minimap

Added a button to lock the minimap viewing position so you can keep an eye on two locations at once. You wont have to rely on just this as there will eventually be some kind of message/alert system for when important events happen.


Most of the user interface windows/widgets in the game look much cleaner now after removing a lot of the inner white outlines and added some subtle gradients.


Galaxial is proving to be an enormous game to develop solo!
Thanks again for your patience and I hope you will really enjoy it when you finally get to play.

Monday, 24 February 2014

Sound Effects and Projectiles Video


Stress Test Video

For the video I created a galaxy with 75 planets and placed 60 ships in each of them (4500 ships in total)

Each of the smaller ships have the most CPU intensive weapons (rapid fire auto-cannons) to fire at the indestructible capital ship all at once. This was to test that the game will handle the large number of objects and sound effects.

There are no simplified calculations in the game for battles that you are not currently viewing (apart from rendering optimizations). All AI, ships, collision detection, projectiles and missiles are always fully simulated.

I expect the ship count could be significantly higher for normal game-play as there wont be battles happening all at exactly the same time like in this video. In a typical game you will most likely have the majority of ships transporting cargo, mining or patrolling. Those kind of tasks don't require much processing power at all.

The frame-rate displayed in the video would normally have been much higher but the recording software was limiting it quite badly. Running the same test scenario without recording I averaged around 50 FPS.

System specs used:

AMD Phenom X4 9950 (2600 MHz, 4 core)
Nvidia Geforce GTX 260
4 GB RAM

Audio Library

I recently switched the audio library that Galaxial uses over to irrKlang as I was having problems with OpenAL drivers and sound crackling. Overall I'm really pleased with irrKlang's performance and ease of use.

In the video there are often over 300 sound effects playing at once! Each individual projectile from the auto-cannon weapons have their own firing and impact sound effect. Ships also have engine rumbling sounds which sound great when there's not much going on.

A lot of the sound effects I'm using at the moment are just placeholders, but I am planning to get professional effects made by a sound designer when the game is almost feature complete.

Cargo Transfer

The drag and drop user interface for manually transferring cargo between docked ships and colonies has been finished. Holding shift while dragging items will let you set the amount to transfer.


The Load/Unload buttons at the bottom will attempt move all items from one cargo hold to the other, so long as there is available space in the ship. Colonies will have unlimited storage space.

Bonus Screenshot

(New Jumpgate graphics)


Tuesday, 10 December 2013

Fleet Leaders

Quick post about the fleet leaders and experience system I have planned which I am currently working on.

 

Command Hierarchy

Each ship can be assigned to a Squadron which can have a maximum of 9 ships in them. They will follow the same orders, work as a group and keep in formation (if you want them to).

Wings are the next level up and can command a maximum of 4 Squadrons (possibly more when researched).
All of the Squadrons assigned to the Wing will follow the same orders, so you can assign orders to a large number of ships all at once.

Fleet is the highest level. It can hold any number of Wings or Squadrons. You probably wont be able to give specific orders at the Fleet level and I haven't decided yet if more than one Fleet will be allowed.

 

Leaders

Each Squadron, Wing and Fleet can be assigned a leader character. This leader will earn experience from battles they are involved in. If any of the ships the leader commands was involved in destroying an enemy ship then they will gain experience towards their skill level.

The leaders skill level will give specific bonuses depending on where they are placed in the Command Hierarchy:

Squadron Commander: 5% bonus to damage per skill level
Wing Commander: 5% bonus to maximum speed per skill level
Fleet Commander: -5% ship upkeep cost per skill level

The only way for leaders to gain experience will be in command of a Squadron. To do this they will need to be in the lead ship. If the ship gets destroyed the leader dies.

You will be free to reassign leaders whenever you like, but only if there are no enemies nearby.

 

Traits

Traits provide bonuses to all ships the leader is in command of. When a new leader is recruited they may have a number of traits, but they cannot be gained in other ways. A few examples:

Mining Specialist - Gives a 20% bonus to mining yield
Shield Specialist - Gives a 10% bonus to shield hit points and recharge
Energy Weapon Specialist - Gives a 10% bonus to energy weapon damage
Engine Specialist - Gives a 10% bonus to ship maximum speed
Transport Specialist - Gives a 10% bonus to cargo capacity

Trait effects will cascade down the command hierarchy and are halved at each level. If you have leaders each with the Mining Specialist trait at the Fleet, Wing and Squadron levels then it will give the bonus of 35% (5 + 10 + 20) to the ships below.

 

Proficiencies

As leaders gain experience they also get better at commanding certain types of ship. For example if the leader only has Cruisers in their Squadron, experience will also be added to their Cruiser Leader skill which provides bonuses only for Cruisers.

If there are more than one class of ship in the Squadron, experience will be distributed evenly to the relevant proficiencies.

 

Medals

Leaders will also be able to earn medals when they achieve certain goals (total ships destroyed, ore mined, cargo transported etc..) Some medal examples:

Long Service Medal (Awarded for time spent as an active leader)  - Gives a 10% reduction to ship upkeep costs
Bronze War Medal (Awarded for total ships destroyed) - Gives a 5% bonus to shield and armor hit points

 

Potential Problems

The whole leader system is designed to be completely passive. You wont need to manually spend skill points. They can just be left alone and they will automatically gain new skills, proficiencies and medals as they do stuff. So it shouldn't require much micro-management at all. Of course you still might want to check on them occasionally to ensure you are making the best of their abilities in their current position.

As the player can take manual control of any of their own ships in the game, there is the problem of what happens when taking control of a Squadron leaders ship. Should that leader continue to get experience for ships you destroy?

I don't really want to add a special type of leader character that represents the player as I would like the player to be able to take control of another ship once it gets destroyed.


Much of this is not fully implemented yet, so would very much like to hear your feedback and suggestions!

Friday, 6 December 2013

Galaxy Map

The past month I have mainly been working on the galaxy map screen to make it more informative but still trying to keep it very minimal.

(150 planets, 1 player, 3 AI)

The sector icons are now colored to show the different planet types. Surrounding each planet there are small circular icons to show if there are any ships in that sector. (green = player, red = enemy, blue = allied, white = neutral) 

It hasn't been implemented yet, but you will be able to hover the mouse over the ship icons to display the number and class of ships at the planet. Hovering over the planet icons will also show more information about them.

(25 planets, 1 player, 3 AI)

The jump-gate links and borders are colored based on the owning factions relations to you.

There may be more than one enemy/ally that will show the same colored border and jump-gate links. So to distinguish each faction, the smaller circle at the center of each planet icon will be used to show its unique "faction color".

However this is not shown in the screenshots as the faction and relation colors are currently identical for testing.

Empire Sphere of Influence

(Very rough sphere of influence style empire maps)

I have also experimented with rendering some "sphere of influence" style empire borders, but ran into performance issues with the really large maps. I think it maybe covers up too much of the screen, hiding all the stars in the background which look nice as you move around the map. (the stars use 3D positions)

I have abandoned this approach for now, in favor of the smaller overlapping borders you can see in the first two screenshots.

Planet Colors


Colors used for each of the different planet types have been tweaked slightly. Volcanic was difficult as the planet graphics are limited to just one color and no detail. (lava or rock?) 

Each of the types (Temperate, Desert etc.) have a few variations so they won't all seem identical.

Miscellaneous

  • Galaxy generation code completely rewritten (now cleaner and more efficient)
  • Probability distribution working properly for planet types, bonuses and trade goods
  • Detailed galaxy log created during generation with lots of statistics (using for balancing)
  • Started on the high level AI for factions (aware of all the objects and territory they control)
  • Initial design work done for the different government types 

 

Bonus Screenshot

(The leftovers from a large cruiser battle)

Sunday, 3 November 2013

Ship Graphics

Sorry for it being such a long time since the last Galaxial development log. The game is still very much in development and will be released. (but please don't ask when!) :)

The last few months I have been working hard on creating new ship graphics content for the game and just generally tidying up the engine, fixing bugs, optimization and polish so that its ready for the next stage of development. (AI)

Ship Screenshots

I have a few screenshots to share so you can see the new graphic style for ships. Very pleased with how much improved they now look compared to the older ships. Have had a lot of practice using Adobe Illustrator since then!

I'm not sure on the exact numbers yet, but the plan is to have roughly 4-5 ship designs per class (Frigate/Cruiser/Battleship etc.) More will likely be added over time once the game is released. There is a huge amount to make, so I'm having to spend a lot less time coding while being in artist mode.

(Dreadnaught. The largest class of ship that will be in the game )

(Battlecruiser showing one of my favorite color customization combinations)

 (Few of the smaller cruiser sized ships with darker hull and green trails!)

(Transport ships near some wreckage!)

Customization

The color customization options for ships are now slightly different than before because of the new way they are created.

Ship hulls can only be various shades of black/grey/white. There are no limitations for the colored panels which will use your faction/team color of choice.

The turret lights which become more visible as you zoom out, use faction relation colors. So enemy ships will show red turret lights, blue for allies, white for neutral and green for the player. Colorblind settings are also available.

Turrets

You might have also noticed the new turret graphics, although only one type is shown in the screenshots. There will be unique graphics for all the weapon types (Artillery/Railgun/Laser/Missile Launcher etc.) and they come in 3 sizes (Small, Medium, Large)

Each ship can only fit a certain size of weapon and it should be clear the amount of firepower enemy ships have just from looking at them.


You can also follow me on Twitter for more regular updates about the progress of the game.

Tuesday, 2 July 2013

Population Graphics and Fog of War

A few of the latest features I have been working on since the last development log.

Planet Population Graphics

Finished creating some additional colony graphics to show roughly how large the planet populations are. The graphics change based on the current colony population in relation to the maximum it can support.

It starts off with just the colony infrastructure visible where the facilities are built in the center. Then at 20%, 40%, 60% and 80% of the maximum population it will grow outwards an extra zone.


The textures are very large (uses a lot of GPU memory) so I dont think it will be possible to make seperate versions for each faction with the same color customization system that is used for ships.

You can see a giant screenshot version here which shows how smooth everything looks in-game. (4096x4096 size image, 10MB)
 
Population Growth

There are many factors that affect the colony population growth rate including:
  • Colony happiness
  • Tax rate
  • Food surplus/shortage
  • Luxury resources
  • Researched technologies
I'm not sure yet whether you will be able to use passenger ships to move migrants between colonies, but am aiming to have the colonies take quite some time (in-game) to reach their maximum size through normal growth.

Fog of War

Did some experimenting with fog of war by making each ship have a limited view distance. (similar to most RTS games) I didnt think it looked quite right for Galaxial and was rather annoying not being able to see the whole battles taking place.

So I have decided to use a system where you only need a single ship in a sector to reveal the entire area, rather than revealing smaller areas around each individual ship.

(Previously explored sector now hidden by shroud)

Once you no longer have any ships or a colony in the sector, then it will become hidden again and covered by shroud. Asteroids, jumpgates, wreckage and the colony will remain partly visible based on what was there the last time it was visited. If you return after some time you may find it has changed or some things have disappeared.

I will most likely add a new specialized ship type that can be used for scouting and exploration. They will get a cloaking module bonus to help them remain hidden. Destroyer class ships will get bonuses to detecting the cloaked ships. 

At the start of a game all sectors will be hidden on the galaxy map until they are explored.

(Explored sectors visible on galaxy map)

For the moment I have left all the background stars and glowing areas visible on the galaxy map from the start. It looks nice but think it will make it a lot easier to predict where everything is in relation to your starting position. So may have to hide more of the background stuff until the nearby sectors get explored...

Ship Modifiers

Made a few changes to some of the ship modifiers for balancing reasons and added some extra ones.
  • Energy Leech (Drains energy from target ship and adds to its own)
  • Energy Leech Resistance (Reduces effectiveness of energy leech modules)
  • Decelerator Resistance (Reduces effectiveness of decelerator modules which slow the ship)
There is now just one generic damage type rather than being seperated into explosive, electromagnetic, chemical types etc.. This is to make it simpler when designing ships and reduce the need to equip so many modules that add protection from individual damage types.

Added a stacking penalty for when you equip modules that affect the same attribute. This is to make it impossible to get really overpowered ship stats or becoming immune to damage.