fleethub-core 1.4.3 → 1.6.2
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 +278 -268
- package/node/fleethub_core.js +71 -57
- package/node/fleethub_core_bg.wasm +0 -0
- package/node/fleethub_core_bg.wasm.d.ts +98 -96
- package/package.json +1 -1
- package/pkg/fleethub_core.d.ts +278 -268
- package/pkg/fleethub_core_bg.js +70 -56
- package/pkg/fleethub_core_bg.wasm +0 -0
- package/pkg/fleethub_core_bg.wasm.d.ts +98 -96
package/pkg/fleethub_core.d.ts
CHANGED
|
@@ -43,6 +43,41 @@ export interface GearInput {
|
|
|
43
43
|
|
|
44
44
|
export type GearVecInput = GearInput[];
|
|
45
45
|
|
|
46
|
+
export type ShipType =
|
|
47
|
+
| "Unknown"
|
|
48
|
+
| "DE"
|
|
49
|
+
| "DD"
|
|
50
|
+
| "CL"
|
|
51
|
+
| "CLT"
|
|
52
|
+
| "CA"
|
|
53
|
+
| "CAV"
|
|
54
|
+
| "CVL"
|
|
55
|
+
| "FBB"
|
|
56
|
+
| "BB"
|
|
57
|
+
| "BBV"
|
|
58
|
+
| "CV"
|
|
59
|
+
| "XBB"
|
|
60
|
+
| "SS"
|
|
61
|
+
| "SSV"
|
|
62
|
+
| "AP"
|
|
63
|
+
| "AV"
|
|
64
|
+
| "LHA"
|
|
65
|
+
| "CVB"
|
|
66
|
+
| "AR"
|
|
67
|
+
| "AS"
|
|
68
|
+
| "CT"
|
|
69
|
+
| "AO";
|
|
70
|
+
|
|
71
|
+
export type ShipCategory =
|
|
72
|
+
| "Battleship"
|
|
73
|
+
| "AircraftCarrier"
|
|
74
|
+
| "HeavyCruiser"
|
|
75
|
+
| "LightCruiser"
|
|
76
|
+
| "Destroyer"
|
|
77
|
+
| "CoastalDefenseShip"
|
|
78
|
+
| "Submarine"
|
|
79
|
+
| "AuxiliaryShip";
|
|
80
|
+
|
|
46
81
|
export type AirStateRank = "Rank0" | "Rank1" | "Rank2" | "Rank3";
|
|
47
82
|
|
|
48
83
|
export type AirState =
|
|
@@ -52,34 +87,23 @@ export type AirState =
|
|
|
52
87
|
| "AirDenial"
|
|
53
88
|
| "AirIncapability";
|
|
54
89
|
|
|
55
|
-
export interface
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
shelling_accuracy: MasterIBonusRule[];
|
|
59
|
-
torpedo_power: MasterIBonusRule[];
|
|
60
|
-
torpedo_accuracy: MasterIBonusRule[];
|
|
61
|
-
torpedo_evasion: MasterIBonusRule[];
|
|
62
|
-
asw_power: MasterIBonusRule[];
|
|
63
|
-
asw_accuracy: MasterIBonusRule[];
|
|
64
|
-
night_power: MasterIBonusRule[];
|
|
65
|
-
night_accuracy: MasterIBonusRule[];
|
|
66
|
-
defense_power: MasterIBonusRule[];
|
|
67
|
-
contact_selection: MasterIBonusRule[];
|
|
68
|
-
fighter_power: MasterIBonusRule[];
|
|
69
|
-
ship_anti_air: MasterIBonusRule[];
|
|
70
|
-
fleet_anti_air: MasterIBonusRule[];
|
|
71
|
-
elos: MasterIBonusRule[];
|
|
90
|
+
export interface FleetCutinAnalysis {
|
|
91
|
+
shelling: FleetCutinInfo[];
|
|
92
|
+
night: FleetCutinInfo[];
|
|
72
93
|
}
|
|
73
94
|
|
|
74
|
-
export interface
|
|
75
|
-
|
|
76
|
-
|
|
95
|
+
export interface FleetCutinInfo {
|
|
96
|
+
cutin: FleetCutin;
|
|
97
|
+
rate: number | null;
|
|
98
|
+
formation: Formation;
|
|
99
|
+
items: FleetCutinInfoItem[];
|
|
77
100
|
}
|
|
78
101
|
|
|
79
|
-
export interface
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
102
|
+
export interface FleetCutinInfoItem {
|
|
103
|
+
ship_id: number;
|
|
104
|
+
cutin: FleetCutin;
|
|
105
|
+
fleet_cutin_mod: number;
|
|
106
|
+
stats: AttackStats;
|
|
83
107
|
}
|
|
84
108
|
|
|
85
109
|
export interface DamageInfo {
|
|
@@ -95,70 +119,6 @@ export interface DamageInfo {
|
|
|
95
119
|
damage_state_map: NumMap<DamageState, number>;
|
|
96
120
|
}
|
|
97
121
|
|
|
98
|
-
export interface BattleConfig {
|
|
99
|
-
formation: Record<Formation, NestedFormationDef>;
|
|
100
|
-
anti_air_cutin: Record<number, AntiAirCutinDef>;
|
|
101
|
-
day_cutin: Record<DayCutin, DayCutinDef>;
|
|
102
|
-
night_cutin: Record<NightCutin, NightCutinDef>;
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
export interface NightCutinDef {
|
|
106
|
-
tag: NightCutin;
|
|
107
|
-
hits: number;
|
|
108
|
-
type_factor: number | null;
|
|
109
|
-
power_mod: number | null;
|
|
110
|
-
accuracy_mod: number | null;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
export interface DayCutinDef {
|
|
114
|
-
tag: DayCutin;
|
|
115
|
-
hits: number;
|
|
116
|
-
type_factor: number | null;
|
|
117
|
-
power_mod: number | null;
|
|
118
|
-
accuracy_mod: number | null;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
export interface AntiAirCutinDef {
|
|
122
|
-
id: number;
|
|
123
|
-
type_factor: number | null;
|
|
124
|
-
multiplier: number | null;
|
|
125
|
-
guaranteed: number | null;
|
|
126
|
-
sequential: boolean | null;
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
export type NestedFormationDef =
|
|
130
|
-
| FormationDef
|
|
131
|
-
| { top_half: FormationDef; bottom_half: FormationDef };
|
|
132
|
-
|
|
133
|
-
export interface FormationDef {
|
|
134
|
-
tag: Formation;
|
|
135
|
-
protection_rate: number | null;
|
|
136
|
-
fleet_anti_air_mod: number;
|
|
137
|
-
shelling: FormationWarfareDef;
|
|
138
|
-
torpedo: FormationWarfareDef;
|
|
139
|
-
asw: FormationWarfareDef;
|
|
140
|
-
night: FormationWarfareDef;
|
|
141
|
-
shelling_support: FormationWarfareDef;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
export interface FormationWarfareDef {
|
|
145
|
-
power_mod: number | null;
|
|
146
|
-
accuracy_mod: number | null;
|
|
147
|
-
evasion_mod: number | null;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
export type AirWaveType = "Jet" | "LandBase" | "Carrier";
|
|
151
|
-
|
|
152
|
-
export type AswAttackType = "DepthCharge" | "Aircraft";
|
|
153
|
-
|
|
154
|
-
export type OrgType =
|
|
155
|
-
| "Single"
|
|
156
|
-
| "CarrierTaskForce"
|
|
157
|
-
| "SurfaceTaskForce"
|
|
158
|
-
| "TransportEscort"
|
|
159
|
-
| "EnemySingle"
|
|
160
|
-
| "EnemyCombined";
|
|
161
|
-
|
|
162
122
|
export interface WarfareContext {
|
|
163
123
|
attacker_env: WarfareShipEnvironment;
|
|
164
124
|
target_env: WarfareShipEnvironment;
|
|
@@ -201,8 +161,9 @@ export interface AttackPowerParams {
|
|
|
201
161
|
}
|
|
202
162
|
|
|
203
163
|
export interface CustomModifiers {
|
|
204
|
-
precap_mod
|
|
205
|
-
postcap_mod
|
|
164
|
+
precap_mod?: AttackPowerModifier;
|
|
165
|
+
postcap_mod?: AttackPowerModifier;
|
|
166
|
+
basic_power_mod?: AttackPowerModifier;
|
|
206
167
|
}
|
|
207
168
|
|
|
208
169
|
export interface SpecialEnemyModifiers {
|
|
@@ -221,9 +182,13 @@ export interface AttackPowerModifier {
|
|
|
221
182
|
b: number;
|
|
222
183
|
}
|
|
223
184
|
|
|
224
|
-
export type
|
|
225
|
-
|
|
226
|
-
|
|
185
|
+
export type OrgType =
|
|
186
|
+
| "Single"
|
|
187
|
+
| "CarrierTaskForce"
|
|
188
|
+
| "SurfaceTaskForce"
|
|
189
|
+
| "TransportEscort"
|
|
190
|
+
| "EnemySingle"
|
|
191
|
+
| "EnemyCombined";
|
|
227
192
|
|
|
228
193
|
export interface CompMeta {
|
|
229
194
|
fleets: Record<FleetType, FleetMeta>;
|
|
@@ -240,62 +205,33 @@ export interface ShipMeta {
|
|
|
240
205
|
ship_id: number;
|
|
241
206
|
}
|
|
242
207
|
|
|
243
|
-
export interface
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
208
|
+
export interface MasterData {
|
|
209
|
+
gears: MasterGear[];
|
|
210
|
+
gear_attrs: MasterAttrRule<GearAttr>[];
|
|
211
|
+
ships: MasterShip[];
|
|
212
|
+
ship_attrs: MasterAttrRule<ShipAttr>[];
|
|
213
|
+
ibonuses: MasterIBonuses;
|
|
214
|
+
equippable: MasterEquippable;
|
|
215
|
+
formation: NestedFormationDef[];
|
|
216
|
+
anti_air_cutin: AntiAirCutinDef[];
|
|
217
|
+
day_cutin: DayCutinDef[];
|
|
218
|
+
night_cutin: NightCutinDef[];
|
|
251
219
|
}
|
|
252
220
|
|
|
253
|
-
export interface
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
221
|
+
export interface MasterConfig {
|
|
222
|
+
formation: NestedFormationDef[];
|
|
223
|
+
anti_air_cutin: AntiAirCutinDef[];
|
|
224
|
+
day_cutin: DayCutinDef[];
|
|
225
|
+
night_cutin: NightCutinDef[];
|
|
257
226
|
}
|
|
258
227
|
|
|
259
|
-
export interface
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
228
|
+
export interface MasterAttrRule<T> {
|
|
229
|
+
tag: T;
|
|
230
|
+
name: string;
|
|
231
|
+
expr: string;
|
|
263
232
|
}
|
|
264
233
|
|
|
265
|
-
export type
|
|
266
|
-
| "Unknown"
|
|
267
|
-
| "DE"
|
|
268
|
-
| "DD"
|
|
269
|
-
| "CL"
|
|
270
|
-
| "CLT"
|
|
271
|
-
| "CA"
|
|
272
|
-
| "CAV"
|
|
273
|
-
| "CVL"
|
|
274
|
-
| "FBB"
|
|
275
|
-
| "BB"
|
|
276
|
-
| "BBV"
|
|
277
|
-
| "CV"
|
|
278
|
-
| "XBB"
|
|
279
|
-
| "SS"
|
|
280
|
-
| "SSV"
|
|
281
|
-
| "AP"
|
|
282
|
-
| "AV"
|
|
283
|
-
| "LHA"
|
|
284
|
-
| "CVB"
|
|
285
|
-
| "AR"
|
|
286
|
-
| "AS"
|
|
287
|
-
| "CT"
|
|
288
|
-
| "AO";
|
|
289
|
-
|
|
290
|
-
export type ShipCategory =
|
|
291
|
-
| "Battleship"
|
|
292
|
-
| "AircraftCarrier"
|
|
293
|
-
| "HeavyCruiser"
|
|
294
|
-
| "LightCruiser"
|
|
295
|
-
| "Destroyer"
|
|
296
|
-
| "CoastalDefenseShip"
|
|
297
|
-
| "Submarine"
|
|
298
|
-
| "AuxiliaryShip";
|
|
234
|
+
export type NumMap<K, V> = Partial<Record<K, V>>;
|
|
299
235
|
|
|
300
236
|
export type ShellingSpecialAttack =
|
|
301
237
|
| { DayCutin: DayCutin }
|
|
@@ -313,6 +249,8 @@ export type DayCutin =
|
|
|
313
249
|
| "Zuiun"
|
|
314
250
|
| "AirSea";
|
|
315
251
|
|
|
252
|
+
export type Role = "Main" | "Escort";
|
|
253
|
+
|
|
316
254
|
export type GearCategory =
|
|
317
255
|
| "Fighter"
|
|
318
256
|
| "Bomber"
|
|
@@ -397,64 +335,30 @@ export interface ShellingSupportSimulatorParams {
|
|
|
397
335
|
custom_mods: CustomModifiers;
|
|
398
336
|
}
|
|
399
337
|
|
|
400
|
-
export
|
|
401
|
-
gears: MasterGear[];
|
|
402
|
-
gear_attrs: MasterAttrRule<GearAttr>[];
|
|
403
|
-
ships: MasterShip[];
|
|
404
|
-
ship_attrs: MasterAttrRule<ShipAttr>[];
|
|
405
|
-
ibonuses: MasterIBonuses;
|
|
406
|
-
equippable: MasterEquippable;
|
|
407
|
-
formation: NestedFormationDef[];
|
|
408
|
-
anti_air_cutin: AntiAirCutinDef[];
|
|
409
|
-
day_cutin: DayCutinDef[];
|
|
410
|
-
night_cutin: NightCutinDef[];
|
|
411
|
-
}
|
|
338
|
+
export type ShellingAttackType = "Normal" | "Carrier";
|
|
412
339
|
|
|
413
|
-
export interface
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
day_cutin: DayCutinDef[];
|
|
417
|
-
night_cutin: NightCutinDef[];
|
|
340
|
+
export interface CompDayCutinRateInfo {
|
|
341
|
+
main: FleetDayCutinRateInfo;
|
|
342
|
+
escort: FleetDayCutinRateInfo | null;
|
|
418
343
|
}
|
|
419
344
|
|
|
420
|
-
export interface
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
expr: string;
|
|
345
|
+
export interface FleetDayCutinRateInfo {
|
|
346
|
+
fleet_los_mod: number | null;
|
|
347
|
+
ships: ShipDayCutinRateInfo[];
|
|
424
348
|
}
|
|
425
349
|
|
|
426
|
-
export interface
|
|
350
|
+
export interface ShipDayCutinRateInfo {
|
|
427
351
|
ship_id: number;
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
torpedo: StatInterval;
|
|
437
|
-
evasion: StatInterval;
|
|
438
|
-
anti_air: StatInterval;
|
|
439
|
-
asw: StatInterval;
|
|
440
|
-
los: StatInterval;
|
|
441
|
-
luck: StatInterval;
|
|
442
|
-
torpedo_accuracy?: number;
|
|
443
|
-
speed: number;
|
|
444
|
-
range?: number;
|
|
445
|
-
fuel?: number;
|
|
446
|
-
ammo?: number;
|
|
447
|
-
next_id?: number;
|
|
448
|
-
next_level?: number;
|
|
449
|
-
slotnum: number;
|
|
450
|
-
slots: SlotSizeVec;
|
|
451
|
-
stock: GearState[];
|
|
452
|
-
speed_group?: SpeedGroup;
|
|
453
|
-
useful?: boolean;
|
|
352
|
+
air_supremacy: DayCutinRateInfo;
|
|
353
|
+
air_superiority: DayCutinRateInfo;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
export interface DayCutinRateInfo {
|
|
357
|
+
observation_term: number | null;
|
|
358
|
+
rates: [DayCutin | null, number | null][];
|
|
359
|
+
total_cutin_rate: number | null;
|
|
454
360
|
}
|
|
455
361
|
|
|
456
|
-
export type StatInterval = [number | null, number | null];
|
|
457
|
-
|
|
458
362
|
export type ShipAttr =
|
|
459
363
|
| "Unknown"
|
|
460
364
|
| "Abyssal"
|
|
@@ -471,54 +375,34 @@ export type ShipAttr =
|
|
|
471
375
|
| "BattleshipSummerPrincess"
|
|
472
376
|
| "HeavyCruiserSummerPrincess";
|
|
473
377
|
|
|
474
|
-
export
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
export interface FleetCutinAnalysis {
|
|
493
|
-
shelling: FleetCutinInfo[];
|
|
494
|
-
night: FleetCutinInfo[];
|
|
495
|
-
}
|
|
496
|
-
|
|
497
|
-
export interface FleetCutinInfo {
|
|
498
|
-
cutin: FleetCutin;
|
|
499
|
-
formation: Formation;
|
|
500
|
-
items: FleetCutinInfoItem[];
|
|
501
|
-
}
|
|
502
|
-
|
|
503
|
-
export interface FleetCutinInfoItem {
|
|
504
|
-
ship_id: number;
|
|
505
|
-
cutin: FleetCutin;
|
|
506
|
-
fleet_cutin_mod: number;
|
|
507
|
-
stats: AttackStats;
|
|
378
|
+
export interface MasterIBonuses {
|
|
379
|
+
shelling_power: MasterIBonusRule[];
|
|
380
|
+
carrier_shelling_power: MasterIBonusRule[];
|
|
381
|
+
shelling_accuracy: MasterIBonusRule[];
|
|
382
|
+
torpedo_power: MasterIBonusRule[];
|
|
383
|
+
torpedo_accuracy: MasterIBonusRule[];
|
|
384
|
+
torpedo_evasion: MasterIBonusRule[];
|
|
385
|
+
asw_power: MasterIBonusRule[];
|
|
386
|
+
asw_accuracy: MasterIBonusRule[];
|
|
387
|
+
night_power: MasterIBonusRule[];
|
|
388
|
+
night_accuracy: MasterIBonusRule[];
|
|
389
|
+
defense_power: MasterIBonusRule[];
|
|
390
|
+
contact_selection: MasterIBonusRule[];
|
|
391
|
+
fighter_power: MasterIBonusRule[];
|
|
392
|
+
ship_anti_air: MasterIBonusRule[];
|
|
393
|
+
fleet_anti_air: MasterIBonusRule[];
|
|
394
|
+
elos: MasterIBonusRule[];
|
|
508
395
|
}
|
|
509
396
|
|
|
510
|
-
export interface
|
|
511
|
-
|
|
512
|
-
|
|
397
|
+
export interface MasterIBonusRule {
|
|
398
|
+
expr: CompiledEvaler;
|
|
399
|
+
formula: CompiledEvaler;
|
|
513
400
|
}
|
|
514
401
|
|
|
515
|
-
export interface
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
rank2: number;
|
|
520
|
-
rank1: number;
|
|
521
|
-
total: number;
|
|
402
|
+
export interface NightSituation {
|
|
403
|
+
night_contact_rank: ContactRank | null;
|
|
404
|
+
starshell: boolean;
|
|
405
|
+
searchlight: boolean;
|
|
522
406
|
}
|
|
523
407
|
|
|
524
408
|
export type GearAttr =
|
|
@@ -552,29 +436,23 @@ export type GearAttr =
|
|
|
552
436
|
| "SemiNightPlane"
|
|
553
437
|
| "HighAltitudeInterceptor";
|
|
554
438
|
|
|
555
|
-
export type
|
|
556
|
-
|
|
557
|
-
export interface MasterEquippable {
|
|
558
|
-
equip_stype: EquipStype[];
|
|
559
|
-
equip_exslot: number[];
|
|
560
|
-
equip_ship: MstEquipShip[];
|
|
561
|
-
equip_exslot_ship: MstEquipExslotShip[];
|
|
562
|
-
}
|
|
439
|
+
export type Formation = SingleFormation | CombinedFormation;
|
|
563
440
|
|
|
564
|
-
export
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
441
|
+
export type CombinedFormation =
|
|
442
|
+
| "Cruising1"
|
|
443
|
+
| "Cruising2"
|
|
444
|
+
| "Cruising3"
|
|
445
|
+
| "Cruising4";
|
|
568
446
|
|
|
569
|
-
export
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
447
|
+
export type SingleFormation =
|
|
448
|
+
| "LineAhead"
|
|
449
|
+
| "DoubleLine"
|
|
450
|
+
| "Diamond"
|
|
451
|
+
| "Echelon"
|
|
452
|
+
| "LineAbreast"
|
|
453
|
+
| "Vanguard";
|
|
573
454
|
|
|
574
|
-
export
|
|
575
|
-
id: number;
|
|
576
|
-
equip_type: number[];
|
|
577
|
-
}
|
|
455
|
+
export type FleetType = "Main" | "Escort" | "RouteSup" | "BossSup";
|
|
578
456
|
|
|
579
457
|
export interface AttackInfo<AttackType, Cutin> {
|
|
580
458
|
attack_type: AttackType;
|
|
@@ -613,6 +491,20 @@ export interface ShipAntiAirInfo {
|
|
|
613
491
|
anti_air_propellant_barrage_chance: number | null;
|
|
614
492
|
}
|
|
615
493
|
|
|
494
|
+
export interface CompContactChanceInfo {
|
|
495
|
+
single: AirstrikeContactChance[] | null;
|
|
496
|
+
combined: AirstrikeContactChance[] | null;
|
|
497
|
+
}
|
|
498
|
+
|
|
499
|
+
export interface AirstrikeContactChance {
|
|
500
|
+
air_state: AirState;
|
|
501
|
+
trigger_rate: number;
|
|
502
|
+
rank3: number;
|
|
503
|
+
rank2: number;
|
|
504
|
+
rank1: number;
|
|
505
|
+
total: number;
|
|
506
|
+
}
|
|
507
|
+
|
|
616
508
|
export type ShipStateMap = Record<ShipKey, ShipState>;
|
|
617
509
|
|
|
618
510
|
export type ShipKey = "s1" | "s2" | "s3" | "s4" | "s5" | "s6" | "s7";
|
|
@@ -709,15 +601,31 @@ export interface GearState {
|
|
|
709
601
|
stars?: number;
|
|
710
602
|
}
|
|
711
603
|
|
|
712
|
-
export
|
|
604
|
+
export interface MasterEquippable {
|
|
605
|
+
equip_stype: EquipStype[];
|
|
606
|
+
equip_exslot: number[];
|
|
607
|
+
equip_ship: MstEquipShip[];
|
|
608
|
+
equip_exslot_ship: MstEquipExslotShip[];
|
|
609
|
+
}
|
|
713
610
|
|
|
714
|
-
export
|
|
715
|
-
|
|
716
|
-
|
|
611
|
+
export interface MstEquipExslotShip {
|
|
612
|
+
api_slotitem_id: number;
|
|
613
|
+
api_ship_ids: number[];
|
|
614
|
+
}
|
|
717
615
|
|
|
718
|
-
export
|
|
719
|
-
|
|
720
|
-
|
|
616
|
+
export interface MstEquipShip {
|
|
617
|
+
api_ship_id: number;
|
|
618
|
+
api_equip_type: number[];
|
|
619
|
+
}
|
|
620
|
+
|
|
621
|
+
export interface EquipStype {
|
|
622
|
+
id: number;
|
|
623
|
+
equip_type: number[];
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
export type SlotSizeVec = (number | null)[];
|
|
627
|
+
|
|
628
|
+
export type Side = "Player" | "Enemy";
|
|
721
629
|
|
|
722
630
|
export type NightAttackType = "Normal" | "ArkRoyal" | "Carrier";
|
|
723
631
|
|
|
@@ -742,6 +650,58 @@ export type NightCutin =
|
|
|
742
650
|
| "Cvci1_18"
|
|
743
651
|
| "Photobomber";
|
|
744
652
|
|
|
653
|
+
export interface BattleConfig {
|
|
654
|
+
formation: Record<Formation, NestedFormationDef>;
|
|
655
|
+
anti_air_cutin: Record<number, AntiAirCutinDef>;
|
|
656
|
+
day_cutin: Record<DayCutin, DayCutinDef>;
|
|
657
|
+
night_cutin: Record<NightCutin, NightCutinDef>;
|
|
658
|
+
}
|
|
659
|
+
|
|
660
|
+
export interface NightCutinDef {
|
|
661
|
+
tag: NightCutin;
|
|
662
|
+
hits: number;
|
|
663
|
+
type_factor: number | null;
|
|
664
|
+
power_mod: number | null;
|
|
665
|
+
accuracy_mod: number | null;
|
|
666
|
+
}
|
|
667
|
+
|
|
668
|
+
export interface DayCutinDef {
|
|
669
|
+
tag: DayCutin;
|
|
670
|
+
hits: number;
|
|
671
|
+
type_factor: number | null;
|
|
672
|
+
power_mod: number | null;
|
|
673
|
+
accuracy_mod: number | null;
|
|
674
|
+
}
|
|
675
|
+
|
|
676
|
+
export interface AntiAirCutinDef {
|
|
677
|
+
id: number;
|
|
678
|
+
type_factor: number | null;
|
|
679
|
+
multiplier: number | null;
|
|
680
|
+
guaranteed: number | null;
|
|
681
|
+
sequential: boolean | null;
|
|
682
|
+
}
|
|
683
|
+
|
|
684
|
+
export type NestedFormationDef =
|
|
685
|
+
| FormationDef
|
|
686
|
+
| { top_half: FormationDef; bottom_half: FormationDef };
|
|
687
|
+
|
|
688
|
+
export interface FormationDef {
|
|
689
|
+
tag: Formation;
|
|
690
|
+
protection_rate: number | null;
|
|
691
|
+
fleet_anti_air_mod: number;
|
|
692
|
+
shelling: FormationWarfareDef;
|
|
693
|
+
torpedo: FormationWarfareDef;
|
|
694
|
+
asw: FormationWarfareDef;
|
|
695
|
+
night: FormationWarfareDef;
|
|
696
|
+
shelling_support: FormationWarfareDef;
|
|
697
|
+
}
|
|
698
|
+
|
|
699
|
+
export interface FormationWarfareDef {
|
|
700
|
+
power_mod: number | null;
|
|
701
|
+
accuracy_mod: number | null;
|
|
702
|
+
evasion_mod: number | null;
|
|
703
|
+
}
|
|
704
|
+
|
|
745
705
|
export interface MasterGear {
|
|
746
706
|
gear_id: number;
|
|
747
707
|
name: string;
|
|
@@ -782,6 +742,48 @@ export interface HitRateParams {
|
|
|
782
742
|
hit_percentage_bonus: number;
|
|
783
743
|
}
|
|
784
744
|
|
|
745
|
+
export type NightBattleAttackType =
|
|
746
|
+
| { t: "NightAttack"; c: NightAttackType }
|
|
747
|
+
| { t: "Asw"; c: AswAttackType };
|
|
748
|
+
|
|
749
|
+
export type DayBattleAttackType =
|
|
750
|
+
| { t: "Shelling"; c: ShellingAttackType }
|
|
751
|
+
| { t: "Asw"; c: AswAttackType };
|
|
752
|
+
|
|
753
|
+
export type GearTypeIdArray = [number, number, number, number, number];
|
|
754
|
+
|
|
755
|
+
export interface MasterShip {
|
|
756
|
+
ship_id: number;
|
|
757
|
+
name: string;
|
|
758
|
+
yomi: string;
|
|
759
|
+
stype: number;
|
|
760
|
+
ctype: number;
|
|
761
|
+
sort_id?: number;
|
|
762
|
+
max_hp: StatInterval;
|
|
763
|
+
firepower: StatInterval;
|
|
764
|
+
armor: StatInterval;
|
|
765
|
+
torpedo: StatInterval;
|
|
766
|
+
evasion: StatInterval;
|
|
767
|
+
anti_air: StatInterval;
|
|
768
|
+
asw: StatInterval;
|
|
769
|
+
los: StatInterval;
|
|
770
|
+
luck: StatInterval;
|
|
771
|
+
torpedo_accuracy?: number;
|
|
772
|
+
speed: number;
|
|
773
|
+
range?: number;
|
|
774
|
+
fuel?: number;
|
|
775
|
+
ammo?: number;
|
|
776
|
+
next_id?: number;
|
|
777
|
+
next_level?: number;
|
|
778
|
+
slotnum: number;
|
|
779
|
+
slots: SlotSizeVec;
|
|
780
|
+
stock: GearState[];
|
|
781
|
+
speed_group?: SpeedGroup;
|
|
782
|
+
useful?: boolean;
|
|
783
|
+
}
|
|
784
|
+
|
|
785
|
+
export type StatInterval = [number | null, number | null];
|
|
786
|
+
|
|
785
787
|
export interface WarfareInfo {
|
|
786
788
|
day: AttackInfo<DayBattleAttackType, DayCutin | null> | null;
|
|
787
789
|
closing_torpedo: AttackInfo<null, null> | null;
|
|
@@ -808,10 +810,6 @@ export interface WarfareAnalyzerShipEnvironment {
|
|
|
808
810
|
custom_mods: CustomModifiers;
|
|
809
811
|
}
|
|
810
812
|
|
|
811
|
-
export type GearTypeIdArray = [number, number, number, number, number];
|
|
812
|
-
|
|
813
|
-
export type SlotSizeVec = (number | null)[];
|
|
814
|
-
|
|
815
813
|
export type SpecialEnemyType =
|
|
816
814
|
| "None"
|
|
817
815
|
| "SoftSkinned"
|
|
@@ -837,6 +835,8 @@ export type FleetCutin =
|
|
|
837
835
|
|
|
838
836
|
export type ContactRank = "Rank1" | "Rank2" | "Rank3";
|
|
839
837
|
|
|
838
|
+
export type AirWaveType = "Jet" | "LandBase" | "Carrier";
|
|
839
|
+
|
|
840
840
|
export interface SimulatorResult {
|
|
841
841
|
items: SimulatorResultItem[];
|
|
842
842
|
sunk_vec: [number, number, number][];
|
|
@@ -849,6 +849,8 @@ export interface SimulatorResultItem {
|
|
|
849
849
|
damage_state_map: Record<DamageState, number>;
|
|
850
850
|
}
|
|
851
851
|
|
|
852
|
+
export type AswAttackType = "DepthCharge" | "Aircraft";
|
|
853
|
+
|
|
852
854
|
export interface FleetNightCutinRateInfo {
|
|
853
855
|
night_contact_chance: NightContactChance;
|
|
854
856
|
ships: ShipNightCutinRateInfo[];
|
|
@@ -1318,6 +1320,14 @@ export class Gear {
|
|
|
1318
1320
|
* @returns {number}
|
|
1319
1321
|
*/
|
|
1320
1322
|
night_contact_rate(level: number): number;
|
|
1323
|
+
/**
|
|
1324
|
+
* @returns {boolean}
|
|
1325
|
+
*/
|
|
1326
|
+
is_night_attacker(): boolean;
|
|
1327
|
+
/**
|
|
1328
|
+
* @returns {boolean}
|
|
1329
|
+
*/
|
|
1330
|
+
is_night_fighter(): boolean;
|
|
1321
1331
|
/**
|
|
1322
1332
|
* @returns {boolean}
|
|
1323
1333
|
*/
|