Bug fixes
- Windows build accidentally had God Mode enabled. My thanks to Hov for the bug report.
Follow the development
New features
- Rewrote the fleet spawn system (my thanks to Gimpel for some exciting save games, one of them had 104 fleets in a single sector). This allows fleets to correctly reinforce contested sectors, and addresses several bugs.
Bug fixes
- Sectors can now have more than 9 fleets contesting them.
- A player will now always be able to enter a sector, no matter how many fleets are contesting it.
- Contesting fleets will keep jumping into a sector whenever there is space available, fixing an issue where fleets were seemingly idling and not assisting in battle.
- Fleets spawning should no longer overlap existing ships. This could lead to ships getting stuck or being instantly destroyed.
- Fixed various serialisation issues which could cause odd behaviours and crashes in Infinite War.
- Message boxes will no longer spawn on game/engine warnings, only on fatal errors.
- Models were being incorrectly clipped when the camera was at its maximum range (the range is dynamic, so this would only happen with the highest end artillery weapons and increased range perks)
- Various engine improvements to better support ultra widescreen resolutions.
Follow the development
Balancing
- In the Infinite War game mode, it was possible for enemy homeworlds to spawn too close to the player's homeworld. As enemy fleets will spawn from a homeworld, this could very quickly lead to a loss. The galaxy generation has been adjusted and enemy homeworlds now have a minimum spawn distance.
- The Hegemon faction (green) had the wrong loot table associated with them. They were dropping far worse modules than intended, and should now drop modules in line with their role as an end-game faction.
Bug fixes
- The Linux build could fail to launch in certain situations where the steamapi.so hadn't loaded. This should now be fixed.
- Fixed two shutdown crashes, one with the sound system and another with the Module code.
- Removed a couple of references to the old "Resource Units".
Follow the development
Bug fixes
- Fix for an issue on Windows when window scaling was in use where the mouse cursor would be clamped and unable to reach the bottom right of the screen.
- Fixed a crash when all the ship's modules were removed when in the shipyard.
- Fixed a rare crash in very large battles where the number of projectiles was hitting a hardcoded cap.
Follow the development
Bug fixes
- Fix for an issue on Windows where window scaling was set to 125% or above. This would cause the game window to be significantly larger than it should, cropping the UI and causing very low quality rendering. My thanks to player Midnight for helping me identify the source of this one.
- Fixed a crash when exiting the game while the tutorial was on-going.
- Fixed a crash after leaving a game to the main menu, and then starting a new game.
- Fixed multiple crashes when force-closing the game (e.g. Alt-F4).
Next steps
The next few patches will focus on general stability and engine improvements. There are still several known issues (such as problems with ultra-wide screen support, the ship's capacitor regeneration calculations being off and a few crashes) which need to be addressed, and the game's logging needs some attention so I get better information when players experience a crash or have issues. I've got the basic design for the next game mode (Hyperscape) in progress, but there are general improvements which I want to do which will benefit every game mode, most notably to the AI and environment diversity.
Follow the development
It has been a long time since Hexterminate has had a release, and given the size of the changes I think it justifies a 2.0 release! There is a lot more to come, but I wanted to draw the line somewhere and give players a new version. If youd like to join me in Discord, Ive created a new server where Ill provide regular updates and discuss any issues you might find.
Hexterminate is now free and open source!
The game has had a good run on Steam as a paid product when I released it several years ago, but I have decided to make it free for anyone to play. Hexterminate is a hobby project, and I am financially in a better position now from my day job than when the game was originally released. If you are one of the original players, you have my deepest thanks for supporting me. This lets me put the game out there for anyone who would like to play it, and make the source available. If youre a developer, youll find the source and instructions on how to compile it in GitHub.
Native Linux and 64 bit support
The engine has undergone substantial changes and now supports Linux natively, as well as being a 64 bit executable. This was a considerable undertaking as Hexterminate doesnt use something like Unity or Unreal, but a custom engine which was developed over the course of the years and which was only targeting Windows. As Hexterminate never played well with Proton / Wine, this is the first time the game is available to players on Linux.
Resource and fleet overhauls
Previous to Release 2.0, you could purchase fleet ships by using generic Resource Units, which were gathered by conquering sectors and completing objectives. These fleet ships were ephemeral: if a fleet ship got destroyed during a battle, youd have to purchase it again. This meant that there was little point in purchasing ships, as the more expensive ships required large amounts of RU to purchase and in more demanding fights you were all but guaranteed to lose one or more ships. This meant that most players just ran a single ship (their own). These systems have been changed significantly, and now Resource Units are known as Influence. Influence represents your characters weight within the political structure of the Empire, and grows steadily as you keep supporting Imperial objectives. This Influence is still spent to requisition ships, but these ships are now permanent and will be restored to your fleet even if they are destroyed in combat. If you find that a specific ship is not a good match for your fleet, you can return it and its Influence cost will be fully refunded, giving you more freedom to experiment.
Energy changes
The ships Energy stat was used in a few different ways: To control how many shield modules your ship could have: each reactor would provide a certain amount of Energy Recharge, which would in turn be consumed by the shield generators. Your ship couldnt undock if the shield generators were consuming more than your Energy Recharge would provide. To moderate how fast you could fire your weapons and activate your modules. Your ships Energy would recharge over time, and that energy would then be consumed when you fired a weapon or activated an addon. This was quite muddied and not particularly well explained. To avoid overloading the term Energy, the behaviour is now split into two separate stats. Capacitor: this is the energy which is available at any given time for weapons and addons. It recharges over time (based on the Capacitor Recharge stat) and is depleted when you fire a weapon or activate an addon. Energy Grid: this is your ships underlying power production which is necessary to upkeep all of the ships non-combat functions. Shields, engines, etc use your Energy Grid to stay online, and your ship cannot be undocked if youre attempting to use more of it than it is available.
As a result, the Reactor modules have been changed as well. They now all provide a certain amount of Energy Grid, and now come in three different types depending on what your Capacitor needs are: Plasma reactor: these provide the most balanced split between Capacitor Storage and Capacitor Recharge and are ideal for fast firing weapons. Solid-state reactor: with significantly higher Capacitor Storage but lower Capacitor Recharge, this type of reactors benefit slower-firing weapons that need more energy per shot, such as artillery modules. Anti-matter reactor: sometimes you really want the benefits of both. Ship space is at a premium, after all. Anti-matter can solve all your problems, with the slight issue that you really, really dont want a containment breach on your anti-matter reactor. These reactors explode violently when destroyed, and can chain with each other, potentially taking out your entire ship.
In general these changes make both ship construction easier, and combat more intense, as some well-placed shots into an exposed anti-matter reactor can all but take a ship out.
Additional UI updates
The Fleet Management window has been rebuilt using the new user interface system. Its considerably cleaner than the previous one, and highlights any missing requirements which prevent the player from requisitioning a ship.
The Shipyard Stats section has been rebuilt as well, and considerably expanded to provide the player with more information about their ship. Long-missing stats such as the ships top speed and agility are now visible and provide immediate feedback as you change modules.
Perhaps surprisingly, calculating these navigation stats was significantly challenging and part of why they had never been visible before. But now that theyve been correctly calculated rather than just left at the mercy of the physics engine, it opens the door to improvements to the ships AI as well.
General stability fixes and polish
There have been a large number of stability fixes (lots of crashes!) as well as various rendering issues. This includes a fix for a very embarrassing issue with the loading system which I hadnt noticed as I was running a development build. To assist with tracking further issues, an automated crash reporter has been integrated into the game.
Follow the development
Bug fixes
- Fixed a crash when accessing the Fleet menu.
Hello everyone. This build contains substantial engine changes ahead of a public Linux build and these changes touch many parts of the game. If you find a bug or a crash, please jump on the forum and let me know!
Additions
- Added new Codex to the main menu, with descriptions of the various modules and factions.
- Added vignette post-processing effect.
Changes
- Upgraded post-processing pipeline, which is more performant and allows for improved effects.
- Re-wrote the glow effect, addressing various banding artefacts.
- Split audio system into Windows and Linux implementations.
- Now using cross-platform implementation for identifying the resolution of the current screen.
Bug fixes
- Fixed several rendering issues which could result in the game presenting a black screen.
- Fixed various stuttering issues by adding a dedicated loading screen between the intro movie and the main menu.
- Fixed several memory leaks.
With holidays and birthday season out of the way, its time to let you know whats been happening in HEXTERMINATE land.
Engine upgrades
Linux support & Proton
Being stuck on holiday with a laptop that only runs Linux Mint, I thought Id try to get the game running on it, as the majority of the code was meant to be portable anyway. That was the theory. In practice, it required quite a substantial amount of work to get the game compiling, nevermind actually running. Right now it does run and it is playable, although there are some graphical artefacts and sound doesnt work. However, this led to some interesting discoveries which will affect everyone, leading to better performance and fewer memory issues. Currently, native Linux support is scheduled for Build 19 (so, not this one but the one after), but the many fixes that have been done to the engine will likely allow the game to be run through Proton in Build 18, rather than just displaying a black screen.
Post-processing chain
While working on Hyperscape, one of the issues Ive run into is that some of the post-processing needs to be disabled in certain circumstances so the screen remains readable and doesnt display banding artefacts. It wasnt actually possible to toggle effects without a restart, so the post-processing system has been re-written. This will also allow players to toggle individual effects from the settings screen, while improving overall performance.
Since I was in the area, Ive improved the glow effect (used by engines, shields, projectiles, etc) as it had various issues, as well as adding an optional vignette effect.
Resource loading and stuttering
Depending on the hardware you have, when starting the game the initial movie would stutter and you might see various frame drops when starting to play. This was due to a background thread which was busy loading resources, but might cause stalls for one reason or another. The loading has been changed, with a loading screen now present between the initial movie (which can now be skipped) and the main menu. This results in a slightly longer time between starting the game and getting to the main menu, but addresses all stuttering issues caused by resource loading.
The Codex
All the functionality needed for the Codex is in place and Im just adding articles to it at the moment. Its quite good to have this in-game, as it has been in my wishlist for a long time. The Codex will be part of build 18 and will progressively expand as more content is added to the game.
Hyperscape
Work on Hyperscape has started, but its still a little too early to share screenshots. The current work on that front is focusing on the Hyperscape visualisation itself and we should be able to share more details for the next post! In the meantime, however, we've received some new artwork for the Hegemon faction:
Next steps
Build 18 is currently scheduled to come out early next month. Due to the number of engine changes it needs more in-depth testing than usual, to try and ensure no regressions are introduced. Personally I'm quite looking forward to getting the Linux build published and to do more work on Hyperscape. This will likely lead to an experimental branch where Hyperscape will be active, so people can try the new mechanics and provide feedback as the mode is developed.
Overview
Hyperscape will be a new game mode and is where the long term development of HEXTERMINATE will take place. In a way, Hyperscape is HEXTERMINATE 2, building on the pre-existing foundations, but freely available to anyone who has purchased the game. Rather than a structured campaign, it takes a turn towards the roguelike style. The player takes a fleet from Real Space into hyperspace, exploring that realm rather than just using it as a convenient way to travel. This space, called the Hyperscape, is a realm of constant change and inhabited by unshackled AIs. The player starts in a sector and once the sector is cleared, they can choose one out of a few different sectors to progress towards, taking them deeper and deeper into the Hyperscape. To assist the player with surviving in this challenging environment, the Empire also sends a jump capable space station. The player's progression is only saved when they dock with the shipyard, so they need to balance how confident they are with the risk of losing their ship. There is no final sector: the player can always keep going, with the difficulty and the quality of the gear increasing without a hard cap. The loot will be revamped, allowing for a greater diversity and giving the player the ability to create modules with the modifiers they want.
Tannhauser Station
Modules
In Hyperscape, rather than just having a single Shipyard where the player can customise their ship, there will be a much larger Station containing multiple modules which can also be individually placed, providing another progression avenue. Station modules are intended to be very expensive, with each being a significant resource investment. As you explore the Hyperscape, you'll find quieter areas where you can call the Station to jump to. This will allow you save your progression and modify your ships as you navigate deeper into the Hyperscape. Let me give you a break down of the modules you will be able to build your station with.
Tannhauser Station Core
The station's large central module, to which all other modules must be directly or indirectly connected. It houses a large jump core, allowing the station to move in hyperspace.
Shipyard
Allows for ships to be built. The Station starts with three shipyards: one for the player and two for companion ships. These shipyards are limited in the size of ships they're capable of making the amount of Manufactories the player has built. Unlike the stock version of the game, the player can cycle between multiple shipyards and customise the other ships in their fleet.
Manufactory
Increases the Class of ships which can be built by a shipyard. There are four types of Manufactories:
- Gunship Manufactory
- Battlecruiser Manufactory
- Battleship Manufactory
- Dreadnought Manufactory
Fabricator
Required to craft new modules. Modules are crafted instantly if there are sufficient resources, but the number of fabricators necessary increase based on the level of the desired module. Fabricating modules is resource intensive and the main way for players to assemble their ship will still be by looting modules from destroyed ships. However, this provides the opportunity to build ships exactly as desired, filling gaps (e.g. needing one more shield of a particular type) or creating modules with specific modifiers once you're deep in the Hyperscape. Fabricators can only build modules which have been previously research by Research Labs.
Research Lab
Allows for new modules to be researched. Researching a module destroys it in the process, but makes it available for bulk construction in a Fabricator, as well as any properties it might have. For example, if the player finds an Armour Piercing 800mm Artillery and researches it, they will be able to build 800mm Artillery modules on demand, as well as adding the Armour Piercing property to other projectile weapons. So if they were capable of fabricating a 200mm Autocannon, they can now also fabricate an Armour Piercing 200mm Autocannon. Researching a module takes time, and this time increases substantially with the level of the module. Multiple Research Labs reduce the research time.
Resources
In the Campaign or Infinite War modes there was a single resource, the generic Resource Units. These were used for everything, from adding ships to your fleet or placing starforts. These basic Resource Units are gone, being split into four different types of resources, which are used for crafting modules, expanding your mobile shipyard and saving progression.
Common metals
Iron, copper, aluminium and similar metals are the essential building blocks for the creation of any module, either for a ship or a space station. These are often combined into various alloys and used in a module's super-structure. These basic metals can be found anywhere in the Hyperscape, although the amount retrieved increases with how deep you are.
Rare metals
Gold, platinum, tungsten, palladium and other unusual metals are widely used in modular construction, anywhere from armour plating to the delicate, high density field projectors used in shields or scanning arrays.
Helium-3
This light isotope is consumed in vast quantities by the station's fusion reactors to power the staggeringly large Jump Core that allows the Tannhauser Station to jump deeper into the Hyperscape. It is also used to power the station's Extruders, and therefore a requirement for creating custom modules.
Coherency core
A very rare resource which is used in manufacturing high end modules with certain variants. Coherency cores can't be created by the Empire and have to be recovered from the AI ships you destroy.
The next steps
This article has hopefully given you an idea of what I'll be building into HEXTERMINATE in the long term. The initial design is established, some art work has been commissioned and the programming has started. Although the Hyperscape game mode won't be available for quite a while, general improvements will keep being made to the base game. The next public update will include the Codex, which has long been on my to-do list. It provides information about the various module types and factions in the game and will in time be extended to contain the Hyperscape specific entries.
Time allowing (there are a lot of entries to write!) there will also be some engine fixes and a few new soundtracks. Thank you for reading, and if you'd like to chat about HEXTERMINATE and where Hyperscape is taking it, feel free to join my Discord server.
Additions
- The main menu has been replaced with the new User Interface.
- The player ship can now strafe, using Q and E.
- There is new Navigation perk, Thrust Vectoring, which increases how quickly a ship moves sideways and backwards.
Changes
- Dodging when using the Evasive Manoeuvres perk is now achieved by double-tapping Q or E.
- Dodging left and right no longer have separate cooldowns.
- Dodging has had the engine thrust multiplier reduced from 3.5 to 2.0. This should still allow to you to dodge incoming fire, but should make lighter ships with a high engine-to-mass ratio easier to control.
- The perk Reverse Thrusters has been removed, which allowed your ship to move backwards. This really shouldn't be locked behind a perk and is now part of the ship's basic controls.
- The main combat playlists have been unified. Previously you'd get separate playlists depending on which ship you started with, but this meant you would never have some of the songs play.
- You'll find some UI buttons are greyed out, such as Hyperscape or Codex. These will be enabled in future updates, the work goes on!
- Now using a more recent version of Visual Studio, which has allowed me to simplify certain areas of code and will make it easier to port HEXTERMINATE to Linux.
Bug fixes
- Fixed a rare hang when a faction attempted to spawn additional shipyards.
- In situations where the player had more than one graphics card, it was possible for the wrong card (e.g. the integrated graphics card) to be chosen. This would greatly slow down the game and should no longer occur.
- Fixed a bug where the player ship would fire once when entering a sector.
- Due to the new UI for the main menu, having a large number of save games should no longer cause them not to be selectable from the "Load Game" window.
- Fixed several memory leaks.
Community Discord server
This should definitely have happened a long time ago, but I've created a Discord server for HEXTERMINATE, as well as general games development and programming. If you'd like to have a chat and discuss where the game is going, join our Discord server here.
A new User Interface
It is one of those things which are inevitable in software development: mistakes are often obvious in hindsight. If we go back several years, I decided that writing my own User Interface library was a good idea. This was a valuable experiment in a number of ways, providing valuable insight into the complexity of such a system: how do I bring fonts in? How does input need to be implemented in a multilayered system? What about popups? How difficult can it be to get the text in a text box wrapping correctly? If I was just making an engine for fun and experience, that decision would have been fine. However, since I was actually trying to ship a game with it, that was a mistake. This mistake was further compounded by a reluctance to upgrade the UI system to allow for dynamic reloading, which meant that building and tweaking interfaces was very time consuming. However, with HEXTERMINATE staying in development for the foreseeable future, there will be a substantial amount of UI work that will have to be done. For my sanity, Ive decided to finally bite the bullet and layer a more advanced system on top of the current UI, allowing me to modify new UI elements on the fly and store the design as a JSON file. This has allowed me to fairly quickly iterate on the main menu, bringing it to a much higher standard. Heres the original main menu:
And heres the new one:
Modifying a shipped product
Since HEXTERMINATE has already been released, there are some considerations as to how new, large updates are handled. I could write the new UI from scratch, but that would mean no updates for a long time, as all the pre-existing user interfaces would break and they would all have to be re-implemented before a new build was made available to the public. Instead, I am building on top of the current system. This will allow me to swap in new UI elements over time, improving the quality of the build over several updates. Writing UI code is also not something I find particularly satisfying, so this split also also helps with managing motivation as I can mix in work from other areas. The disadvantage is that there is clearly the new UI and the old UI, but it is a compromise I find acceptable until the old UI is completely phased out.
A quick look behind the scenes
The old UI was entirely created in code. Each UI panel you see in-game would have a wall of code behind it like this:
m_pBackground = gAllocate( Gui::Image );
m_pBackground->SetSize( backgroundWidth, backgroundHeight );
m_pBackground->SetPosition( ( screenWidth - backgroundWidth ) / 2, screenHeight - 200 - backgroundHeight / 2 );
m_pBackground->SetTexture( pBackgroundImage );
m_pBackground->SetHiddenForCapture( true );
m_pBackground->Show( false );
FrameWork::GetGuiManager()->AddElement( m_pBackground );
m_pDockingText = gAllocate( Gui::Text );
m_pDockingText->SetFont( EVA_FONT );
m_pDockingText->SetColour( EVA_TEXT_COLOUR );
m_pDockingText->SetSize( 340, 64 );
m_pDockingText->SetText( "Press 'F' to dock" );
m_pDockingText->SetPosition( 197, 111 );
m_pBackground->AddElement( m_pDockingText );
Any changes to the UI would require changing the code (e.g. move a checkbox 2 pixels to the left), then compiling the game (which takes roughly 30 seconds) and finally launching the game again and getting back to the place where that checkbox was visible.
As you can imagine, this was very, very time consuming.
With the new UI, spawning a new element and defining the hierarchy is still done in code, but most other things are now done with an in-game Property Editor.
The Property Editor lets me find modify exposed properties (such as position, text, colour) on the fly, without having to go through the modify code rebuild run loop. As mentioned earlier, the final layout is saved in JSON.
Improving ship movement
In HEXTERMINATE, ships have a fairly limited movement range: they are capable of moving forwards and turning. With the Reverse Thrusters perk, theyre capable of moving backwards at a limited speed, while Evasion Protocols provides the ability to dodge sideways on a very low cooldown. Finally, a ship can use Ramming Speed to charge forwards and deal substantial damage on impact. This makes it easy to quickly get into the middle of a fight, relying on heavy armour and shielding while dishing damage. However, there are several issues with it:
- Evasion Protocols is all but essential. Due to the boost amount and very low cooldown, you can move very fast with it and it can lead to some silly behaviours, such as the space equivalent of bunny hopping.
- AI ships which orbit around their target struggle to adjust their distance due to the lack of fine control. And they dont use Evasion Protocols, either.
- Ships that do try to get close have no way to keep to their optimal range. Ideally ships want to keep their targets at the maximum range of their weapons, as getting closer than necessary can bring them into the field of fire of shorter range, higher damage weaponry.
- As Ramming Speed is currently a multiplier on the ships thrust, lighter ships using it can move very large distances in a rather uncontrollable manner.
- Evasion Protocols will now have a single, longer cooldown (rather than two cooldowns, one for dodging left and another for dodging right).
- The thrust multiplier applied by Evasion Protocol will be reduced. It will still be of benefit to heavier ships, allowing those to get out of the way of the way of ramming ships or Particle Accelerators.
- The perk Reverse Thrusters will be removed. The ability to fly backwards will become a core part of the ships movement.
- The ability to strafe left and right will be added, also as part of the core movement. It wont move the ship nearly as fast as Evasion Protocols, but definitely assists with keeping on target.
- A new perk (called Thrust Vectoring) will increase the effectiveness of sideways / reverse movement.
- Using Ramming Speed will be rebalanced for lower mass to weight ratios, making lighter ships easier to control.
- The AI will be updated to use the new improved core movement to better keep distance.
Next steps
A new build will be coming by Monday (21st of June), which will include the work so far in the new User Interface, as well as the changes to ship movement. Changes to the AI will come in a future update, as I am looking into some larger scale changes on that front. The plan going forward is to have a regular release cycle, with an update a month (barring any patches if I notice something important is broken) as well as a blog post so you can see whats being worked at.
Improvements
- Ships can now have an outline surrounding them, helping you identify whether they are friend or foe. This is enabled by default, but can be turned off in the Options screen. The player's ship has a cyan outline, any friendlies are blue and hostiles are red:
- An accessibility option has been added to allow firing turrets to be a toggle, rather than having to hold the left mouse button. This option is disabled by default, but can be turned on in the Options screen.
- The engine has been updated to use OpenGL 3.3 and GLEW, greatly simplifying some of the underlying rendering code. This is not expected to make any difference for the majority of players, but it makes further development easier.
With HEXTERMINATE having been out for a while and the bulk of the issues resolved, it is time to talk about what will happen to the game in the long term. Although the game is has been released, development will be carrying on for a long time to come: HEXTERMINATE is one of my two hobby projects and one that has an ever-growing list of things Id like to do. Before we go any further, let me just make one thing clear: these will all be free updates and available to anyone who has bought the game. So, lets have a look at the backlog for a broad overview of where development time is going.
Engine updates
The engine HEXTERMINATE uses is homegrown and was started a very, very long time ago (a cursory look shows the first copyright notice in it dating back to 2014, but the first files were probably created in 2006 or so). Over the years it has been updated as necessary and chunks have been rewritten to allow for easier development. One of the systems that needs some love is the renderer. Although sufficient for what the game currently does, it is quite primitive and had large chunks of OpenGL boilerplate code which is completely unnecessary nowadays. Previously using OpenGL 2 and relying on extensions, the engine has now been updated to use OpenGL 3.3. This is unlikely to cause any issues to anyone who has bought the game, as most cards this side of 2010 will support it, while considerably simplifying any work which touches the rendering system. These first updates will be available in the upcoming release, Build 16.
Accessibility
Outlines
One of the criticisms the game received when it was released was that it could be difficult to identify which ship was the players, which ones were allied and which ones were enemies. To improve readability, ships have been given an outline to assist with identification.
These outlines will be on by default, but can be disabled from the Options menu for players who prefer to play without them. This feature will be part of Build 16.
Fire control
Weapons are currently split into two broad categories: turrets and fixed hardpoints. In both, the player has to hold the respective fire button. An option will be added in Build 16 to make this a toggle, rather than a hold to fire.
Control remapping
At the moment, all controls are hardcoded. The game uses the classic WASD mapping, mouse buttons for firing, Q and E for dodging and a few more keys for activating the various modules. There hasnt been much call for allowing these controls to be remapped, but its definitely backwards not to allow it. Additionally, as new features are added, having the ability to do so will be a good improvement. Purely from an implementation point of view, this is fairly straightforward. In addition to the remapping functionality itself, there are some changes that need to be done in the tutorials and the configuration needs to be stored and loaded. However, the big issue is the interface to allow players to remap it, which leads us to the next point
User interface
The user interface in HEXTERMINATE is functional, but quite basic in certain areas. Before adding new features which will require either new windows or substantial changes to already existing screens, Im going to spend some time refreshing the UI to make it more functional, readable and easier to implement. Right now it is extremely time consuming to make any changes to the UI: all the elements are hardcoded and any changes require a compile and game restart. This isnt really sustainable (my sanity suffers!) and work has already started on created a better UI which can take HEXTERMINATE info the future. I dont expect the entirety of the game to get the new UI at the same time as there are quite a few different windows, but you can expect Build 17 to start bringing this in.
The Codex
This is something that has been on my wishlist since The Beginning of Time and that, somehow, never actually happened. The Codex will be both a repository of in-game lore and of module information, providing detailed information and giving the player a good idea of whats out there. Not every Codex entry will be available at the start, but the majority will be.
Movement and weaponry improvements
Right now the movement of ships is fairly restricted: they turn and move forwards. If you have the perk Reverse Thrusters your ship can go backwards and the perk Evasion Protocols gives you the ability to dodge. This greatly limits the players ability to keep range, or even to kite effectively. The current plan is to remove Reverse Thrusters entirely, making the ability to reverse a core part of the ships navigation. Additionally, strafing would be added while still keep the functionality of Evasion Protocols. Weapons also need some love. At the moment, there isnt much point for using any type of Autocannon over an Artillery. All turrets snap instantly to their target as well, further limiting the ability of a ship to engage in more interesting tactics. Ill definitely be adding angular rotation speeds to various turrets and intend to explore firing arcs to further differentiate weapon types. Additional weapon variants will also be added to increase the variety of what the player might face, while also opening the gates for meaningful electronic warfare. AI improvements These potential improvements are all well and good, but the AI needs to make use of them. The AI is fairly simplistic and there are many improvements that can be done, both at individual and fleet levels. Some of these changes will make its way to the Campaign, but I dont want to change that too much as it can have a substantial impact on the difficulty curve. Currently I expect such changes to mostly be applied in Infinite War and in a new game mode.
Into Hyperspace
These are very early days, but Into Hyperspace (working title, subject to change) will be the next game mode added to the game. It will provide an endless run, taking your fleet deeper and deeper into hyperspace, into areas controlled by rampant AIs. This is where the more adventurous features will go and where the future of HEXTERMINATE lies. I hope you stay with me for the journey. :)
Fixes
- Fixed an issue where some of the main menu's logic would still be active during general gameplay. This is believed to be the source of some crashes and odd behaviour, such as duplicated player fleets.
- Fixed a bug where the "kill this save" flag was not being correctly cleared.
Fixes
- Infinite War achievements should no longer unlock in the Campaign mode.
- Fixed a stuttering issue introduced in build 13.
Infinite War
After a couple of months of development, the Infinite War update is ready. With it, HEXTERMINATE gains a new game mode with procedurally generated galaxies and brings new challenges to the players.
In this new game mode your objective is to capture the homeworlds of all the factions. To assist you with this, you can boost your defenses with powerful starforts and use probes to keep an eye on the Empire's enemies.
Additionally, you'll find new modules you can customise your ship with:
- Antiproton cannons are a new, devastating weapon type.
- Quantum state alternators work in conjunction with the antiproton cannons, as well as providing a way of defending against them.
- Ramming prows are armour modules which greatly increase the efficiency of the Ramming Speed ability.
You'll encounter them on ships belonging to a new faction: the Hegemon. You can expect the most challenging battles in the game if you're going against them, as well as new mechanics to master.
Changelog
Additions
- New game mode: Infinite War.
- New modules: Antiproton cannon, Quantum State Alternator, Ramming Prow.
- New faction: Hegemon.
Improvements
- The load game screen now displays hardcore games in a different colour if the player has lost their ship.
- The colours of the fleet chevrons in the galaxy view have been updated and should be easier to distinguish.
Bug fixes
- The number of engine modules now correctly contributes towards a ship's top speed.
- Save games in Hardcore where the player had lost their ship can no longer be loaded.
- The popup text for when a player's ship is destroyed in Hardcore mode is correctly centered.
- Fixed the "Demigod" achievement not being unlockable in the expected fashion.
- When a fleet jumped into a sector, they could be seen for one frame before the hyperspace gate animation started.
- Fixed an issue where the hotkeys for activating modules would not keep their order if some of the addon modules had been destroyed.
The Hegemon
The Hegemon are the new faction you can fight against in the Infinite War mode. Their ships are loaded to the brim with the best technology available in the galaxy, making a fight even a single Hegemon ship a difficult battle to win.
And of course, you'll rarely find them alone. Capital heavy, sporting particle accelerators and antiproton cannons, you'll need a balance of maneuverability and firepower to challenge the Hegemon... as well as a ship with equally advanced modules.
The galaxy in Infinite War
The galaxy is somewhat different in Infinite War than in the normal campaign mode, with new options and challenges for the player. The objective is still to conquer the galaxy (of course!) and this can achieved by conquering the homeworlds of each faction. Expect a more challenging battle than normal in these homeworlds. One of the things which has been changed is that in this game mode, the Empire is no longer omniscient. The vast majority of the galaxy is covered in fog of war, and it is only through exploration and conquering additional sectors that more sectors are revealed.
To assist you with this, you can now choose to deploy hyperspace probes. These provide permanent surveillance of surrounding sectors, giving you an early warning about forces encroaching on Imperial space. Additionally, you can also deploy starforts. Starforts are massive, static structures equipped with high-end modules, providing the Empire with a defensive anchor which is extremely difficult to dislodge. Well-placed starforts on contested borders can change the tide, keeping Imperial space reasonably safe and freeing you to tackle other fronts.
Ramming speed!
One of the issues HEXTERMINATE had in the past was how powerful the ramming ability was. The Marauders in particular are keen to ram your ships and it was not uncommon to see capital ships get skewered by small marauder ships. This was changed in order to make the early/mid-game more welcoming, but with the desire to bring the ability back to its original level in certain cases. To achieve this, a new module has been added: a ramming prow. Ramming prows are armour modules with a somewhat reduced armour rating but which deal substantially more damage during a ramming manoeuvre, while suffering very little damage themselves.
These modules are currently only installed in Hegemon ships (although of course you can install some in your own ship), which should make it far less of an issue for newcomers while increasing the challenge for more experienced players.
The next steps
With the galaxy generation now working and the Hegemon faction coded in, the work that remains involves finishing the user interface and testing. The latter in particular will require some time to ensure that the players have a good, fun experience in Infinite War. I am currently looking into releasing the update on the 26th of June (next Sunday). Thank you for reading!
The new modules of Infinite War
As the work for the Infinite War update carries on, the last couple of weeks have been focused on the module assets and effects. I had been somewhat slowed down due to an issue with the Blender exporter plugin, but with that fixed and out of the way, it was time to get some new models in-game.
Quantum state alternator
Here's the new quantum state alternator module, surrounded by four ion cannons. The faction glow might be changed to match the current quantum state, still experimenting.
Anti-proton cannon
The anti-proton cannon will fire projectiles modulated by the quantum state alternator, bypassing shields which do not match the same state.
Shield effects
Additional work has been done to create a new shield effect to work with the above modules. Here you can see a shield being powered up by a quantum state alternator in its white state.
If someone fires a white anti-proton projectile at your ship while in this state, the shot will dissipate harmlessly. If the shield is in the wrong state, the projectile will go through it and deal substantial hull damage. The player will be able to switch states quickly by pressing a key.
The next steps
With the new assets in, it is time to write the gameplay logic and bring everything together. This will be the focus of the next two weeks, as well as creating the projectile effects. If all goes well, some time will also be spent setting up the Infinite War game mode, which will provide a good test bed for these modules. Thank you for reading!
After a few updates over the last couple of weeks which addressed the issues some people were having with ramming, development time is shifting to the Infinite War update. I thought Id give you an overview of what is currently being worked on.
Infinite War game mode
In addition to the Campaign mode which you are familiar with, the Infinite War mode will procedurally generate a new galaxy for you to play. In its default settings, the size of the various factions will be randomised; some of them might not even be present. However, youll also be able to create a galaxy with settings to your liking, deciding which factions the galaxy will be populated with and how large the empires are. The Infinite War mode is meant for experienced players, as it will be possible to create galaxies which will be extremely difficult or impossible to be victorious in.
A new faction
Enter the Hegemon: a faction which will only be present in the new Infinite War mode. The Hegemon will be the end-game faction, fielding large capital ships which will test both your flagship and your skill. They will make use of the various strategies youve seen from other factions, such as the use of particle accelerators and will bring a few tricks of their own via the new modules.
New modules
The principle of the new modules is fairly simple: you (and the AI) have a new weapon which can figure projectiles in one of two configurations (lets call them Red and Black) and your shield needs to be in the matching configuration to block those projectiles. So if your shield is in the Red state and someone fires a Black projectile at your ship, it will go through. Otherwise, it will be nullified. To achieve this, well have two new modules: the Quantum State Alternator and the Antiproton cannon.
Quantum State Alternator
- Increases the damage resistance of the ships shields by 25%.
- There can only be one Quantum State Alternator installed in a ship.
- The QSA has two quantum states. These can be cycled through by pressing space bar and this switch is instantaneous.
- The quantum state affects the shield and any antiproton cannons installed.
- A shield with a QSA will block any antiproton projects which are in the same quantum state.
Antiproton cannon
- This is a large, very slow firing weapon. Rate of fire likely 1 projectile per 4 seconds.
- The projectile goes through shields, unless the ship has a Quantum State Alternator. In that case, the shot is blocked if the QSA has the same quantum state as the antiproton cannon.
- If the antiproton cannon hits a shield with the same quantum state, the shot dissipates harmlessly.
- Otherwise, the projectile instantaneously destroys the module it hits and EMPs anything surrounding it.
- This weapon exists in two variants: a prototype one (artifact) and a Hegemon one (legendary). The prototype variant might have an even slower rate of fire.
The next steps
The new game mode is already under development and some preliminary work has begun for the assets required for the new modules. If it all goes well Ill have some screenshots to share next time. Thank you for reading!
Improvements
- The calculations behind the ramming mechanic have been revamped. The mass of both ships is now taken into account: a smaller ship ramming the player will now mostly bounce off but if the player get rammed by a larger ship that will hurt a great deal.
- The tooltips for missile interceptors and engine disruptors now inform you of how much energy these modules use when activated.
- The achievement "'tis but a scratch" now uses the ship's health, rather than the bridge's.
Improvements
- Marauders and Pirates can now roam better, being more capable of finding sectors to target as the various factions expand.
Balancing
- Regenerative armour has had its regeneration rate reduced (10% per second to 5% per second), as it was vastly superior to the other alternatives.
Bug fixes
- Fixed a complicated campaign progression bug which would happen if the Pirate Flagship had its base of operations set to a sector which was deep in Iriani space, and it was then conquered by that faction.
- Fixed a visual bug where the player's fleet would no longer show as being a flagship fleet after a game was reloaded. This had no mechanical impact.
HEXTERMINATE
Wings of Steel
Wings of Steel
2020-05-22
Action Indie Strategy Casual RPG Adventure Simulation F2P Sports MMO Racing Singleplayer Multiplayer Coop EA
Game News Posts 22
🎹🖱️Keyboard + Mouse
🕹️ Partial Controller Support
🎮 Full Controller Support
Mostly Positive
(35 reviews)
https://store.steampowered.com/app/1123230 
A fairly straightforward statement, although not one echoed by all of the other factions in the galaxy. HEXTERMINATE puts you in command of the Imperial flagship, under orders to conquer the galaxy. Diplomacy has been discarded in favour of the "more firepower" approach, as 'making friends' is not on the Emperor's agenda. How difficult can it be?
- Modular construction
Each ship is built out of hexagonal modules which slot together, including armour, reactors and weapons. With dozens of different types and rarity levels, you build the spec you want. It is your choice how you will tackle galactic conquest: from massive behemoths with layered armour to blitzing sniper battlecruisers. Given that every module is individually destructible, a few well placed shots at your enemy's ships can be devastating. - A living galaxy
The galaxy changes over time as the various factions vie for power. Fleets embark on missions, sectors are won and lost, every game will play out differently. Even in the middle of a fight reinforcements can turn the tide for either side.
- Your own fleet
Assemble a fleet to accompany you in your quest, from long range gunships, front-line battleships and support vessels. Or decide to keep all the glory for yourself, fighting on your own against a hostile galaxy. - Perk system
Further customise how you tackle HEXTERMINATE by acquiring perks as you destroy enemy ships: from access to experimental ships to add to your fleet to increased rate of fire for each landed shot, you'll find a range of options to complement your style of play.
- OS: Linux Mint 21.3
- Processor: Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz
- Graphics: NVIDIA GeForce GTX 1050 Ti
- OS: Linux Mint 21.3
- Processor: Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz
- Graphics: NVIDIA GeForce GTX 2060
[ 5946 ]
[ 3178 ]