1. Terra Invicta
  2. News
  3. Terra Invicta Release Candidate 13

Terra Invicta Release Candidate 13

Greetings Terrans!

We've been hard at work preparing Terra Invicta for our upcoming release. This build contains many fixes for stability issues and other bugs, and a few performance improvements.

Many of these were caught thanks to reports from dedicated players on our Beta branches, so our thanks to them. We encourage you to join our Discord — it’s the best way for players and devs to interact. We also post detailed patch notes there and on our website.

This build should be compatible with all RC1 saves. It's also compatible with 0.4.90a and earlier 0.4 saves although we do recommend a new campaign.

Here's the list of important bugfixes and changes:

[h3]Stability[/h3]

- fix crash when a councilor with a capture hab goal is assassinated and not cleared from the goal before goal data is checked
- fixed potential crash when typing in module name sort input field
- fixed an exploit where players could purchase orgs with the councilor augment panel open, then purchase augments that they could no longer afford after the org purchase. This exploit could also lead to a crash.
- fix a crash when hitting "transfer officers" button but no officer transfer is set up
- fix a crash when AI is sending a fleet to a deleted ad hoc orbit and thinking about bombardment
- fix a crash when trying to load two officers of the same type on a ship from a hab when that's illegal
- fix for TryReinforce crash on combat start due to _sendInPlayerReinforcements not being reset after prior combat
- Valid check to prevent crash encountered when AI considered a deleted fleet for refit
- SpaceCombatManager bugfix : Finish outstanding destruction processes before starting autoresolve from within combat.
- fixed crash in transfer planner when changing thrust profile after entering invalid parameters
- attempt fix for intermittent crash when dragging orgs
- Fixed a crash when earth models swap due to climate change but earth is not on screen.
- Fixed a crash when viewing the hab manager while a hab is destroyed
- Fix crash when checking conditions for "Diamonds in the Sky" event
- Added handling for simultaneous notifications directing you to manage a hab that is already destroyed, prevents a crash
- SimulatedCombat.TryShootDown() bugfix : after firing defensive weapon, if its out of ammo remove it from relevant lists of active weapons
- Bugfix: prevent ad-hoc orbits from being hyperbolic, and repair them on load if they are.
- SimulateCombat bugfix : NRE caused by starting autresolve with ships already destroyed, but without knowledge of who the killers were.
- Fix a crash in saves upgraded from 0.4.90a and earlier where the AA was awarded new regions during the upgrade that had no extant nation (like Bhutan or Brunei) and the AA was then overthrown. These regions will be properly awarded to some other nearby nation.
- Bugfix: Newly created fleets due to failing to abort from a doomed trajectory now receive their trajectory immediately on creation instead of afterward. This avoids the fleet briefly having no location, which caused an NRE.
- We now loop over fleets that are intercepting a just-transferred fleet by putting them in a list, instead of looping over them directly. This avoids breaking the iterator when fleets fail to find a new trajectory, need to abort, and some of their ships can't perform the abort maneuver and become new fleets.
- save repair adjustment to prevent crashes due to non-existent battery modules on ships that were present in pre-0.4.90 saves
- fixed startup crash when subscribed to workshop mods containing invalid characters
- Fix for crash when auto-updating workshop mods during startup that contain files created by and in use by Unity Mod Manager
- Fix crash in TICouncilorCondition_bInFactionOwnedNation when councilor is in space
- fixed rare crash when scrolling finder to a gamestate during the same frame the gamestate is destroyed
- safety code for reported crash when watching a bombardment fleet close up and it blows up the target
- safety code for new crashes reported in tooltips triggering
- safety check for unreproducible crash encountered in autopilot when AA absorbed Bangladesh
- Bug protection: we had a crash bug when calculating the time we'd be at a set mean anomaly in a hyperbolic trajectory, and produced an invalid time. This adds safeties to catch the error and repair it, and give far better error reporting. It doesn't fix the root problem, though.
- additional crash safety in ship detail screen
- safety code for unreproducible crash when calling up fleet screen from intel screen
- safety code for unreproducible crash when reinforcements are called in combat
- safety code for crash in fleets UI

