Over the past few months, we’ve been designing Predestination’s main races and working on core gameplay mechanics like ship design, tactical combat, galaxy generation, and planetary colonisation. A lot of really cool features are now in the game, but it’s difficult to show how they work without a user interface, so this month we’ve been working on building a solid UI framework into the game engine and rolling it out on the galaxy map screen.
Our goal for the Galaxy Map is to make it look and feel like an advanced astrometrics lab, with all of the information your race has about the galaxy at your fingertips. We want you to be able to do most of your turn-to-turn empire management without leaving this screen, and to be able to immediately tell what’s going on in the galaxy by keeping an eye on the map. When designing the Galaxy Map interface, we had a few rules in mind:
- Every window or information pane should have a specific place in the UI, so that your screen doesn’t become a mess of open windows.
- The player shouldn’t be overwhelmed with information. Information should only appear when necessary and text should be kept to a minimum.
- The UI must be scaleable and easy for players to mod.
- Every UI element has to have a smooth animation or transition and a corresponding audio cue. The audio is not currently in the game, but placeholder cues have been inserted into the code for every action.
The past month has been jam-packed for the Predestination crew. We made a lot of progress with the fleet combat part of the game, designed our first reptilian race (The Sauros), and hosted work experience weeks for two students aiming for careers in the games industry. We also moved to a new house with more office space to work in and applied for some government funding to help your pledges stretch further.
Update notes for fleet combat:
- Added projectile weapons such as mass drivers, with their own graphical effects.
- Added dumb missiles that travel to the target hex and explode, or explode early if they enter a hex with another ship or object in it.
- Implemented smart missile AI that locks onto a ship and follows it, avoiding obstacles.
- Added interceptors. They use the smart missile AI and attack the target ship every turn until destroyed.
- Implemented area-effect weapons (smartbombs, area missiles).
- Implemented proximity mines and cloaked proximity mines.
- Created some basic explosion effects with screen shake, and a timing system to synch explosion graphics and screen shake with sound effect volume.
- Implemented a module system that lets us create interesting non-weapon ship technologies. Modules added so far include: Holographic Projector Matrix (creates decoy holographic ships), Afterburner (double movement for one round, then takes a round to recharge), Shield booster (consumes movement points to boost shield hitpoints), Cloaking device (ship is invisible until its next turn, but then takes a round to recharge).
- Fleets can now engage each other in the galaxy view, which switches to the fleet battle screen.
- Ships can now retreat from combat. They will wait for one full round without moving or attacking and then warp out.
- Combat now detects the winner when one side’s ships are all destroyed or warp out.
- Ships destroyed in combat are now removed from the galaxy view.
In last week’s development update, I showed recent work on the planetary colonisation that made the exploration grid visible from orbit. This week I updated it so that you can even direct your exploration efforts from orbit and developed a new resource distribution algorithm, but I ran into a small problem: If you add in enough resources to keep exploration interesting, you’d end up with a ton of colonies to build on each world. To solve this problem, I decided to try out a new system inspired partly by Civilization. Read More
Last week Predestination officially succeeded on Kickstarter! Thanks to a huge push in the last few days of the campaign, we managed to hit over double our initial goal and smashed the three biggest stretch goals. We’ll now have a full singleplayer story campaign, play-by-email and full online multiplayer for release.
We’ve decided to wrap up the campaign in the same spirit of transparency that we intend to keep up during Predestination’s development, so I’m releasing a ton of stats that are normally kept for the project creator’s eyes only and discussing some of the lessons we learned throughout the campaign. This kind of info from previous projects was invaluable when I was researching and putting together this campaign. I posted this originally as a Kickstarter update, but am posting it as a blog post so it can reach more future Kickstarter project creators. It’s a bit of a wall of text, but hopefully future Kickstarter creators will find it useful!
(More updates on the way)
There are some big announcements coming in the next week or so for Predestination, but until then we have some new screenshots of the game in action. These screenshots show the three main parts of the game: Galaxy Management, Planetary Exploration, and Tactical Fleet Combat. All three areas are still work in progress, but they’re really starting to come together. Read More
The Predestination team gained three new members this week: a new concept artist, a 3d modeller and a composer have officially joined the crew. The artists have been working on new animated buildings for the colony screen this week, and our composer has been producing some awesome sci-fi music for the game. I’ll properly introduce the new and current members of the team in my next update and can hopefully show you some of their handiwork soon.
This week we’ve been working on fleshing out the designs for the races we plan to have at launch, and I’ve been implementing a hex-based planet exploration system to go with the hexagonal colony system described in the previous update. Players now have to explore outward from the starting colony as you can only explore hexes on the border with unexplored areas. Exploring a tile reveals what’s on that tile (if anything) and pushes your borders back, letting you see what all the surrounding squares look like. Below is a screenshot of the new system in action: Read More
I haven’t posted an update in a while, but rest assured I’ve been making a lot of progress on ship combat system. Ships now have armour, regenerating shields, structure hitpoints and weapons; they can shoot at each other and destroy each other. I’ve also implemented the reactive strike system that lets ships fire when an enemy flies through their firing arcs and players can hit a button to highlight all the squares the enemy’s reactive strikes cover so you can make tactical decisions quickly. There are firing animations for beam weapons and projectile weapons, which I’ll put a video up of once I’ve built the hotbar user interface to show it off properly. Below is what I’ve been working on this week: Read More
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
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
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