ed_journals/modules/ship/models/
blueprint_modifier.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
use serde::{Deserialize, Serialize};

/// When applying blueprint to modules, modifiers are applied to the modules which are the things
/// that actually change the stats of the module.
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
pub enum BlueprintModifier {
    Size,
    Class,
    Mass,
    Integrity,
    PowerDraw,
    BootTime,
    ShieldBankSpinUp,
    ShieldBankDuration,
    ShieldBankReinforcement,
    ShieldBankHeat,
    DamagePerSecond,
    Damage,
    DistributorDraw,
    ThermalLoad,
    ArmourPenetration,
    MaximumRange,
    ShotSpeed,
    RateOfFire,
    BurstRateOfFire,
    BurstSize,
    AmmoClipSize,
    AmmoMaximum,
    RoundsPerShot,
    ReloadTime,
    BreachDamage,
    MinBreachChance,
    MaxBreachChance,
    Jitter,
    WeaponMode,
    DamageType,
    ShieldGenMinimumMass,
    ShieldGenOptimalMass,
    ShieldGenMaximumMass,
    ShieldGenMinStrength,
    ShieldGenStrength,
    ShieldGenMaxStrength,
    RegenRate,
    BrokenRegenRate,
    EnergyPerRegen,
    FSDOptimalMass,
    FSDHeatRate,
    MaxFuelPerJump,
    EngineMinimumMass,
    EngineOptimalMass,
    MaximumMass,
    EngineMinPerformance,
    EngineOptPerformance,
    EngineMaxPerformance,
    EngineHeatRate,
    PowerCapacity,
    HeatEfficiency,
    WeaponsCapacity,
    WeaponsRecharge,
    EnginesCapacity,
    EnginesRecharge,
    SystemsCapacity,
    SystemsRecharge,
    DefenceModifierHealthMultiplier,
    DefenceModifierHealthAddition,
    DefenceModifierShieldMultiplier,
    DefenceModifierShieldAddition,
    KineticResistance,
    ThermicResistance,
    ExplosiveResistance,
    CausticResistance,
    FSDInterdictorRange,
    FSDInterdictorFacingLimit,
    ScannerRange,
    DiscoveryScannerRange,
    DiscoveryScannerPassiveRange,
    MaxAngle,
    ScannerTimeToScan,
    ChaffJamDuration,
    ECMRange,
    ECMTimeToCharge,
    ECMActivePowerConsumption,
    ECMHeat,
    ECMCooldown,
    HeatSinkDuration,
    ThermalDrain,
    NumBuggySlots,
    CargoCapacity,
    MaxActiveDrones,
    DroneTargetRange,
    DroneLifeTime,
    DroneSpeed,
    DroneMultiTargetSpeed,
    DroneFuelCapacity,
    DroneRepairCapacity,
    DroneHackingTime,
    DroneMinJettisonedCargo,
    DroneMaxJettisonedCargo,
    FuelScoopRate,
    FuelCapacity,
    OxygenTimeCapacity,
    RefineryBins,
    AFMRepairCapacity,
    AFMRepairConsumption,
    AFMRepairPerAmmo,
    MaxRange,
    SensorTargetScanAngle,
    Range,
    VehicleCargoCapacity,
    VehicleHullMass,
    VehicleFuelCapacity,
    VehicleArmourHealth,
    VehicleShieldHealth,
    FighterMaxSpeed,
    FighterBoostSpeed,
    FighterPitchRate,
    FighterDPS,
    FighterYawRate,
    FighterRollRate,
    CabinCapacity,
    CabinClass,
    DisruptionBarrierRange,
    DisruptionBarrierChargeDuration,
    DisruptionBarrierActivePower,
    DisruptionBarrierCooldown,
    WingDamageReduction,
    WingMinDuration,
    WingMaxDuration,
    ShieldSacrificeAmountRemoved,
    ShieldSacrificeAmountGiven,
    FSDJumpRangeBoost,
    FSDFuelUseIncrease,
    BoostSpeedMultiplier,
    BoostAugmenterPowerUse,
    ModuleDefenceAbsorption,
    FalloffRange,

    #[serde(rename = "DSS_RangeMult")]
    DSSRangeMultiplier,

    #[serde(rename = "DSS_AngleMult")]
    DSSAngleMultiplier,

    #[serde(rename = "DSS_RateMult")]
    DSSRateMultiplier,

    #[serde(rename = "DSS_PatchRadius")]
    DSSPatchRadius,

    DamageFalloffRange,

    #[cfg(feature = "allow-unknown")]
    #[cfg_attr(docsrs, doc(cfg(feature = "allow-unknown")))]
    #[serde(untagged)]
    Unknown(String),
}