Starsector 0.6.2a

From Starsector Wiki
Jump to navigation Jump to search

Starsector 0.6.2a

This version is out - you can download it here.

Changes as of January 17, 2014

Miscellaneous:

  • "Character" button flashes and has a plus sign when there are unspent points, until the character screen is opened
  • New game dialog now picks random portrait to start with
  • Added progress bar that shows approximate time within day to the date display in the top left
  • Upgraded all versions to use Java 1.7.0_45
  • Upgraded to LWJGL version 2.9.1
  • Mac version now requires 10.7 (Lion) or above, is bundled with Java (does not require Java to be installed)
  • Added checkbox to settings to invert the behavior of the "Strafe and turn to cursor" button (previously this could be accomplished via "autoturnMode" in settings.json)
  • Added to campaign help messages: post-battle speedup/slowdown, fighter wing purchased (explains fighter mechanics), initial deployment (explains CR loss on deployment)
  • Unlike ships, fighter wings at 0 CR can not be deployed at all
  • Fixed issue where during pursuit, ships deployed from the side would head directly up if they lost sight of any enemies (rather than angling over towards the middle to try and spot them)
  • Fuel tooltip now also shown when mousing over fuel use
  • New alarm sounds for: ship starting to lose CR, ship's CR at malfunction level, ship's CR at critical level
  • In-combat "escape" menu: can now access settings and check/modify key bindings
  • Ship supply/day use changes: Heron: 9, Condor, Gemini: 5, Atlas: 6

Modding:

  • Fixed bug that caused multiple music tracks to not work in combat or the campaign (would keep looping the first track picked)
  • Weapon arc color now moddable via weaponArcColor in settings.json
  • Added "renderBelowAllWeapons" boolean to .wpn spec, will force the weapon to be rendered below all other weapon layers (mostly intended for decorative "weapons" that are meant to visually be part of the hull)
  • TELEPORTER-type ship system:
    • added vulnerableChargeup and vulnerableChargedown boolean flags to .system definition
    • added renderCopyDuringTeleport boolean flag, transition between two locations will appear instantaneous when set
  • If a mod changes min/max battlesize, the current battlesize will be clamped to that range

Bugfixing:

  • Fixed bug where disengaging from a hostile fleet maintaining a neutral stance would show text indicating they harried your retreat; now properly shows them letting you go
  • Fixed issue where fighters spinning very rapidly could potentially cause a very high amount of damage on collision


Changes as of December 28, 2013

Miscellaneous:

  • Added "Save Copy" option to the campaign menu, saves the current game in a new slot (and a new save directory on the harddrive).
    • Not available in iron mode
  • Added confirmation dialog to various save and exiting related options in the campaign menu
    • Dialogs will not show up in iron mode, because there's not actually any choice about saving there
  • Logfile now limited to 50MB in size
  • Added "Game paused" message after exiting out of the combat dialog
  • Added new ship: Monitor-class escort frigate
  • Logistics widget (lower left) now shows skeleton crew needed along with crew, i.e. <crew icon> 100/150 (as opposed to <crew icon> 100)

Campaign

  • Added choice of starting difficulties
    • Easy:
      • start with larger, more durable fleet and more credits
      • Broader choice of ships
      • Fleet always includes a custom Mule (with Unstable Injector)
    • Normal: same as current
    • Better ships on restart (after losing your entire fleet)
    • Changed starting ships somewhat, added special starting variants that are more new-player-friendly and don't use any unavailable hullmods
    • Tooltips at starting ship selection now just show a single paragraph of text describing the ship
    • Fleet compositions
      • Pirates
        • Adjusted "raider" compositions to be more new-player-friendly
        • Added Cerberus as a possibility to most fleet types
  • Changed pirate spawn composition at game start; pirates spawn much more spread out
  • Ships at 0% CR can still be deployed, but suffer even more serious malfunctions. Still have the option to crash-mothball to attempt an escape without direct control and without malfunctions.
  • Ships with less than 5% of their skeleton crew can not be deployed
  • Added "campaign help", pops up informational dialogs in appropriate circumstances
    • Can be disabled when creating a new game
    • If enabled, each individual dialog can be set to not be shown again
    • Some examples:
      • Attempting to deploy ships with critically low CR
      • Refitting a ship but not adjusting weapon groups
      • Opening the trade/cargo screen (explains stack splitting)
      • Buying a new ship (needs refitting, crew)
      • Refitting at station (can buy weapons from refit screen)
      • Taking on more salvage than the fleet has capacity for
      • Becoming over capacity in cargo/fuel/crew for any reason
      • Running low on fuel
      • Running low on supplies
      • Not enough crew
      • Some ships below 40% CR (malfunction chance)
      • Some/all ships below 20% CR (critical malfunctions)
      • Increased supply use after a battle (for CR recovery/repairs)
      • Logistics rating below 100%
      • Logistics rating at 0
      • Risk of accidents
      • Entered hyperspace (fuel etc)
      • Refit in space reducing ship CR