[h3]Performance[/h3]
- compressed save optimization - save is compressed in memory instead of first writing a json file before compressing to gz. This may help people with tight limits on the size of their save folder.
- Gated most national quarterly data trackers behind a config value (meaning it won't be tracked in saves unless you change the value). These do not appear in game and aren't used by any game functions, but were significantly bloating saves. Quarterly PCGDP data will still be used. This will debloat existing saves by deleting the old data, probably 20% reduction in save file size in a mature campaign.
- AIEvaluators.GetEstimatedTransferTime_days() optimization : reduced sampleSizeMultiplier in call to MasterTransferPlanner.RequestTrajectories()
- Optimizations of research selection AI
- don't trigger updates to data displays when clearing advising councilors if there were no advising councilors
- Adjusted earth day/night shader-related texture settings for decreased RAM usage and better detail preservation during compression

[h3]Other bugs[/h3]
- fix weird outcome where aliens could detain a councilor in a failed assault on one of their habs
- Fixed an exploit where orgs could be moved via the org management screen in invalid ways after a trade has been completed with another faction
- fixed sherlock achievement from unlocking under incorrect conditions
- AIEvaluators.PassesBudgetingRules() : was not respecting AISavingTarget due to typo. This was causing some bad alien decisions in building mines versus fleets and founding habs.
- Fixed an issue where selecting entries beyond the 31st in the Ship Construction location filter would select earlier entries instead
- Running unrest in a secession candidate region in a 10-unrest nation will no longer reduce unrest to 9.9. Also critical success on unrest in a nation capital with 10 unrest will automatically trigger a revolution, and a regular success has a 10% chance of triggering a revolution.
- fix most of the issues with phantom tooltips and failed hover triggers over Earth regions
- fix an issue where being unable to swap a captain or admiral into a ship with max officers when it should otherwise be allowed
- fixed bug that could allow player to choose to research a tech that was already being researched
- fixed tech tree sometimes placing techs too far to the top making them difficult to view
- Fixed the Finder "Sort Arrows" interface panel blocking objects behind it (earth nations, space objects, etc.) when hidden, Also fixed some UI element spacing issues in the finder panel
- Bugfix / improvements to precombat DV pursuit bids. We now model the stern chase as the higher accel attacking fleet performing a brief burn to ensure the intercept, and the (lower accel) target spending the same DV over a much longer period of time trying to delay that intercept. (In the reverse situation, the higher accel defender would perform a brief dodge to avoid the intercept). This results in a higher max DV expenditure than before, especially at extreme differences in acceleration. That increase is due to an aphysicality in the old method, where we'd calculate the duration of the chase by assuming both ships ran their engines constantly (which resulted in a much shorter chase), and then only used the lower acceleration to calculate the DV expenditure (in this case, the fleets should spend radically different DV). The new system assumes the higher acceleration fleet uses only the minimum DV to force / avoid the combat. Change also to envelopment DV costs to match new model.
- Fix a bug/exploit where you could try to start a fleet repair job you couldn't afford. The operation would fail but the planned repairs were recorded anyway and would trigger (for free) the next time you resupplied or repaired those ships. Now, partial repairs with whatever available resources you have will happen instead.
- Fix a bug/exploit where cancelling an ISRU resupply would grant full propellant. It now grants partial propellant based on time passed since the start.
- Protect Target will now protect against Hostile Takeover and the alien equivalent. Removed nonfunctional protect target modifier from Stabilize mission.
- fixed autosave not triggering when an alliance prompt is created during mission phase start
- Fixed xeno labs and spy modules not providing correct detection bonuses, new since RC1
- Fixed an issue where assigning a Deorbit mission to a councilor would cause Earth geoscape region borders to visually disappear
- Fixed an issue where the earth region outlines would break when the earth model swaps due to climate change
- AssignIdleFleetsToGoals() bugfix : Resolved situation where fleets could get stuck in ad-hoc orbits. Previously, fleets required a resupply station to travel to in order to escape an ad-hoc orbit. Now they simply go to any reachable orbit with an allied hab (but they prefer resupply habs if available).
- Fix issues with AI treating weapons as nonfunctional during combat when they are only awaiting a recharge. This was causing AI to be too careful and disengage when it didn't need to.
- fix a bug in new intel-gain-on-councilor limits where being overenforced and reducing intel on councilors
- added code to prevent (against-the-rules and bugged) Marine assaults on the primary alien ||redacted|| as this can only be done by the councilor with the ||redacted||
- fix a case where repair and resupply wasn't fully resupplying ships with magazines
- fix AI not managing sub-25 max stats when figuring out orgs
- fixed some fire modes not always returning correct distance to target. This may have fed bad numbers to ECM calculations.
- reduced starting occupation of Ukrainian region to 58% to reflect scope of Russian advance in 2022
- AI_EvaluateTradeOffer() bugfix : intel exchange resulted inflated scores for certain other items.
- intel gained on councilor from passive detection while the councilor finishes a mission is capped at 75% (so not enough to reveal their status as a traitor). Intel gained on other councilors via intel-sharing or spies is also capped at .75. This is to address some weird gameplay outcomes making it too easy to discover traitors passively. The investigate councilor mission will generally be necessary to get full intelligence on loyalty and traitor status for both your own and other councilors.
- fixed some math issues causing long-range point defense to not target as far out as it could when the ship is moving
- Fixed an issue where ship maneuver DV readouts over waypoints in space combat would display in front of the camera when they were behind the camera
- deleting a subscribed mod from the in-game mod menu will now attempt to unsubscribe from it in Steam; fixed subscribed mod status not being handled correctly after certain interactions with the mod browser
- TISpaceShipState.GetDVConservingCombatAcceleration_mps2() bugfix : GetCombatRealismDVConsumptionFactor() was effectively assumed to be 1. This was causing the AI to be way too conservative with DV in cinematic combat mode.
- PlanMissions() bugfix : traitors, ashamed of their own actions, were trying to inspire themselves
- fix exotics project not being required for tartarus missile in all cases
- fix no hate for faction that turned your councilor
- Fix an issue with events that are supposed to stop the game clock not stopping the game clock if the event queue is overloaded
- Fixed an issue where the Space Combat Battle Log filter would show events of the wrong type
- Fixed an issue where space combat numeric waypoint handles would appear in front of the camera when they were actually behind the camera
- Bugfix - Stops us from trying to generate a microthrust spiral down to a moon during an interplanetary transfer when our final "orbit" around the planet (as we approach the moon) would be hyperbolic.
- Fix for Hardy Pioneers achievement unlocking under incorrect conditions
- Fixed an issue where Interface Tutorial tips and highlighting could be incorrectly positioned on non 16:9 aspect ratios
- fixed councilor panel stat labels not displaying properly on some fonts
- fixed unlocalized text in small councilor panels
- added text feedback on mission icon hover when you can't afford the mission

[h3]AI/Gameplay/Balance[/h3]
- GetBestOperation() : Alien fleets in the home base system capable of spontaneous attacks now must attack any enemy fleets present
- ManageFleets() : added code to reinforce primary hab if its in danger.
- increased alien particle weapon ranges to match humans'
- Nova Liquid Rocket, reduced EV from 5.6 to 5.3
- Mass Driver, reduced specific power 50 to 35, increased thrust to 12000
- Superconducting Mass Driver, increased Thrust from 20000 to 28000, reduced EV from 30 to 22, reduced thrustCap from 20 to 15
- Power Plants: Tried to improve some fusion plant lines through crew, specific power and exotics rebalance, and amat costs for amat gas/plasma core
- Increased RP cost for Improved and Advanced Interplanetary Rockets projects, reduced for Neutronium Microfission Drive
- added space funding values to 2070 scenario
- Ships in autoresolve will now use guardian mode.
- AI will now use guardian-capable nose weapons offensively if no projectiles are within 300 km (and some other conditions).
- FactionGoal_FoundHab : aliens no longer cancel colonizations that are already underway just because an human fleet is transferring to the target system
- made killing xenofauna via bombardment a little easier by capping the penalty-for-dispersion-due-to-being-mostly-destroyed on those critters
- lower some drive RP costs
- lower public campaign preferences for AI
- AICouncilorMissionPlanner.PlanMissions() : Added code to deal with known traitors. This new section assesses whether inspiring the traitor is worthwhile and if so, assigns an available inspire councilor.

[h3]Terra Invicta Community[/h3][hr][/hr]As always, we encourage you to join our Discord — it’s the best way for players and devs to interact. We also post detailed patch notes there, as well as on our website, for those who want to track every update.

But wherever you want to engage with the game, we want to hear your thoughts — whether on Discord, the Pavonis Interactive forums, Reddit, or the Steam forums.