Version 2025.9.5.2298

From Kitten Space Agency Wiki
Jump to navigation Jump to search
Version 2025.9.5.2298
Development phase
Pre-alpha
Release date
September 04th, 2025

2025.9.5.2298 is a KSA build released on September 04th, 2025 which included several changes and fixes.

Changes

  • Fixed handling of different events (Impact, multiple Encounters, Escape) in patched conics to correctly identify which event comes first and process accordingly. - Second attempt. This time handles closest approaches correctly and after first escape. This fixes the fact that before patched conics logic was not handling impacts, encounters and escapes in the correct time sequence, which it was not necessarily doing correctly before.
  • Refactored Input handling, to split the functionality into `match` and `contains`. Previously, we were using a single pattern to assess an input action as contains (except for a few hardcoded differences). Now two patterns are available. Existing functionality is split between `contains` which will allow returning true if that series of keys are active, even if others are (i.e. thrusters), versus if the required series only are (i.e. a toggle).
  • Fixed Stabilization toggle would work inconsistently with input actions, as it was handled via a `contains` pattern, not a `match` pattern.
  • Refactored Input code to use a common struct, rather than an exploded collection of arguments, as this was getting tiresome passing through the action chain. This additional meant that necessary context was often lost, such as which window the input was being provided in.
  • Fixed some controls would not work in new windows, as the input context was lost as it was not being passed through. OnKey now requires a common struct, so context is always passed through.
  • Fixed control assignments would not be correctly captured. There still exists a bug where they are not being correctly read in, breaking control assignments from load.
  • Fixed targeting a celestial object that is not a vehicle such as a planet or moon, will generate a null reference exception. Now you can use the targeting control panel with celestial bodies.
  • Changed VehicleUpdateTask to use both a stackalloc and a rented array for Thruster states, to remove allocation occuring per frame. This was a minimal allocation in current testing, but with large numbers of vehicles in the hundreds, or thousands, it would generate significant memory garbage.

Changelog JSON

View changelog entries
{
  "build": "2025.9.5.2298",
  "date": "2025-09-04",
  "fromRevision": 2290,
  "toRevision": 2298,
  "commits": [
    {
      "rev": 2291,
      "date": "2025-09-04",
      "author": "JPLRepoRocketwerkz",
      "lines": [
        "Fixed handling of different events (Impact, multiple Encounters, Escape) in patched conics to correctly identify which event comes first and process accordingly. - Second attempt. This time handles closest approaches correctly and after first escape. This fixes the fact that before patched conics logic was not handling impacts, encounters and escapes in the correct time sequence, which it was not necessarily doing correctly before."
      ]
    },
    {
      "rev": 2292,
      "date": "2025-09-04",
      "author": "Rocket",
      "lines": [
        "Refactored Input handling, to split the functionality into `match` and `contains`. Previously, we were using a single pattern to assess an input action as contains (except for a few hardcoded differences). Now two patterns are available. Existing functionality is split between `contains` which will allow returning true if that series of keys are active, even if others are (i.e. thrusters), versus if the required series only are (i.e. a toggle).",
        "Fixed Stabilization toggle would work inconsistently with input actions, as it was handled via a `contains` pattern, not a `match` pattern."
      ]
    },
    {
      "rev": 2293,
      "date": "2025-09-04",
      "author": "Rocket",
      "lines": [
        "Refactored Input code to use a common struct, rather than an exploded collection of arguments, as this was getting tiresome passing through the action chain. This additional meant that necessary context was often lost, such as which window the input was being provided in.",
        "Fixed some controls would not work in new windows, as the input context was lost as it was not being passed through. OnKey now requires a common struct, so context is always passed through.",
        "Fixed control assignments would not be correctly captured. There still exists a bug where they are not being correctly read in, breaking control assignments from load."
      ]
    },
    {
      "rev": 2294,
      "date": "2025-09-04",
      "author": "Rocket",
      "lines": [
        "Fixed targeting a celestial object that is not a vehicle such as a planet or moon, will generate a null reference exception. Now you can use the targeting control panel with celestial bodies."
      ]
    },
    {
      "rev": 2295,
      "date": "2025-09-04",
      "author": "Rocket",
      "lines": [
        "Changed VehicleUpdateTask to use both a stackalloc and a rented array for Thruster states, to remove allocation occuring per frame. This was a minimal allocation in current testing, but with large numbers of vehicles in the hundreds, or thousands, it would generate significant memory garbage."
      ]
    }
  ]
}

See also