Design: Aim Assist baselines + Impact / Mag / Range bands
Status: Approved (hybrid approach 3) — 2026-10-20
Scope: Close AA catalog refresh + TBD-014 as qualitative band sheets. Float mapping stays a later TBD.
Authority after implement: FS-GUN-001 / 007 / 008 (+ new band section) · GDD aim-assist / modular chapters
1. Goals
Section titled “1. Goals”- Align AA and gun stats with Class → Receiver → Frame → modules (modules never own AA).
- Publish a complete Receiver AA baseline table (every Class × Receiver, including three Gatlings).
- Close TBD-014 with Impact / Mag / Range relative bands per Receiver × Frame (Class-keyed for Gatling).
- Keep cadence numbers already locked in FS-GUN-007; do not reopen RPM / charge / draw here.
2. Non-goals
Section titled “2. Non-goals”- Numeric float AA or I/M/R sheets
- Parts writing AA
- Frames rewriting AA or Fire Mode
- Demo Mod UI
- Bipod kits (none in Year-1)
3. Ownership (contract)
Section titled “3. Ownership (contract)”| Owner | Data key | Owns |
|---|---|---|
| Receiver | DA_TFA_GunReceiver = Class × Receiver |
Fire Mode, CadenceUnit, DefaultBurst, AA Mag / Stick / Rot / Strafe, ReticleFamily, Stance |
| Frame | DA_TFA_GunFrame = Receiver × Frame, or Class × Receiver × Frame if Gatling |
Cadence number, recoil pattern, Impact / Mag / Range band bias |
| Parts | Class × Receiver × Socket × Variant | Non-AA dials only (Range, Mag size, Optic ADS, Stock Stability/Sway/Kickback, Grip handling, …) |
Hard rules
- Parts never write Rotation / Strafing / Magnetism / Stickiness.
- Frames never rewrite Receiver AA baselines or Fire Mode.
- Sniper long-range Optics do not change AA baseline (Optic deltas ADS acquisition / zoom / initial accuracy only).
- Ladder zeroes affix deltas; gunfeel baseline stays.
Band enum (Year-1): Low · Mid · Mid-High · High · Very High
Optional qualifier: High (short) / Low (past mid) for Shotgun Magnetism only.
4. AA baselines — Class × Receiver
Section titled “4. AA baselines — Class × Receiver”Canonical table for FS-GUN-008. Order: Mag / Stick / Rot / Strafe.
| Class | Receiver | Fire Mode | Unit | AA Mag | AA Stick | AA Rot | AA Strafe | Stance / notes |
|---|---|---|---|---|---|---|---|---|
| Rifle | Auto | FullAuto | RPM | Mid | Mid | Mid | Mid | Classic assault |
| Rifle | Pulse | Burst | RPM + burst | Mid-High | High | Mid | Mid | DefaultBurst = 3 |
| Rifle | Scout | Semi | RPM | High | Mid | Low | Low | Precision mid-lane |
| Rifle | SMG | FullAuto | RPM | Low | High | High | High | Close sticky hip |
| Rifle | Sniper | Semi | RPM | Very High | Low | Low | Low | ADS long-lane; subclass Optics |
| Rifle | Gatling | FullAuto | RPM | Mid | High | Mid | Mid | 1H allowed |
| Hand Cannon | Hand Cannon | Semi | RPM | Mid | Mid | Mid | Mid | Brace |
| Sidearm | Sidearm | Semi* | RPM | Low | High | High | High | *Rapid-Fire cores FullAuto |
| Shotgun | Shotgun | Pump* | RPM | High (short) | Mid | Mid | Mid | Mag Low past mid; *RF FullAuto |
| Machine Gun | Machine Gun | FullAuto | RPM | Mid | High | Low | Low | LMG; Stock |
| Machine Gun | Gatling | FullAuto | RPM | Mid | High | Low | Low | 1H allowed; LMG rotor |
| Heavy Gun | Heavy Gun | FullAuto | RPM | Mid | Mid | Very Low | Very Low | Handheld2H |
| Heavy Gun | Gatling | FullAuto | RPM | Low | High | Very Low | Very Low | Handheld2H only |
| Grenade Launcher | Grenade Launcher | SingleShot | RPM | Mid | Low | Mid | Low | Arc |
| Rocket | Rocket | SingleShot | RPM | High | Very Low | Low | Low | Lock language |
| Bow | Bow | Draw | draw ms | High† | Low† | Mid | Low | †High Mag at full draw; Low while drawing |
| Crossbow | Crossbow | Draw‡ | draw ms | Mid-High | Mid | Mid | Mid | ‡Repeating Frame → Semi |
| Directed Energy | Fusion | Charge | charge ms | Mid§ | High§ | Mid | Mid | §Mid Mag while charging; High Stick on release |
| Directed Energy | Linear Fusion | Charge | charge ms | Very High | Low | Low | Low | Precision bolt |
| Directed Energy | Trace | Beam | RPM beam | Mid | High | Mid | Mid | No charge; continuous Cell |
5. Impact / Mag / Range bands — closes TBD-014
Section titled “5. Impact / Mag / Range bands — closes TBD-014”Triple format: Impact / Mag / Range
Empty cell = Frame not in that Receiver’s core pool (matches cadence G5 emptiness).
5.1 Core Frames
Section titled “5.1 Core Frames”| Receiver | Adaptive | Aggressive | Precision | Rapid-Fire | Lightweight | High-Impact |
|---|---|---|---|---|---|---|
| Auto | Mid / Mid / Mid | — | Mid-High / Low / High | Low / High / Mid | Low / Mid / Mid-High | High / Low / Mid |
| Pulse | — | — | — | Mid / High / Mid | Mid / Mid / Mid-High | High / Low / Mid |
| Scout | Mid-High / Mid / High | High / Low / Mid-High | High / Low / Very High | Mid / High / High | Mid / Mid / High | Very High / Very Low / High |
| Hand Cannon | High / Low / Mid | High / Very Low / Mid | Mid-High / Low / Mid-High | — | — | — |
| SMG | Low / High / Low | — | Mid / Mid / Mid | — | Very Low / Very High / Low | — |
| Sidearm | Low / Mid / Low | — | Mid / Low / Mid | Low / High / Low | Low / Mid-High / Low | — |
| Shotgun | — | Very High / Low / Very Low | High / Low / Low | Mid / High / Low | Mid / Mid / Low | — |
| Sniper | High / Low / Very High | Very High / Very Low / Very High | — | Mid / Mid / High | — | — |
| Fusion | Mid / Mid / Mid | Mid-High / Low / Mid | High / Low / Mid-High | Low / High / Mid | — | Very High / Very Low / Mid |
| Linear Fusion | — | — | Very High / Very Low / Very High | — | — | — |
| Trace | Mid / High / Mid | — | — | — | — | — |
| Grenade Launcher | Mid / Mid / Mid | — | High / Low / Mid-High | Low / High / Mid | Mid / Mid / Mid-High | — |
| Rocket | Very High / Very Low / Mid | High / Low / Mid | Very High / Very Low / High | — | — | Very High / Very Low / Mid-High |
| Machine Gun | Mid / High / Mid | Mid / Very High / Mid | — | Low / Very High / Mid | — | High / Mid / Mid |
| Bow | — | — | — | — | Mid / Mid / Mid | — |
| Crossbow | — | — | High / Low / Mid-High | — | Mid / Mid / Mid | High / Very Low / Mid |
| Heavy Gun | High / High / Mid | High / Very High / Mid | Very High / Mid / Mid-High | — | — | Very High / Mid / Mid |
| Gatling (Rifle) | Mid / Mid / Mid | Mid / High / Mid | — | Low / High / Mid | — | High / Low / Mid |
| Gatling (Machine Gun) | Mid / High / Mid | Mid / Very High / Mid | — | Low / Very High / Mid | — | High / Mid / Mid |
| Gatling (Heavy Gun) | High / High / Mid | High / Very High / Mid | — | Mid / Very High / Mid | — | Very High / Mid / Mid |
5.2 Specialty Frames (I / M / R)
Section titled “5.2 Specialty Frames (I / M / R)”| Class × Receiver | Frame | Impact / Mag / Range |
|---|---|---|
| Rifle × Auto | Support Frame | Low / Mid / Mid |
| Rifle × Pulse | Heavy Burst (2) | High / Low / Mid |
| Rifle × Pulse | Adaptive Burst (3) | Mid / Mid / Mid |
| Rifle × Pulse | Aggressive Burst (4) | Mid-High / Mid / Mid |
| Rifle × Pulse | Rocket-Assisted Pulse | High / Low / Mid-High |
| Hand Cannon × HC | Spread Shot HC | Mid / Low / Low |
| Hand Cannon × HC | Heavy Burst HC | High / Low / Mid |
| Sidearm × Sidearm | Rocket-Assisted Sidearm | High / Low / Mid |
| Sidearm × Sidearm | Heavy Burst Sidearm | Mid-High / Low / Mid |
| Sidearm × Sidearm | Adaptive Burst Sidearm | Mid / Mid / Low |
| Shotgun × Shotgun | Pinpoint Slug Frame | High / Low / Mid |
| Rifle × Sniper | Disruption Frame | Mid-High / Low / Very High |
| DE × Fusion | Aggressive Fusion (Line Burst) | High / Low / Mid |
| DE × Linear Fusion | Adaptive Burst Linear | High / Low / High |
| GL × GL | Compressed Wave Frame | Mid-High / Low / Mid |
| GL × GL | Wave Frame | Mid / Mid / Mid |
| GL × GL | Double Fire Frame | Mid / Mid-High / Mid |
| GL × GL | Micro-Missile Frame | Mid / High / Mid-High |
| GL × GL | Area Denial Frame | Mid / High / Low |
| Rocket × Rocket | Precision Tracking Rocket | Very High / Very Low / High |
| Bow × Bow | Lightweight Bow (Recurve) | Mid / Mid / Mid |
| Bow × Bow | Precision Bow (Compound) | High / Low / Mid-High |
| Bow × Bow | High-Impact Longbow | Very High / Very Low / High |
| Crossbow × Crossbow | Lightweight Crossbow | Mid / Mid / Mid |
| Crossbow × Crossbow | Precision Crossbow | High / Low / Mid-High |
| Crossbow × Crossbow | High-Impact Crossbow | Very High / Very Low / Mid |
| Crossbow × Crossbow | Repeating Crossbow | Mid / High / Mid |
| Heavy Gun × Heavy | Heavy Burst | High / Mid / Mid |
| Heavy Gun × Heavy | Heavy Sustained | Mid-High / Very High / Mid |
| Gatling (any Class) | Spin-Up | Mid / High / Mid (Class Mag band follows that Class’s Gatling Adaptive Mag tier) |
| Machine Gun × MG | Rotor Sustained | Mid / Very High / Mid |
| Heavy Gun × Gatling | (use Spin-Up + Heavy Gatling Rapid-Fire cap) | High / Very High / Mid |
5.3 Uniqueness
Section titled “5.3 Uniqueness”Within one Class × Receiver, two Frame rows must not share an identical Impact / Mag / Range triple and an identical cadence string. Cadence uniqueness remains primary (FS-GUN-007); I/M/R uniqueness is a secondary readability check.
6. Inspect / runtime read order
Section titled “6. Inspect / runtime read order”Stat plate (gun):
- Class · Receiver (Type) · Fire Mode · Frame · cadence string
- AA baselines (from Receiver) — display optional / Demo Mod
- Impact / Mag / Range (Frame band ± part deltas)
- Other part-driven dials (Bloom, Recoil magnitude, …)
Runtime AA = Receiver baseline × Stability→magnetism degradation (Frame may bias degradation rate only) × stance / ADS state modifiers (Bow draw, Fusion charge phase) — never × Optic rarity for Mag/Stick/Rot/Strafe.
7. Implementation targets (after this spec is reviewed)
Section titled “7. Implementation targets (after this spec is reviewed)”- Patch FS-GUN-008 AA table to match §4 (order Mag/Stick/Rot/Strafe explicit).
- Add FS-GUN-009 (or extend FS-GUN-007) with §5 I/M/R tables; mark TBD-014 Done.
- Sync GDD aim-assist / dual-armory prose + ownership callouts.
- Rebuild FS HTML.
- Optional: CSV stubs for
DA_TFA_GunReceiver/DA_TFA_GunFrameband columns.
8. Follow-on TBD
Section titled “8. Follow-on TBD”| ID | Topic |
|---|---|
| TBD-AA-FLOAT | Map band enum → engine floats for Mag/Stick/Rot/Strafe |
| TBD-IMR-FLOAT | Map Impact / Mag bands → numeric frame kit values. Range half closed by FS-GUN-011 (docs/inventory/weapon-range-falloff.md) — do not re-open Range under this TBD |
9. Spec self-review
Section titled “9. Spec self-review”- Spec coverage: AA catalog + I/M/R for cores + specialties + ownership + TBD-014 close
- No TBD inside locked band tables (floats deferred to named follow-ons)
- Consistent with Class × Receiver × Frame / Sniper optic subclass / no bipod / three Gatlings
- Cadence not reopened
10. Approval
Section titled “10. Approval”Design approach approved in chat 2026-10-20 (hybrid / option 3).
Spec approved in chat 2026-10-20. Implemented into FS-GUN-008 / FS-GUN-009 + GDD ownership prose + TBD-014 Done.