fleethub-core 1.12.5 → 1.12.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/node/fleethub_core.d.ts +950 -1690
- package/node/fleethub_core.js +1113 -1464
- package/node/fleethub_core_bg.wasm +0 -0
- package/node/fleethub_core_bg.wasm.d.ts +286 -282
- package/package.json +1 -1
- package/pkg/fleethub_core.d.ts +896 -617
- package/pkg/fleethub_core_bg.js +125 -120
- package/pkg/fleethub_core_bg.wasm +0 -0
- package/pkg/fleethub_core_bg.wasm.d.ts +80 -80
package/node/fleethub_core.d.ts
CHANGED
|
@@ -1,13 +1,164 @@
|
|
|
1
1
|
/* tslint:disable */
|
|
2
2
|
/* eslint-disable */
|
|
3
|
-
/**
|
|
4
|
-
*/
|
|
5
|
-
export function set_panic_hook(): void;
|
|
6
|
-
/**
|
|
7
|
-
* @param {ShipConditions} value
|
|
8
|
-
* @returns {ShipConditions}
|
|
9
|
-
*/
|
|
10
3
|
export function parse_ship_conditions(value: ShipConditions): ShipConditions;
|
|
4
|
+
export function set_panic_hook(): void;
|
|
5
|
+
|
|
6
|
+
export type CompiledEvaler = string;
|
|
7
|
+
|
|
8
|
+
export interface MasterData extends MasterBattleDefinitions {
|
|
9
|
+
created_at: number;
|
|
10
|
+
gears: MasterGear[];
|
|
11
|
+
gear_attrs: MasterAttrRule<GearAttr>[];
|
|
12
|
+
ships: MasterShip[];
|
|
13
|
+
ship_attrs: MasterAttrRule<ShipAttr>[];
|
|
14
|
+
ibonuses: MasterIBonuses;
|
|
15
|
+
equippability: MasterEquippability;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface NationalityDef {
|
|
19
|
+
id: number;
|
|
20
|
+
ctypes: number[];
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface MasterAttrRule<T> {
|
|
24
|
+
tag: T;
|
|
25
|
+
name: string;
|
|
26
|
+
expr: CompiledEvaler;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export interface AttackAnalyzerShipConfig
|
|
30
|
+
extends ShipConditions,
|
|
31
|
+
NightFleetConditions {
|
|
32
|
+
balloons?: number;
|
|
33
|
+
fleet_los_mod?: number | null;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export type AirSquadronMode = "Sortie" | "AirDefense";
|
|
37
|
+
|
|
38
|
+
export interface AirSquadronState extends GearVecState, SlotSizeVecState {
|
|
39
|
+
id?: string;
|
|
40
|
+
mode?: AirSquadronMode;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export interface BattleConditions {
|
|
44
|
+
org_type: OrgType;
|
|
45
|
+
role: Role;
|
|
46
|
+
ship_index: number;
|
|
47
|
+
fleet_len: number;
|
|
48
|
+
formation: Formation;
|
|
49
|
+
fleet_los_mod: number | null;
|
|
50
|
+
night_conditions: NightFleetConditions;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export interface NightConditions {
|
|
54
|
+
player?: NightFleetConditions;
|
|
55
|
+
enemy?: NightFleetConditions;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export interface NightFleetConditions {
|
|
59
|
+
night_contact_rank?: ContactRank | null;
|
|
60
|
+
starshell_index?: number | null;
|
|
61
|
+
searchlight_index?: number | null;
|
|
62
|
+
activates_large_searchlight?: boolean;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export type GearAttr =
|
|
66
|
+
| "Unknown"
|
|
67
|
+
| "HighAngleMount"
|
|
68
|
+
| "NightFighter"
|
|
69
|
+
| "NightAttacker"
|
|
70
|
+
| "HeavyBomber"
|
|
71
|
+
| "NightRecon"
|
|
72
|
+
| "MainGun"
|
|
73
|
+
| "Radar"
|
|
74
|
+
| "SurfaceRadar"
|
|
75
|
+
| "AirRadar"
|
|
76
|
+
| "DepthChargeProjector"
|
|
77
|
+
| "SynergisticDepthCharge"
|
|
78
|
+
| "AntiSubMortar"
|
|
79
|
+
| "AntiSubWeapon"
|
|
80
|
+
| "ApDepthCharge"
|
|
81
|
+
| "AntiSubAircraft"
|
|
82
|
+
| "LateModelBowTorpedo"
|
|
83
|
+
| "Seaplane"
|
|
84
|
+
| "CbAircraft"
|
|
85
|
+
| "LbAircraft"
|
|
86
|
+
| "JetAircraft"
|
|
87
|
+
| "Fighter"
|
|
88
|
+
| "Recon"
|
|
89
|
+
| "ObservationSeaplane"
|
|
90
|
+
| "CbFighterBomber"
|
|
91
|
+
| "AntiInstDiveBomber"
|
|
92
|
+
| "CbSwordfish"
|
|
93
|
+
| "SemiNightPlane"
|
|
94
|
+
| "HighAltitudeInterceptor";
|
|
95
|
+
|
|
96
|
+
export interface ShipPosition {
|
|
97
|
+
org_type?: OrgType;
|
|
98
|
+
fleet_type?: FleetType;
|
|
99
|
+
fleet_len?: number;
|
|
100
|
+
index?: number;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export type Histogram<K extends keyof any, V> = Partial<Record<K, V>>;
|
|
104
|
+
|
|
105
|
+
export interface MasterGear {
|
|
106
|
+
gear_id: number;
|
|
107
|
+
name: string;
|
|
108
|
+
types: GearTypeIdArray;
|
|
109
|
+
special_type?: number;
|
|
110
|
+
max_hp?: number;
|
|
111
|
+
firepower?: number;
|
|
112
|
+
armor?: number;
|
|
113
|
+
torpedo?: number;
|
|
114
|
+
anti_air?: number;
|
|
115
|
+
speed?: number;
|
|
116
|
+
bombing?: number;
|
|
117
|
+
asw?: number;
|
|
118
|
+
los?: number;
|
|
119
|
+
luck?: number;
|
|
120
|
+
accuracy?: number;
|
|
121
|
+
evasion?: number;
|
|
122
|
+
range?: number;
|
|
123
|
+
radius?: number;
|
|
124
|
+
cost?: number;
|
|
125
|
+
improvable?: boolean;
|
|
126
|
+
ship_anti_air_resist?: number;
|
|
127
|
+
fleet_anti_air_resist?: number;
|
|
128
|
+
historical_aircraft_group?: number;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
export interface CompAnalyzerConfig {
|
|
132
|
+
engagement: Engagement;
|
|
133
|
+
formation: Formation;
|
|
134
|
+
anti_air_cutin: number | null;
|
|
135
|
+
ship_anti_air_resist: number;
|
|
136
|
+
fleet_anti_air_resist: number;
|
|
137
|
+
left_night_fleet_conditions: NightFleetConditions;
|
|
138
|
+
right_night_fleet_conditions: NightFleetConditions;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
export interface CompNightAnalysis {
|
|
142
|
+
night_cutin: CompNightCutinAnalysis;
|
|
143
|
+
fleet_cutin: FleetCutinReport<NightAttackStyle>[];
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
export interface CompDayAnalysis {
|
|
147
|
+
day_cutin: CompDayCutinAnalysis;
|
|
148
|
+
fleet_cutin: FleetCutinReport<ShellingStyle>[];
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
export interface CompAnalysis {
|
|
152
|
+
day: CompDayAnalysis;
|
|
153
|
+
night: CompNightAnalysis;
|
|
154
|
+
contact: ContactAnalysis;
|
|
155
|
+
anti_air: CompAntiAirAnalysis;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
export type SpeedGroup = "A" | "B1" | "B2" | "C";
|
|
159
|
+
|
|
160
|
+
export type FhResult<T> = { Ok: T } | { Err: string };
|
|
161
|
+
|
|
11
162
|
export interface MasterShip {
|
|
12
163
|
ship_id: number;
|
|
13
164
|
name: string;
|
|
@@ -42,437 +193,58 @@ export interface MasterShip {
|
|
|
42
193
|
|
|
43
194
|
export type StatInterval = [number | null, number | null];
|
|
44
195
|
|
|
45
|
-
export interface
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
196
|
+
export interface MasterIBonuses {
|
|
197
|
+
shelling_power: MasterIBonusRule[];
|
|
198
|
+
shelling_accuracy: MasterIBonusRule[];
|
|
199
|
+
shelling_aerial_power: MasterIBonusRule[];
|
|
200
|
+
torpedo_power: MasterIBonusRule[];
|
|
201
|
+
torpedo_accuracy: MasterIBonusRule[];
|
|
202
|
+
torpedo_evasion: MasterIBonusRule[];
|
|
203
|
+
asw_power: MasterIBonusRule[];
|
|
204
|
+
asw_accuracy: MasterIBonusRule[];
|
|
205
|
+
night_power: MasterIBonusRule[];
|
|
206
|
+
night_aerial_power: MasterIBonusRule[];
|
|
207
|
+
night_accuracy: MasterIBonusRule[];
|
|
208
|
+
defense_power: MasterIBonusRule[];
|
|
209
|
+
contact_selection: MasterIBonusRule[];
|
|
210
|
+
fighter_power: MasterIBonusRule[];
|
|
211
|
+
ship_anti_air: MasterIBonusRule[];
|
|
212
|
+
fleet_anti_air: MasterIBonusRule[];
|
|
213
|
+
elos: MasterIBonusRule[];
|
|
53
214
|
}
|
|
54
215
|
|
|
55
|
-
export interface
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
cap: number;
|
|
59
|
-
precap_mod: AttackPowerModifier;
|
|
60
|
-
postcap_mod: AttackPowerModifier;
|
|
61
|
-
ap_shell_mod: number | null;
|
|
62
|
-
aerial_power: number | null;
|
|
63
|
-
proficiency_critical_mod: number;
|
|
64
|
-
armor_penetration: number;
|
|
65
|
-
remaining_ammo_mod: number;
|
|
66
|
-
balloon_mod: number;
|
|
67
|
-
special_enemy_mods: SpecialEnemyModifiers;
|
|
68
|
-
historical_mod: AttackPowerModifier;
|
|
69
|
-
custom_mods: CustomPowerModifiers;
|
|
216
|
+
export interface MasterIBonusRule {
|
|
217
|
+
expr: CompiledEvaler;
|
|
218
|
+
formula: CompiledEvaler;
|
|
70
219
|
}
|
|
71
220
|
|
|
72
|
-
export
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
221
|
+
export type ShipAttr =
|
|
222
|
+
| "Unknown"
|
|
223
|
+
| "NightCarrier"
|
|
224
|
+
| "Installation"
|
|
225
|
+
| "RoyalNavy"
|
|
226
|
+
| "Kai2"
|
|
227
|
+
| "TurbineSpeedBonus"
|
|
228
|
+
| "NewModelBoilerSpeedBonus"
|
|
229
|
+
| "Pillbox"
|
|
230
|
+
| "IsolatedIsland"
|
|
231
|
+
| "HarbourSummerPrincess"
|
|
232
|
+
| "SupplyDepot"
|
|
233
|
+
| "NewSupplyDepot"
|
|
234
|
+
| "PtImp"
|
|
235
|
+
| "BattleshipSummerPrincess"
|
|
236
|
+
| "HeavyCruiserSummerPrincess"
|
|
237
|
+
| "AnchorageWaterDemonVacationMode"
|
|
238
|
+
| "FrenchBattleshipPrincess"
|
|
239
|
+
| "DockPrincess"
|
|
240
|
+
| "SummerAircraftCarrierDemon";
|
|
82
241
|
|
|
83
|
-
export interface
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
target_ship_id: number;
|
|
87
|
-
historical_params: HistoricalParams;
|
|
88
|
-
day: ActionReport<DayPhaseAttackStyle>;
|
|
89
|
-
night: ActionReport<NightPhaseAttackStyle>;
|
|
90
|
-
closing_torpedo: ActionReport<TorpedoAttackStyle>;
|
|
91
|
-
opening_asw: ActionReport<AswAttackStyle>;
|
|
92
|
-
support_shelling: ActionReport<SupportShellingStyle>;
|
|
242
|
+
export interface MoveShipPayload {
|
|
243
|
+
current: [string, string, ShipKey];
|
|
244
|
+
target: [string | null, string, ShipKey];
|
|
93
245
|
}
|
|
94
246
|
|
|
95
|
-
export type
|
|
96
|
-
|
|
97
|
-
export type DamageState = "Normal" | "Shouha" | "Chuuha" | "Taiha" | "Sunk";
|
|
98
|
-
|
|
99
|
-
export type FleetType = "Main" | "Escort" | "RouteSup" | "BossSup";
|
|
100
|
-
|
|
101
|
-
export type OrgType =
|
|
102
|
-
| "Single"
|
|
103
|
-
| "CarrierTaskForce"
|
|
104
|
-
| "SurfaceTaskForce"
|
|
105
|
-
| "TransportEscort"
|
|
106
|
-
| "EnemySingle"
|
|
107
|
-
| "EnemyCombined";
|
|
108
|
-
|
|
109
|
-
export interface ShipPosition {
|
|
110
|
-
org_type?: OrgType;
|
|
111
|
-
fleet_type?: FleetType;
|
|
112
|
-
fleet_len?: number;
|
|
113
|
-
index?: number;
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
export type ShipCategory =
|
|
117
|
-
| "Battleship"
|
|
118
|
-
| "AircraftCarrier"
|
|
119
|
-
| "HeavyCruiser"
|
|
120
|
-
| "LightCruiser"
|
|
121
|
-
| "Destroyer"
|
|
122
|
-
| "CoastalDefenseShip"
|
|
123
|
-
| "Submarine"
|
|
124
|
-
| "AuxiliaryShip";
|
|
125
|
-
|
|
126
|
-
export type ShipType =
|
|
127
|
-
| "Unknown"
|
|
128
|
-
| "DE"
|
|
129
|
-
| "DD"
|
|
130
|
-
| "CL"
|
|
131
|
-
| "CLT"
|
|
132
|
-
| "CA"
|
|
133
|
-
| "CAV"
|
|
134
|
-
| "CVL"
|
|
135
|
-
| "FBB"
|
|
136
|
-
| "BB"
|
|
137
|
-
| "BBV"
|
|
138
|
-
| "CV"
|
|
139
|
-
| "XBB"
|
|
140
|
-
| "SS"
|
|
141
|
-
| "SSV"
|
|
142
|
-
| "AP"
|
|
143
|
-
| "AV"
|
|
144
|
-
| "LHA"
|
|
145
|
-
| "CVB"
|
|
146
|
-
| "AR"
|
|
147
|
-
| "AS"
|
|
148
|
-
| "CT"
|
|
149
|
-
| "AO";
|
|
150
|
-
|
|
151
|
-
export interface FleetCutinReport<T> {
|
|
152
|
-
cutin: FleetCutin;
|
|
153
|
-
rate: number | null;
|
|
154
|
-
formation: Formation;
|
|
155
|
-
attacks: FleetCutinAttackReport<T>[];
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
export interface FleetCutinAttackReport<T> extends AttackReport<T> {
|
|
159
|
-
index: number;
|
|
160
|
-
ship_id: number;
|
|
161
|
-
power_mod: number;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
export interface DamageReport {
|
|
165
|
-
miss_damage_min: number;
|
|
166
|
-
miss_damage_max: number;
|
|
167
|
-
normal_damage_min: number;
|
|
168
|
-
normal_damage_max: number;
|
|
169
|
-
critical_damage_min: number;
|
|
170
|
-
critical_damage_max: number;
|
|
171
|
-
normal_scratch_rate: number;
|
|
172
|
-
critical_scratch_rate: number;
|
|
173
|
-
damage_density: Histogram<number, number>;
|
|
174
|
-
damage_state_density: Histogram<DamageState, number>;
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
export type AswAttackType = "DepthCharge" | "Aerial";
|
|
178
|
-
|
|
179
|
-
export type ShellingType = "Normal" | "Aerial";
|
|
180
|
-
|
|
181
|
-
export type NightAttackType = "Normal" | "Swordfish" | "Aerial";
|
|
182
|
-
|
|
183
|
-
export type SupportShellingType = ShellingType;
|
|
184
|
-
|
|
185
|
-
export type AttackType =
|
|
186
|
-
| { t: "Asw"; c: AswAttackType }
|
|
187
|
-
| { t: "Shelling"; c: ShellingType }
|
|
188
|
-
| { t: "Night"; c: NightAttackType }
|
|
189
|
-
| { t: "Torpedo" }
|
|
190
|
-
| { t: "SupportShelling"; c: SupportShellingType };
|
|
191
|
-
|
|
192
|
-
export type DayPhaseAttackType =
|
|
193
|
-
| { t: "Shelling"; c: ShellingType }
|
|
194
|
-
| { t: "Asw"; c: AswAttackType };
|
|
195
|
-
|
|
196
|
-
export type NightPhaseAttackType =
|
|
197
|
-
| { t: "Night"; c: NightAttackType }
|
|
198
|
-
| { t: "Asw"; c: AswAttackType };
|
|
199
|
-
|
|
200
|
-
export type TorpedoAttackType = null;
|
|
201
|
-
|
|
202
|
-
export type GearType =
|
|
203
|
-
| "Unknown"
|
|
204
|
-
| "SmallMainGun"
|
|
205
|
-
| "MediumMainGun"
|
|
206
|
-
| "LargeMainGun"
|
|
207
|
-
| "SecondaryGun"
|
|
208
|
-
| "Torpedo"
|
|
209
|
-
| "CbFighter"
|
|
210
|
-
| "CbDiveBomber"
|
|
211
|
-
| "CbTorpedoBomber"
|
|
212
|
-
| "CbRecon"
|
|
213
|
-
| "ReconSeaplane"
|
|
214
|
-
| "SeaplaneBomber"
|
|
215
|
-
| "SmallRadar"
|
|
216
|
-
| "LargeRadar"
|
|
217
|
-
| "Sonar"
|
|
218
|
-
| "DepthCharge"
|
|
219
|
-
| "ExtraArmor"
|
|
220
|
-
| "Engine"
|
|
221
|
-
| "AntiAirShell"
|
|
222
|
-
| "ApShell"
|
|
223
|
-
| "VtFuze"
|
|
224
|
-
| "AntiAirGun"
|
|
225
|
-
| "MidgetSubmarine"
|
|
226
|
-
| "EmergencyRepair"
|
|
227
|
-
| "LandingCraft"
|
|
228
|
-
| "Rotorcraft"
|
|
229
|
-
| "AntiSubPatrolAircraft"
|
|
230
|
-
| "MediumArmor"
|
|
231
|
-
| "LargeArmor"
|
|
232
|
-
| "Searchlight"
|
|
233
|
-
| "SupplyContainer"
|
|
234
|
-
| "ShipRepairFacility"
|
|
235
|
-
| "SubmarineTorpedo"
|
|
236
|
-
| "Starshell"
|
|
237
|
-
| "CommandFacility"
|
|
238
|
-
| "AviationPersonnel"
|
|
239
|
-
| "AntiAirFireDirector"
|
|
240
|
-
| "AntiGroundEquipment"
|
|
241
|
-
| "LargeMainGun2"
|
|
242
|
-
| "ShipPersonnel"
|
|
243
|
-
| "LargeSonar"
|
|
244
|
-
| "LargeFlyingBoat"
|
|
245
|
-
| "LargeSearchlight"
|
|
246
|
-
| "CombatRation"
|
|
247
|
-
| "Supplies"
|
|
248
|
-
| "SeaplaneFighter"
|
|
249
|
-
| "AmphibiousTank"
|
|
250
|
-
| "LbAttacker"
|
|
251
|
-
| "LbFighter"
|
|
252
|
-
| "LbRecon"
|
|
253
|
-
| "TransportationMaterial"
|
|
254
|
-
| "SubmarineEquipment"
|
|
255
|
-
| "LandingForce"
|
|
256
|
-
| "LargeLbAircraft"
|
|
257
|
-
| "SurfaceEquipment"
|
|
258
|
-
| "JetFighter"
|
|
259
|
-
| "JetFighterBomber"
|
|
260
|
-
| "JetTorpedoBomber"
|
|
261
|
-
| "JetRecon"
|
|
262
|
-
| "LargeRadar2"
|
|
263
|
-
| "CbRecon2"
|
|
264
|
-
| "SecondaryGun2";
|
|
265
|
-
|
|
266
|
-
export type GearCategory =
|
|
267
|
-
| "Fighter"
|
|
268
|
-
| "Bomber"
|
|
269
|
-
| "Recon"
|
|
270
|
-
| "MainGun"
|
|
271
|
-
| "Secondary"
|
|
272
|
-
| "Torpedo"
|
|
273
|
-
| "AntiSub"
|
|
274
|
-
| "Radar"
|
|
275
|
-
| "Landing"
|
|
276
|
-
| "Ration"
|
|
277
|
-
| "LandBased"
|
|
278
|
-
| "Misc";
|
|
279
|
-
|
|
280
|
-
export type ContactRank = "Rank1" | "Rank2" | "Rank3";
|
|
281
|
-
|
|
282
|
-
export type DayCutin =
|
|
283
|
-
| "Zuiun"
|
|
284
|
-
| "AirSea"
|
|
285
|
-
| "MainMain"
|
|
286
|
-
| "MainAp"
|
|
287
|
-
| "MainRadar"
|
|
288
|
-
| "MainSec"
|
|
289
|
-
| "DoubleAttack"
|
|
290
|
-
| "FBA"
|
|
291
|
-
| "BBA"
|
|
292
|
-
| "BA";
|
|
293
|
-
|
|
294
|
-
export type NightCutin =
|
|
295
|
-
| "MainTorpRadar"
|
|
296
|
-
| "TorpLookoutRadar"
|
|
297
|
-
| "TorpTsloTorp"
|
|
298
|
-
| "TorpTsloDrum"
|
|
299
|
-
| "NightZuiun2Radar"
|
|
300
|
-
| "NightZuiun2"
|
|
301
|
-
| "NightZuiunRadar"
|
|
302
|
-
| "NightZuiun"
|
|
303
|
-
| "DoubleAttack"
|
|
304
|
-
| "TorpTorpMain"
|
|
305
|
-
| "TorpTorpTorp"
|
|
306
|
-
| "MainMainSec"
|
|
307
|
-
| "MainMainMain"
|
|
308
|
-
| "SubTorpTorp"
|
|
309
|
-
| "SubRadarTorp"
|
|
310
|
-
| "Cvci1_25"
|
|
311
|
-
| "Cvci1_20"
|
|
312
|
-
| "Cvci1_18"
|
|
313
|
-
| "Photobomber";
|
|
314
|
-
|
|
315
|
-
export type FleetCutin =
|
|
316
|
-
| "NelsonTouch"
|
|
317
|
-
| "NagatoClassCutin"
|
|
318
|
-
| "ColoradoClassCutin"
|
|
319
|
-
| "KongouClassCutin"
|
|
320
|
-
| "Yamato2ShipCutin"
|
|
321
|
-
| "Yamato3ShipCutin";
|
|
322
|
-
|
|
323
|
-
export type DayCutinLike = DayCutin | FleetCutin;
|
|
324
|
-
|
|
325
|
-
export type NightCutinLike = NightCutin | FleetCutin;
|
|
326
|
-
|
|
327
|
-
export type MoraleState = "Sparkle" | "Normal" | "Orange" | "Red";
|
|
328
|
-
|
|
329
|
-
export type NodeId = string;
|
|
330
|
-
|
|
331
|
-
export interface NodeState {
|
|
332
|
-
map?: number;
|
|
333
|
-
node?: NodeId;
|
|
334
|
-
phase?: number;
|
|
335
|
-
debuff?: boolean;
|
|
336
|
-
disable_historical_mod?: boolean;
|
|
337
|
-
landing_battle?: boolean;
|
|
338
|
-
}
|
|
339
|
-
|
|
340
|
-
export type Role = "Main" | "Escort";
|
|
341
|
-
|
|
342
|
-
export type SpecialEnemyType =
|
|
343
|
-
| "None"
|
|
344
|
-
| "SoftSkinned"
|
|
345
|
-
| "Pillbox"
|
|
346
|
-
| "IsolatedIsland"
|
|
347
|
-
| "SupplyDepot"
|
|
348
|
-
| "NewSupplyDepot"
|
|
349
|
-
| "HarbourSummerPrincess"
|
|
350
|
-
| "PtImp"
|
|
351
|
-
| "BattleshipSummerPrincess"
|
|
352
|
-
| "HeavyCruiserSummerPrincess"
|
|
353
|
-
| "FrenchBattleshipPrincess"
|
|
354
|
-
| "AnchorageWaterDemonVacationMode"
|
|
355
|
-
| "DockPrincess"
|
|
356
|
-
| "SummerAircraftCarrierDemon";
|
|
357
|
-
|
|
358
|
-
export type GearTypeIdArray = [number, number, number, number, number];
|
|
359
|
-
|
|
360
|
-
export interface SupportShellingSimulatorParams {
|
|
361
|
-
attacker_formation?: Formation;
|
|
362
|
-
target_formation?: Formation;
|
|
363
|
-
engagement: Engagement;
|
|
364
|
-
node_state: NodeState;
|
|
365
|
-
}
|
|
366
|
-
|
|
367
|
-
export interface FleetState {
|
|
368
|
-
id?: string;
|
|
369
|
-
len?: number;
|
|
370
|
-
s1?: ShipState;
|
|
371
|
-
s2?: ShipState;
|
|
372
|
-
s3?: ShipState;
|
|
373
|
-
s4?: ShipState;
|
|
374
|
-
s5?: ShipState;
|
|
375
|
-
s6?: ShipState;
|
|
376
|
-
s7?: ShipState;
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
export interface SimulatorResult {
|
|
380
|
-
items: SimulatorResultItem[];
|
|
381
|
-
sunk_vec: [number, number, number][];
|
|
382
|
-
}
|
|
383
|
-
|
|
384
|
-
export interface SimulatorResultItem {
|
|
385
|
-
id: string;
|
|
386
|
-
fleet_type: FleetType;
|
|
387
|
-
index: number;
|
|
388
|
-
damage_state_map: Record<DamageState, number>;
|
|
389
|
-
}
|
|
390
|
-
|
|
391
|
-
export interface HitRate {
|
|
392
|
-
normal: number;
|
|
393
|
-
critical: number;
|
|
394
|
-
total: number;
|
|
395
|
-
}
|
|
396
|
-
|
|
397
|
-
export interface HitRateParams {
|
|
398
|
-
accuracy_term: number;
|
|
399
|
-
evasion_term: number;
|
|
400
|
-
target_morale_mod: number;
|
|
401
|
-
critical_rate_constant: number;
|
|
402
|
-
critical_percentage_bonus: number;
|
|
403
|
-
hit_percentage_bonus: number;
|
|
404
|
-
}
|
|
405
|
-
|
|
406
|
-
export interface NightContactChance {
|
|
407
|
-
rank1: number;
|
|
408
|
-
rank2: number;
|
|
409
|
-
rank3: number;
|
|
410
|
-
}
|
|
411
|
-
|
|
412
|
-
export interface CompNightCutinAnalysis {
|
|
413
|
-
night_contact_chance: NightContactChance;
|
|
414
|
-
ships: ShipNightCutinAnalysis[];
|
|
415
|
-
}
|
|
416
|
-
|
|
417
|
-
export interface ShipNightCutinAnalysis {
|
|
418
|
-
ship_id: number;
|
|
419
|
-
index: number;
|
|
420
|
-
normal: NightCutinActionReport;
|
|
421
|
-
chuuha: NightCutinActionReport;
|
|
422
|
-
}
|
|
423
|
-
|
|
424
|
-
export interface NightCutinActionReport
|
|
425
|
-
extends ActionReport<NightPhaseAttackStyle> {
|
|
426
|
-
cutin_term: number | null;
|
|
427
|
-
}
|
|
428
|
-
|
|
429
|
-
export interface CompDayCutinAnalysis {
|
|
430
|
-
rank3_air_state: AirState;
|
|
431
|
-
rank2_air_state: AirState;
|
|
432
|
-
main_fleet_los_mod: number | null;
|
|
433
|
-
escort_fleet_los_mod: number | null;
|
|
434
|
-
ships: ShipDayCutinAnalysis[];
|
|
435
|
-
}
|
|
436
|
-
|
|
437
|
-
export interface ShipDayCutinAnalysis {
|
|
438
|
-
ship_id: number;
|
|
439
|
-
role: Role;
|
|
440
|
-
index: number;
|
|
441
|
-
rank3: DayCutinReport;
|
|
442
|
-
rank2: DayCutinReport;
|
|
443
|
-
}
|
|
444
|
-
|
|
445
|
-
export interface DayCutinReport extends ActionReport<DayPhaseAttackStyle> {
|
|
446
|
-
observation_term: number | null;
|
|
447
|
-
}
|
|
448
|
-
|
|
449
|
-
export interface ActionReport<T> {
|
|
450
|
-
data: Record<string, AttackReport<T>>;
|
|
451
|
-
damage_state_density: Histogram<DamageState, number> | null;
|
|
452
|
-
is_active: boolean;
|
|
453
|
-
}
|
|
454
|
-
|
|
455
|
-
export interface ShipMeta {
|
|
456
|
-
id: string;
|
|
457
|
-
ship_id: number;
|
|
458
|
-
}
|
|
459
|
-
|
|
460
|
-
export interface FleetMeta {
|
|
461
|
-
id: string;
|
|
462
|
-
len: number;
|
|
463
|
-
ships: [string, ShipMeta | null][];
|
|
464
|
-
}
|
|
465
|
-
|
|
466
|
-
export interface CompMeta {
|
|
467
|
-
fleets: Record<FleetType, FleetMeta>;
|
|
468
|
-
}
|
|
469
|
-
|
|
470
|
-
export interface MoveShipPayload {
|
|
471
|
-
current: [string, string, ShipKey];
|
|
472
|
-
target: [string | null, string, ShipKey];
|
|
473
|
-
}
|
|
474
|
-
|
|
475
|
-
export type GearVecInput = GearInput[];
|
|
247
|
+
export type GearVecInput = GearInput[];
|
|
476
248
|
|
|
477
249
|
export interface GearInput {
|
|
478
250
|
gear_id: number;
|
|
@@ -512,355 +284,401 @@ export interface EBonuses {
|
|
|
512
284
|
range: number;
|
|
513
285
|
}
|
|
514
286
|
|
|
515
|
-
export interface
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
shelling_aerial_power: MasterIBonusRule[];
|
|
519
|
-
torpedo_power: MasterIBonusRule[];
|
|
520
|
-
torpedo_accuracy: MasterIBonusRule[];
|
|
521
|
-
torpedo_evasion: MasterIBonusRule[];
|
|
522
|
-
asw_power: MasterIBonusRule[];
|
|
523
|
-
asw_accuracy: MasterIBonusRule[];
|
|
524
|
-
night_power: MasterIBonusRule[];
|
|
525
|
-
night_aerial_power: MasterIBonusRule[];
|
|
526
|
-
night_accuracy: MasterIBonusRule[];
|
|
527
|
-
defense_power: MasterIBonusRule[];
|
|
528
|
-
contact_selection: MasterIBonusRule[];
|
|
529
|
-
fighter_power: MasterIBonusRule[];
|
|
530
|
-
ship_anti_air: MasterIBonusRule[];
|
|
531
|
-
fleet_anti_air: MasterIBonusRule[];
|
|
532
|
-
elos: MasterIBonusRule[];
|
|
533
|
-
}
|
|
534
|
-
|
|
535
|
-
export interface MasterIBonusRule {
|
|
536
|
-
expr: CompiledEvaler;
|
|
537
|
-
formula: CompiledEvaler;
|
|
538
|
-
}
|
|
539
|
-
|
|
540
|
-
export interface MasterGear {
|
|
541
|
-
gear_id: number;
|
|
542
|
-
name: string;
|
|
543
|
-
types: GearTypeIdArray;
|
|
544
|
-
special_type?: number;
|
|
545
|
-
max_hp?: number;
|
|
546
|
-
firepower?: number;
|
|
547
|
-
armor?: number;
|
|
548
|
-
torpedo?: number;
|
|
549
|
-
anti_air?: number;
|
|
550
|
-
speed?: number;
|
|
551
|
-
bombing?: number;
|
|
552
|
-
asw?: number;
|
|
553
|
-
los?: number;
|
|
554
|
-
luck?: number;
|
|
555
|
-
accuracy?: number;
|
|
556
|
-
evasion?: number;
|
|
557
|
-
range?: number;
|
|
558
|
-
radius?: number;
|
|
559
|
-
cost?: number;
|
|
560
|
-
improvable?: boolean;
|
|
561
|
-
ship_anti_air_resist?: number;
|
|
562
|
-
fleet_anti_air_resist?: number;
|
|
563
|
-
historical_aircraft_group?: number;
|
|
564
|
-
}
|
|
565
|
-
|
|
566
|
-
export interface NodeAttackAnalyzerShipConfig extends NightFleetConditions {
|
|
567
|
-
formation?: Formation;
|
|
568
|
-
}
|
|
569
|
-
|
|
570
|
-
export interface NodeAttackAnalyzerConfig {
|
|
571
|
-
air_state?: AirState;
|
|
572
|
-
engagement?: Engagement;
|
|
573
|
-
node_state?: NodeState;
|
|
574
|
-
left?: NodeAttackAnalyzerShipConfig;
|
|
575
|
-
right?: NodeAttackAnalyzerShipConfig;
|
|
576
|
-
}
|
|
577
|
-
|
|
578
|
-
export interface NodeAttackAnalysis {
|
|
579
|
-
left: AttackAnalysis;
|
|
580
|
-
right: AttackAnalysis;
|
|
581
|
-
shelling_fleet_cutin: FleetCutinReport<ShellingStyle>[];
|
|
582
|
-
night_fleet_cutin: FleetCutinReport<NightAttackStyle>[];
|
|
583
|
-
}
|
|
584
|
-
|
|
585
|
-
export interface CompAnalyzerConfig {
|
|
586
|
-
engagement: Engagement;
|
|
587
|
-
formation: Formation;
|
|
588
|
-
anti_air_cutin: number | null;
|
|
589
|
-
ship_anti_air_resist: number;
|
|
590
|
-
fleet_anti_air_resist: number;
|
|
591
|
-
left_night_fleet_conditions: NightFleetConditions;
|
|
592
|
-
right_night_fleet_conditions: NightFleetConditions;
|
|
593
|
-
}
|
|
594
|
-
|
|
595
|
-
export interface CompNightAnalysis {
|
|
596
|
-
night_cutin: CompNightCutinAnalysis;
|
|
597
|
-
fleet_cutin: FleetCutinReport<NightAttackStyle>[];
|
|
598
|
-
}
|
|
599
|
-
|
|
600
|
-
export interface CompDayAnalysis {
|
|
601
|
-
day_cutin: CompDayCutinAnalysis;
|
|
602
|
-
fleet_cutin: FleetCutinReport<ShellingStyle>[];
|
|
603
|
-
}
|
|
604
|
-
|
|
605
|
-
export interface CompAnalysis {
|
|
606
|
-
day: CompDayAnalysis;
|
|
607
|
-
night: CompNightAnalysis;
|
|
608
|
-
contact: ContactAnalysis;
|
|
609
|
-
anti_air: CompAntiAirAnalysis;
|
|
610
|
-
}
|
|
611
|
-
|
|
612
|
-
export interface AttackAnalyzerShipConfig
|
|
613
|
-
extends ShipConditions,
|
|
614
|
-
NightFleetConditions {
|
|
615
|
-
balloons?: number;
|
|
616
|
-
fleet_los_mod?: number | null;
|
|
287
|
+
export interface SimulatorResult {
|
|
288
|
+
items: SimulatorResultItem[];
|
|
289
|
+
sunk_vec: [number, number, number][];
|
|
617
290
|
}
|
|
618
291
|
|
|
619
|
-
export interface
|
|
620
|
-
|
|
621
|
-
|
|
292
|
+
export interface SimulatorResultItem {
|
|
293
|
+
id: string;
|
|
294
|
+
fleet_type: FleetType;
|
|
295
|
+
index: number;
|
|
296
|
+
damage_state_map: Record<DamageState, number>;
|
|
622
297
|
}
|
|
623
298
|
|
|
624
|
-
export interface
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
toku_daihatsu_chiha_mod: AttackPowerModifier;
|
|
632
|
-
toku_daihatsu_chiha_kai_mod: AttackPowerModifier;
|
|
633
|
-
t4_tank_group_mod: AttackPowerModifier;
|
|
634
|
-
t4_tank_kai_mod: AttackPowerModifier;
|
|
635
|
-
postcap_general_mod: AttackPowerModifier;
|
|
636
|
-
pt_mod: AttackPowerModifier | null;
|
|
299
|
+
export interface ShellingStyle {
|
|
300
|
+
tag: "ShellingStyle";
|
|
301
|
+
attack_type: ShellingType;
|
|
302
|
+
cutin: DayCutinLike | null;
|
|
303
|
+
power_mod: number;
|
|
304
|
+
accuracy_mod: number;
|
|
305
|
+
hits: number;
|
|
637
306
|
}
|
|
638
307
|
|
|
639
|
-
export interface
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
308
|
+
export interface NightAttackStyle {
|
|
309
|
+
tag: "NightAttackStyle";
|
|
310
|
+
attack_type: NightAttackType;
|
|
311
|
+
cutin: NightCutinLike | null;
|
|
312
|
+
power_mod: number;
|
|
313
|
+
accuracy_mod: number;
|
|
314
|
+
hits: number;
|
|
644
315
|
}
|
|
645
316
|
|
|
646
|
-
export interface
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
exp?: number;
|
|
650
|
-
stars?: number;
|
|
317
|
+
export interface AswAttackStyle {
|
|
318
|
+
tag: "AswAttackStyle";
|
|
319
|
+
attack_type: AswAttackType;
|
|
651
320
|
}
|
|
652
321
|
|
|
653
|
-
export interface
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
g3?: GearState;
|
|
657
|
-
g4?: GearState;
|
|
658
|
-
g5?: GearState;
|
|
659
|
-
gx?: GearState;
|
|
322
|
+
export interface TorpedoAttackStyle {
|
|
323
|
+
tag: "TorpedoAttackStyle";
|
|
324
|
+
attack_type: TorpedoAttackType;
|
|
660
325
|
}
|
|
661
326
|
|
|
662
|
-
export
|
|
663
|
-
|
|
664
|
-
|
|
327
|
+
export type DayPhaseAttackStyle = ShellingStyle | AswAttackStyle;
|
|
328
|
+
|
|
329
|
+
export type NightPhaseAttackStyle = NightAttackStyle | AswAttackStyle;
|
|
330
|
+
|
|
331
|
+
export interface SupportShellingStyle {
|
|
332
|
+
tag: "SupportShellingStyle";
|
|
333
|
+
attack_type: SupportShellingType;
|
|
665
334
|
}
|
|
666
335
|
|
|
667
|
-
export
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
ship_attrs: MasterAttrRule<ShipAttr>[];
|
|
673
|
-
ibonuses: MasterIBonuses;
|
|
674
|
-
equippability: MasterEquippability;
|
|
336
|
+
export type DamageState = "Normal" | "Shouha" | "Chuuha" | "Taiha" | "Sunk";
|
|
337
|
+
|
|
338
|
+
export interface ShipMeta {
|
|
339
|
+
id: string;
|
|
340
|
+
ship_id: number;
|
|
675
341
|
}
|
|
676
342
|
|
|
677
|
-
export interface
|
|
678
|
-
id:
|
|
679
|
-
|
|
343
|
+
export interface FleetMeta {
|
|
344
|
+
id: string;
|
|
345
|
+
len: number;
|
|
346
|
+
ships: [string, ShipMeta | null][];
|
|
680
347
|
}
|
|
681
348
|
|
|
682
|
-
export interface
|
|
683
|
-
|
|
684
|
-
name: string;
|
|
685
|
-
expr: CompiledEvaler;
|
|
349
|
+
export interface CompMeta {
|
|
350
|
+
fleets: Record<FleetType, FleetMeta>;
|
|
686
351
|
}
|
|
687
352
|
|
|
688
|
-
export interface
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
353
|
+
export interface OrgState {
|
|
354
|
+
id?: string;
|
|
355
|
+
f1?: FleetState;
|
|
356
|
+
f2?: FleetState;
|
|
357
|
+
f3?: FleetState;
|
|
358
|
+
f4?: FleetState;
|
|
359
|
+
a1?: AirSquadronState;
|
|
360
|
+
a2?: AirSquadronState;
|
|
361
|
+
a3?: AirSquadronState;
|
|
362
|
+
hq_level?: number;
|
|
363
|
+
org_type?: OrgType;
|
|
364
|
+
sortie?: FleetKey;
|
|
365
|
+
route_sup?: FleetKey;
|
|
366
|
+
boss_sup?: FleetKey;
|
|
693
367
|
}
|
|
694
368
|
|
|
695
|
-
export
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
369
|
+
export type FleetKey = "f1" | "f2" | "f3" | "f4";
|
|
370
|
+
|
|
371
|
+
export type OrgType =
|
|
372
|
+
| "Single"
|
|
373
|
+
| "CarrierTaskForce"
|
|
374
|
+
| "SurfaceTaskForce"
|
|
375
|
+
| "TransportEscort"
|
|
376
|
+
| "EnemySingle"
|
|
377
|
+
| "EnemyCombined";
|
|
378
|
+
|
|
379
|
+
export interface SlotSizeVecState {
|
|
380
|
+
ss1?: number;
|
|
381
|
+
ss2?: number;
|
|
382
|
+
ss3?: number;
|
|
383
|
+
ss4?: number;
|
|
384
|
+
ss5?: number;
|
|
703
385
|
}
|
|
704
386
|
|
|
705
|
-
export interface
|
|
706
|
-
|
|
707
|
-
|
|
387
|
+
export interface ShipState extends GearVecState, SlotSizeVecState {
|
|
388
|
+
id?: string;
|
|
389
|
+
ship_id: number;
|
|
390
|
+
level?: number;
|
|
391
|
+
current_hp?: number;
|
|
392
|
+
morale?: number;
|
|
393
|
+
ammo?: number;
|
|
394
|
+
fuel?: number;
|
|
395
|
+
max_hp_mod?: number;
|
|
396
|
+
firepower_mod?: number;
|
|
397
|
+
torpedo_mod?: number;
|
|
398
|
+
armor_mod?: number;
|
|
399
|
+
anti_air_mod?: number;
|
|
400
|
+
evasion_mod?: number;
|
|
401
|
+
asw_mod?: number;
|
|
402
|
+
los_mod?: number;
|
|
403
|
+
luck_mod?: number;
|
|
404
|
+
day_gunfit_accuracy?: number;
|
|
405
|
+
night_gunfit_accuracy?: number;
|
|
406
|
+
custom_power_mods?: CustomPowerModifiers;
|
|
708
407
|
}
|
|
709
408
|
|
|
710
|
-
export
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
409
|
+
export type ShipKey = "s1" | "s2" | "s3" | "s4" | "s5" | "s6" | "s7";
|
|
410
|
+
|
|
411
|
+
export type Side = "Player" | "Enemy";
|
|
412
|
+
|
|
413
|
+
export type Align = "Left" | "Right";
|
|
414
|
+
|
|
415
|
+
export type GearTypeIdArray = [number, number, number, number, number];
|
|
416
|
+
|
|
417
|
+
export interface SupportShellingSimulatorParams {
|
|
418
|
+
attacker_formation?: Formation;
|
|
419
|
+
target_formation?: Formation;
|
|
420
|
+
engagement: Engagement;
|
|
421
|
+
node_state: NodeState;
|
|
715
422
|
}
|
|
716
423
|
|
|
717
|
-
export type
|
|
718
|
-
| "
|
|
719
|
-
| "
|
|
720
|
-
| "
|
|
721
|
-
| "
|
|
722
|
-
| "
|
|
723
|
-
| "
|
|
724
|
-
| "MainGun"
|
|
725
|
-
| "Radar"
|
|
726
|
-
| "SurfaceRadar"
|
|
727
|
-
| "AirRadar"
|
|
728
|
-
| "DepthChargeProjector"
|
|
729
|
-
| "SynergisticDepthCharge"
|
|
730
|
-
| "AntiSubMortar"
|
|
731
|
-
| "AntiSubWeapon"
|
|
732
|
-
| "ApDepthCharge"
|
|
733
|
-
| "AntiSubAircraft"
|
|
734
|
-
| "LateModelBowTorpedo"
|
|
735
|
-
| "Seaplane"
|
|
736
|
-
| "CbAircraft"
|
|
737
|
-
| "LbAircraft"
|
|
738
|
-
| "JetAircraft"
|
|
739
|
-
| "Fighter"
|
|
740
|
-
| "Recon"
|
|
741
|
-
| "ObservationSeaplane"
|
|
742
|
-
| "CbFighterBomber"
|
|
743
|
-
| "AntiInstDiveBomber"
|
|
744
|
-
| "CbSwordfish"
|
|
745
|
-
| "SemiNightPlane"
|
|
746
|
-
| "HighAltitudeInterceptor";
|
|
424
|
+
export type SingleFormation =
|
|
425
|
+
| "LineAhead"
|
|
426
|
+
| "DoubleLine"
|
|
427
|
+
| "Diamond"
|
|
428
|
+
| "Echelon"
|
|
429
|
+
| "LineAbreast"
|
|
430
|
+
| "Vanguard";
|
|
747
431
|
|
|
748
|
-
export type
|
|
749
|
-
| "
|
|
750
|
-
| "
|
|
751
|
-
| "
|
|
752
|
-
| "
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
432
|
+
export type CombinedFormation =
|
|
433
|
+
| "Cruising1"
|
|
434
|
+
| "Cruising2"
|
|
435
|
+
| "Cruising3"
|
|
436
|
+
| "Cruising4";
|
|
437
|
+
|
|
438
|
+
export type Formation = SingleFormation | CombinedFormation;
|
|
439
|
+
|
|
440
|
+
export type MoraleState = "Sparkle" | "Normal" | "Orange" | "Red";
|
|
441
|
+
|
|
442
|
+
export type Role = "Main" | "Escort";
|
|
443
|
+
|
|
444
|
+
export type SpecialEnemyType =
|
|
445
|
+
| "None"
|
|
446
|
+
| "SoftSkinned"
|
|
756
447
|
| "Pillbox"
|
|
757
448
|
| "IsolatedIsland"
|
|
758
|
-
| "HarbourSummerPrincess"
|
|
759
449
|
| "SupplyDepot"
|
|
760
450
|
| "NewSupplyDepot"
|
|
451
|
+
| "HarbourSummerPrincess"
|
|
761
452
|
| "PtImp"
|
|
762
453
|
| "BattleshipSummerPrincess"
|
|
763
454
|
| "HeavyCruiserSummerPrincess"
|
|
764
|
-
| "AnchorageWaterDemonVacationMode"
|
|
765
455
|
| "FrenchBattleshipPrincess"
|
|
456
|
+
| "AnchorageWaterDemonVacationMode"
|
|
766
457
|
| "DockPrincess"
|
|
767
458
|
| "SummerAircraftCarrierDemon";
|
|
768
459
|
|
|
769
|
-
export
|
|
460
|
+
export interface HitRate {
|
|
461
|
+
normal: number;
|
|
462
|
+
critical: number;
|
|
463
|
+
total: number;
|
|
464
|
+
}
|
|
465
|
+
|
|
466
|
+
export interface HitRateParams {
|
|
467
|
+
accuracy_term: number;
|
|
468
|
+
evasion_term: number;
|
|
469
|
+
target_morale_mod: number;
|
|
470
|
+
critical_rate_constant: number;
|
|
471
|
+
critical_percentage_bonus: number;
|
|
472
|
+
hit_percentage_bonus: number;
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
export interface AttackPower {
|
|
476
|
+
precap: number;
|
|
477
|
+
is_capped: boolean;
|
|
478
|
+
capped: number;
|
|
479
|
+
normal: number;
|
|
480
|
+
critical: number;
|
|
481
|
+
armor_penetration: number;
|
|
482
|
+
remaining_ammo_mod: number;
|
|
483
|
+
}
|
|
484
|
+
|
|
485
|
+
export interface AttackPowerParams {
|
|
486
|
+
is_cutin: boolean;
|
|
487
|
+
basic: number;
|
|
488
|
+
cap: number;
|
|
489
|
+
precap_mod: AttackPowerModifier;
|
|
490
|
+
postcap_mod: AttackPowerModifier;
|
|
491
|
+
ap_shell_mod: number | null;
|
|
492
|
+
aerial_power: number | null;
|
|
493
|
+
proficiency_critical_mod: number;
|
|
494
|
+
armor_penetration: number;
|
|
495
|
+
remaining_ammo_mod: number;
|
|
496
|
+
balloon_mod: number;
|
|
497
|
+
special_enemy_mods: SpecialEnemyModifiers;
|
|
498
|
+
historical_mod: AttackPowerModifier;
|
|
499
|
+
custom_mods: CustomPowerModifiers;
|
|
500
|
+
}
|
|
501
|
+
|
|
502
|
+
export interface CompAntiAirAnalysis {
|
|
503
|
+
fleet_adjusted_anti_air: number;
|
|
504
|
+
ships: AntiAirReport[];
|
|
505
|
+
anti_air_cutin_chance: [number, number][];
|
|
506
|
+
}
|
|
507
|
+
|
|
508
|
+
export interface AntiAirReport {
|
|
509
|
+
ship_id: number;
|
|
510
|
+
role: Role;
|
|
511
|
+
index: number;
|
|
512
|
+
adjusted_anti_air: number | null;
|
|
513
|
+
proportional_shotdown_rate: number | null;
|
|
514
|
+
fixed_shotdown_number: number | null;
|
|
515
|
+
guaranteed: number | null;
|
|
516
|
+
anti_air_cutin_chance: [number, number][];
|
|
517
|
+
anti_air_propellant_barrage_chance: number | null;
|
|
518
|
+
}
|
|
519
|
+
|
|
520
|
+
export interface AttackPowerModifier {
|
|
521
|
+
a?: number;
|
|
522
|
+
b?: number;
|
|
523
|
+
}
|
|
770
524
|
|
|
771
|
-
export interface
|
|
772
|
-
|
|
773
|
-
|
|
525
|
+
export interface SpecialEnemyModifiers {
|
|
526
|
+
precap_general_mod: AttackPowerModifier;
|
|
527
|
+
stype_mod: AttackPowerModifier;
|
|
528
|
+
landing_craft_synergy_mod: AttackPowerModifier;
|
|
529
|
+
toku_daihatsu_tank_mod: AttackPowerModifier;
|
|
530
|
+
m4a1dd_mod: AttackPowerModifier;
|
|
531
|
+
honi_mod: AttackPowerModifier;
|
|
532
|
+
toku_daihatsu_chiha_mod: AttackPowerModifier;
|
|
533
|
+
toku_daihatsu_chiha_kai_mod: AttackPowerModifier;
|
|
534
|
+
t4_tank_group_mod: AttackPowerModifier;
|
|
535
|
+
t4_tank_kai_mod: AttackPowerModifier;
|
|
536
|
+
postcap_general_mod: AttackPowerModifier;
|
|
537
|
+
pt_mod: AttackPowerModifier | null;
|
|
774
538
|
}
|
|
775
539
|
|
|
776
|
-
export interface
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
rank1: number;
|
|
782
|
-
total: number;
|
|
540
|
+
export interface CustomPowerModifiers {
|
|
541
|
+
precap_mod?: AttackPowerModifier;
|
|
542
|
+
postcap_mod?: AttackPowerModifier;
|
|
543
|
+
basic_power_mod?: AttackPowerModifier;
|
|
544
|
+
historical_mod?: AttackPowerModifier;
|
|
783
545
|
}
|
|
784
546
|
|
|
785
|
-
export
|
|
547
|
+
export interface FormationCombatModifiersDef {
|
|
548
|
+
power_mod?: number;
|
|
549
|
+
accuracy_mod?: number;
|
|
550
|
+
evasion_mod?: number;
|
|
551
|
+
}
|
|
786
552
|
|
|
787
|
-
export interface
|
|
788
|
-
|
|
789
|
-
|
|
553
|
+
export interface FormationDef {
|
|
554
|
+
tag: Formation;
|
|
555
|
+
protection_rate: number | null;
|
|
556
|
+
fleet_anti_air_mod: number;
|
|
557
|
+
shelling: FormationCombatModifiersDef;
|
|
558
|
+
torpedo: FormationCombatModifiersDef;
|
|
559
|
+
asw: FormationCombatModifiersDef;
|
|
560
|
+
night: FormationCombatModifiersDef;
|
|
561
|
+
support_shelling: FormationCombatModifiersDef;
|
|
790
562
|
}
|
|
791
563
|
|
|
792
|
-
export
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
564
|
+
export type NestedFormationDef =
|
|
565
|
+
| FormationDef
|
|
566
|
+
| { top_half: FormationDef; bottom_half: FormationDef };
|
|
567
|
+
|
|
568
|
+
export interface AntiAirCutinDef {
|
|
569
|
+
id: number;
|
|
570
|
+
type_factor: number | null;
|
|
571
|
+
multiplier: number | null;
|
|
572
|
+
guaranteed: number | null;
|
|
573
|
+
sequential: boolean | null;
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
export interface DayCutinDef {
|
|
577
|
+
tag: DayCutin;
|
|
798
578
|
hits: number;
|
|
579
|
+
type_factor: number | null;
|
|
580
|
+
power_mod: number | null;
|
|
581
|
+
accuracy_mod: number | null;
|
|
799
582
|
}
|
|
800
583
|
|
|
801
|
-
export interface
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
584
|
+
export interface HistoricalBonusDef {
|
|
585
|
+
map?: number;
|
|
586
|
+
node?: CompiledEvaler;
|
|
587
|
+
phase?: number;
|
|
588
|
+
debuff?: boolean;
|
|
589
|
+
ship?: CompiledEvaler;
|
|
590
|
+
enemy?: CompiledEvaler;
|
|
591
|
+
power_mod?: AttackPowerModifier;
|
|
592
|
+
armor_penetration?: number;
|
|
593
|
+
accuracy_mod?: number;
|
|
594
|
+
evasion_mod?: number;
|
|
595
|
+
}
|
|
596
|
+
|
|
597
|
+
export interface HistoricalParams {
|
|
598
|
+
power_mod: AttackPowerModifier;
|
|
599
|
+
armor_penetration: number;
|
|
806
600
|
accuracy_mod: number;
|
|
807
|
-
|
|
601
|
+
target_evasion_mod: number;
|
|
808
602
|
}
|
|
809
603
|
|
|
810
|
-
export interface
|
|
811
|
-
tag:
|
|
812
|
-
|
|
604
|
+
export interface NightCutinDef {
|
|
605
|
+
tag: NightCutin;
|
|
606
|
+
hits: number;
|
|
607
|
+
type_factor: number | null;
|
|
608
|
+
power_mod: number | null;
|
|
609
|
+
accuracy_mod: number | null;
|
|
813
610
|
}
|
|
814
611
|
|
|
815
|
-
export interface
|
|
816
|
-
|
|
817
|
-
|
|
612
|
+
export interface BattleDefinitions {
|
|
613
|
+
formation: Record<Formation, NestedFormationDef>;
|
|
614
|
+
anti_air_cutin: Record<number, AntiAirCutinDef>;
|
|
615
|
+
day_cutin: Record<DayCutin, DayCutinDef>;
|
|
616
|
+
night_cutin: Record<NightCutin, NightCutinDef>;
|
|
617
|
+
historical_bonuses: HistoricalBonusDef[];
|
|
818
618
|
}
|
|
819
619
|
|
|
820
|
-
export type
|
|
620
|
+
export type ContactRank = "Rank1" | "Rank2" | "Rank3";
|
|
821
621
|
|
|
822
|
-
export type
|
|
622
|
+
export type DayCutin =
|
|
623
|
+
| "Zuiun"
|
|
624
|
+
| "AirSea"
|
|
625
|
+
| "MainMain"
|
|
626
|
+
| "MainAp"
|
|
627
|
+
| "MainRadar"
|
|
628
|
+
| "MainSec"
|
|
629
|
+
| "DoubleAttack"
|
|
630
|
+
| "FBA"
|
|
631
|
+
| "BBA"
|
|
632
|
+
| "BA";
|
|
823
633
|
|
|
824
|
-
export
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
634
|
+
export type NightCutin =
|
|
635
|
+
| "MainTorpRadar"
|
|
636
|
+
| "TorpLookoutRadar"
|
|
637
|
+
| "TorpTsloTorp"
|
|
638
|
+
| "TorpTsloDrum"
|
|
639
|
+
| "NightZuiun2Radar"
|
|
640
|
+
| "NightZuiun2"
|
|
641
|
+
| "NightZuiunRadar"
|
|
642
|
+
| "NightZuiun"
|
|
643
|
+
| "DoubleAttack"
|
|
644
|
+
| "TorpTorpMain"
|
|
645
|
+
| "TorpTorpTorp"
|
|
646
|
+
| "MainMainSec"
|
|
647
|
+
| "MainMainMain"
|
|
648
|
+
| "SubTorpTorp"
|
|
649
|
+
| "SubRadarTorp"
|
|
650
|
+
| "Cvci1_25"
|
|
651
|
+
| "Cvci1_20"
|
|
652
|
+
| "Cvci1_18"
|
|
653
|
+
| "Photobomber";
|
|
828
654
|
|
|
829
|
-
export
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
655
|
+
export type FleetCutin =
|
|
656
|
+
| "NelsonTouch"
|
|
657
|
+
| "NagatoClassCutin"
|
|
658
|
+
| "ColoradoClassCutin"
|
|
659
|
+
| "KongouClassCutin"
|
|
660
|
+
| "Yamato2ShipCutin"
|
|
661
|
+
| "Yamato3ShipCutin";
|
|
836
662
|
|
|
837
|
-
export
|
|
838
|
-
id?: string;
|
|
839
|
-
ship_id: number;
|
|
840
|
-
level?: number;
|
|
841
|
-
current_hp?: number;
|
|
842
|
-
morale?: number;
|
|
843
|
-
ammo?: number;
|
|
844
|
-
fuel?: number;
|
|
845
|
-
max_hp_mod?: number;
|
|
846
|
-
firepower_mod?: number;
|
|
847
|
-
torpedo_mod?: number;
|
|
848
|
-
armor_mod?: number;
|
|
849
|
-
anti_air_mod?: number;
|
|
850
|
-
evasion_mod?: number;
|
|
851
|
-
asw_mod?: number;
|
|
852
|
-
los_mod?: number;
|
|
853
|
-
luck_mod?: number;
|
|
854
|
-
day_gunfit_accuracy?: number;
|
|
855
|
-
night_gunfit_accuracy?: number;
|
|
856
|
-
custom_power_mods?: CustomPowerModifiers;
|
|
857
|
-
}
|
|
663
|
+
export type DayCutinLike = DayCutin | FleetCutin;
|
|
858
664
|
|
|
859
|
-
export type
|
|
665
|
+
export type NightCutinLike = NightCutin | FleetCutin;
|
|
860
666
|
|
|
861
|
-
export
|
|
667
|
+
export interface GearState {
|
|
668
|
+
id?: string;
|
|
669
|
+
gear_id: number;
|
|
670
|
+
exp?: number;
|
|
671
|
+
stars?: number;
|
|
672
|
+
}
|
|
862
673
|
|
|
863
|
-
export
|
|
674
|
+
export interface GearVecState {
|
|
675
|
+
g1?: GearState;
|
|
676
|
+
g2?: GearState;
|
|
677
|
+
g3?: GearState;
|
|
678
|
+
g4?: GearState;
|
|
679
|
+
g5?: GearState;
|
|
680
|
+
gx?: GearState;
|
|
681
|
+
}
|
|
864
682
|
|
|
865
683
|
export interface MasterBattleDefinitions {
|
|
866
684
|
formation: NestedFormationDef[];
|
|
@@ -870,55 +688,88 @@ export interface MasterBattleDefinitions {
|
|
|
870
688
|
historical_bonuses?: HistoricalBonusDef[];
|
|
871
689
|
}
|
|
872
690
|
|
|
873
|
-
export
|
|
691
|
+
export interface AttackReport<T> {
|
|
692
|
+
style: T;
|
|
693
|
+
proc_rate: number | null;
|
|
694
|
+
attack_power: AttackPower | null;
|
|
695
|
+
attack_power_params: AttackPowerParams | null;
|
|
696
|
+
hits: number;
|
|
697
|
+
hit_rate: HitRate | null;
|
|
698
|
+
hit_rate_params: HitRateParams | null;
|
|
699
|
+
damage: DamageReport | null;
|
|
700
|
+
}
|
|
874
701
|
|
|
875
|
-
export interface
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
702
|
+
export interface ActionReport<T> {
|
|
703
|
+
data: Record<string, AttackReport<T>>;
|
|
704
|
+
damage_state_density: Histogram<DamageState, number> | null;
|
|
705
|
+
is_active: boolean;
|
|
706
|
+
}
|
|
707
|
+
|
|
708
|
+
export interface FleetState {
|
|
709
|
+
id?: string;
|
|
710
|
+
len?: number;
|
|
711
|
+
s1?: ShipState;
|
|
712
|
+
s2?: ShipState;
|
|
713
|
+
s3?: ShipState;
|
|
714
|
+
s4?: ShipState;
|
|
715
|
+
s5?: ShipState;
|
|
716
|
+
s6?: ShipState;
|
|
717
|
+
s7?: ShipState;
|
|
718
|
+
}
|
|
719
|
+
|
|
720
|
+
export type NodeId = string;
|
|
721
|
+
|
|
722
|
+
export interface NodeState {
|
|
723
|
+
map?: number;
|
|
724
|
+
node?: NodeId;
|
|
725
|
+
phase?: number;
|
|
726
|
+
debuff?: boolean;
|
|
727
|
+
disable_historical_mod?: boolean;
|
|
728
|
+
landing_battle?: boolean;
|
|
880
729
|
}
|
|
881
730
|
|
|
882
|
-
export interface
|
|
883
|
-
|
|
884
|
-
equip_exslot: number[];
|
|
885
|
-
equip_ship: MstEquipShip[];
|
|
886
|
-
equip_exslot_ship: Record<number, MstEquipExslotShip>;
|
|
887
|
-
rules: EquippabilityRule[];
|
|
731
|
+
export interface NodeAttackAnalyzerShipConfig extends NightFleetConditions {
|
|
732
|
+
formation?: Formation;
|
|
888
733
|
}
|
|
889
734
|
|
|
890
|
-
export interface
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
735
|
+
export interface NodeAttackAnalyzerConfig {
|
|
736
|
+
air_state?: AirState;
|
|
737
|
+
engagement?: Engagement;
|
|
738
|
+
node_state?: NodeState;
|
|
739
|
+
left?: NodeAttackAnalyzerShipConfig;
|
|
740
|
+
right?: NodeAttackAnalyzerShipConfig;
|
|
894
741
|
}
|
|
895
742
|
|
|
896
|
-
export interface
|
|
897
|
-
|
|
898
|
-
|
|
743
|
+
export interface NodeAttackAnalysis {
|
|
744
|
+
left: AttackAnalysis;
|
|
745
|
+
right: AttackAnalysis;
|
|
746
|
+
shelling_fleet_cutin: FleetCutinReport<ShellingStyle>[];
|
|
747
|
+
night_fleet_cutin: FleetCutinReport<NightAttackStyle>[];
|
|
899
748
|
}
|
|
900
749
|
|
|
901
|
-
export interface
|
|
902
|
-
|
|
903
|
-
|
|
750
|
+
export interface FleetCutinReport<T> {
|
|
751
|
+
cutin: FleetCutin;
|
|
752
|
+
rate: number | null;
|
|
753
|
+
formation: Formation;
|
|
754
|
+
attacks: FleetCutinAttackReport<T>[];
|
|
904
755
|
}
|
|
905
756
|
|
|
906
|
-
export interface
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
757
|
+
export interface FleetCutinAttackReport<T> extends AttackReport<T> {
|
|
758
|
+
index: number;
|
|
759
|
+
ship_id: number;
|
|
760
|
+
power_mod: number;
|
|
910
761
|
}
|
|
911
762
|
|
|
912
|
-
export interface
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
763
|
+
export interface AttackAnalysis {
|
|
764
|
+
attacker_is_player: boolean;
|
|
765
|
+
attacker_ship_id: number;
|
|
766
|
+
target_ship_id: number;
|
|
767
|
+
historical_params: HistoricalParams;
|
|
768
|
+
day: ActionReport<DayPhaseAttackStyle>;
|
|
769
|
+
night: ActionReport<NightPhaseAttackStyle>;
|
|
770
|
+
closing_torpedo: ActionReport<TorpedoAttackStyle>;
|
|
771
|
+
opening_asw: ActionReport<AswAttackStyle>;
|
|
772
|
+
support_shelling: ActionReport<SupportShellingStyle>;
|
|
922
773
|
}
|
|
923
774
|
|
|
924
775
|
export type AirState =
|
|
@@ -930,188 +781,291 @@ export type AirState =
|
|
|
930
781
|
|
|
931
782
|
export type AirStateRank = "Rank0" | "Rank1" | "Rank2" | "Rank3";
|
|
932
783
|
|
|
933
|
-
export
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
784
|
+
export type AswAttackType = "DepthCharge" | "Aerial";
|
|
785
|
+
|
|
786
|
+
export type ShellingType = "Normal" | "Aerial";
|
|
787
|
+
|
|
788
|
+
export type NightAttackType = "Normal" | "Swordfish" | "Aerial";
|
|
789
|
+
|
|
790
|
+
export type SupportShellingType = ShellingType;
|
|
791
|
+
|
|
792
|
+
export type AttackType =
|
|
793
|
+
| { t: "Asw"; c: AswAttackType }
|
|
794
|
+
| { t: "Shelling"; c: ShellingType }
|
|
795
|
+
| { t: "Night"; c: NightAttackType }
|
|
796
|
+
| { t: "Torpedo" }
|
|
797
|
+
| { t: "SupportShelling"; c: SupportShellingType };
|
|
798
|
+
|
|
799
|
+
export type DayPhaseAttackType =
|
|
800
|
+
| { t: "Shelling"; c: ShellingType }
|
|
801
|
+
| { t: "Asw"; c: AswAttackType };
|
|
802
|
+
|
|
803
|
+
export type NightPhaseAttackType =
|
|
804
|
+
| { t: "Night"; c: NightAttackType }
|
|
805
|
+
| { t: "Asw"; c: AswAttackType };
|
|
806
|
+
|
|
807
|
+
export type TorpedoAttackType = null;
|
|
808
|
+
|
|
809
|
+
export type Engagement = "GreenT" | "Parallel" | "HeadOn" | "RedT";
|
|
810
|
+
|
|
811
|
+
export type GearType =
|
|
812
|
+
| "Unknown"
|
|
813
|
+
| "SmallMainGun"
|
|
814
|
+
| "MediumMainGun"
|
|
815
|
+
| "LargeMainGun"
|
|
816
|
+
| "SecondaryGun"
|
|
817
|
+
| "Torpedo"
|
|
818
|
+
| "CbFighter"
|
|
819
|
+
| "CbDiveBomber"
|
|
820
|
+
| "CbTorpedoBomber"
|
|
821
|
+
| "CbRecon"
|
|
822
|
+
| "ReconSeaplane"
|
|
823
|
+
| "SeaplaneBomber"
|
|
824
|
+
| "SmallRadar"
|
|
825
|
+
| "LargeRadar"
|
|
826
|
+
| "Sonar"
|
|
827
|
+
| "DepthCharge"
|
|
828
|
+
| "ExtraArmor"
|
|
829
|
+
| "Engine"
|
|
830
|
+
| "AntiAirShell"
|
|
831
|
+
| "ApShell"
|
|
832
|
+
| "VtFuze"
|
|
833
|
+
| "AntiAirGun"
|
|
834
|
+
| "MidgetSubmarine"
|
|
835
|
+
| "EmergencyRepair"
|
|
836
|
+
| "LandingCraft"
|
|
837
|
+
| "Rotorcraft"
|
|
838
|
+
| "AntiSubPatrolAircraft"
|
|
839
|
+
| "MediumArmor"
|
|
840
|
+
| "LargeArmor"
|
|
841
|
+
| "Searchlight"
|
|
842
|
+
| "SupplyContainer"
|
|
843
|
+
| "ShipRepairFacility"
|
|
844
|
+
| "SubmarineTorpedo"
|
|
845
|
+
| "Starshell"
|
|
846
|
+
| "CommandFacility"
|
|
847
|
+
| "AviationPersonnel"
|
|
848
|
+
| "AntiAirFireDirector"
|
|
849
|
+
| "AntiGroundEquipment"
|
|
850
|
+
| "LargeMainGun2"
|
|
851
|
+
| "ShipPersonnel"
|
|
852
|
+
| "LargeSonar"
|
|
853
|
+
| "LargeFlyingBoat"
|
|
854
|
+
| "LargeSearchlight"
|
|
855
|
+
| "CombatRation"
|
|
856
|
+
| "Supplies"
|
|
857
|
+
| "SeaplaneFighter"
|
|
858
|
+
| "AmphibiousTank"
|
|
859
|
+
| "LbAttacker"
|
|
860
|
+
| "LbFighter"
|
|
861
|
+
| "LbRecon"
|
|
862
|
+
| "TransportationMaterial"
|
|
863
|
+
| "SubmarineEquipment"
|
|
864
|
+
| "LandingForce"
|
|
865
|
+
| "LargeLbAircraft"
|
|
866
|
+
| "SurfaceEquipment"
|
|
867
|
+
| "JetFighter"
|
|
868
|
+
| "JetFighterBomber"
|
|
869
|
+
| "JetTorpedoBomber"
|
|
870
|
+
| "JetRecon"
|
|
871
|
+
| "LargeRadar2"
|
|
872
|
+
| "CbRecon2"
|
|
873
|
+
| "SecondaryGun2";
|
|
874
|
+
|
|
875
|
+
export type GearCategory =
|
|
876
|
+
| "Fighter"
|
|
877
|
+
| "Bomber"
|
|
878
|
+
| "Recon"
|
|
879
|
+
| "MainGun"
|
|
880
|
+
| "Secondary"
|
|
881
|
+
| "Torpedo"
|
|
882
|
+
| "AntiSub"
|
|
883
|
+
| "Radar"
|
|
884
|
+
| "Landing"
|
|
885
|
+
| "Ration"
|
|
886
|
+
| "LandBased"
|
|
887
|
+
| "Misc";
|
|
888
|
+
|
|
889
|
+
export interface ShipConditions extends ShipPosition {
|
|
890
|
+
formation?: Formation;
|
|
891
|
+
amagiri_index?: number | null;
|
|
937
892
|
}
|
|
938
893
|
|
|
939
|
-
export interface
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
shelling: FormationCombatModifiersDef;
|
|
944
|
-
torpedo: FormationCombatModifiersDef;
|
|
945
|
-
asw: FormationCombatModifiersDef;
|
|
946
|
-
night: FormationCombatModifiersDef;
|
|
947
|
-
support_shelling: FormationCombatModifiersDef;
|
|
894
|
+
export interface NightContactChance {
|
|
895
|
+
rank1: number;
|
|
896
|
+
rank2: number;
|
|
897
|
+
rank3: number;
|
|
948
898
|
}
|
|
949
899
|
|
|
950
|
-
export
|
|
951
|
-
|
|
952
|
-
|
|
900
|
+
export interface CompNightCutinAnalysis {
|
|
901
|
+
night_contact_chance: NightContactChance;
|
|
902
|
+
ships: ShipNightCutinAnalysis[];
|
|
903
|
+
}
|
|
953
904
|
|
|
954
|
-
export interface
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
sequential: boolean | null;
|
|
905
|
+
export interface ShipNightCutinAnalysis {
|
|
906
|
+
ship_id: number;
|
|
907
|
+
index: number;
|
|
908
|
+
normal: NightCutinActionReport;
|
|
909
|
+
chuuha: NightCutinActionReport;
|
|
960
910
|
}
|
|
961
911
|
|
|
962
|
-
export interface
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
type_factor: number | null;
|
|
966
|
-
power_mod: number | null;
|
|
967
|
-
accuracy_mod: number | null;
|
|
912
|
+
export interface NightCutinActionReport
|
|
913
|
+
extends ActionReport<NightPhaseAttackStyle> {
|
|
914
|
+
cutin_term: number | null;
|
|
968
915
|
}
|
|
969
916
|
|
|
970
|
-
export interface
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
enemy?: CompiledEvaler;
|
|
977
|
-
power_mod?: AttackPowerModifier;
|
|
978
|
-
armor_penetration?: number;
|
|
979
|
-
accuracy_mod?: number;
|
|
980
|
-
evasion_mod?: number;
|
|
917
|
+
export interface CompDayCutinAnalysis {
|
|
918
|
+
rank3_air_state: AirState;
|
|
919
|
+
rank2_air_state: AirState;
|
|
920
|
+
main_fleet_los_mod: number | null;
|
|
921
|
+
escort_fleet_los_mod: number | null;
|
|
922
|
+
ships: ShipDayCutinAnalysis[];
|
|
981
923
|
}
|
|
982
924
|
|
|
983
|
-
export interface
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
925
|
+
export interface ShipDayCutinAnalysis {
|
|
926
|
+
ship_id: number;
|
|
927
|
+
role: Role;
|
|
928
|
+
index: number;
|
|
929
|
+
rank3: DayCutinReport;
|
|
930
|
+
rank2: DayCutinReport;
|
|
931
|
+
}
|
|
932
|
+
|
|
933
|
+
export interface DayCutinReport extends ActionReport<DayPhaseAttackStyle> {
|
|
934
|
+
observation_term: number | null;
|
|
935
|
+
}
|
|
936
|
+
|
|
937
|
+
export interface DamageReport {
|
|
938
|
+
miss_damage_min: number;
|
|
939
|
+
miss_damage_max: number;
|
|
940
|
+
normal_damage_min: number;
|
|
941
|
+
normal_damage_max: number;
|
|
942
|
+
critical_damage_min: number;
|
|
943
|
+
critical_damage_max: number;
|
|
944
|
+
normal_scratch_rate: number;
|
|
945
|
+
critical_scratch_rate: number;
|
|
946
|
+
damage_density: Histogram<number, number>;
|
|
947
|
+
damage_state_density: Histogram<DamageState, number>;
|
|
988
948
|
}
|
|
989
949
|
|
|
990
|
-
export interface
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
type_factor: number | null;
|
|
994
|
-
power_mod: number | null;
|
|
995
|
-
accuracy_mod: number | null;
|
|
950
|
+
export interface ContactAnalysis {
|
|
951
|
+
single: DayContactChance[] | null;
|
|
952
|
+
combined: DayContactChance[] | null;
|
|
996
953
|
}
|
|
997
954
|
|
|
998
|
-
export interface
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
955
|
+
export interface DayContactChance {
|
|
956
|
+
air_state: AirState;
|
|
957
|
+
trigger_rate: number;
|
|
958
|
+
rank3: number;
|
|
959
|
+
rank2: number;
|
|
960
|
+
rank1: number;
|
|
961
|
+
total: number;
|
|
1004
962
|
}
|
|
1005
963
|
|
|
1006
|
-
export type
|
|
964
|
+
export type AirWaveType = "Jet" | "LandBase" | "Carrier";
|
|
1007
965
|
|
|
1008
|
-
export type
|
|
1009
|
-
| "LineAhead"
|
|
1010
|
-
| "DoubleLine"
|
|
1011
|
-
| "Diamond"
|
|
1012
|
-
| "Echelon"
|
|
1013
|
-
| "LineAbreast"
|
|
1014
|
-
| "Vanguard";
|
|
966
|
+
export type FleetType = "Main" | "Escort" | "RouteSup" | "BossSup";
|
|
1015
967
|
|
|
1016
|
-
export type
|
|
1017
|
-
| "
|
|
1018
|
-
| "
|
|
1019
|
-
| "
|
|
1020
|
-
| "
|
|
968
|
+
export type ShipCategory =
|
|
969
|
+
| "Battleship"
|
|
970
|
+
| "AircraftCarrier"
|
|
971
|
+
| "HeavyCruiser"
|
|
972
|
+
| "LightCruiser"
|
|
973
|
+
| "Destroyer"
|
|
974
|
+
| "CoastalDefenseShip"
|
|
975
|
+
| "Submarine"
|
|
976
|
+
| "AuxiliaryShip";
|
|
1021
977
|
|
|
1022
|
-
export type
|
|
978
|
+
export type ShipType =
|
|
979
|
+
| "Unknown"
|
|
980
|
+
| "DE"
|
|
981
|
+
| "DD"
|
|
982
|
+
| "CL"
|
|
983
|
+
| "CLT"
|
|
984
|
+
| "CA"
|
|
985
|
+
| "CAV"
|
|
986
|
+
| "CVL"
|
|
987
|
+
| "FBB"
|
|
988
|
+
| "BB"
|
|
989
|
+
| "BBV"
|
|
990
|
+
| "CV"
|
|
991
|
+
| "XBB"
|
|
992
|
+
| "SS"
|
|
993
|
+
| "SSV"
|
|
994
|
+
| "AP"
|
|
995
|
+
| "AV"
|
|
996
|
+
| "LHA"
|
|
997
|
+
| "CVB"
|
|
998
|
+
| "AR"
|
|
999
|
+
| "AS"
|
|
1000
|
+
| "CT"
|
|
1001
|
+
| "AO";
|
|
1023
1002
|
|
|
1024
|
-
export
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
a2?: AirSquadronState;
|
|
1032
|
-
a3?: AirSquadronState;
|
|
1033
|
-
hq_level?: number;
|
|
1034
|
-
org_type?: OrgType;
|
|
1035
|
-
sortie?: FleetKey;
|
|
1036
|
-
route_sup?: FleetKey;
|
|
1037
|
-
boss_sup?: FleetKey;
|
|
1003
|
+
export type SlotSizeVec = (number | null)[];
|
|
1004
|
+
|
|
1005
|
+
export interface EquippabilityRule {
|
|
1006
|
+
ship: CompiledEvaler;
|
|
1007
|
+
keys?: string[];
|
|
1008
|
+
include?: string;
|
|
1009
|
+
exclude?: string;
|
|
1038
1010
|
}
|
|
1039
1011
|
|
|
1040
|
-
export
|
|
1012
|
+
export interface MasterEquippability {
|
|
1013
|
+
equip_stype: Record<number, Record<number, number>>;
|
|
1014
|
+
equip_exslot: number[];
|
|
1015
|
+
equip_ship: Record<number, MstEquipShip>;
|
|
1016
|
+
equip_exslot_ship: Record<number, MstEquipExslotShip>;
|
|
1017
|
+
rules: EquippabilityRule[];
|
|
1018
|
+
}
|
|
1041
1019
|
|
|
1042
|
-
export
|
|
1020
|
+
export interface MstEquipExslotShip {
|
|
1021
|
+
api_ctypes: Record<number, number> | null;
|
|
1022
|
+
api_ship_ids: Record<number, number> | null;
|
|
1023
|
+
api_stypes: Record<number, number> | null;
|
|
1024
|
+
}
|
|
1043
1025
|
|
|
1044
|
-
export type
|
|
1026
|
+
export type MstEquipShip = Record<number, MstEquipShipValue>;
|
|
1045
1027
|
|
|
1046
|
-
export type
|
|
1028
|
+
export type MstEquipShipValue = "Null" | { GearIds: number[] };
|
|
1029
|
+
|
|
1030
|
+
export interface EquipStype {
|
|
1031
|
+
id: number;
|
|
1032
|
+
equip_type: number[];
|
|
1033
|
+
}
|
|
1034
|
+
|
|
1035
|
+
export interface ShipAnalyzerConfig {
|
|
1036
|
+
air_state?: AirState;
|
|
1037
|
+
engagement?: Engagement;
|
|
1038
|
+
left?: AttackAnalyzerShipConfig;
|
|
1039
|
+
right?: AttackAnalyzerShipConfig;
|
|
1040
|
+
}
|
|
1047
1041
|
|
|
1048
|
-
/**
|
|
1049
|
-
*/
|
|
1050
1042
|
export class AirSquadron {
|
|
1043
|
+
private constructor();
|
|
1051
1044
|
free(): void;
|
|
1052
|
-
|
|
1053
|
-
* @param {string} key
|
|
1054
|
-
* @returns {Gear | undefined}
|
|
1055
|
-
*/
|
|
1045
|
+
[Symbol.dispose](): void;
|
|
1056
1046
|
get_gear(key: string): Gear | undefined;
|
|
1057
|
-
/**
|
|
1058
|
-
* @param {number} index
|
|
1059
|
-
* @returns {number}
|
|
1060
|
-
*/
|
|
1061
1047
|
get_slot_size(index: number): number;
|
|
1062
|
-
/**
|
|
1063
|
-
* @param {number} index
|
|
1064
|
-
* @returns {number}
|
|
1065
|
-
*/
|
|
1066
1048
|
get_max_slot_size(index: number): number;
|
|
1067
|
-
/**
|
|
1068
|
-
* @returns {number}
|
|
1069
|
-
*/
|
|
1070
1049
|
fighter_power(): number;
|
|
1071
|
-
/**
|
|
1072
|
-
* @returns {number}
|
|
1073
|
-
*/
|
|
1074
1050
|
interception_power(): number;
|
|
1075
1051
|
/**
|
|
1076
1052
|
* 行動半径
|
|
1077
|
-
* @returns {number}
|
|
1078
1053
|
*/
|
|
1079
1054
|
radius(): number;
|
|
1080
|
-
/**
|
|
1081
|
-
*/
|
|
1082
|
-
hash: bigint;
|
|
1083
|
-
/**
|
|
1084
|
-
*/
|
|
1085
1055
|
id: string;
|
|
1086
|
-
|
|
1087
|
-
*/
|
|
1056
|
+
hash: bigint;
|
|
1088
1057
|
mode: AirSquadronMode;
|
|
1089
1058
|
}
|
|
1090
|
-
/**
|
|
1091
|
-
*/
|
|
1092
1059
|
export class Analyzer {
|
|
1060
|
+
private constructor();
|
|
1093
1061
|
free(): void;
|
|
1094
|
-
|
|
1095
|
-
* @param {ShipAnalyzerConfig} config
|
|
1096
|
-
* @param {Ship} left
|
|
1097
|
-
* @param {Ship} right
|
|
1098
|
-
* @param {boolean} attacker_is_left
|
|
1099
|
-
* @returns {AttackAnalysis}
|
|
1100
|
-
*/
|
|
1062
|
+
[Symbol.dispose](): void;
|
|
1101
1063
|
analyze_ship_attack(
|
|
1102
1064
|
config: ShipAnalyzerConfig,
|
|
1103
1065
|
left: Ship,
|
|
1104
1066
|
right: Ship,
|
|
1105
1067
|
attacker_is_left: boolean,
|
|
1106
1068
|
): AttackAnalysis;
|
|
1107
|
-
/**
|
|
1108
|
-
* @param {NodeAttackAnalyzerConfig} config
|
|
1109
|
-
* @param {Comp} left_comp
|
|
1110
|
-
* @param {Ship} left_ship
|
|
1111
|
-
* @param {Comp} right_comp
|
|
1112
|
-
* @param {Ship} right_ship
|
|
1113
|
-
* @returns {NodeAttackAnalysis}
|
|
1114
|
-
*/
|
|
1115
1069
|
analyze_node_attack(
|
|
1116
1070
|
config: NodeAttackAnalyzerConfig,
|
|
1117
1071
|
left_comp: Comp,
|
|
@@ -1119,19 +1073,7 @@ export class Analyzer {
|
|
|
1119
1073
|
right_comp: Comp,
|
|
1120
1074
|
right_ship: Ship,
|
|
1121
1075
|
): NodeAttackAnalysis;
|
|
1122
|
-
/**
|
|
1123
|
-
* @param {Comp} comp
|
|
1124
|
-
* @param {CompAnalyzerConfig} config
|
|
1125
|
-
* @returns {CompAnalysis}
|
|
1126
|
-
*/
|
|
1127
1076
|
analyze_comp(comp: Comp, config: CompAnalyzerConfig): CompAnalysis;
|
|
1128
|
-
/**
|
|
1129
|
-
* @param {Comp} player_comp
|
|
1130
|
-
* @param {Comp} enemy_comp
|
|
1131
|
-
* @param {NodeAttackAnalyzerConfig} config
|
|
1132
|
-
* @param {number} times
|
|
1133
|
-
* @returns {SimulatorResult}
|
|
1134
|
-
*/
|
|
1135
1077
|
simulate_support_shelling(
|
|
1136
1078
|
player_comp: Comp,
|
|
1137
1079
|
enemy_comp: Comp,
|
|
@@ -1139,80 +1081,29 @@ export class Analyzer {
|
|
|
1139
1081
|
times: number,
|
|
1140
1082
|
): SimulatorResult;
|
|
1141
1083
|
}
|
|
1142
|
-
/**
|
|
1143
|
-
*/
|
|
1144
1084
|
export class Comp {
|
|
1085
|
+
private constructor();
|
|
1145
1086
|
free(): void;
|
|
1146
|
-
|
|
1147
|
-
* @returns {Side}
|
|
1148
|
-
*/
|
|
1087
|
+
[Symbol.dispose](): void;
|
|
1149
1088
|
side(): Side;
|
|
1150
|
-
/**
|
|
1151
|
-
* @returns {boolean}
|
|
1152
|
-
*/
|
|
1153
1089
|
is_combined(): boolean;
|
|
1154
|
-
/**
|
|
1155
|
-
* @returns {boolean}
|
|
1156
|
-
*/
|
|
1157
1090
|
is_player(): boolean;
|
|
1158
|
-
/**
|
|
1159
|
-
* @returns {boolean}
|
|
1160
|
-
*/
|
|
1161
1091
|
is_enemy(): boolean;
|
|
1162
|
-
/**
|
|
1163
|
-
* @param {string} id
|
|
1164
|
-
* @returns {boolean}
|
|
1165
|
-
*/
|
|
1166
1092
|
has_ship_eid(id: string): boolean;
|
|
1167
|
-
/**
|
|
1168
|
-
* @returns {string | undefined}
|
|
1169
|
-
*/
|
|
1170
1093
|
first_ship_id(): string | undefined;
|
|
1171
|
-
/**
|
|
1172
|
-
* @returns {boolean}
|
|
1173
|
-
*/
|
|
1174
1094
|
has_route_sup(): boolean;
|
|
1175
|
-
/**
|
|
1176
|
-
* @returns {CompMeta}
|
|
1177
|
-
*/
|
|
1178
1095
|
meta(): CompMeta;
|
|
1179
|
-
/**
|
|
1180
|
-
* @param {FleetType} ft
|
|
1181
|
-
* @returns {string | undefined}
|
|
1182
|
-
*/
|
|
1183
1096
|
get_fleet_id(ft: FleetType): string | undefined;
|
|
1184
|
-
/**
|
|
1185
|
-
* @param {FleetType} ft
|
|
1186
|
-
* @param {ShipKey} key
|
|
1187
|
-
* @returns {Ship | undefined}
|
|
1188
|
-
*/
|
|
1189
1097
|
get_ship_with_clone(ft: FleetType, key: ShipKey): Ship | undefined;
|
|
1190
|
-
/**
|
|
1191
|
-
* @param {FleetType} ft
|
|
1192
|
-
* @param {ShipKey} key
|
|
1193
|
-
* @returns {string | undefined}
|
|
1194
|
-
*/
|
|
1195
1098
|
get_ship_entity_id(ft: FleetType, key: ShipKey): string | undefined;
|
|
1196
|
-
/**
|
|
1197
|
-
* @param {string} id
|
|
1198
|
-
* @returns {Ship | undefined}
|
|
1199
|
-
*/
|
|
1200
1099
|
get_ship_by_eid_with_clone(id: string): Ship | undefined;
|
|
1201
|
-
/**
|
|
1202
|
-
* @returns {Formation}
|
|
1203
|
-
*/
|
|
1204
1100
|
default_formation(): Formation;
|
|
1205
1101
|
/**
|
|
1206
1102
|
* 艦隊防空値
|
|
1207
|
-
* @param {number} formation_mod
|
|
1208
|
-
* @returns {number}
|
|
1209
1103
|
*/
|
|
1210
1104
|
adjusted_anti_air(formation_mod: number): number;
|
|
1211
1105
|
/**
|
|
1212
1106
|
* 制空値
|
|
1213
|
-
* @param {boolean} escort_participates
|
|
1214
|
-
* @param {AirWaveType} air_type
|
|
1215
|
-
* @returns {number | undefined}
|
|
1216
1107
|
*/
|
|
1217
1108
|
fighter_power(
|
|
1218
1109
|
escort_participates: boolean,
|
|
@@ -1220,937 +1111,306 @@ export class Comp {
|
|
|
1220
1111
|
): number | undefined;
|
|
1221
1112
|
/**
|
|
1222
1113
|
* マップ索敵
|
|
1223
|
-
* @param {number} node_divaricated_factor
|
|
1224
|
-
* @returns {number | undefined}
|
|
1225
1114
|
*/
|
|
1226
1115
|
elos(node_divaricated_factor: number): number | undefined;
|
|
1227
1116
|
/**
|
|
1228
1117
|
* 輸送物資量(TP)
|
|
1229
|
-
* @returns {number}
|
|
1230
1118
|
*/
|
|
1231
1119
|
transport_point(): number;
|
|
1232
|
-
|
|
1233
|
-
* @param {Ship} ship
|
|
1234
|
-
* @param {Formation | undefined} [formation]
|
|
1235
|
-
* @returns {ShipConditions}
|
|
1236
|
-
*/
|
|
1237
|
-
get_ship_conditions(ship: Ship, formation?: Formation): ShipConditions;
|
|
1238
|
-
/**
|
|
1239
|
-
* @param {FleetType} fleet_type
|
|
1240
|
-
* @returns {number | undefined}
|
|
1241
|
-
*/
|
|
1120
|
+
get_ship_conditions(ship: Ship, formation?: Formation | null): ShipConditions;
|
|
1242
1121
|
fleet_los_mod(fleet_type: FleetType): number | undefined;
|
|
1243
|
-
/**
|
|
1244
|
-
* @returns {number}
|
|
1245
|
-
*/
|
|
1246
1122
|
balloons(): number;
|
|
1247
|
-
|
|
1248
|
-
*/
|
|
1249
|
-
boss_sup?: Fleet;
|
|
1250
|
-
/**
|
|
1251
|
-
*/
|
|
1252
|
-
escort?: Fleet;
|
|
1253
|
-
/**
|
|
1254
|
-
*/
|
|
1123
|
+
readonly org_type: OrgType;
|
|
1255
1124
|
readonly hq_level: number;
|
|
1256
|
-
/**
|
|
1257
|
-
*/
|
|
1258
1125
|
main: Fleet;
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1126
|
+
get escort(): Fleet | undefined;
|
|
1127
|
+
set escort(value: Fleet | null | undefined);
|
|
1128
|
+
get route_sup(): Fleet | undefined;
|
|
1129
|
+
set route_sup(value: Fleet | null | undefined);
|
|
1130
|
+
get boss_sup(): Fleet | undefined;
|
|
1131
|
+
set boss_sup(value: Fleet | null | undefined);
|
|
1265
1132
|
}
|
|
1266
|
-
/**
|
|
1267
|
-
*/
|
|
1268
1133
|
export class FhCore {
|
|
1269
1134
|
free(): void;
|
|
1270
|
-
|
|
1271
|
-
* @param {MasterData} js_master
|
|
1272
|
-
*/
|
|
1135
|
+
[Symbol.dispose](): void;
|
|
1273
1136
|
constructor(js_master: MasterData);
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
/**
|
|
1280
|
-
* @param {ShipState | undefined} [input]
|
|
1281
|
-
* @returns {Ship | undefined}
|
|
1282
|
-
*/
|
|
1283
|
-
create_ship(input?: ShipState): Ship | undefined;
|
|
1284
|
-
/**
|
|
1285
|
-
* @param {AirSquadronState | undefined} [input]
|
|
1286
|
-
* @returns {AirSquadron}
|
|
1287
|
-
*/
|
|
1288
|
-
create_air_squadron(input?: AirSquadronState): AirSquadron;
|
|
1289
|
-
/**
|
|
1290
|
-
* @param {FleetState | undefined} [input]
|
|
1291
|
-
* @returns {Fleet}
|
|
1292
|
-
*/
|
|
1293
|
-
create_fleet(input?: FleetState): Fleet;
|
|
1294
|
-
/**
|
|
1295
|
-
* @param {OrgState | undefined} [input]
|
|
1296
|
-
* @returns {Org | undefined}
|
|
1297
|
-
*/
|
|
1298
|
-
create_org(input?: OrgState): Org | undefined;
|
|
1299
|
-
/**
|
|
1300
|
-
* @param {number} ship_id
|
|
1301
|
-
* @returns {ShipState | undefined}
|
|
1302
|
-
*/
|
|
1137
|
+
create_gear(input?: GearState | null): Gear | undefined;
|
|
1138
|
+
create_ship(input?: ShipState | null): Ship | undefined;
|
|
1139
|
+
create_air_squadron(input?: AirSquadronState | null): AirSquadron;
|
|
1140
|
+
create_fleet(input?: FleetState | null): Fleet;
|
|
1141
|
+
create_org(input?: OrgState | null): Org | undefined;
|
|
1303
1142
|
create_ship_state_by_id(ship_id: number): ShipState | undefined;
|
|
1304
|
-
/**
|
|
1305
|
-
* @param {number} ship_id
|
|
1306
|
-
* @returns {Ship | undefined}
|
|
1307
|
-
*/
|
|
1308
1143
|
create_ship_by_id(ship_id: number): Ship | undefined;
|
|
1309
|
-
/**
|
|
1310
|
-
* @returns {Ship[]}
|
|
1311
|
-
*/
|
|
1312
1144
|
create_all_ships(): Ship[];
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
*/
|
|
1318
|
-
create_comp_by_map_enemy(main: Uint16Array, escort?: Uint16Array): Comp;
|
|
1319
|
-
/**
|
|
1320
|
-
* @returns {Ship}
|
|
1321
|
-
*/
|
|
1145
|
+
create_comp_by_map_enemy(
|
|
1146
|
+
main: Uint16Array,
|
|
1147
|
+
escort?: Uint16Array | null,
|
|
1148
|
+
): Comp;
|
|
1322
1149
|
create_default_ship(): Ship;
|
|
1323
|
-
/**
|
|
1324
|
-
* @returns {Analyzer}
|
|
1325
|
-
*/
|
|
1326
1150
|
create_analyzer(): Analyzer;
|
|
1327
1151
|
}
|
|
1328
|
-
/**
|
|
1329
|
-
*/
|
|
1330
1152
|
export class Fleet {
|
|
1153
|
+
private constructor();
|
|
1331
1154
|
free(): void;
|
|
1332
|
-
|
|
1333
|
-
* @returns {FleetMeta}
|
|
1334
|
-
*/
|
|
1155
|
+
[Symbol.dispose](): void;
|
|
1335
1156
|
meta(): FleetMeta;
|
|
1336
|
-
/**
|
|
1337
|
-
* @returns {(string)[]}
|
|
1338
|
-
*/
|
|
1339
1157
|
ship_keys(): string[];
|
|
1340
|
-
/**
|
|
1341
|
-
* @returns {(string)[]}
|
|
1342
|
-
*/
|
|
1343
1158
|
ship_ids(): string[];
|
|
1344
|
-
/**
|
|
1345
|
-
* @returns {(string)[]}
|
|
1346
|
-
*/
|
|
1347
1159
|
get_gear_ids_by_improvable(): string[];
|
|
1348
|
-
/**
|
|
1349
|
-
* @returns {(string)[]}
|
|
1350
|
-
*/
|
|
1351
1160
|
get_gear_ids_by_proficiency(): string[];
|
|
1352
|
-
/**
|
|
1353
|
-
* @param {string} id
|
|
1354
|
-
* @param {DamageState} state
|
|
1355
|
-
* @returns {number | undefined}
|
|
1356
|
-
*/
|
|
1357
1161
|
get_damage_bound(id: string, state: DamageState): number | undefined;
|
|
1358
|
-
/**
|
|
1359
|
-
* @param {string} id
|
|
1360
|
-
* @param {number} rate
|
|
1361
|
-
* @param {boolean} ceil
|
|
1362
|
-
* @returns {number | undefined}
|
|
1363
|
-
*/
|
|
1364
1162
|
get_remaining_fuel(
|
|
1365
1163
|
id: string,
|
|
1366
1164
|
rate: number,
|
|
1367
1165
|
ceil: boolean,
|
|
1368
1166
|
): number | undefined;
|
|
1369
|
-
/**
|
|
1370
|
-
* @param {string} id
|
|
1371
|
-
* @param {number} rate
|
|
1372
|
-
* @param {boolean} ceil
|
|
1373
|
-
* @returns {number | undefined}
|
|
1374
|
-
*/
|
|
1375
1167
|
get_remaining_ammo(
|
|
1376
1168
|
id: string,
|
|
1377
1169
|
rate: number,
|
|
1378
1170
|
ceil: boolean,
|
|
1379
1171
|
): number | undefined;
|
|
1380
|
-
/**
|
|
1381
|
-
* @returns {number}
|
|
1382
|
-
*/
|
|
1383
1172
|
count_ships(): number;
|
|
1384
|
-
/**
|
|
1385
|
-
* @param {ShipKey} key
|
|
1386
|
-
* @returns {Ship | undefined}
|
|
1387
|
-
*/
|
|
1388
1173
|
get_ship(key: ShipKey): Ship | undefined;
|
|
1389
|
-
/**
|
|
1390
|
-
* @param {AirWaveType} air_type
|
|
1391
|
-
* @returns {number | undefined}
|
|
1392
|
-
*/
|
|
1393
1174
|
fighter_power(air_type: AirWaveType): number | undefined;
|
|
1394
1175
|
/**
|
|
1395
1176
|
* マップ索敵
|
|
1396
|
-
* @param {number} hq_level
|
|
1397
|
-
* @param {number} node_divaricated_factor
|
|
1398
|
-
* @returns {number | undefined}
|
|
1399
|
-
*/
|
|
1400
|
-
elos(hq_level: number, node_divaricated_factor: number): number | undefined;
|
|
1401
|
-
/**
|
|
1402
|
-
* 航空索敵スコア
|
|
1403
|
-
* @returns {number | undefined}
|
|
1404
|
-
*/
|
|
1405
|
-
aviation_detection_score(): number | undefined;
|
|
1406
|
-
/**
|
|
1407
|
-
* 遠征ボーナス
|
|
1408
|
-
* @returns {number}
|
|
1409
|
-
*/
|
|
1410
|
-
expedition_bonus(): number;
|
|
1411
|
-
/**
|
|
1412
|
-
* @param {string} key
|
|
1413
|
-
* @returns {number | undefined}
|
|
1414
|
-
*/
|
|
1415
|
-
sum_ship_stat_by(key: string): number | undefined;
|
|
1416
|
-
/**
|
|
1417
|
-
*/
|
|
1418
|
-
reset_battle_state(): void;
|
|
1419
|
-
/**
|
|
1420
|
-
*/
|
|
1421
|
-
readonly fleet_los_mod: number | undefined;
|
|
1422
|
-
/**
|
|
1423
1177
|
*/
|
|
1424
|
-
|
|
1178
|
+
elos(hq_level: number, node_divaricated_factor: number): number | undefined;
|
|
1425
1179
|
/**
|
|
1180
|
+
* 航空索敵スコア
|
|
1426
1181
|
*/
|
|
1427
|
-
|
|
1182
|
+
aviation_detection_score(): number | undefined;
|
|
1428
1183
|
/**
|
|
1184
|
+
* 遠征ボーナス
|
|
1429
1185
|
*/
|
|
1186
|
+
expedition_bonus(): number;
|
|
1187
|
+
sum_ship_stat_by(key: string): number | undefined;
|
|
1188
|
+
reset_battle_state(): void;
|
|
1189
|
+
id: string;
|
|
1190
|
+
readonly hash: bigint;
|
|
1430
1191
|
readonly len: number;
|
|
1192
|
+
readonly fleet_los_mod: number | undefined;
|
|
1431
1193
|
}
|
|
1432
|
-
/**
|
|
1433
|
-
*/
|
|
1434
1194
|
export class Gear {
|
|
1195
|
+
private constructor();
|
|
1435
1196
|
free(): void;
|
|
1436
|
-
|
|
1437
|
-
* @returns {Gear}
|
|
1438
|
-
*/
|
|
1197
|
+
[Symbol.dispose](): void;
|
|
1439
1198
|
static default(): Gear;
|
|
1440
|
-
/**
|
|
1441
|
-
* @param {GearAttr} attr
|
|
1442
|
-
* @returns {boolean}
|
|
1443
|
-
*/
|
|
1444
1199
|
has_attr(attr: GearAttr): boolean;
|
|
1445
|
-
/**
|
|
1446
|
-
* @returns {GearCategory}
|
|
1447
|
-
*/
|
|
1448
1200
|
category(): GearCategory;
|
|
1449
|
-
/**
|
|
1450
|
-
* @returns {boolean}
|
|
1451
|
-
*/
|
|
1452
1201
|
is_high_angle_mount(): boolean;
|
|
1453
|
-
/**
|
|
1454
|
-
* @returns {boolean}
|
|
1455
|
-
*/
|
|
1456
1202
|
is_carrier_shelling_plane(): boolean;
|
|
1457
|
-
/**
|
|
1458
|
-
* @returns {boolean}
|
|
1459
|
-
*/
|
|
1460
1203
|
is_hayabusa_20th_squadron(): boolean;
|
|
1461
|
-
/**
|
|
1462
|
-
* @returns {boolean}
|
|
1463
|
-
*/
|
|
1464
1204
|
has_proficiency(): boolean;
|
|
1465
|
-
/**
|
|
1466
|
-
* @returns {boolean}
|
|
1467
|
-
*/
|
|
1468
1205
|
max_exp_eq_120(): boolean;
|
|
1469
|
-
/**
|
|
1470
|
-
* @param {number} slot_size
|
|
1471
|
-
* @returns {number}
|
|
1472
|
-
*/
|
|
1473
1206
|
calc_fighter_power(slot_size: number): number;
|
|
1474
|
-
/**
|
|
1475
|
-
* @param {number} slot_size
|
|
1476
|
-
* @returns {number}
|
|
1477
|
-
*/
|
|
1478
1207
|
calc_interception_power(slot_size: number): number;
|
|
1479
|
-
/**
|
|
1480
|
-
* @returns {number}
|
|
1481
|
-
*/
|
|
1482
1208
|
fleet_anti_air_mod(): number;
|
|
1483
|
-
/**
|
|
1484
|
-
* @returns {number}
|
|
1485
|
-
*/
|
|
1486
1209
|
ship_anti_air_mod(): number;
|
|
1487
|
-
/**
|
|
1488
|
-
* @param {number} slot_size
|
|
1489
|
-
* @returns {number}
|
|
1490
|
-
*/
|
|
1491
1210
|
calc_contact_trigger_factor(slot_size: number): number;
|
|
1492
|
-
/**
|
|
1493
|
-
* @param {AirStateRank} rank
|
|
1494
|
-
* @returns {number}
|
|
1495
|
-
*/
|
|
1496
1211
|
contact_selection_rate(rank: AirStateRank): number;
|
|
1497
|
-
/**
|
|
1498
|
-
* @param {number} level
|
|
1499
|
-
* @returns {number}
|
|
1500
|
-
*/
|
|
1501
1212
|
night_contact_rate(level: number): number;
|
|
1502
|
-
/**
|
|
1503
|
-
* @returns {boolean}
|
|
1504
|
-
*/
|
|
1505
1213
|
is_night_attacker(): boolean;
|
|
1506
|
-
/**
|
|
1507
|
-
* @returns {boolean}
|
|
1508
|
-
*/
|
|
1509
1214
|
is_night_fighter(): boolean;
|
|
1510
|
-
/**
|
|
1511
|
-
* @returns {boolean}
|
|
1512
|
-
*/
|
|
1513
1215
|
is_night_plane(): boolean;
|
|
1514
|
-
/**
|
|
1515
|
-
* @param {number} slot_size
|
|
1516
|
-
* @param {boolean} anti_inst
|
|
1517
|
-
* @returns {number}
|
|
1518
|
-
*/
|
|
1519
1216
|
night_plane_power(slot_size: number, anti_inst: boolean): number;
|
|
1520
|
-
/**
|
|
1521
|
-
* @returns {number}
|
|
1522
|
-
*/
|
|
1523
1217
|
elos(): number;
|
|
1524
|
-
/**
|
|
1525
|
-
* @returns {boolean}
|
|
1526
|
-
*/
|
|
1527
1218
|
is_abyssal(): boolean;
|
|
1528
|
-
/**
|
|
1529
|
-
* @returns {boolean}
|
|
1530
|
-
*/
|
|
1531
1219
|
is_abyssal_cuttlefish_torpedo(): boolean;
|
|
1532
|
-
/**
|
|
1533
|
-
* @returns {boolean}
|
|
1534
|
-
*/
|
|
1535
1220
|
is_abyssal_patrolling_attack_hawk(): boolean;
|
|
1536
|
-
/**
|
|
1537
|
-
* @returns {number}
|
|
1538
|
-
*/
|
|
1539
1221
|
expedition_bonus(): number;
|
|
1540
|
-
/**
|
|
1541
|
-
* @returns {boolean}
|
|
1542
|
-
*/
|
|
1543
1222
|
can_be_deployed_to_land_base(): boolean;
|
|
1544
|
-
/**
|
|
1545
|
-
* @returns {boolean}
|
|
1546
|
-
*/
|
|
1547
1223
|
is_balloon(): boolean;
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
readonly accuracy: number;
|
|
1551
|
-
/**
|
|
1552
|
-
*/
|
|
1553
|
-
readonly ace: number;
|
|
1554
|
-
/**
|
|
1555
|
-
*/
|
|
1556
|
-
readonly anti_air: number;
|
|
1557
|
-
/**
|
|
1558
|
-
*/
|
|
1559
|
-
readonly anti_bomber: number;
|
|
1560
|
-
/**
|
|
1561
|
-
*/
|
|
1562
|
-
readonly armor: number;
|
|
1563
|
-
/**
|
|
1564
|
-
*/
|
|
1565
|
-
readonly asw: number;
|
|
1566
|
-
/**
|
|
1567
|
-
*/
|
|
1568
|
-
readonly bombing: number;
|
|
1569
|
-
/**
|
|
1570
|
-
*/
|
|
1571
|
-
readonly cost: number;
|
|
1572
|
-
/**
|
|
1573
|
-
*/
|
|
1574
|
-
readonly default_exp: number;
|
|
1575
|
-
/**
|
|
1576
|
-
*/
|
|
1577
|
-
readonly evasion: number;
|
|
1578
|
-
/**
|
|
1579
|
-
*/
|
|
1580
|
-
readonly exp: number;
|
|
1581
|
-
/**
|
|
1582
|
-
*/
|
|
1583
|
-
readonly firepower: number;
|
|
1584
|
-
/**
|
|
1585
|
-
*/
|
|
1586
|
-
readonly fleet_anti_air_resist: number;
|
|
1587
|
-
/**
|
|
1588
|
-
*/
|
|
1224
|
+
id: string;
|
|
1225
|
+
readonly hash: bigint;
|
|
1589
1226
|
readonly gear_id: number;
|
|
1590
|
-
|
|
1591
|
-
|
|
1227
|
+
readonly stars: number;
|
|
1228
|
+
readonly exp: number;
|
|
1229
|
+
readonly default_exp: number;
|
|
1230
|
+
name: string;
|
|
1231
|
+
types: Uint8Array;
|
|
1592
1232
|
readonly gear_type: GearType;
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
readonly
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
readonly
|
|
1599
|
-
|
|
1600
|
-
|
|
1601
|
-
readonly icon_id: number;
|
|
1602
|
-
/**
|
|
1603
|
-
*/
|
|
1604
|
-
id: string;
|
|
1605
|
-
/**
|
|
1606
|
-
*/
|
|
1607
|
-
readonly improvable: boolean;
|
|
1608
|
-
/**
|
|
1609
|
-
*/
|
|
1610
|
-
readonly interception: number;
|
|
1611
|
-
/**
|
|
1612
|
-
*/
|
|
1233
|
+
readonly max_hp: number;
|
|
1234
|
+
readonly firepower: number;
|
|
1235
|
+
readonly armor: number;
|
|
1236
|
+
readonly torpedo: number;
|
|
1237
|
+
readonly anti_air: number;
|
|
1238
|
+
readonly speed: number;
|
|
1239
|
+
readonly bombing: number;
|
|
1240
|
+
readonly asw: number;
|
|
1613
1241
|
readonly los: number;
|
|
1614
|
-
/**
|
|
1615
|
-
*/
|
|
1616
1242
|
readonly luck: number;
|
|
1617
|
-
|
|
1618
|
-
|
|
1619
|
-
readonly max_hp: number;
|
|
1620
|
-
/**
|
|
1621
|
-
*/
|
|
1622
|
-
name: string;
|
|
1623
|
-
/**
|
|
1624
|
-
*/
|
|
1625
|
-
readonly radius: number;
|
|
1626
|
-
/**
|
|
1627
|
-
*/
|
|
1243
|
+
readonly accuracy: number;
|
|
1244
|
+
readonly evasion: number;
|
|
1628
1245
|
readonly range: number;
|
|
1629
|
-
|
|
1630
|
-
|
|
1246
|
+
readonly radius: number;
|
|
1247
|
+
readonly cost: number;
|
|
1248
|
+
readonly improvable: boolean;
|
|
1631
1249
|
readonly ship_anti_air_resist: number;
|
|
1632
|
-
|
|
1633
|
-
|
|
1250
|
+
readonly fleet_anti_air_resist: number;
|
|
1251
|
+
readonly gear_type_id: number;
|
|
1634
1252
|
readonly special_type: number;
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
readonly
|
|
1638
|
-
|
|
1639
|
-
*/
|
|
1640
|
-
readonly stars: number;
|
|
1641
|
-
/**
|
|
1642
|
-
*/
|
|
1643
|
-
readonly torpedo: number;
|
|
1644
|
-
/**
|
|
1645
|
-
*/
|
|
1646
|
-
types: Uint8Array;
|
|
1253
|
+
readonly icon_id: number;
|
|
1254
|
+
readonly ace: number;
|
|
1255
|
+
readonly anti_bomber: number;
|
|
1256
|
+
readonly interception: number;
|
|
1647
1257
|
}
|
|
1648
|
-
/**
|
|
1649
|
-
*/
|
|
1650
1258
|
export class Org {
|
|
1259
|
+
private constructor();
|
|
1651
1260
|
free(): void;
|
|
1652
|
-
|
|
1653
|
-
* @returns {string | undefined}
|
|
1654
|
-
*/
|
|
1261
|
+
[Symbol.dispose](): void;
|
|
1655
1262
|
first_ship_id(): string | undefined;
|
|
1656
|
-
/**
|
|
1657
|
-
* @param {FleetKey} fleet_key
|
|
1658
|
-
* @param {ShipKey} ship_key
|
|
1659
|
-
* @returns {number | undefined}
|
|
1660
|
-
*/
|
|
1661
1263
|
get_ship_mid(fleet_key: FleetKey, ship_key: ShipKey): number | undefined;
|
|
1662
|
-
/**
|
|
1663
|
-
* @param {FleetKey} fleet_key
|
|
1664
|
-
* @param {ShipKey} ship_key
|
|
1665
|
-
* @returns {string | undefined}
|
|
1666
|
-
*/
|
|
1667
1264
|
get_ship_eid(fleet_key: FleetKey, ship_key: ShipKey): string | undefined;
|
|
1668
|
-
/**
|
|
1669
|
-
* @param {FleetKey} key
|
|
1670
|
-
* @returns {string}
|
|
1671
|
-
*/
|
|
1672
1265
|
get_fleet_id(key: FleetKey): string;
|
|
1673
|
-
/**
|
|
1674
|
-
* @returns {(string)[]}
|
|
1675
|
-
*/
|
|
1676
1266
|
air_squadron_ids(): string[];
|
|
1677
|
-
/**
|
|
1678
|
-
* @returns {Uint16Array}
|
|
1679
|
-
*/
|
|
1680
1267
|
main_ship_ids(): Uint16Array;
|
|
1681
|
-
/**
|
|
1682
|
-
* @returns {Uint16Array}
|
|
1683
|
-
*/
|
|
1684
1268
|
escort_ship_ids(): Uint16Array;
|
|
1685
|
-
/**
|
|
1686
|
-
* @param {FleetKey} key
|
|
1687
|
-
* @returns {Fleet}
|
|
1688
|
-
*/
|
|
1689
1269
|
clone_fleet(key: FleetKey): Fleet;
|
|
1690
|
-
/**
|
|
1691
|
-
* @param {FleetKey} fleet_key
|
|
1692
|
-
* @param {ShipKey} ship_key
|
|
1693
|
-
* @returns {Ship | undefined}
|
|
1694
|
-
*/
|
|
1695
1270
|
clone_ship(fleet_key: FleetKey, ship_key: ShipKey): Ship | undefined;
|
|
1696
|
-
/**
|
|
1697
|
-
* @param {string} id
|
|
1698
|
-
* @returns {Ship | undefined}
|
|
1699
|
-
*/
|
|
1700
1271
|
get_ship_by_id(id: string): Ship | undefined;
|
|
1701
|
-
/**
|
|
1702
|
-
* @param {FleetKey} key
|
|
1703
|
-
* @returns {(string)[]}
|
|
1704
|
-
*/
|
|
1705
1272
|
ship_keys(key: FleetKey): string[];
|
|
1706
|
-
/**
|
|
1707
|
-
* @returns {Comp}
|
|
1708
|
-
*/
|
|
1709
1273
|
create_comp(): Comp;
|
|
1710
|
-
/**
|
|
1711
|
-
* @param {FleetKey} key
|
|
1712
|
-
* @returns {Comp}
|
|
1713
|
-
*/
|
|
1714
1274
|
create_comp_by_key(key: FleetKey): Comp;
|
|
1715
|
-
/**
|
|
1716
|
-
* @param {string} key
|
|
1717
|
-
* @returns {AirSquadron}
|
|
1718
|
-
*/
|
|
1719
1275
|
get_air_squadron(key: string): AirSquadron;
|
|
1720
|
-
/**
|
|
1721
|
-
* @returns {(string)[]}
|
|
1722
|
-
*/
|
|
1723
1276
|
get_air_squadron_gear_ids_by_improvable(): string[];
|
|
1724
|
-
/**
|
|
1725
|
-
* @returns {(string)[]}
|
|
1726
|
-
*/
|
|
1727
1277
|
get_air_squadron_gear_ids_by_proficiency(): string[];
|
|
1728
|
-
/**
|
|
1729
|
-
* @returns {Side}
|
|
1730
|
-
*/
|
|
1731
1278
|
side(): Side;
|
|
1732
|
-
/**
|
|
1733
|
-
* @returns {boolean}
|
|
1734
|
-
*/
|
|
1735
1279
|
is_player(): boolean;
|
|
1736
|
-
/**
|
|
1737
|
-
* @returns {boolean}
|
|
1738
|
-
*/
|
|
1739
1280
|
is_enemy(): boolean;
|
|
1740
|
-
/**
|
|
1741
|
-
* @returns {boolean}
|
|
1742
|
-
*/
|
|
1743
1281
|
is_single(): boolean;
|
|
1744
|
-
/**
|
|
1745
|
-
* @returns {boolean}
|
|
1746
|
-
*/
|
|
1747
1282
|
is_combined(): boolean;
|
|
1748
1283
|
/**
|
|
1749
1284
|
* 防空時の基地制空値
|
|
1750
|
-
* @returns {number}
|
|
1751
|
-
*/
|
|
1752
|
-
interception_power(): number;
|
|
1753
|
-
/**
|
|
1754
|
-
* 高高度迎撃時の基地制空値
|
|
1755
|
-
* @returns {number}
|
|
1756
|
-
*/
|
|
1757
|
-
high_altitude_interception_power(): number;
|
|
1758
|
-
/**
|
|
1759
|
-
* @param {string} id
|
|
1760
|
-
* @param {number} x
|
|
1761
|
-
* @param {number} y
|
|
1762
|
-
* @returns {MoveShipPayload | undefined}
|
|
1763
|
-
*/
|
|
1764
|
-
create_move_ship_payload(
|
|
1765
|
-
id: string,
|
|
1766
|
-
x: number,
|
|
1767
|
-
y: number,
|
|
1768
|
-
): MoveShipPayload | undefined;
|
|
1769
|
-
/**
|
|
1770
|
-
* @param {FleetKey} key
|
|
1771
|
-
* @returns {FleetType | undefined}
|
|
1772
|
-
*/
|
|
1773
|
-
get_fleet_type(key: FleetKey): FleetType | undefined;
|
|
1774
|
-
/**
|
|
1775
|
-
*/
|
|
1776
|
-
readonly boss_sup: FleetKey | undefined;
|
|
1777
|
-
/**
|
|
1778
|
-
*/
|
|
1779
|
-
readonly hash: bigint;
|
|
1780
|
-
/**
|
|
1781
|
-
*/
|
|
1782
|
-
readonly hq_level: number;
|
|
1783
|
-
/**
|
|
1784
|
-
*/
|
|
1785
|
-
id: string;
|
|
1786
|
-
/**
|
|
1787
|
-
*/
|
|
1788
|
-
readonly org_type: OrgType;
|
|
1789
|
-
/**
|
|
1790
1285
|
*/
|
|
1791
|
-
|
|
1286
|
+
interception_power(): number;
|
|
1792
1287
|
/**
|
|
1288
|
+
* 高高度迎撃時の基地制空値
|
|
1793
1289
|
*/
|
|
1290
|
+
high_altitude_interception_power(): number;
|
|
1291
|
+
create_move_ship_payload(
|
|
1292
|
+
id: string,
|
|
1293
|
+
x: number,
|
|
1294
|
+
y: number,
|
|
1295
|
+
): MoveShipPayload | undefined;
|
|
1296
|
+
get_fleet_type(key: FleetKey): FleetType | undefined;
|
|
1297
|
+
id: string;
|
|
1298
|
+
readonly hash: bigint;
|
|
1299
|
+
readonly hq_level: number;
|
|
1300
|
+
readonly org_type: OrgType;
|
|
1794
1301
|
readonly sortie: FleetKey;
|
|
1302
|
+
readonly route_sup: FleetKey | undefined;
|
|
1303
|
+
readonly boss_sup: FleetKey | undefined;
|
|
1795
1304
|
}
|
|
1796
|
-
/**
|
|
1797
|
-
*/
|
|
1798
1305
|
export class Ship {
|
|
1306
|
+
private constructor();
|
|
1799
1307
|
free(): void;
|
|
1800
|
-
|
|
1801
|
-
* @returns {Ship}
|
|
1802
|
-
*/
|
|
1308
|
+
[Symbol.dispose](): void;
|
|
1803
1309
|
static default(): Ship;
|
|
1804
|
-
/**
|
|
1805
|
-
* @param {string} id
|
|
1806
|
-
* @returns {boolean}
|
|
1807
|
-
*/
|
|
1808
1310
|
eq_id(id: string): boolean;
|
|
1809
|
-
/**
|
|
1810
|
-
* @returns {ShipState}
|
|
1811
|
-
*/
|
|
1812
1311
|
state(): ShipState;
|
|
1813
|
-
/**
|
|
1814
|
-
* @returns {CustomPowerModifiers}
|
|
1815
|
-
*/
|
|
1816
1312
|
custom_power_mods(): CustomPowerModifiers;
|
|
1817
|
-
/**
|
|
1818
|
-
* @returns {ShipMeta}
|
|
1819
|
-
*/
|
|
1820
1313
|
meta(): ShipMeta;
|
|
1821
|
-
/**
|
|
1822
|
-
* @returns {DamageState}
|
|
1823
|
-
*/
|
|
1824
1314
|
damage_state(): DamageState;
|
|
1825
|
-
/**
|
|
1826
|
-
* @returns {MoraleState}
|
|
1827
|
-
*/
|
|
1828
1315
|
morale_state(): MoraleState;
|
|
1829
|
-
/**
|
|
1830
|
-
* @returns {ShipCategory}
|
|
1831
|
-
*/
|
|
1832
1316
|
category(): ShipCategory;
|
|
1833
|
-
/**
|
|
1834
|
-
* @param {ShipAttr} attr
|
|
1835
|
-
* @returns {boolean}
|
|
1836
|
-
*/
|
|
1837
1317
|
has_attr(attr: ShipAttr): boolean;
|
|
1838
|
-
/**
|
|
1839
|
-
* @returns {(string)[]}
|
|
1840
|
-
*/
|
|
1841
1318
|
gear_keys(): string[];
|
|
1842
|
-
/**
|
|
1843
|
-
* @param {string} key
|
|
1844
|
-
* @returns {Gear | undefined}
|
|
1845
|
-
*/
|
|
1846
1319
|
get_gear(key: string): Gear | undefined;
|
|
1847
|
-
/**
|
|
1848
|
-
* @param {DamageState} state
|
|
1849
|
-
* @returns {number | undefined}
|
|
1850
|
-
*/
|
|
1851
1320
|
get_damage_bound(state: DamageState): number | undefined;
|
|
1852
|
-
/**
|
|
1853
|
-
* @param {number} rate
|
|
1854
|
-
* @param {boolean} ceil
|
|
1855
|
-
* @returns {number}
|
|
1856
|
-
*/
|
|
1857
1321
|
get_remaining_fuel(rate: number, ceil: boolean): number;
|
|
1858
|
-
/**
|
|
1859
|
-
* @param {number} rate
|
|
1860
|
-
* @param {boolean} ceil
|
|
1861
|
-
* @returns {number}
|
|
1862
|
-
*/
|
|
1863
1322
|
get_remaining_ammo(rate: number, ceil: boolean): number;
|
|
1864
|
-
/**
|
|
1865
|
-
* @param {string} key
|
|
1866
|
-
* @returns {boolean}
|
|
1867
|
-
*/
|
|
1868
1323
|
has_unknown_stat(key: string): boolean;
|
|
1869
|
-
/**
|
|
1870
|
-
* @param {string} key
|
|
1871
|
-
* @returns {number | undefined}
|
|
1872
|
-
*/
|
|
1873
1324
|
get_naked_stat(key: string): number | undefined;
|
|
1874
|
-
/**
|
|
1875
|
-
* @param {string} key
|
|
1876
|
-
* @returns {number | undefined}
|
|
1877
|
-
*/
|
|
1878
1325
|
get_stat_interval_left(key: string): number | undefined;
|
|
1879
|
-
/**
|
|
1880
|
-
* @param {string} key
|
|
1881
|
-
* @returns {number | undefined}
|
|
1882
|
-
*/
|
|
1883
1326
|
get_stat_interval_right(key: string): number | undefined;
|
|
1884
|
-
/**
|
|
1885
|
-
* @param {string} key
|
|
1886
|
-
* @returns {number}
|
|
1887
|
-
*/
|
|
1888
1327
|
get_gear_stat(key: string): number;
|
|
1889
|
-
/**
|
|
1890
|
-
* @param {string} key
|
|
1891
|
-
* @returns {number}
|
|
1892
|
-
*/
|
|
1893
1328
|
get_ebonus(key: string): number;
|
|
1894
|
-
/**
|
|
1895
|
-
* @param {string} key
|
|
1896
|
-
* @returns {number | undefined}
|
|
1897
|
-
*/
|
|
1898
1329
|
get_stat_mod(key: string): number | undefined;
|
|
1899
|
-
/**
|
|
1900
|
-
* @returns {boolean}
|
|
1901
|
-
*/
|
|
1902
1330
|
is_abyssal(): boolean;
|
|
1903
|
-
/**
|
|
1904
|
-
* @returns {boolean}
|
|
1905
|
-
*/
|
|
1906
1331
|
is_submarine(): boolean;
|
|
1907
|
-
/**
|
|
1908
|
-
* @returns {boolean}
|
|
1909
|
-
*/
|
|
1910
1332
|
is_amagiri(): boolean;
|
|
1911
|
-
/**
|
|
1912
|
-
* @param {Gear} gear
|
|
1913
|
-
* @param {string} key
|
|
1914
|
-
* @returns {boolean}
|
|
1915
|
-
*/
|
|
1916
1333
|
can_equip(gear: Gear, key: string): boolean;
|
|
1917
|
-
/**
|
|
1918
|
-
* @returns {boolean}
|
|
1919
|
-
*/
|
|
1920
1334
|
is_installation(): boolean;
|
|
1921
|
-
/**
|
|
1922
|
-
* @returns {boolean}
|
|
1923
|
-
*/
|
|
1924
1335
|
is_pt_imp(): boolean;
|
|
1925
|
-
/**
|
|
1926
|
-
* @returns {SpecialEnemyType}
|
|
1927
|
-
*/
|
|
1928
1336
|
special_enemy_type(): SpecialEnemyType;
|
|
1929
|
-
/**
|
|
1930
|
-
* @returns {boolean}
|
|
1931
|
-
*/
|
|
1932
1337
|
is_attackable_by_torpedo(): boolean;
|
|
1933
|
-
/**
|
|
1934
|
-
* @param {number} index
|
|
1935
|
-
* @returns {number | undefined}
|
|
1936
|
-
*/
|
|
1937
1338
|
get_slot_size(index: number): number | undefined;
|
|
1938
|
-
/**
|
|
1939
|
-
* @param {number} index
|
|
1940
|
-
* @returns {number | undefined}
|
|
1941
|
-
*/
|
|
1942
1339
|
get_max_slot_size(index: number): number | undefined;
|
|
1943
|
-
/**
|
|
1944
|
-
* @returns {number}
|
|
1945
|
-
*/
|
|
1946
1340
|
remaining_ammo_mod(): number;
|
|
1947
|
-
/**
|
|
1948
|
-
* @returns {number}
|
|
1949
|
-
*/
|
|
1950
1341
|
remaining_fuel_mod(): number;
|
|
1951
|
-
/**
|
|
1952
|
-
* @param {AirWaveType} air_type
|
|
1953
|
-
* @returns {number | undefined}
|
|
1954
|
-
*/
|
|
1955
1342
|
fighter_power(air_type: AirWaveType): number | undefined;
|
|
1956
|
-
/**
|
|
1957
|
-
* @returns {number | undefined}
|
|
1958
|
-
*/
|
|
1959
1343
|
fleet_los_factor(): number | undefined;
|
|
1960
1344
|
/**
|
|
1961
1345
|
* 加重対空
|
|
1962
|
-
* @param {Side} side
|
|
1963
|
-
* @returns {number | undefined}
|
|
1964
1346
|
*/
|
|
1965
1347
|
ship_adjusted_anti_air(side: Side): number | undefined;
|
|
1966
1348
|
/**
|
|
1967
1349
|
* 艦隊対空補正
|
|
1968
|
-
* @returns {number}
|
|
1969
1350
|
*/
|
|
1970
1351
|
fleet_anti_air_mod(): number;
|
|
1971
|
-
/**
|
|
1972
|
-
* @returns {number}
|
|
1973
|
-
*/
|
|
1974
1352
|
cruiser_fit_bonus(): number;
|
|
1975
|
-
/**
|
|
1976
|
-
* @returns {number | undefined}
|
|
1977
|
-
*/
|
|
1978
1353
|
basic_accuracy_term(): number | undefined;
|
|
1979
|
-
/**
|
|
1980
|
-
* @returns {number | undefined}
|
|
1981
|
-
*/
|
|
1982
1354
|
basic_evasion_term(): number | undefined;
|
|
1983
|
-
/**
|
|
1984
|
-
* @param {number} formation_mod
|
|
1985
|
-
* @param {number} postcap_additive
|
|
1986
|
-
* @param {number} postcap_multiplicative
|
|
1987
|
-
* @returns {number | undefined}
|
|
1988
|
-
*/
|
|
1989
1355
|
evasion_term(
|
|
1990
1356
|
formation_mod: number,
|
|
1991
1357
|
postcap_additive: number,
|
|
1992
1358
|
postcap_multiplicative: number,
|
|
1993
1359
|
): number | undefined;
|
|
1994
|
-
/**
|
|
1995
|
-
* @param {number} armor_penetration
|
|
1996
|
-
* @returns {number | undefined}
|
|
1997
|
-
*/
|
|
1998
1360
|
basic_defense_power(armor_penetration: number): number | undefined;
|
|
1999
|
-
/**
|
|
2000
|
-
* @returns {number}
|
|
2001
|
-
*/
|
|
2002
1361
|
transport_point(): number;
|
|
2003
|
-
/**
|
|
2004
|
-
* @param {number} node_divaricated_factor
|
|
2005
|
-
* @returns {number | undefined}
|
|
2006
|
-
*/
|
|
2007
1362
|
elos(node_divaricated_factor: number): number | undefined;
|
|
2008
1363
|
/**
|
|
2009
1364
|
* 確殺攻撃力
|
|
2010
|
-
* @returns {number | undefined}
|
|
2011
1365
|
*/
|
|
2012
1366
|
ohko_power(): number | undefined;
|
|
2013
|
-
/**
|
|
2014
|
-
* @returns {number | undefined}
|
|
2015
|
-
*/
|
|
2016
1367
|
state_day_gunfit_accuracy(): number | undefined;
|
|
2017
|
-
/**
|
|
2018
|
-
* @returns {number | undefined}
|
|
2019
|
-
*/
|
|
2020
1368
|
state_night_gunfit_accuracy(): number | undefined;
|
|
2021
1369
|
/**
|
|
2022
1370
|
* フィット砲補正
|
|
2023
|
-
* @param {boolean} is_night
|
|
2024
|
-
* @returns {number}
|
|
2025
1371
|
*/
|
|
2026
1372
|
gunfit_accuracy(is_night: boolean): number;
|
|
2027
|
-
/**
|
|
2028
|
-
*/
|
|
2029
|
-
readonly accuracy: number;
|
|
2030
|
-
/**
|
|
2031
|
-
*/
|
|
2032
|
-
readonly ammo: number;
|
|
2033
|
-
/**
|
|
2034
|
-
*/
|
|
2035
|
-
readonly anti_air: number | undefined;
|
|
2036
|
-
/**
|
|
2037
|
-
*/
|
|
2038
|
-
readonly armor: number | undefined;
|
|
2039
|
-
/**
|
|
2040
|
-
*/
|
|
2041
|
-
readonly asw: number | undefined;
|
|
2042
|
-
/**
|
|
2043
|
-
*/
|
|
2044
|
-
readonly ctype: number;
|
|
2045
|
-
/**
|
|
2046
|
-
*/
|
|
2047
|
-
readonly current_hp: number;
|
|
2048
|
-
/**
|
|
2049
|
-
*/
|
|
2050
|
-
readonly evasion: number | undefined;
|
|
2051
|
-
/**
|
|
2052
|
-
*/
|
|
2053
|
-
readonly firepower: number | undefined;
|
|
2054
|
-
/**
|
|
2055
|
-
*/
|
|
2056
|
-
readonly fuel: number;
|
|
2057
|
-
/**
|
|
2058
|
-
*/
|
|
2059
|
-
readonly hash: bigint;
|
|
2060
|
-
/**
|
|
2061
|
-
*/
|
|
2062
1373
|
id: string;
|
|
2063
|
-
|
|
2064
|
-
|
|
2065
|
-
readonly innate_torpedo_accuracy: number;
|
|
2066
|
-
/**
|
|
2067
|
-
*/
|
|
1374
|
+
readonly hash: bigint;
|
|
1375
|
+
readonly ship_id: number;
|
|
2068
1376
|
readonly level: number;
|
|
2069
|
-
|
|
2070
|
-
*/
|
|
2071
|
-
readonly los: number | undefined;
|
|
2072
|
-
/**
|
|
2073
|
-
*/
|
|
2074
|
-
readonly luck: number | undefined;
|
|
2075
|
-
/**
|
|
2076
|
-
*/
|
|
2077
|
-
readonly max_ammo: number;
|
|
2078
|
-
/**
|
|
2079
|
-
*/
|
|
2080
|
-
readonly max_fuel: number;
|
|
2081
|
-
/**
|
|
2082
|
-
*/
|
|
2083
|
-
readonly max_hp: number | undefined;
|
|
2084
|
-
/**
|
|
2085
|
-
*/
|
|
1377
|
+
readonly current_hp: number;
|
|
2086
1378
|
readonly morale: number;
|
|
2087
|
-
|
|
2088
|
-
|
|
2089
|
-
readonly
|
|
2090
|
-
|
|
2091
|
-
|
|
1379
|
+
readonly ammo: number;
|
|
1380
|
+
readonly fuel: number;
|
|
1381
|
+
readonly ship_type: ShipType;
|
|
1382
|
+
readonly ctype: number;
|
|
1383
|
+
slots: SlotSizeVec;
|
|
1384
|
+
readonly naked_firepower: number | undefined;
|
|
1385
|
+
readonly naked_torpedo: number | undefined;
|
|
2092
1386
|
readonly naked_armor: number | undefined;
|
|
2093
|
-
|
|
2094
|
-
*/
|
|
2095
|
-
readonly naked_asw: number | undefined;
|
|
2096
|
-
/**
|
|
2097
|
-
*/
|
|
1387
|
+
readonly naked_anti_air: number | undefined;
|
|
2098
1388
|
readonly naked_evasion: number | undefined;
|
|
2099
|
-
|
|
2100
|
-
*/
|
|
2101
|
-
readonly naked_firepower: number | undefined;
|
|
2102
|
-
/**
|
|
2103
|
-
*/
|
|
1389
|
+
readonly naked_asw: number | undefined;
|
|
2104
1390
|
readonly naked_los: number | undefined;
|
|
2105
|
-
|
|
2106
|
-
|
|
2107
|
-
readonly
|
|
2108
|
-
|
|
2109
|
-
|
|
2110
|
-
readonly
|
|
2111
|
-
|
|
2112
|
-
*/
|
|
2113
|
-
readonly naked_torpedo: number | undefined;
|
|
2114
|
-
/**
|
|
2115
|
-
*/
|
|
1391
|
+
readonly firepower: number | undefined;
|
|
1392
|
+
readonly torpedo: number | undefined;
|
|
1393
|
+
readonly armor: number | undefined;
|
|
1394
|
+
readonly anti_air: number | undefined;
|
|
1395
|
+
readonly evasion: number | undefined;
|
|
1396
|
+
readonly asw: number | undefined;
|
|
1397
|
+
readonly los: number | undefined;
|
|
2116
1398
|
readonly name: string;
|
|
2117
|
-
|
|
2118
|
-
|
|
2119
|
-
readonly
|
|
2120
|
-
/**
|
|
2121
|
-
*/
|
|
2122
|
-
readonly range: number | undefined;
|
|
2123
|
-
/**
|
|
2124
|
-
*/
|
|
1399
|
+
readonly yomi: string;
|
|
1400
|
+
readonly stype: number;
|
|
1401
|
+
readonly sort_id: number;
|
|
2125
1402
|
readonly remodel_rank: number;
|
|
2126
|
-
/**
|
|
2127
|
-
*/
|
|
2128
|
-
readonly ship_id: number;
|
|
2129
|
-
/**
|
|
2130
|
-
*/
|
|
2131
|
-
readonly ship_type: ShipType;
|
|
2132
|
-
/**
|
|
2133
|
-
*/
|
|
2134
1403
|
readonly slotnum: number;
|
|
2135
|
-
|
|
2136
|
-
*/
|
|
2137
|
-
slots: SlotSizeVec;
|
|
2138
|
-
/**
|
|
2139
|
-
*/
|
|
2140
|
-
readonly sort_id: number;
|
|
2141
|
-
/**
|
|
2142
|
-
*/
|
|
2143
|
-
readonly speed: number;
|
|
2144
|
-
/**
|
|
2145
|
-
*/
|
|
2146
|
-
readonly stype: number;
|
|
2147
|
-
/**
|
|
2148
|
-
*/
|
|
2149
|
-
readonly torpedo: number | undefined;
|
|
2150
|
-
/**
|
|
2151
|
-
*/
|
|
1404
|
+
readonly next_id: number;
|
|
2152
1405
|
readonly useful: boolean;
|
|
2153
|
-
|
|
2154
|
-
|
|
2155
|
-
readonly
|
|
1406
|
+
readonly max_hp: number | undefined;
|
|
1407
|
+
readonly max_ammo: number;
|
|
1408
|
+
readonly max_fuel: number;
|
|
1409
|
+
readonly naked_range: number | undefined;
|
|
1410
|
+
readonly naked_speed: number;
|
|
1411
|
+
readonly luck: number | undefined;
|
|
1412
|
+
readonly range: number | undefined;
|
|
1413
|
+
readonly speed: number;
|
|
1414
|
+
readonly accuracy: number;
|
|
1415
|
+
readonly innate_torpedo_accuracy: number;
|
|
2156
1416
|
}
|