Meta Vens
a193853d34
Fuse batch 5: agents fire per weapon, Solve owns the burst, refusal is free, arming is the blast radius
...
Operator rulings 2026-09-30.
* Combat and TurretController ask FireControl.AgentFires for each weapon. A
fused weapon fires whenever its target is designated (Designated, the one
visible / in-range / locked predicate PFire already used), whatever the arc;
an agent never fires one at nothing. A direct-hit weapon keeps the
AgentMinHitProbability threshold. The group's first weapon no longer speaks
for the group, and the turret's own range test is gone.
* FireControl.Solve is the one decision about what a round does, extracted
from Fire: Direct, Burst at a reach, or Refused. Fire, Inspect and the
weapons' refusal check all read it. Inspect gains Outcome and BurstReach and
the debug HUD prints them for fused weapons.
* A refused round costs nothing. InstantWeapon asks before its ammo and energy
spend (at the trigger and at each round), ConstantWeapon folds the refusal
into the gate its power request and Execute already share, so a refused beam
draws no power, wear, heat or visibility and stops.
* The arming distance is BlastRadius, measured from the shooter's position and
blind to hull size. HullAhead's exit, ArmingDistance and
PendingShot.ArmingDistance are deleted; HullAhead survives as HullEntry for
the contact fuse. A round fired at a valid target inside the radius is pushed
out along its line but keeps its target, so a departed target cancels it.
* Step settles a shot's queue state before publishing about it, so a throwing
presentation observer costs its own notification and cannot re-commit or
re-resolve the shot on every later tick.
Tests: FireControlPerWeaponTests (new; includes a fused-beam fixture), the
arming tests in FireControlCut124Tests rewritten to the literal distance,
the hull-inclusive probe premises deleted.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-29 18:36:59 +02:00
..
AetherDrive.cs
Resolve request/brownout conflict: evaluate power requests nominally
2026-09-19 06:58:57 +02:00
AetherDrive.cs.meta
Aetheric Drive
2021-04-14 03:29:14 +01:00
AutoWeapon.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
AutoWeapon.cs.meta
Weapon Scripting Overhaul
2021-01-25 05:53:36 +00:00
Behaviors.cs
Add targeting subsystem, reveal rule and selection slot (fire control Cut 2)
2026-09-19 13:02:20 +02:00
Behaviors.cs.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
Capacitor.cs
Cut 3: PowerBus replaces TryConsumeEnergy/CanConsumeEnergy
2026-09-18 21:39:38 +02:00
Capacitor.cs.meta
Energy & Heat
2020-12-27 22:18:22 +00:00
ChargedWeapon.cs
Cut 4: input capacitors close the last direct capacitor spend
2026-09-18 22:52:15 +02:00
ChargedWeapon.cs.meta
Weapon Scripting Overhaul
2021-01-25 05:53:36 +00:00
Cockpit.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
Cockpit.cs.meta
Energy & Heat
2020-12-27 22:18:22 +00:00
ConstantWeapon.cs
Fuse batch 5: agents fire per weapon, Solve owns the burst, refusal is free, arming is the blast radius
2026-09-29 18:36:59 +02:00
ConstantWeapon.cs.meta
GUNS GUNS GUNS
2021-01-05 02:56:17 +00:00
Cooldown.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Cooldown.cs.meta
Massive Item Behavior Refactoring
2020-05-12 01:42:13 +01:00
EnergyDraw.cs
Resolve request/brownout conflict: evaluate power requests nominally
2026-09-19 06:58:57 +02:00
EnergyDraw.cs.meta
Mega Placement
2020-05-21 01:53:06 +01:00
Heat.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Heat.cs.meta
Massive Item Behavior Refactoring
2020-05-12 01:42:13 +01:00
HeatStorage.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
HeatStorage.cs.meta
Wormholes
2021-03-05 14:31:18 +00:00
InputCapacitor.cs
Cut 4: input capacitors close the last direct capacitor spend
2026-09-18 22:52:15 +02:00
InputCapacitor.cs.meta
Cut 4: input capacitors close the last direct capacitor spend
2026-09-18 22:52:15 +02:00
InstantWeapon.cs
Fuse batch 5: agents fire per weapon, Solve owns the burst, refusal is free, arming is the blast radius
2026-09-29 18:36:59 +02:00
InstantWeapon.cs.meta
Weapon Scripting Overhaul
2021-01-25 05:53:36 +00:00
ItemUsage.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
ItemUsage.cs.meta
Behavior Canceling & Grouping
2020-05-11 01:17:10 +01:00
Launcher.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
Launcher.cs.meta
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
LockWeapon.cs
Fire control Cut 3: hit authority moves to FireControl
2026-09-19 14:07:07 +02:00
LockWeapon.cs.meta
Weapon Scripting Overhaul
2021-01-25 05:53:36 +00:00
MiningTool.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
MiningTool.cs.meta
Mining
2020-05-28 04:50:40 +01:00
Radiator.cs
Resolve request/brownout conflict: evaluate power requests nominally
2026-09-19 06:58:57 +02:00
Radiator.cs.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
Reactor.cs
Cut 5: priority tiers replace PowerBus's single shared GrantRatio
2026-09-19 02:58:38 +02:00
Reactor.cs.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
Reflector.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
Reflector.cs.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
ResourceScanner.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
ResourceScanner.cs.meta
Mega Placement
2020-05-21 01:53:06 +01:00
Sensor.cs
Resolve request/brownout conflict: evaluate power requests nominally
2026-09-19 06:58:57 +02:00
Sensor.cs.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
Shield.cs
Resolve request/brownout conflict: evaluate power requests nominally
2026-09-19 06:58:57 +02:00
Shield.cs.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
StatModifier.cs
Resolve request/brownout conflict: evaluate power requests nominally
2026-09-19 06:58:57 +02:00
StatModifier.cs.meta
Massive Item Behavior Refactoring
2020-05-12 01:42:13 +01:00
Switch.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Switch.cs.meta
Massive Item Behavior Refactoring
2020-05-12 01:42:13 +01:00
TargetingSystem.cs
Cut 6d: the dart-throw kernel replaces the coin-flip landing rule
2026-09-19 21:37:39 +02:00
TargetingSystem.cs.meta
Add targeting subsystem, reveal rule and selection slot (fire control Cut 2)
2026-09-19 13:02:20 +02:00
Thermotoggle.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Thermotoggle.cs.meta
Entity Properties & Thermal Regulation
2020-05-26 01:12:06 +01:00
Thruster.cs
Resolve request/brownout conflict: evaluate power requests nominally
2026-09-19 06:58:57 +02:00
Thruster.cs.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
Trigger.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Trigger.cs.meta
Massive Item Behavior Refactoring
2020-05-12 01:42:13 +01:00
TurretController.cs
Fuse batch 5: agents fire per weapon, Solve owns the burst, refusal is free, arming is the blast radius
2026-09-29 18:36:59 +02:00
TurretController.cs.meta
Murder Satellites
2021-01-06 14:56:39 +00:00
VelocityConversion.cs
Delete AetheriaMath in favour of CultMath
2026-09-14 18:02:41 +02:00
VelocityConversion.cs.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
VelocityLimit.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
VelocityLimit.cs.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
Visibility.cs
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
Visibility.cs.meta
Massive Item Behavior Refactoring
2020-05-12 01:42:13 +01:00
Weapon.cs
Arming distance: no round bursts nearer than its blast radius past the shooter's hull
2026-09-29 17:05:14 +02:00
Weapon.cs.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
Wear.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Wear.cs.meta
Heat Performance Curves + Wear & Tear
2021-03-04 03:58:46 +00:00