Fleet combat hex system first prototype

This week I’ve been working on the fleet combat system for Predestination. When all of the core mechanics are implemented, we’ll be releasing this as our first beta test to get some feedback and improve it. Fleet combat is an important part of a 4X game, and it will have to be iterated on extensively to make it as awesome as possible. Our goal is to create tactical turn-based combat system that’s more like a game of chess than an RTS. We’ve already tested the movement and combat mechanics with a pen-and-paper prototype, and this week I started putting it all in code.

It doesn’t look very pretty yet, but I want to show you what I’ve got so far. I’ve finished the hex grid system and ships can be placed on the grid and rotated to face any of the adjacent hexagons. All ships involved in the combat roll initiative and then take their turns in order. For moving ships, I developed an efficient recursive algorithm that determines the shortest route to a hexagon based on the three simple rules below:

  • Moving into any of the three forward squares costs 1 move point
  • Turning by 60 degrees costs 1 move point.
  • Two ships cannot occupy the same square

The result produced the exact pattern that my prototype design predicted: Read More

Tactical space combat: A prototype design

My original plans for tactical space combat in Predestination involved making a good attempt at turn-based 3D combat, which is something no game has done well yet. I had intended to make line-of-sight mechanics and area effects a big part of the gameplay, but every combat would have quickly become a chaotic mess. Our main goal with Predestination is to bring proper turn-based strategy back to 4X games, so after discussing the idea with the rest of the team we decided to use a classic 2D combat plane on which tactical decisions are much more obvious.

I started prototyping the combat system last week with a chess board and some coloured squares, but I quickly ended up with pages of complicated rules and movement/attack tables. The Art Director suggested a hexagonal grid and we quickly hashed out a very simple, intuitive system using that grid that we’re all very happy with. We prototyped the system using a big hexagonal gaming mat and paper cutouts and ironed out all of the flaws we could see. The end result is a tactical combat system I’m really excited about: Read More

3D ship designer and ship customisation

One of the things I’m particularly fond of in 4X games is custom ship design, both for cosmetic and gameplay reasons. There’s something special about designing your own ship setup and then testing it out in battle, and I really want to capture that magic in Predestination.

To achieve that, I’m developing a 3D lego style ship designer in which you slot together pre-made blocks to create your own ship designs. Most of the blocks will be purely cosmetic, but some will affect gameplay. You’ll add modules like shield generators, thrusters, weapons, armour plates etc to design your own custom loadout. You’ll also be able to research special mount blocks that give certain module types bonuses or modify their operation in some way, like long range or point defense mounts for weapons. A mock-up of the system is below: Read More

Dev update: New planet exploration features

I got to work on the planet exploration a bit more this week, and added in a lot of the planet exploration features I described last week. You can now queue up as many scout missions as you want and they will be executed in sequence. When a mission starts, it takes an energy cost from the planet’s reserves, and if that energy isn’t available the mission will wait until you have enough energy before starting. You can now delete scout missions, and they are now sent from the nearest settlement you own for reduced travel time. Below is a video showing some of the new mechanics: Read More

Taskbar system and modular system windows

Every 4X game has a way to notify the player when something happens that requires his attention. Games will typically have a turn summary page reporting anything important, but I want a more direct visual notification that isn’t just a text list. The idea I’ve been prototyping this week is a taskbar that runs along the bottom of the screen and alerts the user to tasks that require their attention. If a planet has a building that needs to be placed or a problem that needs to be fixed, or if a discovery is made or a scout finishes surveying a planet etc, a small icon relating to the event will drop down into the task bar. When clicked, a window would open explaining the notification and with a shortcut button to go directly to the screen/window that will let you deal with whatever the notification is for. Either that or clicking the icon might bring you straight to the source of the notification.

For example, you could start building a colony ship and check a box that says you want to be notified when it’s complete. When it’s built, a little ship icon would drop down and land in the task bar. On clicking the icon, a small ship/fleet window would open and you could immediately give the ship orders. Similarly, if a survey mission on a planet completes, a notification could immediately appear in the taskbar and open the planet or solar system when clicked.

I got some great feedback on what type of system window to use, and have decided that a small self-contained window is the best option. This week I developed a modular window system that keeps track of all the windows that are open and has options to resize, close and minimise to the taskbar. The game now supports having multiple system windows open, which might be handy if you need to keep track of or compare multiple  systems. The video below demonstrates both the modular window and taskbar system: Read More

Working on a trailer

I’m working on a trailer this week, so I’ve been programattically composing scenes in my engine and will film them when they’re done. The scenes all run in realtime so I’ll also be able to keep them in the final game as an intro. I’ve had to clean up the back-end code and build some new tools for this, but I’ll be able to use the new tools for other things like space combat and cutscenes. Below is a quick sneak peek at part of one of the scenes, which uses a new planetary ring system I developed today. The ring is actually drawn to the background, so I could add a lot more detail without slowing the game down at all. I may add more types of rock and ice asteroid, and make the whole thing much bigger or the individual asteroids smaller. I just thought the ring was too cool not to share. Read More

Planet graphics update

I came up with a new terrain shading technique that combines some clever texture packing tricks with normal approximations in the pixel shader to produce some awesome results. The lighting on the terrain is now extremely highly detailed, and zooming down onto the terrain looks perfectly smooth. I can also feasibly add more lights for particular buildings or the cursor to make some awesome effects. Below are a few screenshots of the current work in progress: Read More

Planet view and placing buildings

Most of this week’s work on my space 4X game has been in putting together a good system for placing items like 3D models of buildings on a planet’s surface. Part of the difficulty is in the fact that the planet graphics are generated entirely on the GPU, so the CPU doesn’t have access to that data. I came up with a fantastic system that works around that issue and gives access to not only height data but also details like what type of terrain is on a particular spot or whether it’s in an ocean.

So now I can place buildings on the surface of a planet, zoom out, rotate the planet and the building appears to stay put on the surface. When placing certain buildings like a water extractor, I can make it only placeable on water or make it fulfil any other criteria I want. I could make mining drills that you move around to find the best spot, or geothermal power stations that can only be placed on fault lines. There’s a lot of versatility in the system, so it’s been fun to work with this week. Read More

http://www.youtube.com/watch?v=oRVbvG-TpJc Predestination 4X game Galaxy Map: System window demonstr

Predestination 4X game Galaxy Map: System window demonstration

Please watch fullscreen (1080p available). The video’s a bit darker and a lot blurrier than the actual game because YouTube is bloody awful at encoding videos, but you get a clear enough idea of the effect in fullscreen. Read More

http://www.youtube.com/watch?v=_QCmvsKSXic A video of the 3D galaxy map for Predestination. Please w

A video of the 3D galaxy map for Predestination. Please watch it in 720p fullscreen, otherwise a lot of important small details like the lines between stars and the galactic plane are lost. Read More