Modding

  • Fixed bug that made InteractionDialogAPI.setTextWidth/Height go into infinite recursion
  • Fixed issue with CombatFleetManagerAPI.spawnShipOrWing where the ships would spawn with 0 CR
  • Added new version of method with parameters for level of crew and initial burn duration
  • Added spawnFleetMember method that allows to spawn a specific member from the reserves
  • Added to ShipAPI: SpriteAPI getSpriteAPI()
  • Added to ShipHullSpecAPI: String getSpriteName()
  • Note: supplies by destroyed fighter wings (for salvage) are based on the repair cost in ship_data.csv, even though this value isn't actually used for repairs.

Bugfixing:

  • Fixed issue where scrollbar would disappear when buying the last ship in a row of ships would leave the total number of ships below the number that needs a scrollbar, leaving the view stuck
  • Fixed bug that caused the game to crash when a savegame load from the title screen failed for any reason
  • Added DroneLauncherShipSystemAPI.getDroneOrders()
  • Fixed bug that caused destroyed fighter wings not to provide appropriate amounts of salvage


Changes as of December 01, 2013

Miscellaneous:

  • Adjusted autoresolve algorithm (used for AI vs AI fights) to weigh civilian ships even less and account for the changes to CR; also properly deals with fighter wing CR reduction from losses
  • Bomber AI:
    • Will properly pick out valid strike targets, will not try to engage fighters except as a last resort and then only if it has non-strike weapons
    • Bombers w/o non-strike weapons (i.e. Daggers) will automatically hang around a nearby friendly ship unless there's a valid target to engage
    • Improved torpedo targeting
  • Increased armor for all phase ships, Hound
  • Added descriptions for Ox and Prometheus
  • Increased speed of command shuttle (the one used to transfer command during battle)
  • Logistics rating can go over 100% (purely a display change, so that the rating indicates the amount of unused logistical capability)
  • Updated logistics tooltip - shows clear breakdown of what's using up logistics, does not show supply use anymore (the supply use tooltip is there for that)
  • Added script caching - game startup time should be improved after the first time it runs
  • Automatic assignment of ships to tasks now properly ignores the temporary speed bonus from travel drive being on
  • Pressing space will no longer work as a confirmation for the dialog that comes up when you press escape during combat
  • Ships:
    • Increased hull integrity of phase ships somewhat
    • Shuttle-class renamed to Mercury-class, designation changed to "Shuttle" (i.e. Mercury-class Shuttle rather than Shuttle-class Transport)
    • Added new ships:
      • Hermes-class shuttle
      • Cerberus-class frigate (large-ish multipurpose frigate)
      • Heron-class cruiser (fast carrier)
    • Astral changed to have 6 flight decks instead of 3

Modding:

  • Fixed bug where ShipAPI.setCurrentCR() wouldn't apply the effects of the new CR to the ship
  • Scripts compiled by the game are now cached in the saves/cache directory
    • Caching can be turned on and off using the enableScriptCaching parameter in settings.json
    • Should automatically pick up the last modification time and recompile as needed, but this isn't 100% accurate (due to windows *things*), clearing out the cache if things seem to not update is a good idea
    • Each mod gets its own folder in the cache, multiple mods overriding the same core script should work correctly (it'll pick up the compiled version from the running mod's cache folder)
    • Result of caching is the the first startup takes longer because it has to write the compilation results to disk, but after that game startup is faster
    • Matters more for mods with lots of scripts not in a jar, but helps vanilla startup times as well
  • Added ShipHullSpecAPI.getHullName()
  • SectorAPI.getAllEmptyVariantIds() now correctly returns hulls for ships with built-in weapons


Bugfixing:

  • Fixed bug where transferring command to a ship that got destroyed while the shuttle is on the way caused the shuttle to get stuck
  • Fixed bug where asteroids were not properly using the light color of the system's star to render
  • Logistics widget in bottom left of the campaign screen properly absorbs mouse events (i.e. can no longer click/hover on fleets and such "through" it)


Changes as of October 21, 2013

