# Shipped weapon prices and balance The five independent weapon mods use the original game's credit scale. The first three initial example prices of 6,500, 14,000 and 22,000 made reusable upgrades cheaper than much weaker original equipment. The revised prices preserve their firing, damage, scripts, sounds and artwork. | Mod weapon | Price | Place in the original progression | | --- | ---: | --- | | Pulse Cannon | 185,000 | Just above the 175,600-credit Micro Missile primary upgrade. It adds similar sustained damage and also adds a spread burst every third volley. | | Seeker Swarm | 285,000 | Above the 250,650-credit Mini Gun. Its three missiles track air and ground enemies and hits fragment into at most two nearby enemies. It remains below the 512,850-credit instant Turret. | | Ion Lance | 425,000 | Below the Turret and the 950,000-credit Death Ray. Its lower damage per target trades against immediate hits and the ability to pierce several enemies in one column. | | Lightning Cannon | 825,000 | Above the original 725,000-credit Pulse Cannon and below the 950,000-credit Death Ray. Its strong immediate forward hit can chain to three nearby enemies, but it needs an initial target in its aiming lane and the chain has a strict 48-pixel reach. | | Lightning Shield | 155,000 | A supplementary primary below the 175,600-credit Micro Missile. It adds only a little damage and reaches roughly 12 pixels beyond the pilot's hull; its value comes from covering close airborne threats in every direction while the other guns fire. | Pulse Cannon is always equipped and fires alongside other primary guns. Seeker Swarm, Ion Lance and Lightning Cannon occupy the selected special slot and fire with Fire or Special while selected. Lightning Shield is always equipped and pulses only while Fire is held; it does not occupy the selected slot. All five are reusable, consume no ammunition and have a maximum inventory count of one. Each equipment definition includes a shop description stating these controls and its target behavior. ## Controlled damage observations The local benchmark loads the original asset catalog and original registered weapons, plus eight shipped weapon/enemy packages. Every weapon runs through the real `World::step` simulation and real scripts at difficulty 2. Each scene holds Fire for 700 steps, exactly 30 seconds at 70/3 Hz, against 32×32 fixtures with 1,000,000 health. The pilot remains at the initial position with no other weapons equipped. Ground fixtures use a test-only movement callback to cancel the normal one-pixel terrain scroll after each collision pass. The numbers below include travel delay and misses during that 30-second window. They measure health lost per second, rather than nominal damage divided by cooldown. | Weapon | Price | Aligned air damage/s | Aligned ground damage/s | Air target 76 pixels to the right damage/s | | --- | ---: | ---: | ---: | ---: | | Original Forward Guns | 12,000 | 23.13 | 23.13 | 0 | | Original Plasma Guns | 78,800 | 4.67 | 0 | 0 | | Original Micro Missile | 175,600 | 23.07 | 23.07 | 0 | | Original Mini Gun | 250,650 | 12.57 | 12.57 | 16.27 | | Original Turret | 512,850 | 19.50 | 0 | 19.50 | | Original Pulse Cannon | 725,000 | 38.50 | 38.50 | 0 | | Original Death Ray | 950,000 | 80.00 | 80.00 | 0 | | Original Forward Laser | 1,750,000 | 266.67 | 266.67 | 0 | | Mod Pulse Cannon | 185,000 | 24.00 | 24.00 | 0 | | Seeker Swarm | 285,000 | 23.40 | 23.40 | 23.40 | | Ion Lance | 425,000 | 26.67 | 26.67 | 0 | | Lightning Cannon | 825,000 | 41.60 | 41.60 | 0 | | Lightning Shield | 155,000 | 0 | 0 | 0 | The original forward laser's native beam damage pass reaches ground enemies despite its historical air target metadata; the observations use its actual behavior. The original turret selects airborne enemies. Original weapons retain their native update and collision paths throughout this comparison. Equipping Pulse Cannon with the starter Forward Guns produced 46.33 damage/s against either aligned target, compared with 46.20 for Forward Guns plus Micro Missile. Pulse therefore belongs beside that original primary upgrade, rather than below the 12,000-credit starter guns. Scripted angled shots also reached a second target in the cluster scene. Seeker Swarm delivered 23.40 damage/s to an offset airborne or ground target. In a tight three-enemy cluster, it delivered 23.40 to the primary target plus 7.80 to each of two neighbors: 39.00 combined. Its fragmentation is bounded; it does not damage every enemy on screen. Ion Lance delivered 26.67 damage/s to each of two vertically separated targets in the same column: 53.33 combined. It delivered 80.00 combined across three overlapping column targets. It dealt zero damage to targets outside its launch column. It is a brief aimed beam, rather than a screen-wide attack. Lightning Cannon fires every 18 ticks and hits the first target for 32 damage. In a chain scene with 40 pixels between target centers, it delivered 41.60, 26.00, 15.60 and 10.40 damage/s to four distinct targets, for 93.60 combined. A fifth neighboring target took zero damage. Each hop chooses the nearest living, previously unhit target within 48 pixels of the previous hit; it can chain through air and ground targets and never revisits a target. It missed an isolated target 76 pixels to the right of its narrow forward acquisition lane. Its 825,000-credit price reflects better single-target output than the original Pulse Cannon plus bounded cluster utility, while staying below the Death Ray's 80.00 aligned damage/s. Cluster performance alone does not guarantee campaign performance: spaced enemies break the chain and weak targets reduce its useful damage through overkill. Lightning Shield cannot reach the normal distant fixtures. Against a stationary aircraft with its hull 28 pixels from the pilot's center, it delivered **5.87 damage/s**. The equivalent ground fixture took zero damage. Against five close aircraft it dealt 5.87 to each of the four closest targets, for 23.47 combined, and zero to the fifth. The 28-pixel distance is measured to the nearest point on the enemy hull, so it reaches only about 12 pixels beyond the pilot's own hull. Its 155,000-credit price treats this as supplemental coverage near the ship, below the Micro Missile and mod Pulse Cannon upgrades. Its short reach requires dangerous proximity, and it provides no protection from collisions or bullets. Firing alongside Forward Guns preserves its 5.87 close-target damage/s; selecting another special never disables it. Its pulses consume no equipment. ## Economy and limits Stage 2 adds two reusable selected specials, measured separately through the same real `World::step` and script path for 700 ticks (30 seconds). **Railburst Cannon**, priced at **685,000**, delivered 44.80 damage/s to an aligned air or ground target and 102.40 combined across its three-target forward column. It dealt zero damage to off-axis fixtures. Its narrow alignment requirement and finite penetration put it below Lightning Cannon's more flexible chain utility. **Depth Charge**, priced at **525,000**, delivered 36.00 damage/s to an aligned ground target and 74.00 combined in its bounded ground cluster. Air and off-axis fixtures took zero damage. With starter guns, the corresponding single-ground results were 67.93 and 59.13 damage/s. These prices reflect their specialist roles; campaign missions do not loan or award either item. The complete observations and fixture constraints are in [Railburst](../mods/iron_coast_railburst/validation/balance.json) and [Depth Charge](../mods/iron_coast_depth_charge/validation/balance.json). Controlled first-mission runs starting with 100 energy and zero credits earned 42,775 credits at difficulty 1 and 59,025 at difficulty 2 with starter guns. The in-game registration flow starts with 10,000 credits and 75 energy, matching the original hangar setup. Compared with the latter controlled gross reward, the first three prices represent approximately 3.13, 4.83 and 7.20 such payouts. Lightning Cannon costs about 13.98 and Lightning Shield about 2.63 such payouts. Repairs and other purchases increase the saving time; later missions have different rewards. This comparison sets a progression tier and does not promise an exact purchase mission. Stationary fixtures favor perfect alignment and long-lived targets. They do not establish equal campaign difficulty, measure moving-target accuracy, account for overkill against weak enemies or quantify projectile travel time against fast enemies. The benchmark also isolates weapons; real pilots can combine several primaries with one selected special. These prices are concrete initial balance choices, not an assertion that every loadout is equally strong. Iron Coast Mission 1 intentionally supplies a free Pulse Cannon loan if the pilot does not already own one. The mission returns the loan at its end while preserving previously owned equipment. The trial therefore helps this mission without granting a permanent shop upgrade or a repeatable resale reward. ## Reproduce Run the local-only test from the repository root with the original catalog: ```sh RAPTOR_TEST_DATA="$PWD/data" RAPTOR_BALANCE_REPORT="$PWD/.reference/weapon-balance.json" \ cargo test --release \ --no-default-features --test weapon_balance -- --ignored --nocapture ``` `RAPTOR_TEST_DATA` can override the catalog directory. The optional JSON report records all 120 observations: seventeen weapons in six scenes, the three original primary upgrade comparisons with Forward Guns, four additional proximity/chain scenes for each lightning weapon, and four lightning/Forward Guns comparisons. Assertions check all-target homing, column piercing, off-axis beam misses, target survival and unchanged pilot shields. The test uses the Rust engine without SDL or C++. The bundled original data is tracked; locally written reference reports stay outside Git. The portable weapon tests additionally check range boundaries, chain gaps, repeated-hit exclusion, kills, cooldown, absence of input, removed equipment, combined loadouts and deterministic continuation. The opt-in visual proof uses the actual package icons, original palette and public arc renderer in SD and HD. It writes local, ignored captures: ```sh cargo test --locked --no-default-features --test weapons_mods \ lightning_mods_render_real_icons_and_discharge_arcs_in_sd_and_hd \ -- --ignored --nocapture ``` Both packages include a numeric `balance-report.json`; these observations do not include original game artwork or catalog data.