Document status: Build specification
Version: 0.1
Date: 7 August 2026
Intended use: Source of truth for research,
prototyping, implementation, balancing, and later narrative design.
Build Solar War as a multiscale, event-driven, partially observable simulation of a mature Solar System defending its distributed stellar-energy civilization from an equivalently capable but technologically asymmetric interstellar expedition.
The simulation is not primarily about ships trading hit points. It is about whether a civilization can keep its distributed metabolism intact while an adversary attacks its:
The canonical hard-science game is governed by six coupled quantities:
\boxed{M,\ E,\ \mathbf{p},\ Q,\ I,\ R}
where:
Three additional nonconserved state variables determine whether those resources can be used:
The core simulation should use established physics and conservative extrapolation. Exotic physics is supported only through explicit, labeled modules. The hard-SF version is already sufficiently strange: delayed light cones, uncertain tracks, vulnerable radiators, trajectory-space minefields, autonomous policy execution, industrial epidemics, and battles whose decisive commitments were made years before impact.
Every claim is assigned one of five dispositions:
| Mark | Meaning |
|---|---|
| Keep | Sound enough to become a core design principle. |
| Keep with correction | Concept is useful, but wording, scope, or numbers need revision. |
| Parameterize | Physics is plausible, but no single defensible performance number exists. |
| Optional module | Useful speculation, disabled in the hard-SF profile. |
| Reject | Unsupported, internally inconsistent, or harmful to the simulation model. |
The reports are valuable idea inventories, not authoritative specifications. Their references range from primary literature and NASA reports to wikis, Reddit, Fandom, and uncited extrapolation. The engine therefore stores provenance and confidence alongside every technology parameter.
| Claim from the reports | Disposition | Corrected finding | Simulation consequence |
|---|---|---|---|
| A rigid Dyson shell is “dynamically forbidden.” | Keep with correction | A uniform shell around one star has no restoring force for displacement and is generally unstable; material stress is also prohibitive. It is not a theorem that every possible shell, ring, bubble, charged shell, binary configuration, or nonuniform structure is impossible. Recent theoretical work identifies special stable configurations. | Make a dispersed swarm canonical. Allow shells/rings only as high-risk P2/P3 megastructures with active control or special geometry. |
| A Dyson swarm requires roughly 7\times10^{22} kg at 1 AU. | Parameterize | That value follows only for a chosen coverage fraction and areal density. The full area at 1 AU is 4\pi r^2\approx2.81\times10^{23}\ {\rm m^2}; at 0.25\ {\rm kg\,m^{-2}}, full coverage is 7.0\times10^{22} kg. Different architectures vary by orders of magnitude. | Compute mass from coverage, radius, areal density, optical depth, support, storage, and redundancy. Never hard-code “one Moon mass.” |
| The Dyson swarm is a distributed power grid and strategic center of gravity. | Keep | This is the strongest premise in all reports. It is also a sensor network, communications network, industrial ecology, computer, propulsion infrastructure, and potentially a synthetic aperture. | Model it as a graph and as statistical orbital populations, not as one unit or one health bar. |
| “There is no stealth in space.” | Keep with correction | Persistent high-power activity is difficult to hide, but detectability is not binary. It depends on spectrum, aperture, background, integration time, geometry, prior search volume, emissivity, and detector noise. Cold coasting, heat storage, favorable backgrounds, and small cross sections can produce tactical concealment. | Replace fixed detection radii with photon/SNR calculations and uncertain tracks. Treat concealment as thermal debt. |
| R_d=13.4\sqrt{A}\,T^2 is a general detection law. | Reject | It assumes a particular detector and threshold and cannot serve as a universal law. | Use spectral radiance, inverse-square flux, detector response, integration time, background, and a detection threshold. |
| Engines reveal craft across the Solar System. | Keep with correction | High-power plumes can be exceptionally conspicuous, but range depends on drive spectrum, orientation, intervening backgrounds, sensor coverage, and whether observers know where to look. | Burns generate time-stamped emissions. Observers receive them after light delay and update tracks probabilistically. |
| Space combat is orbital chess and \Delta v is a combat resource. | Keep | Correct and foundational. | Every engagement must account for trajectory, launch geometry, reachable sets, propellant, acceleration, and arrival uncertainty. |
| Dogfighting is generally inappropriate. | Keep | Close autonomous intercepts can have rapid control loops, but the atmospheric fighter metaphor is usually wrong. | Tactical encounters are missile/interceptor clouds, beam dwell, local evasion, and resource exhaustion—not banked turns. |
| High-power ship lasers are generically limited to 80–1,200 km. | Reject | No universal cap exists. NASA’s DSOC demonstrated optical acquisition and communication over hundreds of millions of kilometers. A damaging beam is governed by aperture, wavelength, beam quality, pointing jitter, target-state uncertainty, dwell, absorption, and available power. | Derive effective range from the full link/damage budget. Ship lasers may be short-range; vast phased arrays may act across astronomical distances. |
| Diffraction is the only important laser limit. | Keep with correction | Diffraction is fundamental, but beam quality, phase coherence, pointing, platform vibration, optical damage, thermal distortion, atmospheric passage, target motion, target uncertainty, and material response may dominate. | Model a combined effective spot and delivered fluence, not diffraction alone. |
| “Thermal blooming” limits interplanetary laser beams. | Reject outside atmospheres/plasma | Thermal blooming is principally a propagation-through-medium effect. It is not a generic vacuum limitation. | Apply medium-dependent propagation loss only through atmospheres, dense plasma, engineered dust, or gas. |
| A Dyson swarm can form a Nicoll–Dyson beam. | Optional P1/P2 extrapolation | A stellar-powered distributed aperture is plausible as fiction grounded in known optics, but coherent phasing, beam routing, optical survivability, and pointing at extreme scale are enormous engineering assumptions. | Build it from many ordinary beam nodes. Its performance emerges from coherence, geometry, and control—not a superweapon flag. |
| A modest \Delta v turns an asteroid into an RKV. | Reject | Small \Delta v can create a devastating delayed orbital impact. It does not produce relativistic velocity. | Separate orbital impactors, hypervelocity KVs, and relativistic weapons into distinct classes. |
| RKVs are essentially unstoppable. | Keep with correction | Terminal interception can be impossible, but launch infrastructure, acceleration emissions, long flight time, trajectory prediction, interstellar-medium damage, early deflection, and target maneuver create counterplay. | Make RKVs strategic commitments and deterrence assets with long preparation and observable precursors. |
| Total stellar luminosity divided into required kinetic energy gives launch time. | Reject | Available civilization-scale energy is not equivalent to coupling that energy into one projectile. Acceleration length, maximum stress, beam absorption, efficiency, power routing, heat, and tracking are binding constraints. | RKV construction requires an accelerator project with finite aperture, length, thermal state, and signature. |
| Accelerating 100 t to 10 km/s in one second needs about 1 GW. | Reject; numerical error | The kinetic energy is 5\times10^{12} J, requiring 5 TW in one second before losses. A 35 t projectile requires 1.75\times10^{12} J. | All launcher numbers are derived from energy, efficiency, pulse duration, acceleration length, and recoil. |
| Casaba-Howitzer efficiencies of 0.007–50% are established. | Parameterize | Directed nuclear devices are legitimate speculative concepts, but public performance estimates are uncertain and often secondary-source dependent. | Implement a configurable P2 nuclear-directed-energy family with broad priors, not one canonical efficiency. |
| One microgram of antimatter yields 180 MJ. | Keep with clarification | One microgram of antimatter annihilating with one microgram of matter releases about 1.80\times10^8 J, equivalent to roughly 43 kg of TNT—not kilotons. | Antimatter is a rare energy carrier, ignition catalyst, and propulsion enabler. Inventory and storage risk matter. |
| Micrograms of antiprotons can straightforwardly trigger multikiloton fusion weapons. | Keep with correction | Antiproton-catalyzed microfission/fusion has been studied conceptually, but weapon-scale performance is not a demonstrated result. | Put antimatter-catalyzed pulses in P2 with uncertain gain and demanding target fabrication. |
| Magnetic/plasma shields block 50–95% of attacks. | Parameterize and narrow | Magnetic systems can bend charged particles. Performance depends on rigidity, charge-to-mass ratio, field integral, geometry, and secondary radiation. They do not stop photons or neutral macroscopic masses. | Every defense is channel-specific. There is no general shield stat in hard-SF mode. |
| Rotating armor makes lasers ineffective. | Keep with correction | Rotation reduces dwell on one spot and spreads heating, but does not defeat sufficiently intense or wide beams. | Rotation modifies local fluence, structural stress, pointing, and radiator geometry. |
| Lagrange points and asteroid belts are naval chokepoints. | Reject as a general rule | They can host infrastructure and favorable transfer geometry, but space is not constrained to lanes. | Strategic “terrain” is reachable phase space, line of sight, transfer cost, observation geometry, and future intercept opportunity. |
| Mines are dormant kinetic clusters and autonomous interceptors. | Keep | This is a strong model. | A mine owns a time-dependent reachable set, not a circular trigger radius. |
| Dust fields can defend against relativistic attack. | Keep with correction | Added column density can raise erosion and catastrophic-hit probability, but a permanent all-sky wall would be mass-intensive and dispersive. | Model engineered column density along likely corridors, stochastic grain-size distributions, dispersion, and clearing. |
| A Kessler cascade can deny any interplanetary region. | Reject as generalized | Collision cascades are important in sufficiently dense, gravitationally bound orbital bands. Open interplanetary debris disperses. | Enable local orbital-band degradation, not permanent walls across the Solar System. |
| Quantum illumination gives a 6 dB advantage. | Keep with scope | The canonical result is a 6 dB advantage in an error-probability exponent under particular bright-noise, low-reflectivity assumptions with retained idlers and optimal joint measurement. It is not universal radar clairvoyance. | Implement it as a conditional receiver modifier with quantum memory, coherence, loss, and processing costs. |
| Quantum communication removes light delay. | Reject | Entanglement does not transmit usable information faster than light. | Quantum links can improve authentication, key distribution, timing, and sensing; latency remains R/c. |
| Axion fields can be “ignited” into dark-matter tripwires. | Reject in hard-SF; optional P3/P4 | Axion-photon and dark-photon couplings are unconfirmed and constrained to be weak. Parametric-resonance papers do not establish controllable minefields or X-ray traps. Conductive media can suppress proposed amplification. | Dark-sector modules must declare new coupling parameters and countermeasures. Default profile has no tactical dark-matter interaction. |
| Gertsenshtein conversion enables gravity-wave death beams. | Reject in P0–P3 | Photon–graviton conversion in magnetic fields is a real, extraordinarily weak effect studied mainly for high-frequency gravitational-wave detection. It does not support a practical tidal weapon. | Detection experiments may appear in P3. Offensive inverse-Gertsenshtein systems are P4 fiction. |
| Kugelblitz black holes are a straightforward late-game technology. | Reject as straightforward; optional P3/P4 | Classical GR permits collapse from radiation in idealized cases, but recent work argues vacuum polarization and pair production prevent realistic formation; counterarguments preserve idealized theoretical possibilities. | Treat artificial black holes as a disputed-physics scenario switch with explicit assumptions. |
| The quoted micro-black-hole mass/power/lifetime table is canonical. | Parameterize | Hawking outputs depend on greybody factors and available particle species; engineering also requires capture, feeding, and control. | Use a dedicated model and uncertainty set. Keep outside the first several releases. |
| A micro-black hole “passes through matter” and bypasses armor. | Reject as a simple rule | Interaction, accretion, gravitational scattering, radiation, and trajectory depend on mass and velocity. | No armor-bypass flag. Resolve as an exotic compact-object encounter if enabled. |
| Caplan thrusters can evade incoming weapons. | Reject tactically | Published active stellar-engine estimates are around 10^{-9}\ {\rm m\,s^{-2}}, producing significant galactic deflection on megayear timescales. | Stellar engines belong in million-year grand strategy, not operational combat. |
| Solar gravitational-lens nodes are generic outer-system observatories. | Keep with correction | The focus begins near 548–550 AU, but each observation requires placement on the focal line opposite a specific target. | Treat each SGL installation as a target-specific strategic line, not an all-sky telescope. |
| Planets are tactically obsolete. | Reject as too strong | Planets are vulnerable and fixed, but offer immense mass, thermal inertia, shielding, industry, ecosystems, population, and legitimacy. | Planets are fortress-factories and hostages. Their destruction need not end the civilization. |
| OODA loops are years or decades at Type-II scale. | Keep with scale correction | Intra-system latency ranges from seconds to hours; interstellar latency is years. | Use nested command loops: local milliseconds–seconds, planetary seconds–minutes, system minutes–hours, interstellar years. |
| Autonomous swarms are likely to dominate. | Keep | Light delay, scale, and expendability strongly favor autonomy. Existing spacecraft-swarm work already demonstrates distributed planning and coordination at small scale. | Commands are policies and authority envelopes, not unit-by-unit joystick orders. |
| Multi-agent reinforcement learning should be the combat AI. | Keep as one tool, not architecture | MARL may discover tactics, but it is hard to verify, explain, and stabilize. | Use hierarchical planning, trajectory optimization, auctions, behavior trees, and scripted doctrine first; add MARL for bounded subproblems. |
| Alien self-replication provides compelling asymmetry. | Keep | Closed-loop autonomous manufacturing is speculative engineering but obeys known physics and creates meaningful strategic asymmetry. | Industrial reproductive number becomes a campaign statistic. |
The shared foundation that survives scrutiny is:
The player is not a starship captain. The player is a distributed strategic authority responsible for preserving a civilization whose body spans astronomical units.
The player:
The emotional rhythm should alternate between:
Solar War should sit between:
It should not be designed as:
No faction has access to the objective world state. Every contact is delayed, noisy, classified probabilistically, and attached to a timestamp.
Light delay, orbital periods, transfer windows, integration time, manufacturing lead time, heat accumulation, and reproduction time are all strategic dimensions.
Collectors, radiators, relays, factories, depots, timing nodes, software authorities, telescopes, and repair clouds matter at least as much as mobile weapons.
A unit can be physically intact and strategically dead because it has no cooling, no trusted commands, no propellant, no target solution, or no compatible spare parts.
Local engagements may last seconds. Regional campaigns last months. Interstellar threats unfold over decades. Stellar-engine policy unfolds over millions of years.
The factions have comparable total capability, but one concentrates energy through networks while the other disperses matter through replication. They should not share mirrored unit rosters.
The game exposes a physics profile and confidence class. A player can inspect which mechanisms are established, extrapolated, disputed, or invented.
| Profile | Enabled physics | Intended experience |
|---|---|---|
| Hard SF | P0–P1 | Known physics plus aggressive engineering; no dark-sector control, force fields, gravity weapons, artificial black holes, or FTL. |
| Kardashev | P0–P2 | Adds extreme megastructures, large antimatter economies, stellar engineering, compact-object infrastructure, and very advanced materials. |
| Speculative physics | P0–P3 | Adds bounded axion/dark-photon sensing, disputed artificial black-hole engineering, and other mechanisms tied to explicit unknown constants. |
| Physics-accounted space opera | P0–P4 | Allows force fields, gravity manipulation, wormholes, and invented couplings while still charging energy, heat, information, and infrastructure costs. |
| Research/toy model | Selectable modules | Exposes equations, distributions, parameter sweeps, Monte Carlo outputs, and reproducibility controls. |
| Class | Definition | Examples |
|---|---|---|
| P0 — Established | Experimentally demonstrated physics and ordinary engineering principles. | Newtonian orbital mechanics, electromagnetism, radiative heat rejection, lasers, fission, digital communications. |
| P1 — Extrapolated engineering | Known physics scaled far beyond present capability. | Dyson swarms, enormous phased arrays, fusion fleets, automated asteroid industry, large beam sails. |
| P2 — Extreme theoretical engineering | No clear physical prohibition, but severe unresolved engineering. | Stellar engines, industrial antimatter, directed nuclear devices, compact-object energy extraction. |
| P3 — Speculative physical substrate | Depends on unconfirmed particles or disputed feasibility. | Engineered axion/dark-photon systems, artificial Hawking-radiation engines, some exotic metamaterials. |
| P4 — Invented law or controllable exotic effect | No known engineering path and often no established physical basis. | Gravity beams, negative-energy shields, practical wormholes, generic force fields. |
Every technology definition stores:
physics_class: P1
status: extrapolated
assumptions:
- coherent_phasing_over_100_km
- optical_elements_survive_flux
source_ids:
- S7
- S9
uncertainty:
model: lognormal
sigma_fraction: 0.35Humanity is not politically unified, but most habitats and machines participate in a common interoperability and mutual-defense fabric.
Its characteristic technology is networked stellar industry:
The canonical alien expedition is not a fleet. It is a lineage of self-reproducing industrial seeds whose internal substrate, computation, and fabrication are radically integrated.
Its characteristic technology is distributed matter conversion:
The two sides are balanced by campaign potential, not mirrored technology:
\text{human advantage} = \text{power concentration} + \text{aperture} + \text{local geography} + \text{repair standards}
\text{alien advantage} = \text{dispersal} + \text{replication} + \text{adaptation} + \text{small target size}
The engine should support multiple hidden strategic motives:
Alien intent is itself an inference problem. The player should not receive a faction encyclopedia at campaign start.
A campaign does not end merely because a planet is destroyed or a fleet retreats.
Define civilizational viability:
V_f = w_P\tilde P_{\rm usable} +w_F\tilde F_{\rm fabrication} +w_C\tilde C_{\rm network} +w_I\tilde I_{\rm awareness} +w_A\tilde A_{\rm autonomy} +w_N\tilde N_{\rm population} +w_B\tilde B_{\rm biosphere/archive} -w_D\tilde D_{\rm irreversible}
where each tilde is normalized to scenario baselines.
Possible outcomes:
The player should be scored on:
The core engine enforces:
Finite signal speed t_{\rm arrival}=t_{\rm emission}+\frac{R}{c}
Mass accounting Material cannot appear because a build queue completed. Feedstock, machine tools, losses, and transport are explicit or aggregated.
Energy accounting Stored energy, generated power, conversion efficiency, beam delivery, and heat are distinct.
Momentum accounting Propulsion and projectile launch produce reaction momentum unless external beams, sails, or environmental exchanges supply it.
Thermodynamic accounting Useful work produces waste heat. Suppressed radiation increases stored heat or exports hot mass.
Trajectory continuity Objects do not choose arbitrary positions. They follow gravity and applied acceleration.
Measurement uncertainty Sensors produce observations, not omniscient object records.
Causal command A remote authority cannot change a local unit’s policy until a message arrives.
Engineering throughput Large energy totals do not imply arbitrary instantaneous power, stress tolerance, coherence, or manufacturing rate.
Damage-channel specificity Defenses are effective against particular energies, particles, spectra, directions, or sizes.
For explicit entity i:
\mathcal X_i = \{ t,\mathbf x,\mathbf v,\mathbf q,\boldsymbol\omega, m,\mathbf p,Q,\mathbf H,\mathbf C \}
where:
\mathcal R_i = \{ m_{\rm dry}, m_{\rm prop}, m_{\rm feedstock}, E_{\rm stored}, P_{\rm gen}, P_{\rm routed}, Q_{\rm stored}, A_{\rm radiator}, C_{\rm compute}, B_{\rm comm} \}
Faction f’s estimate for entity i:
\mathcal B_{f,i} = \{ \hat{\mathbf s}_{i}, P_{i}, p(\text{class}), p(\text{faction}), p(\text{intent}), t_{\rm last}, \mathcal T_{\rm provenance} \}
with state vector:
\hat{\mathbf s}_i = [x,y,z,v_x,v_y,v_z,\ldots]^T
and covariance P_i.
\mathcal G_f = \{ \text{trust graph}, \text{command graph}, \text{software compatibility}, \text{political commitments}, \text{rules of engagement} \}
Internally use SI:
The UI may display:
All scenario/configuration values are parsed with explicit units and converted at load time. Unitless physical configuration values are rejected unless the schema defines them as ratios.
These are not balance targets; they are checks against silent order-of-magnitude errors.
Full spherical area at 1 AU: 4\pi(1\,{\rm AU})^2 \approx 2.81\times10^{23}\ {\rm m^2}.
Full coverage at areal density 0.25\ {\rm kg\,m^{-2}}: M\approx7.0\times10^{22}\ {\rm kg}.
One-way light time:
Kinetic energy: 100{,}000\ {\rm kg}\ @\ 10\,{\rm km\,s^{-1}} =5\times10^{12}\ {\rm J}.
Antimatter: 1\,\mu{\rm g}\ \bar m + 1\,\mu{\rm g}\ m \approx1.80\times10^8\ {\rm J}.
A 10^8 kg projectile at 0.999c: \gamma\approx22.37,\quad E_k\approx1.92\times10^{26}\ {\rm J}.
Ideal radiator area for 1 GW at emissivity 0.9:
Diffraction first-minimum scale at 1.064\,\mu{\rm m}, 1 AU:
These examples show why temperature, aperture, and engineering scale matter so strongly.
The simulation stores two different kinds of state.
This is authoritative and inaccessible to ordinary players:
Each faction has a private derived universe based only on received evidence.
A faction belief state contains:
No UI subsystem should accidentally read objective state except in debug, observer, replay-analysis, or adjudication modes.
Use a monotonic dynamical-time scalar, preferably seconds from a scenario epoch expressed in TDB or another clearly defined barycentric time scale.
Store:
epoch_tdb
sim_time_seconds
Convert to human calendar time only for display.
The simulation advances to the next causally relevant event rather than applying a universal fixed tick.
Core event categories:
OBSERVATION_EMITTED
OBSERVATION_ARRIVED
TRACK_UPDATED
MESSAGE_SENT
MESSAGE_ARRIVED
BURN_STARTED
BURN_ENDED
LAUNCH
BEAM_STARTED
BEAM_ENDED
INTERCEPT_WINDOW_OPENED
INTERCEPT
IMPACT
THERMAL_THRESHOLD
COMPONENT_FAILURE
REPAIR_COMPLETED
FACTORY_JOB_COMPLETED
REPLICATION_COMPLETED
NETWORK_EDGE_CHANGED
POLICY_EXPIRED
NEGOTIATION_MESSAGE
SCENARIO_TRIGGER
An event record stores:
event_id:
event_type:
event_time:
source_entity_id:
target_entity_ids: []
payload:
causal_parent_ids: []
rng_stream:
physics_model_version:The engine remains continuous/event-driven, but the player may pause at planning epochs.
Suggested planning cadences:
| Context | UI cadence |
|---|---|
| Local terminal engagement | free pause / subsecond replay |
| Cislunar operations | seconds to minutes |
| Inner-system operation | hours |
| System campaign | days to weeks |
| Interstellar approach | months to years |
| Stellar engineering | kiloyears to megayears |
Never let “turn length” alter physical travel or signal times.
Every displayed observation has:
The map should support three time views:
Use a Solar-System barycentric inertial frame for strategic state.
Use local frames where numerically and cognitively useful:
Every state transformation must be explicit and tested.
For a historically grounded or near-real initial system:
For far-future campaigns:
For remote or abstracted regions:
For inactive cargo, known ballistic objects, and broad planning:
For cislunar, giant-moon, Lagrange, and low-energy transfer operations:
For important close encounters or dynamically complex objects:
\ddot{\mathbf x}_i = -\sum_j Gm_j \frac{\mathbf x_i-\mathbf x_j} {\lVert\mathbf x_i-\mathbf x_j\rVert^3} +\mathbf a_{{\rm thrust},i} +\mathbf a_{{\rm radiation},i} +\mathbf a_{{\rm other},i}.
Use:
Enable only when required:
Do not burden ordinary inner-system motion with full GR.
An entity stores:
state_at_t0
propagator_type
maneuver_schedule
next_discontinuity
Its state at time t is computed only when:
This avoids updating millions of dormant objects every tick.
Use explicit simulation for:
Use cohort models for:
A cohort might store:
population_id:
orbit_distribution:
count:
total_mass:
mean_cross_section:
power_distribution:
thermal_distribution:
reliability_distribution:
role_distribution:
network_membership:
attrition_model:Cohorts split into explicit entities when:
Explicit entities may merge back into cohorts after an engagement.
Provide:
Support:
For entity i, compute an approximate future reachable set:
\mathcal R_i(t_f;\Delta v,a_{\max},P,Q,\text{constraints}).
Represent it as:
Reachable sets drive:
Long-duration high-energy actions become projects:
commitment:
target_state_distribution:
departure_window:
arrival_window:
required_delta_v:
required_power_profile:
required_propellant:
accelerator_length:
expected_signature:
abort_deadline:
sunk_cost_curve:This makes early battlefield shaping visible and strategically meaningful.
A conventional 3D spatial hash is insufficient because future trajectory intersections matter.
Use a combination of:
Broad-phase encounter detection should identify candidate pairs before expensive propagation.
A sensor does not “detect an entity.” It produces a measurement.
Pipeline:
physical emission/reflection
→ propagation through space/medium
→ aperture collection
→ detector response
→ noise/background
→ thresholding or raw-data product
→ local processing
→ observation packet
→ communications delay
→ fusion into faction belief state
An observation packet:
observation_id:
emission_time:
measurement_time:
receipt_time:
sensor_id:
sensor_pose:
measurement_type:
measurement_vector:
measurement_covariance:
spectral_band:
integration_time:
raw_snr:
processing_model:
authentication:
provenance_chain:Approximate surfaces by spectral emissivity \epsilon_\lambda and Planck radiance:
B_\lambda(T)= \frac{2hc^2}{\lambda^5} \frac{1}{e^{hc/(\lambda kT)}-1}.
A simplified received spectral power is:
P_{\lambda,{\rm rec}} \approx \frac{\epsilon_\lambda B_\lambda(T)\, A_{\rm projected}\, A_{\rm aperture}\, \Delta\Omega_{\rm geometry}} {R^2}
with a properly derived solid-angle factor in the implementation.
The detector counts photons:
N_s= \int \frac{P_{\lambda,{\rm rec}}}{hc/\lambda} \eta_{\rm det}(\lambda) \,t_{\rm int}\,d\lambda.
Use a selectable detector model. A basic count-limited approximation:
{\rm SNR}\approx \frac{N_s} {\sqrt{N_s+N_b+N_{\rm dark}+N_{\rm read}^2}}.
Detection probability derives from the selected threshold and false-alarm policy.
Model at least:
A Dyson system is not simply “bright against 2.7 K.” It is observed through a structured, hot, crowded environment.
Sensors choose:
A faction can own superb telescopes and still miss a small object because search volume is enormous.
Each propulsion model declares an emission spectrum:
emissions:
thermal_continuum:
spectral_lines:
charged_particles:
neutral_particles:
radio_noise:
coherent_beacon:
exhaust_cone:Plume observability depends on:
A burn event emits evidence that arrives at different observers at different times.
Model:
Model:
In P2/P3:
A configurable abstraction:
\xi_{\rm QI} = \xi_{\rm classical} + \Delta\xi(N_s,N_b,\kappa,\eta_{\rm memory},M)
where \Delta\xi approaches the idealized advantage only under appropriate assumptions.
It cannot:
Distributed sensor nodes may synthesize long baselines when they possess:
Performance is limited by:
Attacks on timing and baseline metrology can reduce an enormous array to independent mediocre telescopes without destroying hardware.
The solar gravitational lens begins near 548–550 AU and continues outward, but each useful station must lie on the focal line opposite a selected distant target.
Model an SGL installation as:
target_star_or_source:
focal_line_unit_vector:
heliocentric_distance:
transverse_stationkeeping:
coronagraph_state:
solar_corona_background:
image_plane_position:Strategic uses:
Limitations:
Use:
Expose:
Multiple observations may correspond to:
Track association should be a real source of uncertainty and computational load.
Hard-SF deception includes:
The engine tracks belief effects, not a generic “jammed” status.
Every message and observation has:
Quantum-secure authentication may improve key security, but endpoints, software, governance, and captured credentials remain vulnerable.
A faction spends:
Define an information-quality metric such as expected reduction in decision-relevant entropy:
U_{\rm obs} = H(\mathcal B_{\rm before}) - \mathbb E[H(\mathcal B_{\rm after})].
Sensor tasking AI should maximize decision value rather than raw detections.
The Sun’s luminosity is not a global mana pool.
Usable power at node i is:
P_{{\rm usable},i} = P_{{\rm generated},i} + P_{{\rm received},i} + P_{{\rm storage},i} - P_{{\rm mandatory},i} - P_{{\rm conversion\ loss},i} - P_{{\rm curtailed},i}.
Power is limited by:
Solar flux at radius r:
F_\odot(r)=\frac{L_\odot}{4\pi r^2}.
Collector output:
P_{\rm col} = F_\odot(r) A_{\rm col} \eta_{\rm col} \cos\theta f_{\rm degradation}.
Track degradation from:
Storage components define:
capacity_J:
max_charge_W:
max_discharge_W:
roundtrip_efficiency:
self_discharge_per_s:
specific_energy_J_kg:
specific_power_W_kg:
failure_energy_release_fraction:
thermal_fraction:Possible technologies are scenario-specific:
Energy capacity and power capacity remain separate.
Transmitter-to-receiver efficiency:
\eta_{\rm link} = \eta_{\rm source} \eta_{\rm optics} \eta_{\rm propagation} \eta_{\rm capture} \eta_{\rm conversion}.
Beam corridors become dynamic infrastructure defined by:
Destroying a receiver can strand an otherwise capable sailcraft.
For thermal node j:
C_j\frac{dT_j}{dt} = P_{{\rm in},j} + P_{{\rm gen},j} - P_{{\rm rad},j} - P_{{\rm conducted\ out},j} - P_{{\rm exported},j}.
Radiation to a background:
P_{\rm rad} = \epsilon\sigma A \left(T^4-T_{\rm bg}^4\right) F_{\rm view}.
Represent an important entity as a graph of thermal nodes:
Edges have conductance and maximum transfer rate.
Components define:
temperature_operating_min_K:
temperature_operating_max_K:
temperature_survival_min_K:
temperature_survival_max_K:
derating_curve:
thermal_mass_J_K:
failure_hazard_curve:Behavior:
A radiator defines:
area_m2:
emissivity_by_band:
operating_temperature_K:
max_temperature_K:
areal_density_kg_m2:
deployment_state:
orientation_limits:
loop_capacity_W:
segment_count:
redundancy:High-temperature radiators are smaller for equal power but require hotter components, high-temperature loops, and more challenging materials.
Radiators are:
Damage modes:
Radiator loss should commonly produce a delayed mission kill, not an instant explosion.
A craft may reduce radiation while accumulating heat:
Q(t+\Delta t) = Q(t) + \left(P_{\rm waste}-P_{\rm radiated}\right)\Delta t.
Maximum concealment time:
t_{\rm hide} \approx \frac{Q_{\max}-Q_0} {P_{\rm waste}-P_{\rm rad}}.
Every method creates costs:
Show thermal concealment as a debt meter:
Current passive signature
Stored thermal debt
Time to mandatory radiation
Predicted heat-dump observability
Capability currently throttled
Represent the mature swarm as several coupled abstractions.
Each population is grouped by:
Promote critical nodes:
Maintain separate but overlapping graphs:
A node can remain connected in one graph and isolated in another.
| Role | Function | Common weakness |
|---|---|---|
| Collector | converts solar flux to electricity/beam energy | thin area, contamination, orientation |
| Mirror/heliostat | redirects light or feeds receivers | phase/pointing, optical damage |
| Beam emitter | propulsion, power, sensing, weapon | cooling, optics, target data |
| Phase coordinator | synchronizes distributed apertures | timing attacks, low redundancy |
| Radiator farm | rejects industrial heat | large cross section, fragility |
| Foundry | refines and manufactures | feedstock/catalyst/tooling dependency |
| Mobile refinery | follows asteroid resources | low throughput, transit vulnerability |
| Compute habitat | planning, simulation, culture | cooling and trusted data |
| Sensor node | passive/active observation | dazzling, low local defense |
| Relay | closes communication/power graph | high betweenness centrality |
| Depot | propellant, spares, munitions | stored-energy hazard |
| Repair cloud | restores surfaces and small nodes | command poisoning, limited feedstock |
| Habitat | population and culture | life-support dependencies |
| Archive/seed bank | continuity | low tactical power, extreme strategic value |
| Statite | non-Keplerian observation/reflector | continuous force balance |
| Mass driver | moves feedstock/projectiles | recoil, alignment, power pulse |
| Starlifter | extracts stellar material | stellar/plasma environment, immense complexity |
Do not summarize the swarm with “percent complete.”
Track:
An attacker may prefer to:
The “swarm fracture” phase begins when there is no longer one reliable system-wide operational graph.
Compute:
The player should be able to inspect why a region is failing:
74% local collector survival, but only 12% usable power because the region lost beam receivers, phase timing, and two radiator loops.
Manufacturing rate is bounded by the tightest constraint:
\dot M_{\rm product} = \min \left( \dot M_{\rm feedstock}, \frac{P_{\rm available}}{e_{\rm process}}, \dot M_{\rm tooling}, \frac{P_{\rm rejectable\ heat}}{q_{\rm waste/kg}}, \dot M_{\rm labor/automation} \right) \eta_{\rm yield}.
Every product uses a recipe:
recipe:
bulk_materials:
iron_kg:
aluminum_kg:
carbon_kg:
silicon_kg:
water_kg:
rare_materials:
catalysts:
energy_J:
waste_heat_J:
machine_hours:
compute_cycles:
cleanroom_class:
firmware_template:
test_time_s:
yield:Scenario presets may aggregate chemistry into fewer categories.
Factories require:
A captured asteroid does not instantly become a factory. Tooling and developmental stages matter.
Repairs consume:
Repair can restore function incompletely, creating degraded or unreliable components.
For self-replicating systems, define a generation interval:
\tau_{\rm rep} = \tau_{\rm extraction} +\tau_{\rm refining} +\tau_{\rm tooling} +\tau_{\rm assembly} +\tau_{\rm test}.
Effective industrial reproductive number:
R_{\rm ind} = n_{\rm viable\ offspring} \, p_{\rm survival} \, p_{\rm resource} \, p_{\rm control}.
Growth rate approximation:
N(t) \approx N_0 e^{rt}, \quad r\approx\frac{\ln R_{\rm ind}}{\tau_{\rm rep}}.
Defenders win containment when they drive:
R_{\rm ind}<1
for long enough that hidden dormant seeds do not restart expansion.
A reproducing seed requires:
This creates vulnerable developmental windows.
Track at least:
The simulation can offer three economy fidelities:
| Fidelity | Resource model |
|---|---|
| Game-like | bulk mass, volatiles, rare materials, nuclear fuel |
| Hard-SF | element/material families plus processing chains |
| Research | isotope-specific inventories and energy intensities |
Terrain is a field over state and time:
\mathcal T = f( \Delta v, t_{\rm transfer}, \text{gravity}, \text{solar flux}, \text{background}, \text{line of sight}, \text{resources}, \text{network coverage}, \text{reachable threats} ).
There are no permanent “space lanes,” but there are:
Characteristics:
Likely assets:
Characteristics:
Characteristics:
Characteristics:
The belt is not a solid obstacle or universal stealth zone.
Characteristics:
Characteristics:
Characteristics:
Characteristics:
Characteristics:
Characteristics:
Characteristics:
The strategic map supports overlays for:
Use composition rather than a rigid inheritance tree.
Entity
├── Identity
├── Faction/Affiliation
├── PhysicalState
├── OrbitPropagator
├── AttitudeControl
├── Structure
├── Power[]
├── Thermal[]
├── Propulsion[]
├── Sensors[]
├── Communications[]
├── Compute/Autonomy
├── Weapons[]
├── Defenses[]
├── Storage[]
├── Manufacturing[]
├── Population/LifeSupport
├── Software/Trust
└── Mission/Policy
An asteroid fortress and a courier may use the same component types with different parameters.
identity:
entity_id: human.mercury.node.0042
name: Asterion Relay
archetype_id: relay_beam_station_v3
creation_time:
serial_lineage:
declared_faction:
true_controller:
transponder_ids:
legal_owner:Ownership and control are separate. A node may be:
physical:
mass_dry_kg:
mass_propellant_kg:
mass_cargo_kg:
center_of_mass_m:
inertia_tensor_kg_m2:
position_m:
velocity_m_s:
attitude_quaternion:
angular_velocity_rad_s:
cross_section_by_aspect_m2:Structure is a graph or coarse mesh:
structure:
modules:
joints:
load_paths:
pressure_vessels:
armor_layers:
spin_sections:
max_linear_acceleration:
max_angular_acceleration:
fatigue_state:power_component:
kind: solar | fission | fusion | storage | beam_receiver | antimatter
rated_output_W:
current_output_W:
efficiency:
fuel_or_flux_dependency:
max_ramp_W_s:
thermal_output_W:
failure_modes:thermal_node:
heat_capacity_J_K:
temperature_K:
operating_range_K:
survival_range_K:
internal_generation_W:
radiator_connections:
conduction_connections:
stored_phase_change_J:propulsion:
kind:
thrust_N:
exhaust_velocity_m_s:
efficiency:
propellant_types:
mass_flow_kg_s:
electrical_or_beam_power_W:
waste_heat_W:
throttle_range:
minimum_on_time_s:
restart_limit:
plume_model:
max_continuous_burn_s:
gimbal_limits:sensor:
modality:
aperture_m:
wavelength_or_band:
field_of_view_sr:
detector_efficiency:
noise_model:
angular_resolution_rad:
pointing_jitter_rad:
integration_modes:
thermal_requirements:
compute_cost:
active_emission:communications:
modality: radio | optical | particle | exotic
transmit_power_W:
aperture_or_gain:
receive_sensitivity:
bands:
bandwidth_bps:
pointing_limits:
encryption_suite:
trust_roots:
relay_modes:
queue_capacity_bits:compute:
effective_ops_s:
power_W:
waste_heat_W:
memory_bits:
model_versions:
planning_horizon_s:
autonomy_level:
cyber_hardening:
integrity_state:Autonomy is not a scalar alone. Define permissions:
authority_envelope:
valid_until:
objectives:
protected_entities:
forbidden_actions:
expendable_mass_limit_kg:
energy_budget_J:
delta_v_budget_m_s:
civilian_risk_limit:
escalation_level:
communication_loss_behavior:manufacturing:
process_capabilities:
tool_precision_m:
throughput_by_recipe:
energy_intensity:
heat_per_kg:
feedstock_ports:
job_queue:
self_replication_stage:
firmware_trust:
quality_control:population:
biological_population:
digital_persons:
dependent_population:
food_days:
water_days:
life_support_margin:
habitat_integrity:
medical_capacity:
cultural_archives:
genetic_ecological_archives:
evacuation_capacity:This component prevents population from becoming a cosmetic number.
| Archetype | Purpose | Defining tradeoff |
|---|---|---|
| Beam-sail interceptor | fast travel in friendly beam network | high speed but infrastructure dependent |
| Independent fusion courier | rapid policy/data/people movement | expensive reaction mass and cooling |
| Mass-driver tug | moves bulk mass and changes orbits | slow, visible, strategically powerful |
| Kinetic bus | deploys many autonomous KVs | vulnerable before dispersal |
| Radiator tender | restores thermal capacity | fragile, irreplaceable during crisis |
| Sensor picket | observation and target designation | cheap but informationally decisive |
| Phase-clock node | array timing and navigation | small physical target, huge graph value |
| Asteroid fortress | buried industry and stores | durable but slow and predictable |
| Mobile foundry | follows resource bodies | low output relative to fixed complexes |
| Habitat ark | population and institutional continuity | enormous signature and support demand |
| Archive seed | reconstructive data/biological store | little immediate combat value |
| Beam director | redirects remote power/weapon beams | cannot operate without source and target data |
| Interceptor cloud | local autonomous point defense | finite propellant and uncertain identification |
| Relativistic probe | reconnaissance/strategic strike | long commitment and negligible terminal agility |
| Alien seed | bootstraps hostile industry | weak before maturation, exponential afterward |
| Alien mature bud | specialized adaptive factory | rare catalyst and lineage dependencies |
Use for:
Characteristics:
Use for:
Ideal power relation:
P_{\rm jet} = \frac{1}{2}\dot m v_e^2, \quad F=\dot m v_e = \frac{2P_{\rm jet}}{v_e}.
Including efficiency:
F\approx\frac{2\eta P_{\rm input}}{v_e}.
Tradeoff:
Support scenario-specific:
Track:
P1/P2 family with configurable:
Do not grant one generic “fusion drive.”
P2:
P2/P3:
A sail receives momentum from external radiation.
For perfect reflection, ideal force:
F\approx\frac{2P_{\rm intercepted}}{c}.
Advantages:
Weaknesses:
A remote beam supplies power to an onboard electric thruster. It trades sail fragility for receiver/propellant requirements.
F=\frac{P}{c}.
They are propellantless only in the reaction-mass sense and are extremely power-intensive.
Mounted mass drivers expel local material, allowing slow repositioning of asteroids and installations.
Track:
Support:
These exchange momentum with celestial bodies rather than creating it.
For a vehicle with fixed exhaust velocity:
\Delta v = v_e\ln\left(\frac{m_0}{m_f}\right).
The engine should distinguish:
A ship with 20 km/s theoretical reserve may be unable to deliver it within the engagement time.
Limits include:
Acceleration and \Delta v are not interchangeable.
Cargo is not teleported between inventory ledgers.
A transfer creates a packet:
cargo_packet:
manifest:
mass_kg:
origin:
destination:
carrier_or_container:
departure_window:
trajectory:
arrival_distribution:
escort_policy:
thermal_requirements:
authentication:Critical cargo classes:
A node may fail because:
The UI should show dependency chains, not merely “out of supply.”
An asteroid orbit change is a project.
Inputs:
A small early \Delta v may produce a large future miss-distance change. This is valuable for:
It does not produce relativistic velocity.
A weapon is a mechanism that transforms:
(M,E,\mathbf p,I) \rightarrow (Q,\Delta\mathbf p,\text{damage},\text{uncertainty})
under geometric, temporal, and engineering constraints.
Every weapon definition includes:
weapon:
physics_class:
damage_channels:
source_mass:
source_energy:
peak_power:
waste_heat:
momentum_reaction:
aiming_model:
launch_signature:
time_of_flight:
guidance:
countermeasures:
collateral_model:
source_provenance:For a diffraction-limited circular aperture, first-minimum scale:
r_{\rm diff} \approx 1.22\frac{\lambda R}{D}.
A more useful effective RMS radius:
w_{\rm eff}^2 = w_{\rm diffraction}^2 + (\sigma_{\rm pointing}R)^2 + (\sigma_{\rm phase}R)^2 + \sigma_{\rm target}^2 + w_{\rm medium}^2.
Where:
I(r,t) \approx \frac{\eta_{\rm total}P(t)} {\pi w_{\rm eff}^2} g(r),
where g(r) is the beam profile.
Absorbed heat:
\dot Q_{\rm abs} = \alpha(\lambda,T,\theta) I A_{\rm illuminated}.
The material model includes:
Lasers can:
Continuous beams:
Pulsed beams:
Array capability depends on:
A Dyson beam is an emergent array state, not a unique weapon entity.
Fixed or predictable targets:
are easier than small maneuvering craft.
At interstellar range, a beam can possess enormous destructive potential and still have poor expected value against an uncertain target.
Constraints:
Constraints:
Shorter-range, high-momentum/thermal systems may arise from nuclear or fusion devices. Treat them as material projectiles with divergence, expansion, and interaction rather than “energy bolts.”
Projectile energy:
E_k=\frac12mv^2
below relativistic regimes.
Minimum ideal acceleration length under constant acceleration:
L=\frac{v^2}{2a}.
Average power over acceleration time t:
\bar P=\frac{E_k}{\eta t}.
Launcher constraints:
An unanchored launcher receives opposite momentum. Stations can exchange recoil with:
Advantages:
Weaknesses:
Components:
Tradeoffs:
A barrage can be successful by forcing target expenditure:
A miss can still be operational damage.
Most mobile combat should center on autonomous expendables.
A bus:
Payload mix:
Model channels rather than terrestrial blast radius:
Atmospheric use adds:
P2 family:
directed_nuclear:
total_yield_J:
directed_fraction:
cone_angle_rad:
projectile_or_plasma_mass_kg:
velocity_distribution:
radiation_fraction:
stand_off_distance:
casing_debris:
source_uncertainty:Use broad scenario-dependent priors. Do not claim historically classified concepts have a settled efficiency.
Track number/mass of:
Model:
Containment loss releases energy where storage fails and may disable the containing infrastructure even without deliberate attack.
E_k=(\gamma-1)mc^2,\quad \gamma=\frac{1}{\sqrt{1-\beta^2}}.
Inputs:
Column density:
\Sigma=\int\rho(s)\,ds.
Expected intercepted mass:
m_{\rm int}=A_{\rm frontal}\Sigma.
Energy in vehicle frame is handled relativistically. Grain impacts are stochastic:
N(>a) = A_{\rm frontal} \int n(a,s)\,ds.
Simulate:
Defense opportunities:
Terminal point defense may be irrelevant, but strategic counterplay begins much earlier.
For head-on illumination:
\nu'=\nu\sqrt{\frac{1+\beta}{1-\beta}}.
Material response uses the frequency in the target frame. At 0.9c, the factor is only about 4.36; an infrared beam becomes ultraviolet, not automatically X-ray. Extreme shifts require \beta much closer to 1.
Categories:
Asteroid weapons are slow, visible projects whose value is leverage and inevitability, not surprise.
Targets:
Effects:
No generic “hacking points.” Every cyber effect requires an access path, compromised trust relation, software vulnerability, or captured component.
Hard-SF defense is layered:
\text{warning} \rightarrow \text{classification} \rightarrow \text{trajectory shaping} \rightarrow \text{interception} \rightarrow \text{point defense} \rightarrow \text{damage tolerance} \rightarrow \text{repair} \rightarrow \text{continuity}.
The cheapest successful defense usually acts earliest.
Evasion changes the target-state distribution.
For a predicted arrival time t_f, a target’s maneuver capability generates a reachable set. The attacker must cover that set with sufficient lethal fluence or intercept probability.
Evasion costs:
A weapon can win by making the defender spend those resources.
Point defense families:
Point defense needs:
Expected survival is resolved over a defense sequence, not a single percentage.
Layers may include:
Outcome depends on:
Relevant properties:
Highly reflective surfaces may lose reflectivity after contamination, heating, or plasma formation.
Use:
Secondary particle production matters.
For charged particle rigidity p/q, deflection is governed by the integrated magnetic field.
A simplified curvature radius:
r_L=\frac{p}{qB}.
A defense must provide enough field-length product to meaningfully alter the path.
Use cases:
Not protected:
Engineering costs:
A local sacrificial screen can:
It also:
Defensive deception includes:
An installation’s survival may depend more on avoiding correct classification than resisting a direct hit.
Critical systems should have:
The attacker should be able to force degraded operation without physically annihilating the network.
A mine has:
mine:
dormant_signature:
wake_conditions:
sensor_model:
activation_latency:
propulsion:
remaining_delta_v:
payload:
authority_policy:
friendly_exclusion_rules:
self_destruct_or_expiry:Threat is:
\Pr(\text{intercept}\mid \text{target track}, \mathcal R_{\rm mine}, \text{detection}, \text{policy}).
Passive sensor/relay that wakes after a trigger.
Stores little active power and performs a late short burn.
Receives remote energy shortly before engagement.
Creates a temporary local column-density hazard.
Forces route changes or point-defense expenditure.
Flags or rejects unauthorized traffic in a network rather than attacking physically.
Creates localized debris/collision risk in dense bound traffic regions.
Threat-dependent:
A planet’s best strategic defense is that civilization remains viable without it.
Continuity planning includes:
The game should explicitly distinguish:
P4 modules may define a field shield, but every implementation must declare:
A field that blocks all matter and radiation at no cost is not allowed, even in the space-opera profile.
A component has:
Entity combat state is a network of components.
| Channel | Typical causes | Typical effects |
|---|---|---|
| Thermal | laser, reactor upset, radiator loss | melting, deformation, throttling, sensor noise |
| Penetration | kinetic particle/projectile | puncture, spall, severed lines, decompression |
| Impulse | impact, ablation, explosion | orbit/attitude change, structural failure |
| Ionizing radiation | nuclear, particles, high-energy photons | electronics upset, material damage, biological dose |
| Electromagnetic | pulse, induced currents, dazzling | sensor/comms/power electronics failure |
| Contamination | dust, coatings, biological/industrial agent | optical loss, thermal-property change, manufacturing defects |
| Software/trust | compromise, replay, malicious update | false orders, unsafe control, rejection of valid data |
| Thermal-cycle/fatigue | repeated operation or evasions | delayed structural/component failure |
| Supply deprivation | blockade, route loss | shutdown despite intact hardware |
When a hit occurs:
Example:
laser strikes radiator segment
→ coating fails
→ emissivity drops
→ coolant loop overheats
→ reactor derates
→ beam transmitter loses phase stability
→ regional power link fails
→ three sailcraft lose acceleration corridor
A unit may be:
AI and UI should reason about mission capability, not alive/dead.
Use hazard functions based on damage and operating stress.
h(t)=h_0(T,\text{load},\text{radiation}) +\Delta h_{\rm damage}.
Examples:
Repair policy prioritizes:
Repair may require shutting down the system and exposing it.
Installations can be:
Captured infrastructure is valuable but risky:
An impact produces a distribution:
\frac{dN}{dm},\quad f(\mathbf v\mid m),\quad A/m,\quad temperature,\quad charge.
At high fidelity, use a fragmentation model. At strategic fidelity, produce cohorts with orbital distributions.
Dense orbital bands may experience collision feedback. Open-space debris disperses and is treated as a transient/probabilistic hazard.
Remote factions do not know true damage.
They infer from:
A target may deliberately mimic destruction.
Remote commanders issue policies. A policy is a bounded grant of authority, not an order: it states what the holder is trying to achieve, what it may and may not do, what it may spend, what it must know before acting, and what to do when the grant lapses or the issuer becomes unreachable.
The single normative schema is §135. This section describes the semantics; §135 defines the fields. Earlier drafts of this document specified the policy record twice, in two incompatible shapes, and neither was a superset of the other. Since policy is the central player verb (ADR-013) and the authority boundary that ADR-004 depends on, there can be only one definition.
Semantically, a policy carries:
Local agents select actions consistent with the latest authenticated, valid policy. An agent that cannot authenticate any current policy is in fallback, and that is a modeled state rather than an exception.
| Scale | Typical latency | Authority |
|---|---|---|
| Component/control loop | microseconds–seconds | onboard controller |
| Tactical swarm | milliseconds–minutes | local autonomous commander |
| Planetary region | seconds–tens of minutes | regional command |
| Inner system | minutes–hours | strategic coordination |
| Outer system | hours–days round trip | regional sovereignty/autonomy |
| Interstellar | years–decades | mission constitution, not direct command |
An edge exists only when:
Messages are queued and transmitted as packets with priority.
Classes:
Bandwidth competition is strategic.
When the graph splits:
A civilization can lose coherence while preserving most hardware.
Human subfactions may use:
Governance affects:
Policy can require:
The player may relax rules at moral, diplomatic, and internal-coherence cost.
Some nodes may be:
Consensus and trust algorithms should have explicit thresholds and costs.
Negotiation messages are delayed and may cross in flight.
A faction may receive:
Treat treaties as distributed state requiring:
Avoid simply giving aliens “better AI.”
Give them different structures:
Human classifiers may misread alien construction as attack or vice versa.
Responsibilities:
Methods:
Responsibilities:
Methods:
Responsibilities:
Methods:
Deterministic control for:
AI sees only its faction belief state.
It must consider:
No enemy AI may query hidden player state.
Each command node has a compute budget.
High-fidelity planning consumes:
Under pressure, AI may use:
This turns computation into an operational resource without simulating individual instructions.
Every significant AI action logs:
decision:
belief_snapshot_id:
policy_id:
candidate_actions:
selected_action:
expected_utility:
dominant_factors:
rejected_reasons:
uncertainty:
model_version:The player can ask:
Why did Ceres Command abandon the depot?
and receive:
Estimated survival after reinforcement was 18%; withdrawal preserved 63% of mobile radiator capacity and complied with reserve policy HN-44.
Use MARL only after deterministic baselines exist.
Suitable bounded tasks:
Requirements:
Factions differ by doctrine:
doctrine:
risk_tolerance:
civilian_weight:
uncertainty_threshold:
preferred_engagement_range:
reserve_fraction:
capture_preference:
escalation_rate:
information_value_weight:
replication_priority:
network_redundancy_priority:
retreat_threshold:This produces behavior differences without cheating.
The player inherits:
Actions:
Events:
Objectives:
Both sides:
Many decisive actions are not recognized as combat until later.
Fighting occurs around:
Objectives:
The adversary reaches useful matter.
The campaign becomes a race between:
\dot M_{\rm friendly\ replacement} \quad\text{and}\quad \dot M_{\rm hostile\ replication}.
The player hunts developmental bottlenecks rather than individual drones.
As conflict reaches the developed system:
The attacker isolates regions and attacks trust.
Effects:
The player decides what must remain connected and what may become an island.
Planets and inner assets may be devastated.
The strategic question becomes:
Outcomes may include:
A low-signature object on a high-inclination orbit is retrospectively identified after a Kuiper sensor failure. It has already released several subobjects. The player controls the Heliocentric Commonwealth’s strategic coordination layer, but regional commands retain sovereignty.
First vertical slice:
Initially unknown:
Disabled:
Primary:
Secondary:
A Neptune regional command fights an engagement that inner-system command learns about four hours later. Focus: autonomy, policy, delayed battle-damage assessment.
A coordinated timing/cyber attack collapses inner-system beam phasing without destroying collectors. Focus: graph restoration, trust, power routing.
An incoming 0.1c probe follows a path through engineered and natural dust. Focus: probabilistic erosion, precursor clearing, track uncertainty, strategic interception.
A dense cislunar infrastructure region risks a collision cascade during conflict. Focus: local orbital debris, civilian traffic, point defense, de-escalation.
Earth is lost early, but most industrial capacity survives. Focus: political legitimacy, continuity, evacuation, whether planetary destruction ends the war.
A hostile control attack causes portions of the Dyson swarm to curtail power. Focus: authentication, network islands, manual recovery, no large fleet battle.
An RKV is detected during acceleration years before arrival. Focus: deterrence, launch-site attack, path contamination, moving targets, negotiation.
Grand-strategy scenario involving stellar-engine trajectories and future close encounters. Focus: intergenerational policy and astronomical battlefield shaping.
Speculative profile comparing several explicit axion/dark-photon coupling models. Focus: how new physics changes counterplay without becoming magic.
The interface must make uncertainty and time comprehensible without drowning the player in equations.
The main screen is a 3D orbital operations map with:
A contact card:
CONTACT K-1047
Probable class: alien developmental foundry (61%)
Alternatives: decoy cluster (24%), natural active comet (11%), unknown (4%)
Observation age: 3 h 18 m
Last sensor: Mars Polar Array
Current predicted position: propagated
3σ uncertainty: 1,420 × 88 × 31 km
Maneuver probability since observation: 37%
Estimated mass: 2.1e8–1.4e9 kg
Expected decision value of next observation: high
Avoid red enemy icons until identification confidence warrants them.
Every object trail may show:
Use distinct line patterns and labels, not color alone.
A timeline panel lists:
Tabs:
The physics tab explains:
The player issues structured intent.
Example:
OBJECTIVE
Prevent confirmed alien industrial mass from establishing a viable factory
inside 2.5 AU through 17 September.
CONSTRAINTS
Preserve 65% of mobile interceptor reserve.
No strategic beam firing within 0.02 AU of inhabited traffic.
Require 90% hostile classification confidence unless local commander
estimates imminent replication.
Prioritize capture of one developmental unit.
AUTHORITY
Ceres Command may spend 2.5e18 J and 14 km/s aggregate interceptor Δv.
Policy expires in 11 days.
AI previews:
For each entity:
Heat flow can be visualized as a Sankey-style diagram.
Show separate graph layers and failure reasons.
Example:
MARS REGION
Physical node survival: 82%
Power connectivity: 71%
Authenticated command connectivity: 29%
Phase-coherent aperture: 8%
Manufacturing recipe compatibility: 63%
Population support margin: 41 days
Replay includes:
This is essential because the player may learn the truth long after an engagement.
Requirements:
Narrative should emerge from:
Avoid exposition dumps that reveal alien truth prematurely.
Move hot kernels to Rust via PyO3 only after profiling:
Do not begin with a premature rewrite.
Alternative: Godot 4 may become appropriate for a packaged game, but the first vertical slice should remain a transparent web/research tool.
flowchart LR
UI[React / 3D Client]
API[FastAPI Control API]
SIM[Simulation Kernel]
EVT[Event Queue]
PHY[Physics Models]
BEL[Belief / Sensor Fusion]
NET[Infrastructure Graphs]
AI[Command AI]
DB[(Parquet / DuckDB)]
CFG[Versioned YAML Config]
UI <--> API
API <--> SIM
SIM <--> EVT
SIM <--> PHY
SIM <--> BEL
SIM <--> NET
SIM <--> AI
SIM --> DB
CFG --> SIM
DB --> API
solarwar/
core/
clock.py
events.py
rng.py
units.py
ids.py
snapshots.py
dynamics/
frames.py
ephemeris.py
kepler.py
nbody.py
low_thrust.py
relativistic.py
reachability.py
encounters.py
physics/
power.py
thermal.py
optics.py
sensors.py
communications.py
kinetics.py
radiation.py
materials.py
fragmentation.py
world/
entities.py
components.py
cohorts.py
resources.py
infrastructure_graphs.py
epistemics/
observations.py
tracks.py
association.py
filters.py
deception.py
trust.py
industry/
recipes.py
factories.py
repair.py
replication.py
logistics.py
command/
policies.py
authority.py
messaging.py
diplomacy.py
ai/
doctrine.py
strategic.py
operational.py
tactical.py
explain.py
scenarios/
api/
tests/
Use a stable priority queue ordered by:
Events never depend on wall-clock timing.
Random outcomes draw from named deterministic streams:
scenario_seed
└── faction
└── entity
└── subsystem
└── event_type
This permits exact replays and counterfactual reruns.
Prefer event-sourced mutations:
A snapshot stores:
Human-readable YAML under version control.
Partitioned Parquet:
scenario_id/year/month/event_type/*.parquet
DuckDB queries Parquet directly.
Zarr or Arrow-compatible storage for:
Manifest plus binary/columnar snapshot; never pickle as the durable public format.
Suggested endpoints:
POST /scenarios/load
POST /scenarios/{id}/run-until
POST /scenarios/{id}/pause
POST /scenarios/{id}/policy
GET /scenarios/{id}/state
GET /scenarios/{id}/belief/{faction}
GET /scenarios/{id}/events
GET /scenarios/{id}/entities/{entity}
GET /scenarios/{id}/tracks/{track}
GET /scenarios/{id}/overlays/{overlay}
POST /scenarios/{id}/counterfactual
WebSocket topics:
Parallelize:
Do not parallelize state mutation without deterministic conflict resolution.
These are aspirational engineering targets and should be profiled against actual scenario complexity.
Scenario mods may define:
Do not permit arbitrary Python execution in untrusted mods. Use declarative schemas and sandboxed expressions.
Every output records:
A changed physics model must not silently load old results as directly comparable.
scenario:
id: cinder-seed
title: The Cinder Seed
epoch_tdb: "2459000.5"
duration_s: "180 day"
physics_profile: hard_sf
seed: 740192
space:
primary_frame: solar_system_barycentric
explicit_radius: "4 AU"
abstract_radius: "1000 AU"
ephemeris:
provider: spice
kernels: []
simulation:
event_driven: true
default_propagator: kepler
close_encounter_propagator: ias15
strategic_integrator: whfast
relativistic_threshold_beta: 0.03
cohort_split_threshold: 0.05
factions:
- id: human-commonwealth
doctrine: human_network_defense
- id: inward-bloom
doctrine: alien_replication_infiltration
victory:
hostile_industrial_R_max: 1.0
human_connected_power_min: 0.55
continuity_clusters_min: 2entity:
id: human.ceres.foundry.01
archetype: asteroid_foundry
faction: human-commonwealth
state:
frame: solar_system_barycentric
epoch_s: 0
position_m: [0, 0, 0]
velocity_m_s: [0, 0, 0]
attitude_q: [1, 0, 0, 0]
mass_dry_kg: 2.4e12
mass_propellant_kg: 1.0e9
propagator:
type: nbody
gravity_sources: [sun, jupiter, mars, earth]
components:
- ref: power.solar.industrial_v4
count: 1200
- ref: thermal.radiator.900K_segment
count: 600
- ref: manufacturing.general_foundry_v3
count: 14
- ref: sensor.passive_ir_20m
count: 3
- ref: communications.optical_relay_v2
count: 4observation:
id:
sensor_id:
faction_id:
event_time_s:
measurement_time_s:
receipt_time_s:
modality: passive_ir
measurement:
bearing_rad: [az, el]
range_m: null
spectrum_bins_W_m2: []
covariance:
matrix: []
snr:
false_alarm_rate:
authentication:
processing_model:
source_event_ids: []track:
id:
faction_id:
state_epoch_s:
state_vector:
covariance:
model_probabilities:
coast:
low_thrust:
high_thrust:
class_probabilities:
faction_probabilities:
intent_probabilities:
observation_ids:
association_entropy:This is the normative policy record. §90 gives its semantics and must not restate its fields.
policy:
id:
version:
supersedes: # null for the first policy in a chain
issuer_id:
recipients: [] # entity or cohort ids; required for authentication
issue_time_s:
valid_from_s:
expires_s:
scope:
region:
phase:
priority:
objectives:
- metric:
sense: # minimize | maximize | hold
weight:
allowed_actions: [] # whitelist; anything absent is prohibited
prohibited_actions: [] # explicit denials that survive whitelist edits
constraints:
resource_ceiling:
energy_J:
power_W:
propellant_kg:
delta_v_m_s:
minimum_reserve:
propellant_kg:
delta_v_m_s:
heat_margin_J:
escalation_ceiling:
protected_entities: []
civilian_protection:
required_confidence: # predicates over the §134 track record
track_class_p_min:
track_faction_p_min:
max_track_age_s:
max_association_entropy:
information_requirements: []
fallback:
behavior:
on: [policy_expired, authority_lost, partition]
signature:
alg:
key_id:
value:Three fields deserve comment because they are the ones an implementation is most likely to get wrong.
supersedes exists because §148 replays authority, not
just physics. Without a revision chain a replay can show what a unit did
but not what it was permitted to do at the time, which is the question a
battle review actually asks.
allowed_actions is a whitelist by construction. A
prohibition list cannot constrain an action the issuer did not
anticipate, and the entire premise of §96 is that the adversary will
find one.
required_confidence is a set of predicates rather than a
scalar because the track record in §134 is not a scalar. It carries
class probabilities, faction probabilities, an age, and an association
entropy, and a rule of engagement that cannot reference them cannot
express “do not fire on an unresolved association” — which is the
distinction between a legitimate interception and an atrocity.
technology:
id: beam_array.optical.phase_coherent_v2
physics_class: P1
status: extrapolated
assumptions:
max_baseline_m: 100000
rms_phase_error_rad: 0.03
rms_pointing_error_rad: 1.0e-9
wavelength_m: 1.064e-6
uncertainty:
distribution: correlated_lognormal
parameters:
countermeasures:
source_ids: [S7, S8, S9, S10]Every sourced parameter has:
parameter:
path: technologies.beam_array.rms_pointing_error_rad
nominal:
unit:
range:
confidence:
source_ids:
interpretation:
extrapolation_factor:
reviewer:
review_date:The first release should prove the simulation’s distinctive causal chain:
\text{physical event} \rightarrow \text{delayed observation} \rightarrow \text{uncertain track} \rightarrow \text{policy decision} \rightarrow \text{autonomous execution} \rightarrow \text{energy / momentum / heat consequences}.
It does not need every Solar System body, every propulsion concept, or exotic physics. It must show that the hard-physics core is already strategically unfamiliar and playable.
The vertical slice is successful when a player can:
Nominal playable space:
0.3\ \mathrm{AU} \le r \le 4.2\ \mathrm{AU}
with abstracted outer-system warning reports.
Explicit major bodies:
The inner limit includes high-flux solar industry without requiring detailed coronal plasma physics. The outer limit includes the main belt and enough transit time to make prediction and logistics meaningful.
Campaign duration:
Time acceleration levels:
pause
1 s/s
10 s/s
1 min/s
10 min/s
1 h/s
6 h/s
1 d/s
7 d/s
30 d/s
Acceleration automatically clamps when:
Target explicit entity counts:
| Category | Vertical-slice target |
|---|---|
| major bodies | 8–15 |
| strategic installations | 200–2,000 |
| explicit craft | 1,000–20,000 |
| grouped craft cohorts | 10,000–1,000,000 equivalent units |
| tracked contacts per faction | 10,000–100,000 |
| queued future events | 100,000–5,000,000 |
| statistical Dyson population | 10^6–10^{10} represented nodes |
The engine must distinguish explicit entities from cohorts so that “one million interceptors” is a legitimate campaign-scale fact without requiring one million high-frequency rigid-body simulations.
The human inner-system network has been at peace for centuries. A faint collection of anomalous bodies, first classified as interstellar debris, has reached the main belt. Some objects begin consuming carbonaceous asteroids and producing low-temperature structures.
The alien expedition has little initial energy infrastructure but high manufacturing efficiency, compact autonomous intelligence, and excellent low-power materials. Humanity controls overwhelming local energy and aperture but is politically fragmented, thermally conspicuous, and dependent on shared timing and beam-routing standards.
The player should not be told that “war has begun.”
Opening interpretations include:
The first campaign objective is to reduce interpretive uncertainty without triggering irreversible escalation.
The default player is not a ship captain. The player represents the System Coordination Directorate, a constrained coalition authority with limited jurisdiction.
The player controls:
The player does not directly control:
Direct tactical control is available in sandbox mode but is not the canonical experience.
A full loop is:
The loop operates at multiple nested periods:
| Loop | Typical period |
|---|---|
| component control | microseconds–seconds |
| local tactical | seconds–minutes |
| planetary theater | minutes–hours |
| interplanetary operational | hours–weeks |
| industrial strategy | months–decades |
| civilizational policy | years–centuries |
The initial interface should expose a compact set of verbs whose effects emerge from the simulation.
Included:
Excluded from the hard-physics vertical slice:
The data model still permits later modules.
The campaign score is a vector, not one number:
V = \left[ C_{\rm metabolism}, C_{\rm population}, C_{\rm autonomy}, C_{\rm information}, C_{\rm legitimacy}, C_{\rm alien} \right].
Where:
Possible endings:
The player compares two observations of a maneuvering tug from different baselines and learns that neither is “now.”
A picket suppresses radiators, gains temporary concealment, then must choose between revealing itself and damaging components.
The player learns that a nearby target can be energetically inaccessible while a distant target has a cheap transfer opportunity.
The player tasks a beam node, sees diffraction and pointing uncertainty, and learns why target state uncertainty can dominate raw power.
The player issues a local defense policy; the unit acts after communication loss according to constraints.
A kinetic salvo forces an alien factory convoy to spend enough \Delta v to miss its rendezvous window.
A small attack fragments a power/timing graph and disables much more capacity than the destroyed hardware alone suggests.
The player decides whether to share uncertain evidence with rival human blocs, trading coalition trust against operational secrecy.
Every consequential outcome must be reconstructable.
The replay system stores:
An event explanation should answer:
This is essential for debugging, balancing, player trust, and scientific use.
Required aggregate metrics:
usable_power_W
unserved_power_W
radiator_margin_W
stored_heat_J
controlled_mass_kg
processed_mass_kg_day
replication_ratio
fleet_delta_v_remaining
median_track_position_error_m
track_calibration_score
command_latency_s
network_connected_component_fraction
factory_throughput_kg_s
population_supported
autonomy_violation_count
civilian_casualties
escalation_index
Required event-level telemetry:
event_id
event_type
objective_time
receipt_time_by_faction
decision_time
execution_time
entities
policy_id
observation_ids
energy_J
momentum_kg_m_s
heat_J
mass_change_kg
confidence_before
confidence_after
outcome_distribution
sampled_outcome
The vertical slice should support:
It should not initially support arbitrary native code mods. Use declarative data and a sandboxed scripting layer so deterministic replay, security, and provenance remain manageable.
The program divides into nine parallel but dependency-linked workstreams.
| Workstream | Responsibility |
|---|---|
| W1 Physics kernel | time, frames, propagation, trajectories, events |
| W2 Estimation | sensors, observations, tracks, covariance, deception |
| W3 Resource metabolism | power, heat, mass, production, logistics |
| W4 Combat | beams, kinetics, defense, damage, repair |
| W5 Networks and governance | graph services, command, trust, policy |
| W6 AI | strategic, operational, tactical, component autonomy |
| W7 Client and visualization | map, timelines, inspectors, replay |
| W8 Content | factions, technologies, scenarios, narrative |
| W9 Verification | tests, calibration, provenance, performance |
4–8 person-weeks.
12–20 person-weeks.
16–28 person-weeks.
12–20 person-weeks.
16–24 person-weeks.
20–36 person-weeks.
20–32 person-weeks.
20–40 person-weeks.
24–40 person-weeks.
16–30 person-weeks.
A serious vertical slice is feasible with a compact interdisciplinary team.
Minimum effective core:
A solo prototype should reduce scope sharply:
The critical path is:
units/provenance
↓
time + events
↓
trajectory propagation
↓
finite-speed observation
↓
belief state
↓
policy/autonomy
↓
resource + combat consequences
↓
UI and scenario
Industrial graphs and richer combat can develop in parallel after the event/belief spine stabilizes.
The project should resist the temptation to start with ship art, technology trees, or exotic weapons. Without the causal spine, those become conventional RTS content sitting on an inaccurate map.
solar-war/
├── pyproject.toml
├── README.md
├── LICENSE
├── docs/
│ ├── master-plan.md
│ ├── physics-charter.md
│ ├── provenance.md
│ ├── adr/
│ └── references/
├── src/solarwar/
│ ├── constants/
│ ├── units/
│ ├── kernel/
│ ├── frames/
│ ├── astrodynamics/
│ ├── propagation/
│ ├── events/
│ ├── sensors/
│ ├── estimation/
│ ├── power/
│ ├── thermal/
│ ├── propulsion/
│ ├── reachability/
│ ├── combat/
│ ├── damage/
│ ├── manufacturing/
│ ├── networks/
│ ├── policy/
│ ├── ai/
│ ├── scenarios/
│ ├── telemetry/
│ └── api/
├── client/
│ ├── src/
│ └── tests/
├── data/
│ ├── physics_profiles/
│ ├── technologies/
│ ├── materials/
│ ├── factions/
│ ├── bodies/
│ └── scenarios/
├── notebooks/
│ ├── benchmark_orbits.ipynb
│ ├── sensor_snr.ipynb
│ ├── beam_damage.ipynb
│ └── calibration.ipynb
├── tests/
│ ├── unit/
│ ├── property/
│ ├── benchmark/
│ ├── scenario/
│ └── performance/
└── tools/
├── provenance_check.py
├── scenario_lint.py
└── replay_diff.py
At minimum, record these decisions explicitly:
Use the terms strictly.
Verification: did the code implement the specified model correctly?
Validation: is the model an adequate representation for its intended purpose?
A mathematically exact implementation of a bad abstraction is verified but not valid.
Every equation exposed by a technology or component must declare dimensions.
A configuration linter should reject:
Recommended implementation:
pint or a lightweight compile-time/runtime unit wrapper
in Python;Depending on fidelity and external flux, test:
\Delta M = M_{\rm imported}-M_{\rm exported}-M_{\rm converted\ to\ radiation}/c^2
\Delta E = E_{\rm incident} + E_{\rm generated} - E_{\rm radiated} - E_{\rm exported}
\Delta \mathbf p = \int \mathbf F_{\rm external}dt + \mathbf p_{\rm imported} - \mathbf p_{\rm exported}.
The game may omit tiny mass-energy conversions at lower fidelity, but the omission must be explicit and bounded.
For a 1 GW ideal waste-heat load at \epsilon=0.9, approximate required radiator areas:
| Temperature | Area |
|---|---|
| 300 K | 2.42\times10^6\ \mathrm{m^2} |
| 600 K | 1.51\times10^5\ \mathrm{m^2} |
| 1200 K | 9.45\times10^3\ \mathrm{m^2} |
These are ideal black/gray-body values before plumbing, view factors, structural mass, degradation, or safety margin.
One microgram of antimatter annihilating with one microgram of matter:
E \approx 1.80\times10^8\ \mathrm J
or about 43 kg TNT equivalent before coupling losses.
At \lambda=1.064\ \mu\mathrm m and R=1\ \mathrm{AU}, first-minimum radius under the simple circular-aperture approximation is approximately:
| Aperture | Radius |
|---|---|
| 1 m | 194 km |
| 10 m | 19.4 km |
| 1 km | 194 m |
| 100 km | 1.94 m |
Real systems add beam quality, phasing, jitter, obscuration, pointing, and target-state uncertainty.
For each sensor model, generate ensembles across:
Measure:
A detector does not receive a single “range.” It receives a performance surface.
Use proper scoring rules:
Display calibration in development dashboards.
An AI that is less accurate but well calibrated may be strategically superior to an overconfident AI.
Validate in layers.
Do not validate a communication link as though it proves weapon lethality. DSOC validates long-distance photon transmission and precision pointing; a damaging beam additionally requires vastly different delivered fluence, dwell, and target interaction.
Test:
For relativistic vehicles, use a separate validated module above a configured \beta threshold rather than silently applying Newtonian formulas.
A component-level thermal graph should be checked against:
Energy emitted as signature must exactly reduce internal thermal energy or derive from an explicit source.
Test limiting regimes:
The replication model should approach logistic or resource-constrained growth, not unbounded exponentials.
For each graph layer measure:
Run attacks by:
Power, communications, timing, trust, and logistics should fail differently.
AI performance is not only win rate.
Track:
Use fixed benchmark seeds and adversarial scenario generation.
Every scenario receives:
A scenario is invalid if it only works because the UI gives the player information that the faction could not possess.
Required load tests:
Profile:
A replay manifest includes:
simulation_version:
git_commit:
scenario_hash:
physics_profile_hash:
data_pack_hash:
rng_algorithm:
rng_stream_seeds:
platform:
floating_point_mode:
start_time:
end_time:Scientific/research mode should support exact environment capture with a lockfile and container image.
Recommended reviewers:
Review comments should be entered into the same provenance/decision system as code decisions.
Each must begin with a rule document answering:
Candidates:
| Grade | Source type | Use |
|---|---|---|
| A | peer-reviewed primary paper, official technical report | parameter or equation |
| B | reputable review, standards document, mission documentation | synthesis and ranges |
| C | preprint with clear methods | provisional parameter |
| D | technical secondary analysis | hypothesis discovery |
| E | wiki, forum, fiction encyclopedia, unsourced video | terminology or inspiration only |
No Grade D/E source may establish a hard-physics parameter without independent confirmation.
Every research claim should be stored as:
claim:
id:
statement:
scope:
confidence:
source_ids:
direct_support:
extrapolation:
competing_evidence:
implementation_effect:
owner:
review_date:This prevents a true statement such as “photon–graviton conversion is theoretically possible” from silently becoming the unsupported implementation claim “a practical gravitational-wave cannon exists.”
Parameter categories:
The UI and telemetry should keep these distinguishable.
Where appropriate, use distributions rather than point values:
radiator_specific_mass:
distribution: lognormal
median_kg_m2: 4.0
geometric_sigma: 2.0
confidence: lowMaintain executable notebooks for:
Notebooks are validation companions, not production code.
| ID | Risk | Likelihood | Impact | Mitigation |
|---|---|---|---|---|
| R1 | physically correct but unplayable | high | critical | progressive disclosure, policy-level controls, tutorials |
| R2 | attractive UI leaks omniscient truth | high | critical | separate data services and faction-scoped APIs |
| R3 | orbital integration dominates CPU | medium | high | lazy propagation, cohorts, multirate methods |
| R4 | covariance/track count explodes | high | high | pruning, mixtures, region aggregates, track-life rules |
| R5 | lasers become one dominant strategy | medium | high | pointing, uncertainty, heat, apertures, occlusion, counterforce |
| R6 | kinetic spam overwhelms simulation | high | high | cohort salvos, event aggregation, terminal refinement |
| R7 | industrial replication becomes runaway and trivial | high | high | full mass/power/heat/logistics constraints |
| R8 | exotic tech collapses counterplay | medium | critical | confidence profiles and pre-release trivialization review |
| R9 | AI cheats through objective state | high | critical | capability-scoped interfaces and audit logs |
| R10 | AI is opaque or politically incoherent | medium | high | policy/explanation system and doctrine tests |
| R11 | source drift or fabricated precision | high | high | provenance schema, ranges, review dates |
| R12 | network graphs become incomprehensible | medium | high | layer isolation, summaries, causal explanations |
| R13 | campaign lacks human stakes | medium | high | population, legitimacy, continuity, narrative |
| R14 | user cannot read uncertainty | high | high | visual grammar, plain-language interpretation |
| R15 | accessibility arrives too late | medium | high | acceptance tests from first client prototype |
| R16 | save incompatibility blocks iteration | medium | medium | versioned schemas and migrations |
| R17 | user mods compromise determinism/security | medium | high | declarative packs and sandboxed scripts |
| R18 | research mode is mistaken for prediction | medium | high | explicit scope, uncertainty, and fictional labels |
| R19 | real-world weapon detail becomes inappropriate | low | high | remain system-level; avoid actionable contemporary construction |
| R20 | lore drives equations rather than the reverse | high | medium | physics charter and ADR review gate |
A change to the physics core requires:
Before adding any P2–P4 technology, answer whether it trivializes:
If yes, the technology needs narrower scope, a strong cost, a countermeasure, or a separate scenario universe.
The simulation may depict catastrophic civilizational conflict, but its primary analytical focus should remain:
Do not reward extermination as the default optimal policy. Make irreversible harm visible through population, culture, archives, habitats, biospheres, and legitimacy.
Alien systems should not be presumed hostile solely because they are unfamiliar.
The product should never label P3/P4 features “scientifically accurate.”
Preferred labels:
The simulation can be imaginative without laundering imagination into fact.
constants:
c_m_s: 299792458.0
G_m3_kg_s2: 6.67430e-11
sigma_SB_W_m2_K4: 5.670374419e-8
h_J_s: 6.62607015e-34
k_B_J_K: 1.380649e-23
AU_m: 149597870700.0
solar_luminosity_W: 3.828e26
solar_mass_kg: 1.98847e30
standard_gravity_m_s2: 9.80665
tnt_J_kg: 4.184e6Use a source and version for astronomical constants; do not scatter constants through code.
physics_profile:
id: hard_sf_v0
gravity:
model: newtonian_nbody
relativistic_threshold_beta: 0.01
communications:
propagation_speed_m_s: 299792458.0
ftl: false
thermal:
enforced: true
momentum:
enforced: true
sensors:
objective_visibility: false
photon_budget: true
quantum_illumination:
enabled: false
dark_sector:
enabled: false
artificial_gravity:
enabled: false
force_fields:
enabled: false
artificial_black_holes:
enabled: falseThese are implementation bands, not claims that all examples are feasible.
| Band | Effective exhaust velocity | Typical role |
|---|---|---|
| chemical-like | 2–5 km/s | local high-thrust maneuver |
| nuclear thermal-like | 7–15 km/s | heavy logistics |
| electric/plasma-like | 20–200 km/s | efficient low-thrust transport |
| fusion extrapolation | 300–10,000 km/s | fast interplanetary/interstellar precursors |
| beam sail | externally determined | prepared rapid corridors |
| relativistic | >0.01c | strategic, rare |
Every entry also needs thrust, power, efficiency, mass, thermal load, and maturity. Exhaust velocity alone is insufficient.
| Class | Effective aperture/baseline |
|---|---|
| local craft | 0.1–10 m |
| strategic craft | 10–100 m |
| installation | 100 m–10 km |
| distributed regional | 10–10,000 km baseline |
| Dyson-scale | scenario-defined, coherence-limited |
| Radiator temperature | Qualitative effect |
|---|---|
| 100–250 K | low signature per area, enormous area |
| 250–500 K | habitat/electronics regime |
| 500–1000 K | compact high-power systems, harder materials |
| 1000–2000 K | extreme high-temperature radiators |
| >2000 K | specialized/refractory/speculative engineering |
Higher temperature reduces required area strongly but can increase material difficulty and short-wavelength detectability.
Even mature systems should not attain mathematical perfection.
Suggested scenario-tunable floors:
uncertainty_floors:
clock_fractional_error:
low: 1.0e-18
high: 1.0e-14
beam_pointing_rad:
low: 1.0e-12
high: 1.0e-6
phase_error_rad:
low: 1.0e-4
high: 1.0
navigation_position_m:
low: 1.0e-3
high: 1.0e6
classification_error_probability:
low: 1.0e-6
high: 0.5These are design ranges, not universal predictions. Scenarios must justify values relative to sensing geometry and technology.
damage_state:
structure:
integrity_fraction:
fracture_risk:
thermal:
node_temperatures_K:
coolant_inventory_kg:
radiator_area_m2:
heat_storage_J:
power:
generation_W:
storage_J:
bus_capacity_W:
propulsion:
thrust_fraction:
propellant_kg:
pointing_authority:
sensing:
aperture_fraction:
noise_multiplier:
alignment_error_rad:
compute:
capacity_ops_s:
error_rate:
communications:
bandwidth_bps:
authentication_state:
manufacturing:
throughput_fraction:
contamination:
population:
supported:
at_risk:Every scenario should declare fewer than roughly 20 “hero parameters” that materially define its character. The rest should inherit profile defaults.
Examples:
This keeps scenario tuning interpretable.
The vertical slice passes when:
A player can win by at least four distinct strategies:
The following must all be viable losses:
After the tutorial, representative players can correctly answer:
Create typed quantities, canonical constants, serialization, and dimensional tests.
Done when: a configuration with incompatible dimensions fails at load.
Implement pause, acceleration, event epochs, and deterministic ordering.
Done when: events with equal timestamps resolve by documented stable priority.
Component-based IDs, lifecycle, parent/child relationships, cohort representation.
Two-body analytic coast plus selected N-body bodies.
Emission, path calculation, arrival event, packet loss, bandwidth, authentication metadata.
Objective state, faction belief state, event queue, random streams.
Planck spectrum, projected area, orientation, emissivity.
Aperture, band, exposure, detector/background noise.
Threshold, false alarm, observation object.
Initial orbit determination or simplified estimator.
Ellipsoid/tube and timestamp.
Interacting multiple-model coast versus thrust.
Alternative association and class probabilities.
No objective-state leakage.
All components emit waste heat.
Stefan–Boltzmann output, orientation, damage.
Capacity, temperature, phase-change option.
Retract or throttle radiators and accumulate debt.
Throttle, degrade, shut down, destroy.
Emitted heat becomes sensor signal.
Diffraction, beam quality, pointing, target uncertainty.
Absorption, heating, rotation, ablation abstraction.
Launch, coast, terminal \Delta v, impact.
Policy-triggered maneuver and propellant cost.
Radiator, sensor, power, propulsion.
Delayed observation of outcome.
Power, communications, timing, logistics.
Capacity and priority loads.
Immediate and cascade effects.
Local survival under partition.
Mass, power, heat, time.
Growth under constrained resources.
Spare parts, tender, restoration.
Objectives, constraints, expiry, authority.
Threat response under current belief.
Continue, retreat, hold, or seek contact.
Beliefs, policy clause, action, expected utility.
Prohibited targets and damage ceilings.
Forged authority and trust degradation.
Chronological, faction-local, confidence tagged.
Bodies, trajectories, contacts, timestamps.
Select “known as of” time.
Estimate, covariance, hypotheses, observations.
Heat sources, sinks, margin, projected limit.
Accessible intercept envelopes.
Layered graph and cascade explanation.
Structured constraints with plain-language preview.
Objective and faction perspectives.
Full strategic operation without the 3D map.
The first end-to-end demonstration should be intentionally small:
The demo is complete only when the player acts on an uncertain old observation and later learns whether the decision was correct.
Across the four external reports and the prior synthesis, these ideas survive audit and should define the simulation:
Correction: a uniform rigid shell has no restoring force for displacement and faces extreme structural/control problems, making it a poor canonical design. The broader claim that every possible shell/ring/bubble configuration is mathematically impossible is too strong; specialized mass distributions, charged systems, active control, radiation-supported structures, and multi-body configurations have been explored.
Correction: sustained high-power activity is difficult to hide, but detection is an SNR and search problem. Short-term thermal concealment, directional emission, background confusion, occultation, low-power operation, and uncertain localization remain meaningful.
Correction: no universal range exists. Diffraction, aperture, wavelength, beam quality, phasing, pointing, target-state uncertainty, dwell, and material response determine performance. Deep-space optical communications demonstrate precise photon links across hundreds of millions of kilometers, although communication does not prove destructive fluence.
Correction: they are strategically useful regions, not universal gates. Denial should be represented with reachable sets, service dependencies, protected destinations, and predictable rendezvous geometry.
Correction: integrated energy is only one constraint. Coupling power, acceleration distance, material stress, beam geometry, efficiency, and heat are decisive.
Correction: quantum illumination provides a conditional error-exponent advantage under specific noisy, lossy detection assumptions and generally requires an appropriate retained idler/quantum memory and receiver. It does not provide FTL, perfect detection, or immunity to geometry.
Correction: planets remain enormous stores of mass, population, biosphere, culture, thermal inertia, and industry. They are poor single points of failure but not irrelevant.
The simulation’s distinctive question is:
Can a civilization preserve a distributed metabolism of matter, power, cooling, information, coordination, manufacturing, and population while an adversary attacks the causal links between them?
The hard-SF game is not diminished by excluding gravity cannons. It becomes more unusual:
The following sources are suitable starting points for the project’s evidence ledger. Primary papers and official technical material should be linked in the repository by DOI, report number, or archival identifier.
Resolution status. Twenty of the thirty-two entries
below name a specific work and have a matching record in
reference_ledger.bib. Twelve do not: S13, S14, S15,
S18, S20, S21, S22, S23, S25, S28, S29, S30 describe a
category of source (“primary papers on…”, “standard texts
plus…”) rather than a citation. They are unresolved placeholders, and
they are listed here rather than quietly carried, because §193 and §194
forbid presenting a category as if it were provenance. Inventing BibTeX
records to satisfy a reference check would be the exact failure R11
names.
Four of the twelve — S18, S21, S22, S23 — are cited
by source_ids in the starter configuration, so those
parameters currently claim provenance that does not resolve to a
document. Resolving them is a Priority A research item and
blocks the physics-core freeze in §182.
A provenance check that reads only this document will report these as
satisfied, because the section headings exist. A check that also reads
the .bib will not. Write the second kind.
Freeman J. Dyson, “Search for Artificial Stellar Sources of Infrared Radiation,” Science 131, 1667–1668 (1960). DOI: 10.1126/science.131.3414.1667.
Use for: original energy-harvesting/waste-radiation technosignature concept.
Jason T. Wright, “Application of the Thermodynamics of Radiation to Dyson Spheres as Work Extractors and Computational Engines, and their Observational Consequences,” arXiv:2309.06564 (2023).
Use for: work extraction, waste heat, temperature reservoirs, nested-shell caveats.
Macy J. Huston and Jason T. Wright, “Evolutionary and Observational Consequences of Dyson Sphere Feedback,” arXiv:2110.13887 (2021).
Use for: radiative feedback on stars and observational assumptions.
Colin R. McInnes, “Ringworlds and Dyson spheres can be stable,” arXiv:2502.12806 (2025); Colin R. McInnes, “Stellar engines and Dyson bubbles can be stable,” arXiv:2603.00203 (2026); and S. Habib Mazharimousavi, “Stability of neutral and charged Dyson shells around Reissner–Nordström compact objects,” arXiv:2602.17728 (2026).
Use for: rejecting the overbroad statement that all non-swarm configurations are simply “dynamically forbidden.” These are special theoretical configurations, not evidence that a rigid Sun-enclosing shell is good engineering. Treat recent preprints cautiously until peer review and independent analysis.
Hanno Rein and David S. Spiegel, “IAS15: a fast, adaptive, high-order integrator for gravitational dynamics, accurate to machine precision over a billion orbits,” MNRAS 446 (2015). DOI: 10.1093/mnras/stu2164.
Use for: adaptive high-accuracy orbital integration.
Hanno Rein and Daniel Tamayo, “WHFast: a fast and unbiased implementation of a symplectic Wisdom–Holman integrator for long-term gravitational simulations,” MNRAS 452 (2015). DOI: 10.1093/mnras/stv1257.
Use for: long-term symplectic propagation.
NASA/JPL, Deep Space Optical Communications mission documentation, completed September 2, 2025.
Use for: deep-space optical link budgets, precision pointing, aperture, detector, and distance benchmarks. Do not use as direct evidence of weapon damage.
NASA/JPL DSOC technical documentation on the 1 m, 1,064 nm uplink; 4 W, 1,550 nm flight laser; photon-counting receiver; and precision pointing.
Use for: optical link and pointing sanity checks.
S.-H. Tan et al., “Quantum Illumination with Gaussian States,” Physical Review Letters 101, 253601 (2008). DOI: 10.1103/PhysRevLett.101.253601.
Use for: conditional 6 dB error-exponent advantage in bright-noise, low-reflectivity target detection with optimal joint reception.
Giacomo De Palma and Johannes Borregaard, “Minimum error probability of quantum illumination,” Physical Review A 98, 012101 (2018). DOI: 10.1103/PhysRevA.98.012101.
Use for: optimality and the importance of access to quantum memory.
NASA Small Spacecraft Systems Virtual Institute, State-of-the-Art reports and thermal-control guidance.
Use for: thermal balance, radiators, heat pipes, coatings, and engineering constraints.
Thiem Hoang et al., “The Interaction of Relativistic Spacecrafts with the Interstellar Medium,” The Astrophysical Journal 837, 5 (2017); arXiv:1608.05284.
Use for: gas/dust heating, erosion, implantation, radiation, and shielding for \sim0.2c craft.
Peer-reviewed or primary preprint studies on dust/gas shielding and Starshot-class vehicle survivability.
Use for: uncertainty ranges and comparison with S12.
NASA NIAC/technical work on superconducting magnetic radiation shielding, including CREW HaT-related studies.
Use for: charged-particle deflection, mass, geometry, induced forces, and engineering limits. Do not generalize to neutral kinetics or photons.
NASA and related primary technical studies of antiproton-catalyzed microfission/fusion propulsion and storage.
Use for: antimatter as a scarce trigger/catalyst concept rather than an assumed bulk explosive.
Matthew E. Caplan, “Stellar Engines: Design Considerations for Maximizing Acceleration,” Acta Astronautica 165, 96–104 (2019). DOI: 10.1016/j.actaastro.2019.08.027.
Use for: passive and active stellar-engine acceleration and megayear strategic timescales.
Slava G. Turyshev and collaborators, NASA NIAC and peer-reviewed Solar Gravitational Lens mission studies.
Use for: target-specific focal-line geometry beginning around 550 AU, imaging, communications, and mission architecture.
Primary GR/QED papers on photon–graviton conversion and inverse-Gertsenshtein high-frequency gravitational-wave detection.
Use for: weak conversion physics and detector concepts. Not evidence of a practical weapon.
“Towards a No-Go Theorem for Rays Forming Black Holes,” Physical Review Letters 133, 041401 (2024), and associated preprint.
Use for: vacuum polarization/Schwinger-effect challenge to black holes formed from light.
Don N. Page and other 2024–2025 responses disputing the generality of the no-go result.
Use for: marking artificial black-hole formation as theoretically disputed rather than settled engineering.
Particle Data Group, current review of Dark Matter and searches (2025 edition or later).
Use for: candidate uncertainty, interaction constraints, and absence of a confirmed manipulable dark-matter technology.
Primary papers proposing axion–photon parametric resonance in external fields.
Use for: speculative detector/astrophysical effects only.
Primary follow-up work showing plasma/conductivity or environmental suppression of proposed resonance mechanisms.
Use for: competing evidence and caution against “dark-matter ignition” extrapolations.
NASA Distributed Spacecraft Autonomy and related mission/technology publications.
Use for: distributed planning, onboard coordination, fault handling, and light-delay-driven autonomy.
Primary optimal-control and reachable-set literature for spacecraft under bounded thrust and uncertainty.
Use for: mine/interceptor threat envelopes and fast operational overlays.
Donald J. Kessler and Burton G. Cour-Palais, “Collision Frequency of Artificial Satellites: The Creation of a Debris Belt,” Journal of Geophysical Research 83(A6), 2637–2646 (1978).
Use for: collision cascades in bound orbital regimes, not universal free-space walls.
DE-STAR, DE-STARLITE, and Starlight primary papers and NASA-supported studies.
Use for: modular phased arrays, asteroid ablation, beam propulsion, aperture scaling, and engineering architecture.
Standard special-relativity texts plus primary high-energy-material-interaction literature.
Use for: (\gamma-1)mc^2, Doppler transformations, particle showers, and target response.
NASA/ESA space-domain-awareness and conjunction-assessment technical standards.
Use for: state covariance, propagation, encounter frames, and collision probability.
Primary power-systems, flow-network, cascading-failure, and multilayer-network literature.
Use for: Dyson network degradation, islanding, restoration, and nonlinear cascades.
T. Kelsall, J. L. Weiland, B. A. Franz, W. T. Reach, R. G. Arendt, E. Dwek, H. T. Freudenreich, M. G. Hauser, S. H. Moseley, N. P. Odegard, R. F. Silverberg, and E. L. Wright, “The COBE Diffuse Infrared Background Experiment Search for the Cosmic Infrared Background. II. Model of the Interplanetary Dust Cloud,” The Astrophysical Journal 508, 44–73 (1998). DOI: 10.1086/306379.
Use for: the zodiacal background term N_b in §20.2, which §20.3 requires but does not supply. The smooth-cloud fit gives dust temperature T_d(R)=T_0R^{-\delta} with T_0\approx286 K and \delta\approx0.467, and density falling as R^{-\alpha} with \alpha\approx1.34.
At the aperture and integration times in the starter configuration, zodiacal background exceeds detector dark current and read noise by four to five orders of magnitude. Sensor detection limits are set by this term and essentially not at all by the detector-noise fields the component schema carries. Verify the parameters against the publisher before treating any of them as calibrated.
Ch. Leinert, S. Bowyer, L. K. Haikala, M. S. Hanner, M. G. Hauser, A.-Ch. Levasseur-Regourd, I. Mann, K. Mattila, W. T. Reach, W. Schlosser, H. J. Staude, G. N. Toller, J. L. Weiland, J. L. Weinberg, and A. N. Witt, “The 1997 reference of diffuse night sky brightness,” Astronomy and Astrophysics Supplement Series 127, 1–99 (1998). DOI: 10.1051/aas:1998105.
Use for: calibrating the single scale factor in the background model against tabulated brightness versus solar elongation, and for the empirical basis of the solar-exclusion constraint. Verify against the publisher before treating as calibrated.
Build Solar War first as:
Implement, in this order:
The prototype succeeds when a player can truthfully say:
I did not lose because the enemy had more hit points. I lost because my estimate was stale, my beam network was out of phase, my interceptors spent their maneuver budget on a decoy, my damaged radiators forced the belt foundries offline, and the alien factories crossed their reproductive threshold before the coalition agreed on what they were.
That is the game the physics is pointing toward.