Wow, it's finally done! Cosmoteer "unstable" release candidate 0.14.5_rc1 is now finally available for testing!
This update adds Electromagnetic Pulse Missiles, Tactical Nuclear Torpedoes, and Proximity Mines, as well as the Flak Battery, a new defensive system. Plus, as usual, a ton of other fixes, modding features, and quality-of-life enhancements.
Download Cosmoteer 0.14.5_rc1
This update is by far the largest ever and has been a lot of work. I'm sorry it has taken so long! A BIG thanks to everyone who tested out the earlier prototypes and gave their feedback, it was incredibly helpful as I figured out What On Earth was actually going to be in 0.14.5. And an especially big thanks to Dalas, who provided a ton of behind-the-scenes testing and who crunched a lot of balance numbers for the new weapons.
Please note that this update will break almost all mods, sorry about that, so much stuff had to change to support the new weapons. The bright side is that there are a ton of new modding features that mods can now take advantage of. I will try to release another Mod Upgrader in the coming days, hopefully before the final 0.14.5 update, but no promises.
Lastly, if you are one of the people from the September Design Contest whose ships were chosen to be added as Built-In ships, well, your ships are finally in the game! Please let me know if you would like to make any updates to your ships to use the new stuff before the final 0.14.5 update, and I'll make your changes as long as they don't massively change the design of your ship.
Without further ado, the full changelog:
- New Weapon - Electromagnetic Pulse (E.M.P.) Missile:
- A long-range, guided, very fast missile that drains power from enemy systems in a large area upon impact.
- Drains up to 24 batteries worth of power within its area of effect.
- Manufactured by the E.M.P. Missile Factory, a new 3x4 ship part.
- Each missile is constructed out of 9 individual missile parts.
- Launched by the Missile Launcher, which can store exactly one E.M.P. Missile and fire once per 6 seconds. To configure the Launcher to fire E.M.P. Missiles, select it and click the missile type button.
- Can also be stored in a Missile Storage (one per storage room). To configure the Storage to store E.M.P. Missiles, select it and click the missile type button.
- Launchers, Storages, and E.M.P. Missile Factories that are storing E.M.P. missile parts will cause an E.M.P. blast when destroyed.
- New Weapon - Tactical Nuclear Torpedo:
- A short-range, slow, unguided torpedo that causes devestating damage in a large area upon impact.
- Deals up to 200,000 damage within its area of effect using the new explosive damage calculation. (See below.)
- Manufactured by the Nuclear Torpedo Factory, a new 4x4 ship part.
- Each missile is constructed out of 12 individual missile parts.
- Launched by the Missile Launcher, which can store exactly one Nuclear Torpedo and fire once per 10 seconds. To configure the Launcher to fire Nukes, select it and click the missile type button.
- Can also be stored in a Missile Storage (one per storage room). To configure the Storage to store Nukes, select it and click the missile type button.
- Launchers, Storages, and Nuclear Torpedo Factories that are storing Nuke parts will cause a nuclear blast when destroyed.
- New Weapon - Proximity Mine:
- A long-lived, stationary mine that explodes when in proximity to enemy ships, releasing deadly shrapnel.
- Releases 8 shrapnel pieces, each of which does 4800 damage and has 2 penetration.
- Shrapnel can hit other mines, potentially causing chain reactions.
- Will be magnetically repulsed away from other mines, naturally spreading out into large minefields.
- Will self-destruct (without shrapnel) after 3 minutes.
- Manufactured by the Mine Factory, a new 4x3 ship part. Mine Factories require both power and cannon ammunition to produce mines.
- Each mine is constructed out of 4 individual parts but is assembled in the factory and carried as a whole mine by an individual crew.
- Crew walk at only 75% normal speed when carrying mines.
- Launched two-at-a-time by the Missile Launcher, which can store up to six mines and fire a pair of mines every 6 seconds. To configure the Launcher to fire Proximity Mines, select it and click the missile type button.
- When your ship has any Launchers that are configured to fire mines, a "Launch Mines" button will be displayed that will cause every launcher to fire a pair of mines. You can also select individual launchers to fire mines from only those launchers.
- Can also be stored in a Missile Storage (six per storage room). To configure the Storage to store Proximity Mines, select it and click the missile type button.
- New Defense - Flak Battery:
- A large 3x6 defensive battery that can destroy or weaken enemy missiles, mines, bullets, and energy projectiles with its rapid-fire, area-of-effect flak shots.
- Has two pairs of flak-shooting barrels. Each pair shoots in alternating succession.
- Missiles and bullets will retain their full firepower until they are destroyed. Lasers and Electro-Bolts will be weakened as they take damage.
- Can also deal moderate damage to enemy ships.
- Uses cannon ammunition manufactured by the Cannon Ammo Factory.
- Operated by three crew.
- Will ignore any ship-wide specific targets but can still be given specific targets by selecting the Flak Battery and targeting it.
- Renames:
- The old missiles are now called "High Explosive Missiles".
- The Missile Factory is now called "High Explosive Missile Factory".
- The Missile Launcher is now called "Missile & Mine Launcher".
- The Missile Storage is now called "Missile & Mine Storage".
- Balance Changes:
- Point Defenses now fire in bursts of 5 shots every 3 seconds.
- Point Defenses now deal a flat amount of damage for every hit instead of having a 50/50 chance of destroying the missile.
- Point Defenses can now fire at ships and cannon bullets, in addition to missiles and mines. (They still can't be manually targeted because they are automated and their computers were shoddily manufactured by the lowest bidder.)
- Reduced Point Defense cost from 1000 to 500.
- Decreased Point Defense firing arc from 135 to 120 degrees.
- Crew will no longer deliver power to a Point Defense until it's completely empty, but the Point Defense's 3-second cooldown timer will still count down while unpowered.
- Most "area of effect" damage now uses a new "explosive" damage calculation that more realistically models the effects of a wave of damage spreading out from the center of the explosion.
- Armor now has 50% damage resistance to such explosive damage and will block all explosive damage from leaking past it until the armor runs out of health.
- Increased the Moving Walkway's speed from 1.5 to 2.0 and decreased its congestion speed from 1.3 to 0.6.
- Decreased the Moving Walkway's cost from 200 to 150.
- Crew carrying fire extinguishers are now immune to being killed by fire.
- Crew will no longer abandon parts that are on fire.
- Guided missiles can now target in a full 360 degree arc around the launcher.
- Missiles that hit enemy ships will now damage any friendly ships that are in the area of effect. Missiles that impact friendly ships will now do no damage at all to any ships.
- Halved High Explosive Missile damage and reduced its radius from 5.5 to 4.0.
- Tweaked High Explosive Missile guidance physics.
- Missiles will no longer attempt to avoid "junk" ships.
- Increased High Explosive Missile launch cooldown from 1.5 to 2.0 seconds. (For comparison, E.M.P.s and Mines are 6 seconds, and Nukes are 10 seconds.)
- Doubled the production rate (and power consumption) of High Explosive Missile Factories.
- Increased High Explosive Missile Factory power usage from 40/part to 125/part and storage from 2 batteries to 4.
- Increased the cost of the Missile Launcher from 12000 to 15000.
- Increased the cost of the Missile Storage from 1500 to 3000.
- Increased Ammo Storage capacity from 18 to 33.
- Engine Rooms no longer buff thruster ramp-up times.
- Boost Thrusters in boost mode no longer have any ramp-up time.
- All thrusters with ramp-up times now have a "recovery" time of 2 seconds.
- Ion Beams will now be blocked by Small Laser Blaster turrets that are in the beam's path.
- Decreased Moving Walkway congestion speed from 1.3 to 0.6.
- Multiplayer Changes:
- In team Arena games, any players who for forfeit or leave the match will have their fleet funds redistributed to the other players on their team.
- In multiplayer games, you are no longer able to see how much money other players have remaining unless you can see their selected ships.
- Points scored in Arena games will no longer be shown when in the fog of war.
- Doubled the point goals in all of the official Arena mode rulesets.
- Shrinking Perimeter is now enabled by default in all official Elimination mode rulesets.
- Ships no longer start with full ammo & power in all official Elimination mode rulesets.
- Added an option to enable "Friendly Fire" in multiplayer games.
- When a player leaves a multiplayer game, the message will now say "left", "disconnected", or "kicked" depending on whether they left deliberately, lost the connection, or were kicked by the host.
- Crew A.I. Improvements:
- Crew that are currently doing a job are now much less likely to switch jobs and walk a long distance to deliver power or ammo to another part.
- When crew have nothing to do, they will now return to the closest available bed instead of picking one at random.
- Halved the amount of time crew will wait at an Ammo Factory before trying a different factory.
- Crew will now attempt to prioritize loading missiles that are already partially loaded.
- User Interface Improvements:
- Split the weapons into three different tabs: "Energy Weapons", "Projectile Weapons", and "Missiles & Mines". The "Munitions" tab has also been removed and the factories and storages moved into the appropriate weapons tab. Point Defenses can be found in both the Energy Weapons and Defenses tabs. Flak Batteries can be found in both the Projectile Weapons and Defenses tabs.
- The weapon and thruster auto-fire toggles have been moved to the main command buttons and separated into separate toggles for weapons and thrusters. For weapons, this is a 3rd option in addition to Hold Fire and Fire At Will.
- Health bars will now be displayed for all selected parts. This can be turned off in the gameplay settings.
- Selecting or hovering the cursor over a shield will now display a blue shield strength bar underneath the health bar.
- Selecting or hovering the cursor over a weapon will now display a reload progress bar underneath the health bar.
- Selecting or hovering the cursor over an FTL Drive will now display a spin-up progress bar underneath the health bar.
- Selecting or hovering the cursor over a Boost Thruster will now display a boost remaining bar underneath the health bar.
- Selecting or hovering the cursor over a Fire Extinguisher will now display a progress bar underneath the health bar that indicates how much time is left until another extinguisher is produced.
- Added a "Clear Weapon Projectiles" command to Creative Mode.
- The Ship Library will now remember its previous scroll position.
- Added a tutorial that explains how to use the new missile/mine types. The cannon/ammo tutorial no longer talks about missiles.
- Added a setting to turn off the background grid.
- Selectable part modes can now be assigned a separate hotkey for each selectable mode. If multiple modes share the same hotkey, then pressing the hotkey will cycle between those modes.
- Graphics Changes:
- The Missile Launcher's visual appearance has changed so that it can store armaments of various types and sizes. Its appearance will change depending on what type is selected. The holding area (what used to be the launcher tubes) no longer have a roof so that it is possible to see what they are storing at all times.
- Updated the Cannon Ammo Factory graphics, replacing the glowing radiation symbol with a spinning fan.
- Storages and factories now have faint shadows where their ammo/missiles would be stored to indicate the kind of thing they produce.
- Factories will now only animate when they are actually producing something.
- Missile trails no longer inherit missile velocity and are now a bit longer and give a better sense of the missile's path.
- The blueprints for railgun accelerators and launchers now have an arrow to make their direction clearer.
- Railguns now have red and blue highlights on their rails to better indicate when there is a direction mismatch.
- The Railgun now loads its ammo more slowly to better match its actual rate of fire.
- Built-In Ships:
- Added four player-designed ships from the Sep. 2018 design contest: 'Fracture' by Dalas120, 'Harbinger' by Equalizer, 'Icy Beetle' by UltraBlast, and 'Ketari' by Octo.
- Updated many of the built-in ships to use E.M.P. Missiles, Nukes, Mines, and Flak Batteries.
- Performance improvements:
- Significant crew performance optimizations.
- Miscellaneous Minor Changes:
- Added "Friendly Fire" options to multiplayer and Creative Mode games.
- Railguns will now take their own ships rotational velocity into consideration when deciding when to fire.
- You will no longer be warned about having old video drivers due to the unreliability of the driver date reported by Windows.
- Bug Fixes:
- An observer leaving an Arena game would cause the remaining players to crash.
- Switching from a custom ruleset to an identical built-in ruleset wouldn't hide the "Delete Custom Ruleset" option, which would then cause a crash if clicked.
- Rare crash when a selected ship is following another ship that is then removed from the game.
- Possible fix for crash when switching to Exclusive Full Screen.
- Multiplayer desyncs caused by targeting a part right before that part's ship splits into multiple pieces.
- Multiplayer desyncs caused by a ship's sight radius changing when it loses parts.
- Attempting to play multiplayer without any audio device enabled on your computer would give an "INCOMPATIBLE" error when trying to join other multiplayer games unless the host of the game also had no audio devices enabled.
- Damage from Ion Beams wasn't awarding any points in Arena mode.
- Arena games ending with no player/team having more than zero points would result in a tie game.
- It was possible to pause, unpause, and adjust the game speed of multiplayer games while the user interface was hidden. (This did not affect any other players in the match.)
- In team Elimination games with more than one player on a team, a health bar was being shown for each player instead of for the whole team. The names shown underneath the health bars were also incorrect.
- When multiple ammo- or power-supplying rooms were equally distant from a room that needs the ammo or power, crew would frequently change which room they would use, wasting precious travel time.
- Loading a ship with missing/invalid door IDs would prevent the ship from being loaded. It will now load the ship but without those doors.
- Loading a saved game where the camera had been rotated would cause the camera rotation to reset.
- Mods that were automatically disabled after upgrading would actually still be active until the next time the game was launched. This could cause crashes on startup after upgrading.
- Quitting a game while the money tick or score tick sounds were playing would cause them to continue playing indefinitely until the entire application was exited.
- Extremely long Railguns would have unusually short range. (To fix this, the projectile velocity of extremely long railguns has been limited to 600 meters/sec.)
- If a projectile hit and destroyed a structure tile, it would sometimes penetrate through the next non-structure tile without doing any damage.
- Electro-Bolter drain VFX weren't playing when draining power from hit parts.
- The off-screen ship icons didn't rotate according to the camera rotation.
- When deleting parts, the floating refund text would appear in the wrong location.
- Some large particle effects could disappear when near the edge of the screen.
- Simultaneously turning off multiple parts that included control rooms would sometimes not turn off some of the parts.
- Railgun Launchers were using half as much power per shot as was intended.
- Railguns were doing too much knockback when penetrating.
- It was possible to use Ctrl+C to copy passwords out of a password box.
- Modding:
- For performance reasons, crew will no longer render multiple sprites depending on how much ammo they are carrying. To show crew carrying multiple ammo, alternative sprites are now required, similar to how parts display multiple ammo.
- Crew can now walk at different speeds when carrying different types of ammo.
- Added an 'ExplosiveDamage' hit effect that more realistically models the effects of a wave of damage spreading out from the center of the explosion. Instead of specifying a damage amount per-tile, you specify a 'TotalDamage' that the exposion can cause. That damage will then be distributed between a number of directional slices (by default twice the explosion's circumference but can by overridden by setting the 'Slices' parameter) and then applied to parts, shields, and/or bullets starting from the centermost and going out. This effect can also start fires and apply impulse per-tile based on the amount of damage done to that tile by setting an 'NDamage' parameter along with 'FireChancePerNDamage' and/or 'ImpulsePerNDamage'. Lastly, this effect supports expanding its radius over time by setting the 'ExpandDuration', 'ExpandIncrement', and 'ExpandStartRadius' parameters. This effect should generally be used for all area-of-effect damage.
- Parts, shields, and bullets now have an ExplosiveDamageAbsorption parameter which determines how much explosive damage is taken; the remaining percentage will "leak" through to farther objects.
- Parts, shields, and bullets now also have an ExplosiveDamageResistance parameter will reduces the amount of explosive damage taken.
- Parts and shields no longer have an 'AreaDamageBlock' parameter; that concept no longer exists.
- Added an 'ExplosiveAmmoDrain' hit effect that works analogously to ExplosiveDamage but drains ammo instead of doing damage/fire/impulse.
- Combined 'PartDamage', 'ShieldDamage', and 'BulletDamage' into a single effect called 'Damage'. If you want to prevent it from doing damage to a particular type of object, set the 'DamagesShips', 'DamagesShields', or 'DamagesBullets' parameters to false. If you want it to inflict damage directly to a shield's part, set 'TreatShieldAsPart' to true.
- This 'Damage' hit effect now has optional 'DamagesOperationalHealth' and 'DamagesStructuralHealth' parameters which, if set to false, will prevent parts with those health types from being damaged.
- 'PartAreaDamage' and 'BulletAreaDamage' have been combined into a single 'AreaDamage' effect. It does not damage bullets by default but can be made to do so by setting 'DamagesBullets' to true. Additionally it has single 'Damage', 'Radius', and 'DamageFalloff' parameters regardless of whether it's damaging operational or structural part health types. You can tell it to ignore parts of a certain health type by setting 'DamagesOperationalHealth' or 'DamagesStructuralHealth' to false. Area damage effects that do different amount of damage to different health types should use multiple 'AreaDamage' effects.
- This AreaDamage effect now does approximated area damage vs shields.
- The Damage and AreaDamage effects now have an optional 'DamagePerTileHealth' parameter which applies damage as a fraction of the hit part's per-tile health.
- The 'PartFire' hit effect is now called 'Fire'. It will not cause fires when hitting shields unless 'TreatShieldAsPart' is set to true.
- 'PartAmmoDrain' is now called 'AmmoDrain'. It will not drain ammo when hitting shields unless 'TreatShieldAsPart' is set to true.
- 'PartAreaAmmoDrain' is now called 'AreaAmmoDrain'.
- Bullet Targetable components can now be given a 'TargetCategory' which can be used to control whether a weapon will target a bullet and whether damage will effect a bullet.
- The Damage and AreaDamage effects can now be given 'DamagesBulletCategories' parameters to control which categories of bullets they can damage.
- AntiBullet components now have an optional 'HitsBulletCategories' parameter which can be used to ignore collisions with other categories of bullets.
- The Impulse and AreaImpulse effects can now be used to push bullets by setting 'PushesBullets' to true. You can further restrict by categories by setting 'PushesBulletCategories'.
- The AreaImpulse effect now pushes shields by default, unless 'PushesShields' is set to false.
- The radius of area and explosive hit effects can now be altered by the effect scale by setting 'RadiusEffectScaleExponent' to something other than 0.
- The Impulse effect's 'ImpulsePerTile' and 'ImpulseRadius' parameters are now called 'Impulse' and 'Radius'.
- The AreaFires effect's 'FireRadius' parameter is now called 'Radius'.
- The Impulse and AreaImpulse effects now have a 'UseEffectDirection' parameter which, if set to true, will cause the force exerted on the hit object to be in the orientation of the effect.
- Components inside a ToggledComponents can now share the same name as components inside a different ToggledComponents as long as they aren't active at the same time. This will no longer cause crashes when switching.
- ToggledComponents now has an IncludeInBlueprints field which, if true, will cause any relevant contained components to render their information (such as turret and shield arcs) with the ship's blueprints.
- Added a ChainableProxy part component that can be used as a ChainedTo target to emulate chaining to the component that it is proxying.
- Proxy components (AmmoStorageProxy, ToggleProxy, TriggerProxy, ModeProxy, ValueProxy, and ChainableProxy) can now be used as a proxy for components inside a ToggledComponents and will automatically update as the ToggledComponents are activated and deactivated. They can now also act as proxies for components in their own part by omitting the PartLocation and PartCriteria fields.
- Emitters can now be given 'Burst' parameter which will cause it to emit multiple projectiles every time it is triggered. Such emitters can also be given a 'BurstDelay' which, if not zero, will put a time delay between each projectile in the burst. An optional 'UseAmmoPerShotInBurst' parameter (default false) controls whether ammo will be subtracted for every shot in the burst or one for the entire burst.
- Added a new part toggle style, 'Popout', which displays all of the possible part mode options in a popout instead of cycling through them.\
- Added a DeathByTargetProximity bullet component that will destroy the bullet (with optional hit/media effects) when within a certain distance to its target.
- Added a DeathByEnemyProximity bullet component that will destroy the bullet (with optional hit/media effects) when within a certain distance to an enemy ship and/or bullet.
- Added a DeathByPredicatedTargetDistance bullet component which causes bullets to die once they come within range of their target's predicted location.
- Bullet components with an OnDeath field now also have an optional 'FrameOfReference' parameter that will define the frame of reference used by any any hit/media effects. The possible options are:
- 'Grid' (The frame of reference will be the background grid, i.e. zero velocity.)
- 'Inherit' (The frame of reference will be the frame of reference of the object that spawned the bullet. If the spawner object is a ship, the frame of reference will be the ship's velocity.)
- 'Bullet' (The frame of reference will be the bullet's current velocity.)
- 'HitObject' (The frame of reference should be the hit object's velocity at the time of impact.)
- Bullet DeathByLifetime and DeathByDistanceTraveled components now accept random ranges.
- Using the SpawnBullets hit effect with InheritVelocity set to true will now properly inherit the velocity of the parent bullet instead of the velocity of the object that was hit.
- If a SpawnBullets hit effect's InheritVelocity parameter is false (or omitted), then the velocity that the spawned bullets inherit will be the frame of reference of the effects (by default the frame of reference of the parent bullet).
- The TargetHoming bullet component can now be used to seek other bullets when fired from a weapon that targets bullets.
- The TargetHoming bullet component can now predict and lead their target's location based on its current speed and heading. To enable this feature, set 'TargetLeadPrediction' to true. (This is not used by the vanilla missiles.)
- Bullet TargetHoming components no longer have a TurnThreshold parameter. This is no longer required to prevent the bullet from over-steering.
- Bullet TargetHoming components now have a 'ModifiesLinearVelocity' parameter that, if true, will update the bullet's flight direction to match its rotation.
- Added a 'TargetSearch' bullet component that can be used to have the bullet search for new targets near it whenever it doesn't currently have a target.
- Added a 'SameShipRetarget' component as a replacement for the 'SwitchPartTargetWhenDestroyed' parameter of the TargetHoming component.
- Bullet Physics components now have an optional 'CollidesWithBullets' parameter that, if true, will cause the bullet to collide with and bounce off of other bullets that also have that parameter set to true.
- Bullet Physics components now have an optional 'FrameOfReferenceDuration' parameter that, if set, will cause the frame of reference inherited from the firing ship to transition to the background grid over time.
- Bullet physics components can now be given a 'RandomExtraSpeed' parameter which adds (or subtracts) to the bullet's speed within a range of values.
- Bullet components that required a PhysicsComponent parameter no longer require that parameter.
- Bullet components that required an AccelerationComponent parameter no longer require that parameter.
- Bullet Acceleration components now have an optional 'InDirectionOfTarget' parameter that, if set to true, will cause the bullet to accelerate in the direction of its target. If the bullet does not have a target, it will not accelerate at all.
- Bullet acceleration is now expressed per-second instead of per-tick. Acceleration values should be multiplied by 30 to compensate.
- Added a bullet 'ProximityAcceleration' component that can be used to cause bullets to accelerate towards or away from other ships and bullets. (Note: This is very expensive when used to accelerate towards or away from ships.)
- Bullets can now be given a 'ForgetTarget' parameter which will cause them to forget their weapon's target when shot.
- Added a 'RandomRotation' parameter to bullets that, if true, will cause the bullet to have a random rotation after being spawned.
- ReduceScaleByPenetrationFrom has been renamed to 'ReduceScaleWith', and ReduceScaleByPenetrationExponent has been renamed to 'ReduceScaleExponent'.
- Renamed 'DamageFalloff', 'FireFalloff', and 'ImpulseFalloff' to just 'Falloff'.
- ReduceScaleWith can now be used with SimpleHit, PenetratingHit, AntiBullet, and Targetable.
- SimpleHit and PenetratingHit can now be given an optional 'HitFriendly' set of hit and media effects which will be used instead of the regular hit effect when impacting a friendly ship or shield.
- PenetratingHit now has an optional 'PenetratesFriendlies' parameter.
- Bullet HitOperational, HitStructural, HitShield, and HitFriendly sections can now be given a 'Bounce' parameter which, if true, will cause the bullet to bounce off instead of being destroyed or penetrating.
- Parts and doors can now be given a list of EditorGroups, in which case the part or door will appear in the tab for each one of those groups.
- UIToggle now has an optional 'DefaultsPerEditorGroup' parameter that can be used to set the default toggle state depending on what editor group is selected when the part is added to the ship.
- Bullet AnimatedSprite components can now have 'LerpIntervalWith' and 'IntervalLerp' parameters to control the speed of the animation using another component.
- Bullet Sprite and AnimatedSprite components now have an optional 'Spin' parameter which will cause the sprite to spin at a given speed.
- Bullet Sprite and AnimatedSprite components now have optionalal 'StartTime' and 'Endtime' parameters which allow the sprite to be displayed during only certain portions of the bullet's lifetime.
- Bullet AnimatedSprite components now have an optional 'AnimationOffset' parameter that can be used to change the starting frame of the animation.
- Bullet Sprite and AnimatedSprite components now have optional 'LerpScaleFrom' and 'LerpTime' parameters that can be used to increase (or decrease) the size of the bullet over time after it spawns.
- Added an 'AnimationToggle' parameter to PartGraphics which will turn on and off any sprite animations.
- Bullet MediaEffects components now have an optional 'Offset' parameter.
- TurretWeapon now has an optional (default 2) 'TargetSearchesPerSecond' parameter which controls how frequently the weapon searches for targets. This is a replacement for the global 'TargetAcquisitionRate' parameter.
- TurretWeapon's 'TargetSearchTriesPerFrame' parameter has been renamed to 'TargetChecksPerSearch' and is now optional (defaults to 1).
- Added a 'HoldTargetAfterDeath' paramater to TurretWeapon that will prevent the weapon from retargeting or rotating back to center after its target is destroyed for the specified amount of time.
- Added an optional 'TargetPathThickness' parameter to TurretWeapon which controls the thickness of the line used for line-of-sight checking during weapon targeting. This can be useful for preventing weapons from trying to shoot through other parts.
- A TurretWeapon's FireThresholdAngle will no longer extend the arc in which it will attack targets. Use 'ValidArc' and 'ValidRange' to extend the area in which a weapon will target. ('TargetingArc' and 'TargetingRange' are the search area before the target's predicted location is computed. 'ValidArc' and 'ValidRange' are where the predicted location needs to be.)
- The weapon 'IntervalResetTrigger' parameter is no longer supported.
- Weapons can now be given a 'FirePermissionToggle' which, if off, will prevent the weapon from firing even if it is otherwise able to do so.
- Replaced TurretWeapon's 'TargetTypesByPriority' with a required 'AutoTargets' list which allows more customization of auto-targeting. For each auto-target type, you can specify ships or bullets, which bullet categories, a toggle component that can be used to prevent such auto-targeting, and whether that auto-target type can be overridden by a higher-priority type.
- FixedWeapon now has a single 'AutoTarget' block which works the same way as each 'AutoTargets' block.
- FixedWeapon now has a 'TargetingRange' parameter just like TurretWeapon.
- Removed weapon 'FireModeToggle' in favor of using the Toggle in the individual AutoTarget(s) blocks.
- Weapons can now be given an 'IgnoreShipWideExplicitTargets' parameter which, if true, will prevent the weapon from being given explicit targets unless the weapon is specifically selected.
- Removed the RepeatingTrigger and replaced it with a new, more flexible 'Timer' component which can be started, stopped, and reset using triggers, can be set to not repeat, and can be used as both a toggle component (on when the countdown is at 0) and a value (goes from 1 to 0 as it counts down).
- The zoom level can now be set in the particle editor.
- The background and planet can now be customized in the particle editor.
- The game speed can now be adjusted in the particle editor.
- The particle editor now respects the bucket settings and renders the particle layers in the correct order.
- Added particle support to base.shader so that custom particle shaders can be more easily authored.
- Particles now have access to the back buffer as a texture, allowing for fancy shader distortion effects.
- Added a "Lightning" particle renderer that can be used to create electrical bolts inside the particle system.
- Added a 'ParticleLocationFromSource' particle updater which can set a location to the source of a particle effect, such as the center of an explosion.
- Particle 'InheritVelocity' components can now only inherit from the bullet's velocity. Most particle effects should now use 'AddFrameOfReference' instead to add the bullet or ship's frame of reference to the particle velocity.
- Particle effects can now be set to run in real-time instead of game time.
- Added an Upper4 effect bucket.
- WAV audio files encoded as 32-bit PCM are now supported.
- Added a 'ProgressBar' part component that causes a progress bar to be displayed below the part's health bar when the part is selected. It has optional 'LowColor', 'HighColor', 'FullColor', and 'Height' parameters to customize the appearance of the bar.
- When running in Developer Mode, modifying a strings file will now automatically refresh the text displayed in-game.
- Many part folders, files, and IDs have been renamed. Some other files have also been renamed.
- Bugfix: Crash if a bullet has OnDeath effects and dies both by collision and by a death component on the same frame.
- Bugfix: Crash when displaying the "bill of sale" tooltip for the construct/repair buttons when a part's name contains certain characters such as '&'.
- Bugfix: DeathEffects wasn't working when inside a ToggledComponents that was turned on after the part was created.