Miscellaneous:

  • Mothballed ships now have red "mothballed" text in the overlay to make their status more clear
  • Frigates: "peak active time" will continue to count down while any enemy ship is within visual range of the frigate
  • Transferring command using the encounter dialog will result in the flagship reverting to the original one after the engagement
  • Fighters always start out with missile weapons fully loaded, regardless of their CR
  • Where ships are placed during deployment takes into account the Helmsmanship bonus to the zero-flux speed boost to avoid a situation where a faster ship ends up behind a slower one; also improved spacing & AI behavior to help avoid collisions
  • Engine malfunctions: now do not cause a flameout by themselves; need at least some of the engines to have been taken out by combat damage, unless the last active engine malfunctions
  • CR:
    • Does not modify rate of fire, modifies damage dealt instead
    • Frigate CR deterioration now only occurs under the same conditions that would cause peak active time to tick down
    • Chance of shield malfunctions (shield impact causing an overload while about 75% flux) when CR is below 10%
    • Halved deployment cost and CR recovery rate (i.e. supply cost and recovery time remain the same, more deployments are possible)
    • Malfunctions occur below 40% CR, critical malfunctions below 20%
    • More info here.
  • Repairs:
    • Ships no longer have different repair rates; repair speed based entirely on "emergency repairs" stat and being below the logistics capacity
  • Construction Rig now adds 10 to the fleet's emergency repair capacity
  • Automated Repair Unit: Increases CR recovery rate by 50%. Increases logistical cost (supplies/day) by 50%.
  • UI:
    • Hull indicator in logistics display now shows combined hull and armor integrity
    • Repair indicator in logistics display now shows overall repair rate
  • Ship AI:
    • Improved logic for detecting whether a nearby ship is likely to explode (and cause damage)
  • Boarding: engaging the ship (rather than boarding) no longer leaves a chance for the ship to get away. it can still get away if the boarding option "launch assault teams from a distance" is used.
  • Improved autofire (and AI ship) friendly fire avoidance
    • Fixed bug that caused lots of friendly fire incidents with vs ships with flamed-out engines
    • Re-checks situation more often
    • Properly accounts for chargeup time for weapons firing one shot after a chargeup
    • Accounts for a friendly ship being out of range but potentially being able to move into range
  • Fleet AI: won't turn around to fight if the only ships left in the fleet are civilian


Modding:

  • Deprecated CargoAPI.isFreeTransfer()/setFreeTransfer()
  • Added SectorEntityToken.isFreeTransfer()/setFreeTransfer()
  • Deprecated VisualPanelAPI.showCore() with the noCost parameter (uses SectorEntityToken.isFreeTransfer() || SectorEntityToken.getFaction().isNeutralFaction() instead)
  • Added VisualPanelAPI.showCore() w/o noCost parameter
  • Fixed bug where on game start, the current location was being set before plugin-based modded system generators had a chance to run, leading to it being impossible to start in a modded system w/o using generators.csv
  • Added CombatEngineAPI.addPlugin(), CombatEngineAPI.removePlugin()
  • ShipAPI.removeWeaponFromGroups()
  • WeaponAPI.disable(boolean permanent)
  • Fixed bug where ships with a deployment point cost of less than 3 could cause deployment issues for both sides
  • Added to MutableShipStatsAPI:
    • getCriticalMalfunctionChance()
    • getShieldMalfunctionChance()
    • getShieldMalfunctionFluxLevel()
  • Removed from MutableShipStatsAPI:
    • getBaseRepairRatePercentPerDay()
  • Added to ShipHullSpecAPI:
    • List<WeaponSlotAPI> getAllWeaponSlotsCopy()
  • CombatReadinessPlugin: added HullSize parameter to applyCRToStats() method
  • ShipAPI.setShield() can now be use to remove the shield by setting the type to ShieldType.NONE
  • Removed from RepairTrackerAPI:
    • getRepairRate()
    • getRepairCostPerDay()
    • getRepairCostPerDay(float repairRate)
    • float getRepairMult()
    • performRepairs(days)
  • Added to RepairTrackerAPI:
    • performRepairsUsingSupplies(float supplies)
  • "repair cost" in ship_data.csv now includes full repairs to both armor and hull. You'll want to double all the values for the costs to remain as they were
  • Removed MutableCharacterStatsAPI.getTravelRepairRateMult()
  • Added MissileAPI.isFlare()
  • Added GuidedMissileAI interface; a MissileAIPlugin implementation can implement it to be properly affected by flares
  • Fixed issue with "fireSoundOne" (charge-up sound) playing every time the mouse button was pressed instead of once on chargeup
  • Added HullModFleetEffect interface, can be implemented by a HullModEffect
    • void advanceInCampaign(CampaignFleetAPI fleet);
    • void onFleetSync(CampaignFleetAPI fleet);

Bugfixing:

  • Fixed bug where pressing undo on the refit screen would reset the ship's CR to 50%
  • Fixed a couple of (non-growing) memory leaks that could cause memory usage to be 2-3x of what's actually needed
  • Updated Augmented Engines description to properly state that the repairs only take 25% longer
  • Fixed issue with repair rate not updating due to logistics change while looting/buying cargo above base capacity
  • Fixed bug where a successfully-retreating player fleet would get a speed penalty instead of bonus
  • Fixed bug that caused ship CR to be force-set to the crew-understrength value when opening the refit screen
  • Fixed bug where low-CR bombers would on occasion get into a loop of taking off from and immediately returning to a carrier
  • Fixed a couple of bugs to do with the Damage Control and Flux Modulation skills not applying/unapplying their bonuses properly
  • Fixed bug where having a very small number of mothballed/non-combat-ready ships while escaping would result in the enemy deploying nothing to pursue and retreating instead
  • Fixed a bug where if the player's fleet had 0 marines, the selector for how much crew to send during a boarding action would be slightly misaligned
  • Fixed bug where it was possible for a fighter wing to be "lost" in combat if all of its members landed on a carrier at around the same time while all available flight decks were busy preparing replacements for a different wing