fleethub-core 1.4.3 → 1.6.0
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 +296 -287
- package/node/fleethub_core.js +71 -57
- package/node/fleethub_core_bg.wasm +0 -0
- package/node/fleethub_core_bg.wasm.d.ts +105 -103
- package/package.json +1 -1
- package/pkg/fleethub_core.d.ts +296 -287
- package/pkg/fleethub_core_bg.js +70 -56
- package/pkg/fleethub_core_bg.wasm +0 -0
- package/pkg/fleethub_core_bg.wasm.d.ts +105 -103
package/node/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;
|
|
@@ -176,6 +136,55 @@ export interface WarfareShipEnvironment {
|
|
|
176
136
|
fleet_los_mod: number | null;
|
|
177
137
|
}
|
|
178
138
|
|
|
139
|
+
export type OrgType =
|
|
140
|
+
| "Single"
|
|
141
|
+
| "CarrierTaskForce"
|
|
142
|
+
| "SurfaceTaskForce"
|
|
143
|
+
| "TransportEscort"
|
|
144
|
+
| "EnemySingle"
|
|
145
|
+
| "EnemyCombined";
|
|
146
|
+
|
|
147
|
+
export interface CompMeta {
|
|
148
|
+
fleets: Record<FleetType, FleetMeta>;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
export interface FleetMeta {
|
|
152
|
+
id: string;
|
|
153
|
+
len: number;
|
|
154
|
+
ships: [string, ShipMeta | null][];
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
export interface ShipMeta {
|
|
158
|
+
id: string;
|
|
159
|
+
ship_id: number;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
export interface MasterData {
|
|
163
|
+
gears: MasterGear[];
|
|
164
|
+
gear_attrs: MasterAttrRule<GearAttr>[];
|
|
165
|
+
ships: MasterShip[];
|
|
166
|
+
ship_attrs: MasterAttrRule<ShipAttr>[];
|
|
167
|
+
ibonuses: MasterIBonuses;
|
|
168
|
+
equippable: MasterEquippable;
|
|
169
|
+
formation: NestedFormationDef[];
|
|
170
|
+
anti_air_cutin: AntiAirCutinDef[];
|
|
171
|
+
day_cutin: DayCutinDef[];
|
|
172
|
+
night_cutin: NightCutinDef[];
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
export interface MasterConfig {
|
|
176
|
+
formation: NestedFormationDef[];
|
|
177
|
+
anti_air_cutin: AntiAirCutinDef[];
|
|
178
|
+
day_cutin: DayCutinDef[];
|
|
179
|
+
night_cutin: NightCutinDef[];
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
export interface MasterAttrRule<T> {
|
|
183
|
+
tag: T;
|
|
184
|
+
name: string;
|
|
185
|
+
expr: string;
|
|
186
|
+
}
|
|
187
|
+
|
|
179
188
|
export interface AttackPower {
|
|
180
189
|
precap: number;
|
|
181
190
|
is_capped: boolean;
|
|
@@ -223,80 +232,6 @@ export interface AttackPowerModifier {
|
|
|
223
232
|
|
|
224
233
|
export type NumMap<K, V> = Partial<Record<K, V>>;
|
|
225
234
|
|
|
226
|
-
export type Role = "Main" | "Escort";
|
|
227
|
-
|
|
228
|
-
export interface CompMeta {
|
|
229
|
-
fleets: Record<FleetType, FleetMeta>;
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
export interface FleetMeta {
|
|
233
|
-
id: string;
|
|
234
|
-
len: number;
|
|
235
|
-
ships: [string, ShipMeta | null][];
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
export interface ShipMeta {
|
|
239
|
-
id: string;
|
|
240
|
-
ship_id: number;
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
export interface CompDayCutinRateInfo {
|
|
244
|
-
main: FleetDayCutinRateInfo;
|
|
245
|
-
escort: FleetDayCutinRateInfo | null;
|
|
246
|
-
}
|
|
247
|
-
|
|
248
|
-
export interface FleetDayCutinRateInfo {
|
|
249
|
-
fleet_los_mod: number | null;
|
|
250
|
-
ships: ShipDayCutinRateInfo[];
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
export interface ShipDayCutinRateInfo {
|
|
254
|
-
ship_id: number;
|
|
255
|
-
air_supremacy: DayCutinRateInfo;
|
|
256
|
-
air_superiority: DayCutinRateInfo;
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
export interface DayCutinRateInfo {
|
|
260
|
-
observation_term: number | null;
|
|
261
|
-
rates: [DayCutin | null, number | null][];
|
|
262
|
-
total_cutin_rate: number | null;
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
export type ShipType =
|
|
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";
|
|
299
|
-
|
|
300
235
|
export type ShellingSpecialAttack =
|
|
301
236
|
| { DayCutin: DayCutin }
|
|
302
237
|
| { FleetCutin: FleetCutin };
|
|
@@ -313,6 +248,8 @@ export type DayCutin =
|
|
|
313
248
|
| "Zuiun"
|
|
314
249
|
| "AirSea";
|
|
315
250
|
|
|
251
|
+
export type Role = "Main" | "Escort";
|
|
252
|
+
|
|
316
253
|
export type GearCategory =
|
|
317
254
|
| "Fighter"
|
|
318
255
|
| "Bomber"
|
|
@@ -397,63 +334,27 @@ export interface ShellingSupportSimulatorParams {
|
|
|
397
334
|
custom_mods: CustomModifiers;
|
|
398
335
|
}
|
|
399
336
|
|
|
400
|
-
export interface
|
|
401
|
-
|
|
402
|
-
|
|
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
|
-
}
|
|
412
|
-
|
|
413
|
-
export interface MasterConfig {
|
|
414
|
-
formation: NestedFormationDef[];
|
|
415
|
-
anti_air_cutin: AntiAirCutinDef[];
|
|
416
|
-
day_cutin: DayCutinDef[];
|
|
417
|
-
night_cutin: NightCutinDef[];
|
|
337
|
+
export interface CompDayCutinRateInfo {
|
|
338
|
+
main: FleetDayCutinRateInfo;
|
|
339
|
+
escort: FleetDayCutinRateInfo | null;
|
|
418
340
|
}
|
|
419
341
|
|
|
420
|
-
export interface
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
expr: string;
|
|
342
|
+
export interface FleetDayCutinRateInfo {
|
|
343
|
+
fleet_los_mod: number | null;
|
|
344
|
+
ships: ShipDayCutinRateInfo[];
|
|
424
345
|
}
|
|
425
346
|
|
|
426
|
-
export interface
|
|
347
|
+
export interface ShipDayCutinRateInfo {
|
|
427
348
|
ship_id: number;
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
stype: number;
|
|
431
|
-
ctype: number;
|
|
432
|
-
sort_id?: number;
|
|
433
|
-
max_hp: StatInterval;
|
|
434
|
-
firepower: StatInterval;
|
|
435
|
-
armor: StatInterval;
|
|
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;
|
|
349
|
+
air_supremacy: DayCutinRateInfo;
|
|
350
|
+
air_superiority: DayCutinRateInfo;
|
|
454
351
|
}
|
|
455
352
|
|
|
456
|
-
export
|
|
353
|
+
export interface DayCutinRateInfo {
|
|
354
|
+
observation_term: number | null;
|
|
355
|
+
rates: [DayCutin | null, number | null][];
|
|
356
|
+
total_cutin_rate: number | null;
|
|
357
|
+
}
|
|
457
358
|
|
|
458
359
|
export type ShipAttr =
|
|
459
360
|
| "Unknown"
|
|
@@ -471,40 +372,36 @@ export type ShipAttr =
|
|
|
471
372
|
| "BattleshipSummerPrincess"
|
|
472
373
|
| "HeavyCruiserSummerPrincess";
|
|
473
374
|
|
|
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[];
|
|
375
|
+
export interface MasterIBonuses {
|
|
376
|
+
shelling_power: MasterIBonusRule[];
|
|
377
|
+
carrier_shelling_power: MasterIBonusRule[];
|
|
378
|
+
shelling_accuracy: MasterIBonusRule[];
|
|
379
|
+
torpedo_power: MasterIBonusRule[];
|
|
380
|
+
torpedo_accuracy: MasterIBonusRule[];
|
|
381
|
+
torpedo_evasion: MasterIBonusRule[];
|
|
382
|
+
asw_power: MasterIBonusRule[];
|
|
383
|
+
asw_accuracy: MasterIBonusRule[];
|
|
384
|
+
night_power: MasterIBonusRule[];
|
|
385
|
+
night_accuracy: MasterIBonusRule[];
|
|
386
|
+
defense_power: MasterIBonusRule[];
|
|
387
|
+
contact_selection: MasterIBonusRule[];
|
|
388
|
+
fighter_power: MasterIBonusRule[];
|
|
389
|
+
ship_anti_air: MasterIBonusRule[];
|
|
390
|
+
fleet_anti_air: MasterIBonusRule[];
|
|
391
|
+
elos: MasterIBonusRule[];
|
|
495
392
|
}
|
|
496
393
|
|
|
497
|
-
export interface
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
items: FleetCutinInfoItem[];
|
|
394
|
+
export interface MasterIBonusRule {
|
|
395
|
+
expr: CompiledEvaler;
|
|
396
|
+
formula: CompiledEvaler;
|
|
501
397
|
}
|
|
502
398
|
|
|
503
|
-
export
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
399
|
+
export type ShellingAttackType = "Normal" | "Carrier";
|
|
400
|
+
|
|
401
|
+
export interface NightSituation {
|
|
402
|
+
night_contact_rank: ContactRank | null;
|
|
403
|
+
starshell: boolean;
|
|
404
|
+
searchlight: boolean;
|
|
508
405
|
}
|
|
509
406
|
|
|
510
407
|
export interface CompContactChanceInfo {
|
|
@@ -552,29 +449,23 @@ export type GearAttr =
|
|
|
552
449
|
| "SemiNightPlane"
|
|
553
450
|
| "HighAltitudeInterceptor";
|
|
554
451
|
|
|
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
|
-
}
|
|
452
|
+
export type Formation = SingleFormation | CombinedFormation;
|
|
563
453
|
|
|
564
|
-
export
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
454
|
+
export type CombinedFormation =
|
|
455
|
+
| "Cruising1"
|
|
456
|
+
| "Cruising2"
|
|
457
|
+
| "Cruising3"
|
|
458
|
+
| "Cruising4";
|
|
568
459
|
|
|
569
|
-
export
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
460
|
+
export type SingleFormation =
|
|
461
|
+
| "LineAhead"
|
|
462
|
+
| "DoubleLine"
|
|
463
|
+
| "Diamond"
|
|
464
|
+
| "Echelon"
|
|
465
|
+
| "LineAbreast"
|
|
466
|
+
| "Vanguard";
|
|
573
467
|
|
|
574
|
-
export
|
|
575
|
-
id: number;
|
|
576
|
-
equip_type: number[];
|
|
577
|
-
}
|
|
468
|
+
export type FleetType = "Main" | "Escort" | "RouteSup" | "BossSup";
|
|
578
469
|
|
|
579
470
|
export interface AttackInfo<AttackType, Cutin> {
|
|
580
471
|
attack_type: AttackType;
|
|
@@ -709,7 +600,27 @@ export interface GearState {
|
|
|
709
600
|
stars?: number;
|
|
710
601
|
}
|
|
711
602
|
|
|
712
|
-
export
|
|
603
|
+
export interface MasterEquippable {
|
|
604
|
+
equip_stype: EquipStype[];
|
|
605
|
+
equip_exslot: number[];
|
|
606
|
+
equip_ship: MstEquipShip[];
|
|
607
|
+
equip_exslot_ship: MstEquipExslotShip[];
|
|
608
|
+
}
|
|
609
|
+
|
|
610
|
+
export interface MstEquipExslotShip {
|
|
611
|
+
api_slotitem_id: number;
|
|
612
|
+
api_ship_ids: number[];
|
|
613
|
+
}
|
|
614
|
+
|
|
615
|
+
export interface MstEquipShip {
|
|
616
|
+
api_ship_id: number;
|
|
617
|
+
api_equip_type: number[];
|
|
618
|
+
}
|
|
619
|
+
|
|
620
|
+
export interface EquipStype {
|
|
621
|
+
id: number;
|
|
622
|
+
equip_type: number[];
|
|
623
|
+
}
|
|
713
624
|
|
|
714
625
|
export type NightBattleAttackType =
|
|
715
626
|
| { t: "NightAttack"; c: NightAttackType }
|
|
@@ -719,6 +630,10 @@ export type DayBattleAttackType =
|
|
|
719
630
|
| { t: "Shelling"; c: ShellingAttackType }
|
|
720
631
|
| { t: "Asw"; c: AswAttackType };
|
|
721
632
|
|
|
633
|
+
export type SlotSizeVec = (number | null)[];
|
|
634
|
+
|
|
635
|
+
export type Side = "Player" | "Enemy";
|
|
636
|
+
|
|
722
637
|
export type NightAttackType = "Normal" | "ArkRoyal" | "Carrier";
|
|
723
638
|
|
|
724
639
|
export type NightSpecialAttack =
|
|
@@ -742,6 +657,58 @@ export type NightCutin =
|
|
|
742
657
|
| "Cvci1_18"
|
|
743
658
|
| "Photobomber";
|
|
744
659
|
|
|
660
|
+
export interface BattleConfig {
|
|
661
|
+
formation: Record<Formation, NestedFormationDef>;
|
|
662
|
+
anti_air_cutin: Record<number, AntiAirCutinDef>;
|
|
663
|
+
day_cutin: Record<DayCutin, DayCutinDef>;
|
|
664
|
+
night_cutin: Record<NightCutin, NightCutinDef>;
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
export interface NightCutinDef {
|
|
668
|
+
tag: NightCutin;
|
|
669
|
+
hits: number;
|
|
670
|
+
type_factor: number | null;
|
|
671
|
+
power_mod: number | null;
|
|
672
|
+
accuracy_mod: number | null;
|
|
673
|
+
}
|
|
674
|
+
|
|
675
|
+
export interface DayCutinDef {
|
|
676
|
+
tag: DayCutin;
|
|
677
|
+
hits: number;
|
|
678
|
+
type_factor: number | null;
|
|
679
|
+
power_mod: number | null;
|
|
680
|
+
accuracy_mod: number | null;
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
export interface AntiAirCutinDef {
|
|
684
|
+
id: number;
|
|
685
|
+
type_factor: number | null;
|
|
686
|
+
multiplier: number | null;
|
|
687
|
+
guaranteed: number | null;
|
|
688
|
+
sequential: boolean | null;
|
|
689
|
+
}
|
|
690
|
+
|
|
691
|
+
export type NestedFormationDef =
|
|
692
|
+
| FormationDef
|
|
693
|
+
| { top_half: FormationDef; bottom_half: FormationDef };
|
|
694
|
+
|
|
695
|
+
export interface FormationDef {
|
|
696
|
+
tag: Formation;
|
|
697
|
+
protection_rate: number | null;
|
|
698
|
+
fleet_anti_air_mod: number;
|
|
699
|
+
shelling: FormationWarfareDef;
|
|
700
|
+
torpedo: FormationWarfareDef;
|
|
701
|
+
asw: FormationWarfareDef;
|
|
702
|
+
night: FormationWarfareDef;
|
|
703
|
+
shelling_support: FormationWarfareDef;
|
|
704
|
+
}
|
|
705
|
+
|
|
706
|
+
export interface FormationWarfareDef {
|
|
707
|
+
power_mod: number | null;
|
|
708
|
+
accuracy_mod: number | null;
|
|
709
|
+
evasion_mod: number | null;
|
|
710
|
+
}
|
|
711
|
+
|
|
745
712
|
export interface MasterGear {
|
|
746
713
|
gear_id: number;
|
|
747
714
|
name: string;
|
|
@@ -782,6 +749,38 @@ export interface HitRateParams {
|
|
|
782
749
|
hit_percentage_bonus: number;
|
|
783
750
|
}
|
|
784
751
|
|
|
752
|
+
export interface MasterShip {
|
|
753
|
+
ship_id: number;
|
|
754
|
+
name: string;
|
|
755
|
+
yomi: string;
|
|
756
|
+
stype: number;
|
|
757
|
+
ctype: number;
|
|
758
|
+
sort_id?: number;
|
|
759
|
+
max_hp: StatInterval;
|
|
760
|
+
firepower: StatInterval;
|
|
761
|
+
armor: StatInterval;
|
|
762
|
+
torpedo: StatInterval;
|
|
763
|
+
evasion: StatInterval;
|
|
764
|
+
anti_air: StatInterval;
|
|
765
|
+
asw: StatInterval;
|
|
766
|
+
los: StatInterval;
|
|
767
|
+
luck: StatInterval;
|
|
768
|
+
torpedo_accuracy?: number;
|
|
769
|
+
speed: number;
|
|
770
|
+
range?: number;
|
|
771
|
+
fuel?: number;
|
|
772
|
+
ammo?: number;
|
|
773
|
+
next_id?: number;
|
|
774
|
+
next_level?: number;
|
|
775
|
+
slotnum: number;
|
|
776
|
+
slots: SlotSizeVec;
|
|
777
|
+
stock: GearState[];
|
|
778
|
+
speed_group?: SpeedGroup;
|
|
779
|
+
useful?: boolean;
|
|
780
|
+
}
|
|
781
|
+
|
|
782
|
+
export type StatInterval = [number | null, number | null];
|
|
783
|
+
|
|
785
784
|
export interface WarfareInfo {
|
|
786
785
|
day: AttackInfo<DayBattleAttackType, DayCutin | null> | null;
|
|
787
786
|
closing_torpedo: AttackInfo<null, null> | null;
|
|
@@ -808,9 +807,30 @@ export interface WarfareAnalyzerShipEnvironment {
|
|
|
808
807
|
custom_mods: CustomModifiers;
|
|
809
808
|
}
|
|
810
809
|
|
|
811
|
-
export
|
|
810
|
+
export interface FleetNightCutinRateInfo {
|
|
811
|
+
night_contact_chance: NightContactChance;
|
|
812
|
+
ships: ShipNightCutinRateInfo[];
|
|
813
|
+
}
|
|
812
814
|
|
|
813
|
-
export
|
|
815
|
+
export interface ShipNightCutinRateInfo {
|
|
816
|
+
ship_id: number;
|
|
817
|
+
normal: NightCutinRateInfo;
|
|
818
|
+
chuuha: NightCutinRateInfo;
|
|
819
|
+
}
|
|
820
|
+
|
|
821
|
+
export interface NightCutinRateInfo {
|
|
822
|
+
cutin_term: number | null;
|
|
823
|
+
rates: [NightCutin | null, number | null][];
|
|
824
|
+
}
|
|
825
|
+
|
|
826
|
+
export interface NightContactChance {
|
|
827
|
+
rank1: number;
|
|
828
|
+
rank2: number;
|
|
829
|
+
rank3: number;
|
|
830
|
+
total: number;
|
|
831
|
+
}
|
|
832
|
+
|
|
833
|
+
export type GearTypeIdArray = [number, number, number, number, number];
|
|
814
834
|
|
|
815
835
|
export type SpecialEnemyType =
|
|
816
836
|
| "None"
|
|
@@ -837,6 +857,8 @@ export type FleetCutin =
|
|
|
837
857
|
|
|
838
858
|
export type ContactRank = "Rank1" | "Rank2" | "Rank3";
|
|
839
859
|
|
|
860
|
+
export type AirWaveType = "Jet" | "LandBase" | "Carrier";
|
|
861
|
+
|
|
840
862
|
export interface SimulatorResult {
|
|
841
863
|
items: SimulatorResultItem[];
|
|
842
864
|
sunk_vec: [number, number, number][];
|
|
@@ -849,28 +871,7 @@ export interface SimulatorResultItem {
|
|
|
849
871
|
damage_state_map: Record<DamageState, number>;
|
|
850
872
|
}
|
|
851
873
|
|
|
852
|
-
export
|
|
853
|
-
night_contact_chance: NightContactChance;
|
|
854
|
-
ships: ShipNightCutinRateInfo[];
|
|
855
|
-
}
|
|
856
|
-
|
|
857
|
-
export interface ShipNightCutinRateInfo {
|
|
858
|
-
ship_id: number;
|
|
859
|
-
normal: NightCutinRateInfo;
|
|
860
|
-
chuuha: NightCutinRateInfo;
|
|
861
|
-
}
|
|
862
|
-
|
|
863
|
-
export interface NightCutinRateInfo {
|
|
864
|
-
cutin_term: number | null;
|
|
865
|
-
rates: [NightCutin | null, number | null][];
|
|
866
|
-
}
|
|
867
|
-
|
|
868
|
-
export interface NightContactChance {
|
|
869
|
-
rank1: number;
|
|
870
|
-
rank2: number;
|
|
871
|
-
rank3: number;
|
|
872
|
-
total: number;
|
|
873
|
-
}
|
|
874
|
+
export type AswAttackType = "DepthCharge" | "Aircraft";
|
|
874
875
|
|
|
875
876
|
/**
|
|
876
877
|
*/
|
|
@@ -1318,6 +1319,14 @@ export class Gear {
|
|
|
1318
1319
|
* @returns {number}
|
|
1319
1320
|
*/
|
|
1320
1321
|
night_contact_rate(level: number): number;
|
|
1322
|
+
/**
|
|
1323
|
+
* @returns {boolean}
|
|
1324
|
+
*/
|
|
1325
|
+
is_night_attacker(): boolean;
|
|
1326
|
+
/**
|
|
1327
|
+
* @returns {boolean}
|
|
1328
|
+
*/
|
|
1329
|
+
is_night_fighter(): boolean;
|
|
1321
1330
|
/**
|
|
1322
1331
|
* @returns {boolean}
|
|
1323
1332
|
*/
|