s2cfgtojson 4.4.0 → 5.0.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.
@@ -0,0 +1,1891 @@
1
+ import {
2
+ EChangeValueMode,
3
+ EConditionCheckType,
4
+ EConditionComparance,
5
+ ECustomDataDistribution,
6
+ EGlobalVariableType,
7
+ EItemGenerationCategory,
8
+ EJournalEntity,
9
+ EJournalState,
10
+ EMainHandEquipmentType,
11
+ EQuestConditionType,
12
+ EQuestNodeState,
13
+ ERank,
14
+ ERelationLevel,
15
+ ERequiredSquadMembers,
16
+ EThreatAwareness,
17
+ ETriggerReact,
18
+ EWeather,
19
+ } from "./enums.mts";
20
+
21
+ export type WeatherSelection =
22
+ | "CalmBeforeEmission"
23
+ | "Clearly"
24
+ | "Cloudy"
25
+ | "Emission"
26
+ | "Fogy"
27
+ | "LightRainy"
28
+ | "Rainy"
29
+ | "Stormy"
30
+ | "Thundery"
31
+ | "Underground";
32
+
33
+ export type Caliber =
34
+ | "A012"
35
+ | "A045"
36
+ | "A545"
37
+ | "A556"
38
+ | "A762"
39
+ | "A762NATO"
40
+ | "A762Sniper"
41
+ | "A918"
42
+ | "A919"
43
+ | "A939"
44
+ | "AGA"
45
+ | "AHEDP"
46
+ | "APG7V"
47
+ | "AVOG"
48
+ | "None";
49
+ export type SID = string;
50
+ export type Rank = "Newbie" | "Experienced" | "Veteran" | "Master";
51
+ export type Newbie = "ERank::Newbie";
52
+ export type Experienced = "ERank::Experienced";
53
+ export type Veteran = "ERank::Veteran";
54
+ export type Master = "ERank::Master";
55
+ export type Permutations2<A, B> = A extends string
56
+ ? B extends string
57
+ ? A | B | `${A}, ${B}`
58
+ : A
59
+ : never;
60
+
61
+ export type Permutations3<A, B, C> = A extends string
62
+ ? B extends string
63
+ ? C extends string
64
+ ? Permutations2<A, B> | Permutations2<B, C> | `${A}, ${B}, ${C}`
65
+ : Permutations2<A, B>
66
+ : A
67
+ : never;
68
+
69
+ export type Reaction = "Enemy" | "Disaffection" | "Neutral" | "Friend" | "Self";
70
+
71
+ export type Faction =
72
+ | "Humanoid"
73
+ | "Player"
74
+ | "Bandits"
75
+ | "Monolith"
76
+ | "FreeStalkers"
77
+ | "Army"
78
+ | "Duty"
79
+ | "Freedom"
80
+ | "Varta"
81
+ | "Neutrals"
82
+ | "Militaries"
83
+ | "Noon"
84
+ | "Scientists"
85
+ | "Mercenaries"
86
+ | "Flame"
87
+ | "Law"
88
+ | "Spark"
89
+ | "Corpus"
90
+ | "WildBandits"
91
+ | "GarmataMilitaries"
92
+ | "SphereMilitaries"
93
+ | "NeutralBandits"
94
+ | "VaranBandits"
95
+ | "RooseveltBandits"
96
+ | "ShahBandits"
97
+ | "LokotBandits"
98
+ | "DepoBandits"
99
+ | "DepoVictims"
100
+ | "DocentBandits"
101
+ | "VaranStashBandits"
102
+ | "Diggers"
103
+ | "KosakBandits"
104
+ | "AzimutVarta"
105
+ | "UdavMercenaries"
106
+ | "SafariHunters"
107
+ | "AzimuthMilitaries"
108
+ | "SultanBandits"
109
+ | "ShevchenkoStalkers"
110
+ | "VartaLesnichestvo"
111
+ | "SparkLesnichestvo"
112
+ | "IkarVarta"
113
+ | "KabanBandits"
114
+ | "CrazyGuardians"
115
+ | "ArenaEnemy"
116
+ | "ArenaFriend"
117
+ | "DrozdMilitaries"
118
+ | "EnemyVarta"
119
+ | "NeutralMSOP"
120
+ | "YanovCorpus"
121
+ | "MoleStalkers"
122
+ | "Mutant"
123
+ | "Controller"
124
+ | "Poltergeist"
125
+ | "Bloodsucker"
126
+ | "Zombie"
127
+ | "Chimera"
128
+ | "Burer"
129
+ | "Pseudogiant"
130
+ | "Anamorph"
131
+ | "Sinister"
132
+ | "Pseudobear"
133
+ | "Snork"
134
+ | "Pseudodog"
135
+ | "Boar"
136
+ | "Flesh"
137
+ | "Beaver"
138
+ | "Ratwolf"
139
+ | "Deer"
140
+ | "Rat"
141
+ | "Tushkan"
142
+ | "Stickman"
143
+ | "Blinddog"
144
+ | "Bayun"
145
+ | "CorpusStorm"
146
+ | "DocileLabMutants"
147
+ | "VartaSIRCAA"
148
+ | "YantarZombie"
149
+ | "FriendlyBlinddog"
150
+ | "Lessy"
151
+ | "AlliedMutants"
152
+ | "NoahLesya"
153
+ | "KlenMercenaries"
154
+ | "SIRCAA_Scientist"
155
+ | "MALACHITE_Scientist"
156
+ | "NoonFaustians"
157
+ | "SQ89_SidorMercs"
158
+ | "ScarBoss_Faction"
159
+ | "KorshunovBoss_Faction"
160
+ | "StrelokBoss_Faction"
161
+ | "FaustBoss_Faction";
162
+
163
+ export type Condition =
164
+ | (
165
+ | EConditionComparance
166
+ | EQuestConditionType
167
+ | number
168
+ | string
169
+ | {
170
+ AITarget: string;
171
+ AmmoRequired: number;
172
+ AnyBody: boolean;
173
+ BoolValue: boolean;
174
+ bTriggersByAnybody: boolean;
175
+ ChangeValueMode: EChangeValueMode;
176
+ CompletedNodeLauncherNames: string[];
177
+ ConditionComparance: EConditionComparance;
178
+ ConditionType: EQuestConditionType;
179
+ EffectPrototypeSID: string;
180
+ EmissionPrototypeSID: string;
181
+ Equipment: EMainHandEquipmentType;
182
+ Faction: string;
183
+ GlobalVariablePrototypeSID: string;
184
+ ItemPrototypeSID: {
185
+ VariableType: EGlobalVariableType;
186
+ VariableValue: string;
187
+ };
188
+ ItemsCount: {
189
+ VariableType: EGlobalVariableType;
190
+ VariableValue: number;
191
+ };
192
+ JournalEntity: EJournalEntity;
193
+ JournalQuestSID: string;
194
+ JournalQuestStageSID: string;
195
+ JournalState: EJournalState;
196
+ LinkedNodePrototypeSID: string;
197
+ Money: {
198
+ VariableType: EGlobalVariableType;
199
+ VariableValue: number;
200
+ };
201
+ NodeState: EQuestNodeState;
202
+ NotePrototypeSID: string;
203
+ NumericValue: number;
204
+ PointToLookAt: { X: number; Y: number; Z: number };
205
+ Rank: ERank;
206
+ ReactType: ETriggerReact;
207
+ Relationships: ERelationLevel;
208
+ RequiredSquadMembers: ERequiredSquadMembers;
209
+ TargetCharacter: string;
210
+ TargetContextualActionPlaceholder: string;
211
+ TargetCorpsePlaceholder: string;
212
+ TargetItemContainer: string;
213
+ TargetNode: string;
214
+ TargetNPC: string;
215
+ TargetPlaceholder: string;
216
+ TargetPoint: { X: number; Y: number; Z: number };
217
+ ThreatAwareness: EThreatAwareness;
218
+ Trigger: string;
219
+ VariableValue: number;
220
+ WithBodyArmor: boolean;
221
+ WithEquipped: boolean;
222
+ WithHeadArmor: boolean;
223
+ WithInventory: boolean;
224
+ }
225
+ | {
226
+ BoolValue: boolean;
227
+ bTriggersByAnybody: boolean;
228
+ ChangeValueMode: EChangeValueMode;
229
+ CompletedNodeLauncherNames: string[];
230
+ ConditionComparance: EConditionComparance;
231
+ ConditionType: EQuestConditionType;
232
+ EffectPrototypeSID: string;
233
+ Equipment: EMainHandEquipmentType;
234
+ Faction: string;
235
+ GlobalVariablePrototypeSID: string;
236
+ ItemPrototypeSID: {
237
+ VariableType: EGlobalVariableType;
238
+ VariableValue: string;
239
+ };
240
+ ItemsCount: {
241
+ VariableType: EGlobalVariableType;
242
+ VariableValue: number;
243
+ };
244
+ JournalEntity: EJournalEntity;
245
+ JournalQuestSID: string;
246
+ JournalQuestStageSID: string;
247
+ JournalState: EJournalState;
248
+ LinkedNodePrototypeSID: string;
249
+ NodeState: EQuestNodeState;
250
+ NotePrototypeSID: string;
251
+ NumericValue: number;
252
+ PointToLookAt: { X: number; Y: number; Z: number };
253
+ ReactType: ETriggerReact;
254
+ Relationships: ERelationLevel;
255
+ RequiredSquadMembers: ERequiredSquadMembers;
256
+ TargetCharacter: string;
257
+ TargetContextualActionPlaceholder: string;
258
+ TargetItemContainer: string;
259
+ TargetNode: string;
260
+ TargetNPC: string;
261
+ TargetPlaceholder: string;
262
+ TargetPoint: { X: number; Y: number; Z: number };
263
+ ThreatAwareness: EThreatAwareness;
264
+ Trigger: string;
265
+ VariableValue: boolean;
266
+ WithEquipped: boolean;
267
+ WithInventory: boolean;
268
+ }
269
+ | {
270
+ CompletedNodeLauncherNames: string[];
271
+ ConditionComparance: EConditionComparance;
272
+ ConditionType: EQuestConditionType;
273
+ EffectPrototypeSID: string;
274
+ Equipment: EMainHandEquipmentType;
275
+ Faction: string;
276
+ ItemPrototypeSID: {
277
+ VariableType: EGlobalVariableType;
278
+ VariableValue: string;
279
+ };
280
+ ItemsCount: {
281
+ VariableType: EGlobalVariableType;
282
+ VariableValue: number;
283
+ };
284
+ JournalEntity: EJournalEntity;
285
+ JournalQuestSID: string;
286
+ JournalQuestStageSID: string;
287
+ JournalState: EJournalState;
288
+ LinkedNodePrototypeSID: string;
289
+ NodeState: EQuestNodeState;
290
+ NumericValue: number;
291
+ Relationships: ERelationLevel;
292
+ RequiredSquadMembers: ERequiredSquadMembers;
293
+ TargetCharacter: string;
294
+ TargetContextualActionPlaceholder: string;
295
+ TargetItemContainer: string;
296
+ TargetNode: string;
297
+ TargetNPC: string;
298
+ TargetPlaceholder: string;
299
+ TargetPoint: { X: number; Y: number; Z: number };
300
+ }
301
+ | {
302
+ CompletedNodeLauncherNames: string[];
303
+ ConditionComparance: EConditionComparance;
304
+ ConditionType: EQuestConditionType;
305
+ Equipment: EMainHandEquipmentType;
306
+ Faction: string;
307
+ ItemPrototypeSID: {
308
+ VariableType: EGlobalVariableType;
309
+ VariableValue: string;
310
+ };
311
+ ItemsCount: {
312
+ VariableType: EGlobalVariableType;
313
+ VariableValue: number;
314
+ };
315
+ LinkedNodePrototypeSID: string;
316
+ NodeState: EQuestNodeState;
317
+ NumericValue: number;
318
+ Relationships: ERelationLevel;
319
+ RequiredSquadMembers: ERequiredSquadMembers;
320
+ TargetCharacter: string;
321
+ TargetContextualActionPlaceholder: string;
322
+ TargetItemContainer: string;
323
+ TargetNode: string;
324
+ TargetNPC: string;
325
+ TargetPlaceholder: string;
326
+ TargetPoint: { X: number; Y: number; Z: number };
327
+ }
328
+ | {
329
+ ConditionComparance: EConditionComparance;
330
+ ConditionType: EQuestConditionType;
331
+ Faction: string;
332
+ ItemPrototypeSID: {
333
+ VariableType: EGlobalVariableType;
334
+ VariableValue: string;
335
+ };
336
+ ItemsCount: {
337
+ VariableType: EGlobalVariableType;
338
+ VariableValue: number;
339
+ };
340
+ NodeState: EQuestNodeState;
341
+ NumericValue: number;
342
+ Relationships: ERelationLevel;
343
+ RequiredSquadMembers: ERequiredSquadMembers;
344
+ TargetCharacter: string;
345
+ TargetItemContainer: string;
346
+ TargetNode: string;
347
+ TargetPlaceholder: string;
348
+ TargetPoint: { X: number; Y: number; Z: number };
349
+ }
350
+ | {
351
+ ConditionComparance: EConditionComparance;
352
+ ConditionType: EQuestConditionType;
353
+ Faction: string;
354
+ ItemPrototypeSID: {
355
+ VariableType: EGlobalVariableType;
356
+ VariableValue: string;
357
+ };
358
+ ItemsCount: {
359
+ VariableType: EGlobalVariableType;
360
+ VariableValue: number;
361
+ };
362
+ NumericValue: number;
363
+ Relationships: ERelationLevel;
364
+ RequiredSquadMembers: ERequiredSquadMembers;
365
+ TargetCharacter: string;
366
+ TargetItemContainer: string;
367
+ TargetPlaceholder: string;
368
+ TargetPoint: { X: number; Y: number; Z: number };
369
+ }
370
+ | {
371
+ ConditionComparance: EConditionComparance;
372
+ ConditionType: EQuestConditionType;
373
+ Faction: string;
374
+ ItemPrototypeSID: {
375
+ VariableType: EGlobalVariableType;
376
+ VariableValue: string;
377
+ };
378
+ ItemsCount: {
379
+ VariableType: EGlobalVariableType;
380
+ VariableValue: number;
381
+ };
382
+ NumericValue: number;
383
+ Relationships: ERelationLevel;
384
+ RequiredSquadMembers: ERequiredSquadMembers;
385
+ TargetCharacter: string;
386
+ TargetItemContainer: string;
387
+ TargetPoint: { X: number; Y: number; Z: number };
388
+ }
389
+ | {
390
+ ConditionComparance: EConditionComparance;
391
+ ConditionType: EQuestConditionType;
392
+ Faction: string;
393
+ Relationships: ERelationLevel;
394
+ TargetCharacter: string;
395
+ }
396
+ | {
397
+ X: number;
398
+ Y: number;
399
+ Z: number;
400
+ }
401
+ | {
402
+ bTriggersByAnybody: boolean;
403
+ CompletedNodeLauncherNames: string[];
404
+ ConditionComparance: EConditionComparance;
405
+ ConditionType: EQuestConditionType;
406
+ EffectPrototypeSID: string;
407
+ EmissionPrototypeSID: string;
408
+ Equipment: EMainHandEquipmentType;
409
+ Faction: string;
410
+ ItemPrototypeSID: {
411
+ VariableType: EGlobalVariableType;
412
+ VariableValue: string;
413
+ };
414
+ ItemsCount: {
415
+ VariableType: EGlobalVariableType;
416
+ VariableValue: number;
417
+ };
418
+ JournalEntity: EJournalEntity;
419
+ JournalQuestSID: string;
420
+ JournalQuestStageSID: string;
421
+ JournalState: EJournalState;
422
+ LinkedNodePrototypeSID: string;
423
+ NodeState: EQuestNodeState;
424
+ NumericValue: number;
425
+ ReactType: ETriggerReact;
426
+ Relationships: ERelationLevel;
427
+ RequiredSquadMembers: ERequiredSquadMembers;
428
+ TargetCharacter: string;
429
+ TargetContextualActionPlaceholder: string;
430
+ TargetItemContainer: string;
431
+ TargetNode: string;
432
+ TargetNPC: string;
433
+ TargetPlaceholder: string;
434
+ TargetPoint: { X: number; Y: number; Z: number };
435
+ Trigger: string;
436
+ WithEquipped: boolean;
437
+ WithInventory: boolean;
438
+ }
439
+ )[]
440
+ | (
441
+ | {
442
+ AnyBody: boolean;
443
+ bTriggersByAnybody: boolean;
444
+ ChangeValueMode: EChangeValueMode;
445
+ CompletedNodeLauncherNames: string[];
446
+ ConditionComparance: EConditionComparance;
447
+ ConditionType: EQuestConditionType;
448
+ EmissionPrototypeSID: string;
449
+ Faction: string;
450
+ GlobalVariablePrototypeSID: string;
451
+ ItemPrototypeSID: {
452
+ VariableType: EGlobalVariableType;
453
+ VariableValue: string;
454
+ };
455
+ ItemsCount: {
456
+ VariableType: EGlobalVariableType;
457
+ VariableValue: number;
458
+ };
459
+ JournalEntity: EJournalEntity;
460
+ JournalQuestSID: string;
461
+ JournalQuestStageSID: string;
462
+ JournalState: EJournalState;
463
+ LinkedNodePrototypeSID: string;
464
+ NodeState: EQuestNodeState;
465
+ NumericValue: number;
466
+ ReactType: ETriggerReact;
467
+ Relationships: ERelationLevel;
468
+ RequiredSquadMembers: ERequiredSquadMembers;
469
+ TargetCharacter: string;
470
+ TargetContextualActionPlaceholder: string;
471
+ TargetCorpsePlaceholder: string;
472
+ TargetItemContainer: string;
473
+ TargetNode: string;
474
+ TargetNPC: string;
475
+ TargetPlaceholder: string;
476
+ TargetPoint: { X: number; Y: number; Z: number };
477
+ ThreatAwareness: EThreatAwareness;
478
+ Trigger: string;
479
+ VariableValue: boolean;
480
+ Weather: EWeather;
481
+ WithEquipped: boolean;
482
+ WithInventory: boolean;
483
+ }
484
+ | {
485
+ CompletedNodeLauncherNames: string[];
486
+ ConditionComparance: EConditionComparance;
487
+ ConditionType: EQuestConditionType;
488
+ ItemPrototypeSID: {
489
+ VariableType: EGlobalVariableType;
490
+ VariableValue: string;
491
+ };
492
+ ItemsCount: {
493
+ VariableType: EGlobalVariableType;
494
+ VariableValue: number;
495
+ };
496
+ JournalEntity: EJournalEntity;
497
+ JournalQuestSID: string;
498
+ JournalState: EJournalState;
499
+ LinkedNodePrototypeSID: string;
500
+ NodeState: EQuestNodeState;
501
+ NumericValue: number;
502
+ RequiredSquadMembers: ERequiredSquadMembers;
503
+ TargetCharacter: string;
504
+ TargetContextualActionPlaceholder: string;
505
+ TargetItemContainer: string;
506
+ TargetNode: string;
507
+ TargetNPC: string;
508
+ WithEquipped: boolean;
509
+ WithInventory: boolean;
510
+ }
511
+ | {
512
+ ConditionComparance: EConditionComparance;
513
+ ConditionType: EQuestConditionType;
514
+ ItemPrototypeSID: {
515
+ VariableType: EGlobalVariableType;
516
+ VariableValue: string;
517
+ };
518
+ ItemsCount: {
519
+ VariableType: EGlobalVariableType;
520
+ VariableValue: number;
521
+ };
522
+ JournalEntity: EJournalEntity;
523
+ JournalQuestSID: string;
524
+ JournalState: EJournalState;
525
+ NodeState: EQuestNodeState;
526
+ NumericValue: number;
527
+ RequiredSquadMembers: ERequiredSquadMembers;
528
+ TargetCharacter: string;
529
+ TargetContextualActionPlaceholder: string;
530
+ TargetItemContainer: string;
531
+ TargetNode: string;
532
+ TargetNPC: string;
533
+ WithEquipped: boolean;
534
+ WithInventory: boolean;
535
+ }
536
+ | {
537
+ ConditionComparance: EConditionComparance;
538
+ ConditionType: EQuestConditionType;
539
+ ItemPrototypeSID: {
540
+ VariableType: EGlobalVariableType;
541
+ VariableValue: string;
542
+ };
543
+ ItemsCount: {
544
+ VariableType: EGlobalVariableType;
545
+ VariableValue: number;
546
+ };
547
+ JournalEntity: EJournalEntity;
548
+ JournalQuestSID: string;
549
+ JournalState: EJournalState;
550
+ RequiredSquadMembers: ERequiredSquadMembers;
551
+ TargetCharacter: string;
552
+ TargetContextualActionPlaceholder: string;
553
+ TargetItemContainer: string;
554
+ TargetNPC: string;
555
+ }
556
+ | {
557
+ ConditionComparance: EConditionComparance;
558
+ ConditionType: EQuestConditionType;
559
+ ItemPrototypeSID: {
560
+ VariableType: EGlobalVariableType;
561
+ VariableValue: string;
562
+ };
563
+ ItemsCount: {
564
+ VariableType: EGlobalVariableType;
565
+ VariableValue: number;
566
+ };
567
+ TargetItemContainer: string;
568
+ }
569
+ )[]
570
+ | (
571
+ | {
572
+ AnyBody: boolean;
573
+ bTriggersByAnybody: boolean;
574
+ ChangeValueMode: EChangeValueMode;
575
+ CompletedNodeLauncherNames: string[];
576
+ ConditionComparance: EConditionComparance;
577
+ ConditionType: EQuestConditionType;
578
+ EmissionPrototypeSID: string;
579
+ Faction: string;
580
+ GlobalVariablePrototypeSID: string;
581
+ ItemPrototypeSID: {
582
+ VariableType: EGlobalVariableType;
583
+ VariableValue: string;
584
+ };
585
+ ItemsCount: {
586
+ VariableType: EGlobalVariableType;
587
+ VariableValue: number;
588
+ };
589
+ JournalEntity: EJournalEntity;
590
+ JournalQuestSID: string;
591
+ JournalQuestStageSID: string;
592
+ JournalState: EJournalState;
593
+ LinkedNodePrototypeSID: string;
594
+ NodeState: EQuestNodeState;
595
+ NumericValue: number;
596
+ ReactType: ETriggerReact;
597
+ Relationships: ERelationLevel;
598
+ RequiredSquadMembers: ERequiredSquadMembers;
599
+ TargetCharacter: string;
600
+ TargetContextualActionPlaceholder: string;
601
+ TargetCorpsePlaceholder: string;
602
+ TargetItemContainer: string;
603
+ TargetNode: string;
604
+ TargetNPC: string;
605
+ TargetPlaceholder: string;
606
+ TargetPoint: { X: number; Y: number; Z: number };
607
+ ThreatAwareness: EThreatAwareness;
608
+ Trigger: string;
609
+ VariableValue: number;
610
+ WithEquipped: boolean;
611
+ WithInventory: boolean;
612
+ }
613
+ | {
614
+ ConditionComparance: EConditionComparance;
615
+ ConditionType: EQuestConditionType;
616
+ NodeState: EQuestNodeState;
617
+ NumericValue: number;
618
+ RequiredSquadMembers: ERequiredSquadMembers;
619
+ TargetCharacter: string;
620
+ TargetContextualActionPlaceholder: string;
621
+ TargetNode: string;
622
+ TargetNPC: string;
623
+ }
624
+ | {
625
+ ConditionComparance: EConditionComparance;
626
+ ConditionType: EQuestConditionType;
627
+ TargetContextualActionPlaceholder: string;
628
+ TargetNPC: string;
629
+ }
630
+ )[]
631
+ | (
632
+ | {
633
+ ConditionComparance: EConditionComparance;
634
+ ConditionType: EQuestConditionType;
635
+ JournalEntity: EJournalEntity;
636
+ JournalQuestSID: string;
637
+ JournalQuestStageSID: string;
638
+ JournalState: EJournalState;
639
+ }
640
+ | {
641
+ bTriggersByAnybody: boolean;
642
+ CompletedNodeLauncherNames: string[];
643
+ ConditionComparance: EConditionComparance;
644
+ ConditionType: EQuestConditionType;
645
+ EmissionPrototypeSID: string;
646
+ Faction: string;
647
+ ItemPrototypeSID: {
648
+ VariableType: EGlobalVariableType;
649
+ VariableValue: string;
650
+ };
651
+ ItemsCount: {
652
+ VariableType: EGlobalVariableType;
653
+ VariableValue: number;
654
+ };
655
+ JournalEntity: EJournalEntity;
656
+ JournalQuestSID: string;
657
+ JournalQuestStageSID: string;
658
+ JournalState: EJournalState;
659
+ LinkedNodePrototypeSID: string;
660
+ NodeState: EQuestNodeState;
661
+ NumericValue: number;
662
+ ReactType: ETriggerReact;
663
+ Relationships: ERelationLevel;
664
+ RequiredSquadMembers: ERequiredSquadMembers;
665
+ TargetCharacter: string;
666
+ TargetContextualActionPlaceholder: string;
667
+ TargetNode: string;
668
+ TargetNPC: string;
669
+ TargetPlaceholder: string;
670
+ TargetPoint: { X: number; Y: number; Z: number };
671
+ ThreatAwareness: EThreatAwareness;
672
+ Trigger: string;
673
+ WithEquipped: boolean;
674
+ WithInventory: boolean;
675
+ }
676
+ )[]
677
+ | EConditionCheckType
678
+ | {
679
+ AITarget: string;
680
+ BoolValue: boolean;
681
+ bTriggersByAnybody: boolean;
682
+ ChangeValueMode: EChangeValueMode;
683
+ CompletedNodeLauncherNames: string[];
684
+ ConditionComparance: EConditionComparance;
685
+ ConditionType: EQuestConditionType;
686
+ EmissionPrototypeSID: string;
687
+ Equipment: EMainHandEquipmentType;
688
+ Faction: string;
689
+ GlobalVariablePrototypeSID: string;
690
+ ItemPrototypeSID: {
691
+ VariableType: EGlobalVariableType;
692
+ VariableValue: string;
693
+ };
694
+ ItemsCount: {
695
+ VariableType: EGlobalVariableType;
696
+ VariableValue: number;
697
+ };
698
+ JournalEntity: EJournalEntity;
699
+ JournalQuestSID: string;
700
+ JournalQuestStageSID: string;
701
+ JournalState: EJournalState;
702
+ LinkedNodePrototypeSID: string;
703
+ NodeState: EQuestNodeState;
704
+ NotePrototypeSID: string;
705
+ NumericValue: number;
706
+ PointToLookAt: { X: number; Y: number; Z: number };
707
+ Rank: ERank;
708
+ ReactType: ETriggerReact;
709
+ Relationships: ERelationLevel;
710
+ RequiredSquadMembers: ERequiredSquadMembers;
711
+ TargetCharacter: string;
712
+ TargetContextualActionPlaceholder: string;
713
+ TargetItemContainer: string;
714
+ TargetNode: string;
715
+ TargetNPC: string;
716
+ TargetPlaceholder: string;
717
+ TargetPoint: { X: number; Y: number; Z: number };
718
+ ThreatAwareness: EThreatAwareness;
719
+ Trigger: string;
720
+ VariableValue: number;
721
+ Weather: EWeather;
722
+ WithEquipped: boolean;
723
+ WithInventory: boolean;
724
+ }[]
725
+ | {
726
+ ConditionComparance: EConditionComparance;
727
+ ConditionType: EQuestConditionType;
728
+ EmissionPrototypeSID: string;
729
+ JournalEntity: EJournalEntity;
730
+ JournalQuestSID: string;
731
+ JournalQuestStageSID: string;
732
+ JournalState: EJournalState;
733
+ NodeState: EQuestNodeState;
734
+ NumericValue: number;
735
+ RequiredSquadMembers: ERequiredSquadMembers;
736
+ TargetCharacter: string;
737
+ TargetNode: string;
738
+ TargetPlaceholder: string;
739
+ TargetPoint: { X: number; Y: number; Z: number };
740
+ }[]
741
+ | {
742
+ ConditionComparance: EConditionComparance;
743
+ ConditionType: EQuestConditionType;
744
+ NumericValue: number;
745
+ RequiredSquadMembers: ERequiredSquadMembers;
746
+ TargetCharacter: string;
747
+ TargetPoint: { X: number; Y: number; Z: number };
748
+ ThreatAwareness: EThreatAwareness;
749
+ }[]
750
+ | {
751
+ bTriggersByAnybody: boolean;
752
+ ConditionComparance: EConditionComparance;
753
+ ConditionType: EQuestConditionType;
754
+ EmissionPrototypeSID: string;
755
+ Faction: string;
756
+ JournalEntity: EJournalEntity;
757
+ JournalQuestSID: string;
758
+ JournalQuestStageSID: string;
759
+ JournalState: EJournalState;
760
+ NodeState: EQuestNodeState;
761
+ NumericValue: number;
762
+ ReactType: ETriggerReact;
763
+ Relationships: ERelationLevel;
764
+ RequiredSquadMembers: ERequiredSquadMembers;
765
+ TargetCharacter: string;
766
+ TargetContextualActionPlaceholder: string;
767
+ TargetNode: string;
768
+ TargetNPC: string;
769
+ TargetPlaceholder: string;
770
+ TargetPoint: { X: number; Y: number; Z: number };
771
+ ThreatAwareness: EThreatAwareness;
772
+ Trigger: string;
773
+ }[]
774
+ | {
775
+ bTriggersByAnybody: boolean;
776
+ ConditionComparance: EConditionComparance;
777
+ ConditionType: EQuestConditionType;
778
+ EmissionPrototypeSID: string;
779
+ Faction: string;
780
+ JournalEntity: EJournalEntity;
781
+ JournalQuestSID: string;
782
+ JournalQuestStageSID: string;
783
+ JournalState: EJournalState;
784
+ NodeState: EQuestNodeState;
785
+ NumericValue: number;
786
+ ReactType: ETriggerReact;
787
+ Relationships: ERelationLevel;
788
+ RequiredSquadMembers: ERequiredSquadMembers;
789
+ TargetCharacter: string;
790
+ TargetNode: string;
791
+ TargetPlaceholder: string;
792
+ TargetPoint: { X: number; Y: number; Z: number };
793
+ ThreatAwareness: EThreatAwareness;
794
+ Trigger: string;
795
+ }[];
796
+
797
+ export type Ability =
798
+ | "Human_CombatPSYAttack"
799
+ | "Human_MeleeAttack_Agent"
800
+ | "Human_PhantomAttack"
801
+ | "AlertedAbility_BlindDog"
802
+ | "AlertedAbility_Bloodsucker"
803
+ | "AlertedAbility_Boar"
804
+ | "AlertedAbility_Chimera"
805
+ | "AlertedAbility_Flesh"
806
+ | "AlertedAbility_PseudoDog"
807
+ | "AlertedAbility_Snork"
808
+ | "BerserkAbilityCamper"
809
+ | "BerserkAbilityCamper_BlindDog"
810
+ | "BerserkAbilityChaser"
811
+ | "BerserkAbilityChaser_BlindDog"
812
+ | "BerserkAbilityChaser_Deer"
813
+ | "BerserkAbilityChaser_Pseudogiant"
814
+ | "BlindDog_BiteAttack"
815
+ | "BlindDog_BiteAttackAnyAngle"
816
+ | "BlindDog_RunAttack_Left"
817
+ | "BlindDog_RunAttack_Right"
818
+ | "BlindDog_Shield"
819
+ | "BlindDog_TurnAttack"
820
+ | "BlindDog_TurnAttackAnyAngle"
821
+ | "Bloodsucker_ClawAttack"
822
+ | "Bloodsucker_JumpAttack"
823
+ | "Bloodsucker_RunAttack_Left"
824
+ | "Bloodsucker_RunAttack_Right"
825
+ | "Bloodsucker_SpawnAnomaly"
826
+ | "Bloodsucker_TurnAttack"
827
+ | "Boar_ClawAttack"
828
+ | "Boar_RunAttack_Left"
829
+ | "Boar_RunAttack_Right"
830
+ | "Boar_TurnAttack"
831
+ | "Burer_ClawAttack"
832
+ | "Burer_Shield"
833
+ | "Burer_Throw"
834
+ | "Burer_ThrowQueue_Grenades"
835
+ | "Burer_WeaponDrag"
836
+ | "Burer_WeaponRiseAndShoot"
837
+ | "CancelBerserkCamper_BlindDog"
838
+ | "CancelBerserkCamper_Bloodsucker"
839
+ | "CancelBerserkCamper_Boar"
840
+ | "CancelBerserkCamper_Burer"
841
+ | "CancelBerserkCamper_Cat"
842
+ | "CancelBerserkCamper_Chimera"
843
+ | "CancelBerserkCamper_Controller"
844
+ | "CancelBerserkCamper_Flesh"
845
+ | "CancelBerserkCamper_PrologueBloodsucker"
846
+ | "CancelBerserkCamper_Pseudodog"
847
+ | "CancelBerserkCamper_Snork"
848
+ | "CancelBerserkCamper_Tushkan"
849
+ | "CancelBerserkCamperNoCooldowns"
850
+ | "CancelBerserkChaser_BlindDog"
851
+ | "CancelBerserkChaser_Bloodsucker"
852
+ | "CancelBerserkChaser_Boar"
853
+ | "CancelBerserkChaser_Burer"
854
+ | "CancelBerserkChaser_Cat"
855
+ | "CancelBerserkChaser_Chimera"
856
+ | "CancelBerserkChaser_Controller"
857
+ | "CancelBerserkChaser_Deer"
858
+ | "CancelBerserkChaser_Flesh"
859
+ | "CancelBerserkChaser_PrologueBloodsucker"
860
+ | "CancelBerserkChaser_Pseudodog"
861
+ | "CancelBerserkChaser_Pseudogiant"
862
+ | "CancelBerserkChaser_Snork"
863
+ | "CancelBerserkChaser_Tushkan"
864
+ | "CancelCharge"
865
+ | "Cat_BlinkTeleport"
866
+ | "Cat_ClawAttack"
867
+ | "Cat_EscapeIsolatedNavmesh"
868
+ | "Cat_Evasion"
869
+ | "Cat_FlyThrough"
870
+ | "Cat_Jump"
871
+ | "Cat_JumpAttack"
872
+ | "Cat_JumpToEnemy"
873
+ | "Cat_SleepinessAura"
874
+ | "Cat_TurnAttack"
875
+ | "ChargeAbility_Boar"
876
+ | "ChargeAbility_Deer"
877
+ | "ChargeAbility_Pseudogiant"
878
+ | "Chimera_ClawAttack"
879
+ | "Chimera_EscapeIsolatedNavmesh"
880
+ | "Chimera_Evasion"
881
+ | "Chimera_FlyThrough"
882
+ | "Chimera_Jump"
883
+ | "Chimera_JumpToEnemy"
884
+ | "Chimera_LongJumpAttack"
885
+ | "Chimera_RunAttack_Left"
886
+ | "Chimera_RunAttack_Right"
887
+ | "Chimera_ShortJumpAttack"
888
+ | "Chimera_TurnAttack"
889
+ | "CombatSummonAbility_Cat"
890
+ | "CombatSummonAbility_Deer"
891
+ | "CombatSummonAbility_PseudoDog"
892
+ | "Controller_ClawAttack"
893
+ | "Controller_Collar_PSYAttack"
894
+ | "Controller_PSYAura"
895
+ | "Controller_PSYStrike"
896
+ | "Controller_RaiseDeadBody"
897
+ | "Controller_RoarAbility"
898
+ | "Controller_ZombifyNPC"
899
+ | "Deer_ClawAttack"
900
+ | "Deer_JumpAttack"
901
+ | "Deer_TurnAttack"
902
+ | "Faust_IntroPSYAttack"
903
+ | "Flesh_ClawAttack"
904
+ | "Flesh_JumpAttack"
905
+ | "Flesh_TurnAttack"
906
+ | "Granit_Shield"
907
+ | "GrowlAbility_Cat"
908
+ | "GrowlAbility_Chimera"
909
+ | "GrowlAbility_Snork"
910
+ | "GruntAbility"
911
+ | "HowlAbility_BlindDog"
912
+ | "HowlAbility_Pseudog"
913
+ | "Human_MeleeAttack"
914
+ | "Human_ThrowGrenade"
915
+ | "Korshunov_Jump"
916
+ | "Korshunov_JumpAttack"
917
+ | "Korshunov_MeleeAttack"
918
+ | "Korshunov_ThrowGrenade"
919
+ | "PhantomAttack"
920
+ | "Poltergeist_ActivateAnomaly"
921
+ | "Poltergeist_AOEPassiveAttack"
922
+ | "Poltergeist_Electro_AOEPassiveAttack"
923
+ | "Poltergeist_Fire_AOEPassiveAttack"
924
+ | "Poltergeist_Shield"
925
+ | "Poltergeist_Throw"
926
+ | "Poltergeist_Toxic_AOEPassiveAttack"
927
+ | "PrologueBloodsucker_ClawAttack"
928
+ | "PrologueBloodsucker_JumpAttack"
929
+ | "PrologueBloodsucker_RunAttack_Left"
930
+ | "PrologueBloodsucker_RunAttack_Right"
931
+ | "PrologueBloodsucker_TurnAttack"
932
+ | "PseudoDog_BiteAttack"
933
+ | "PseudoDog_RunAttack_Left"
934
+ | "PseudoDog_RunAttack_Right"
935
+ | "PseudoDog_TurnAttack"
936
+ | "PseudoDogSummon_BiteAttack"
937
+ | "PseudoDogSummon_RunAttack_Left"
938
+ | "PseudoDogSummon_RunAttack_Right"
939
+ | "PseudoDogSummon_TurnAttack"
940
+ | "Pseudogiant_ClawAttack"
941
+ | "Pseudogiant_RoarAbility"
942
+ | "Pseudogiant_RunAttack_Left"
943
+ | "Pseudogiant_RunAttack_Right"
944
+ | "Pseudogiant_ShockwaveAttack"
945
+ | "Pseudogiant_Throw"
946
+ | "Pseudogiant_TurnAttack"
947
+ | "RetreatSummonAbility_PseudoDog"
948
+ | "RoarAbility"
949
+ | "RoarAbility_Deer"
950
+ | "RoarAbility_PrologueBloodsucker"
951
+ | "Snork_ClawAttack"
952
+ | "Snork_EscapeIsolatedNavmesh"
953
+ | "Snork_Evasion"
954
+ | "Snork_FlyThrough"
955
+ | "Snork_Jump"
956
+ | "Snork_JumpAttack"
957
+ | "Snork_JumpToEnemy"
958
+ | "Snork_KickAttack"
959
+ | "Snork_TurnAttack"
960
+ | "SqueekAbility_Flesh"
961
+ | "SqueekAbility_Tushkan"
962
+ | "Strelok_MeleeAttack"
963
+ | "Strelok_SpawnAnomaliesAbility"
964
+ | "Strelok_SpawnEMIAbility"
965
+ | "TrickSoundAmbush_Bayun_E10_MQ01"
966
+ | "TrickSoundAmbush_Cat"
967
+ | "TrickSoundMimicry_Bayun_E10_MQ01"
968
+ | "TrickSoundMimicry_Cat"
969
+ | "TrickSoundMockery_Bayun_E10_MQ01"
970
+ | "TrickSoundMockery_Cat"
971
+ | "Tushkan_ClawAttack"
972
+ | "Tushkan_JumpAttack"
973
+ | "WoundedPSYStrike"
974
+ | "NoDamagePSYAttack";
975
+
976
+ export type Vec2 = { X: number; Y: number };
977
+ export type Vec3 = Vec2 & { Z: number };
978
+ export type Vec4 = Vec3 & { W: number };
979
+
980
+ export type Rot = { Pitch: number; Roll: number; Yaw: number };
981
+ export type VecRot = Vec3 & Rot;
982
+ export type VecRotTemp = VecRot & { Temperature: number };
983
+ export type RGBA = { A: number; B: number; G: number; R: number };
984
+
985
+ export type MeshAttachment =
986
+ | "Bbe"
987
+ | "Bbe_a"
988
+ | "BodyArmor"
989
+ | "Bpa"
990
+ | "Bpa_c_d_e"
991
+ | "Cap"
992
+ | "Clo"
993
+ | "Face"
994
+ | "Fbe"
995
+ | "Fbe_a"
996
+ | "Fbe_a_b"
997
+ | "Fbe_a_b_c"
998
+ | "Fbe_b"
999
+ | "Fbe_b_c"
1000
+ | "Fbe_c"
1001
+ | "Fbe_c_d_e"
1002
+ | "Fbe_c_d_e_f"
1003
+ | "Fbe_d"
1004
+ | "Fbe_d_e"
1005
+ | "Fbe_e"
1006
+ | "Fbe_f"
1007
+ | "Fbe_g_h"
1008
+ | "Fbe_l_p"
1009
+ | "Fbe_m_q"
1010
+ | "Fbe_n_s"
1011
+ | "Fbe_o_r"
1012
+ | "Gla"
1013
+ | "Han"
1014
+ | "Hands"
1015
+ | "Hea"
1016
+ | "Hea_a"
1017
+ | "Hea_a_e_f"
1018
+ | "Hea_b"
1019
+ | "Hea_b_c_d_e_f_g_h"
1020
+ | "Hea_c"
1021
+ | "Head"
1022
+ | "Lch"
1023
+ | "Leg"
1024
+ | "Lhi"
1025
+ | "Lhi_a"
1026
+ | "Lhi_a_c"
1027
+ | "Lhi_a_g"
1028
+ | "Lhi_b"
1029
+ | "Lhi_b_d"
1030
+ | "Lhi_b_d_f"
1031
+ | "Lhi_c"
1032
+ | "Lhi_d"
1033
+ | "Lhi_e"
1034
+ | "Lhi_h_l"
1035
+ | "Lhi_j_k"
1036
+ | "Mas"
1037
+ | "Rch"
1038
+ | "Rch_c_d"
1039
+ | "Rhi"
1040
+ | "Rhi_a"
1041
+ | "Rhi_a_b"
1042
+ | "Rhi_a_c"
1043
+ | "Rhi_a_d"
1044
+ | "Rhi_b"
1045
+ | "Rhi_b_c"
1046
+ | "Rhi_b_d"
1047
+ | "Rhi_c"
1048
+ | "Rhi_c_b_ab"
1049
+ | "Rhi_d"
1050
+ | "Rhi_e"
1051
+ | "Rhi_h_l"
1052
+ | "Rhi_j_k"
1053
+ | "Tor"
1054
+ | "Faust_Body"
1055
+ | "Faust_Clo"
1056
+ | "Faust_Face"
1057
+ | "Faust_Fbe"
1058
+ | "Faust_Lhi";
1059
+
1060
+ export type ItemGeneratorEntry =
1061
+ | {
1062
+ Category: EItemGenerationCategory;
1063
+ PossibleItems: {
1064
+ Chance: number;
1065
+ ItemPrototypeSID: string;
1066
+ MaxCount: number;
1067
+ MinCount: number;
1068
+ }[];
1069
+ }
1070
+ | {
1071
+ bAllowSameCategoryGeneration: boolean;
1072
+ Category: EItemGenerationCategory;
1073
+ PossibleItems: (
1074
+ | {
1075
+ AmmoMaxCount: number;
1076
+ AmmoMinCount: number;
1077
+ Chance: number;
1078
+ ItemPrototypeSID: string;
1079
+ MaxCount: number;
1080
+ MaxDurability: number;
1081
+ MinCount: number;
1082
+ MinDurability: number;
1083
+ Weight: number;
1084
+ }
1085
+ | {
1086
+ Chance: number;
1087
+ ItemPrototypeSID: string;
1088
+ MaxCount: number;
1089
+ MinCount: number;
1090
+ }
1091
+ )[];
1092
+ }
1093
+ | {
1094
+ bAllowSameCategoryGeneration: boolean;
1095
+ Category: EItemGenerationCategory;
1096
+ PossibleItems: (
1097
+ | {
1098
+ AmmoMaxCount: number;
1099
+ AmmoMinCount: number;
1100
+ bRequireWeapon: boolean;
1101
+ Chance: number;
1102
+ ItemGeneratorPrototypeSID: string;
1103
+ ItemPrototypeSID: string;
1104
+ MaxCount: number;
1105
+ MaxDurability: number;
1106
+ MinCount: number;
1107
+ MinDurability: number;
1108
+ Upgrades: {
1109
+ Chance: number;
1110
+ MaxCount: number;
1111
+ MinCount: number;
1112
+ PossibleItems: string;
1113
+ };
1114
+ Weight: number;
1115
+ }
1116
+ | {
1117
+ AmmoMaxCount: number;
1118
+ AmmoMinCount: number;
1119
+ bRequireWeapon: boolean;
1120
+ Chance: number;
1121
+ ItemGeneratorPrototypeSID: string;
1122
+ ItemPrototypeSID: string;
1123
+ MaxCount: number;
1124
+ MaxDurability: number;
1125
+ MinCount: number;
1126
+ MinDurability: number;
1127
+ }
1128
+ | {
1129
+ Chance: number;
1130
+ ItemPrototypeSID: string;
1131
+ MaxCount: number;
1132
+ MinCount: number;
1133
+ }
1134
+ )[];
1135
+ }
1136
+ | {
1137
+ bAllowSameCategoryGeneration: boolean;
1138
+ Category: EItemGenerationCategory;
1139
+ PossibleItems: {
1140
+ Chance: number;
1141
+ ItemPrototypeSID: string;
1142
+ MaxCount: number;
1143
+ MinCount: number;
1144
+ }[];
1145
+ };
1146
+
1147
+
1148
+ export type GroomCategory = (
1149
+ | {
1150
+ CategoryName: string;
1151
+ FromHairQualityUseVariationReplacementMap: number;
1152
+ VariationReplacementMap: {
1153
+ From: number;
1154
+ To: number;
1155
+ }[];
1156
+ Variations: (
1157
+ | {
1158
+ AdditionalGrooms: (
1159
+ | {
1160
+ GroomBindingPath: string;
1161
+ GroomPath: string;
1162
+ MaterialPath: string;
1163
+ }
1164
+ | {
1165
+ GroomBindingPath: string;
1166
+ GroomPath: string;
1167
+ }
1168
+ )[];
1169
+ FromHairQualityRenderTextureInsteadOfGroom: number;
1170
+ GroomBindingPath: string;
1171
+ GroomPath: string;
1172
+ GroomSID: string;
1173
+ MaterialPath: string;
1174
+ Materials: (
1175
+ | {
1176
+ CustomData: (
1177
+ | {
1178
+ Distribution: ECustomDataDistribution;
1179
+ MaterialGroup: string;
1180
+ ParameterID: number;
1181
+ Variations: {
1182
+ ParameterValue: number;
1183
+ Weight: number;
1184
+ }[];
1185
+ }
1186
+ | {
1187
+ Distribution: ECustomDataDistribution;
1188
+ MaterialGroup: string;
1189
+ Variations: {
1190
+ MaterialInstanceParameters: {
1191
+ ParameterName: string;
1192
+ TexturePath: string;
1193
+ }[];
1194
+ Weight: number;
1195
+ }[];
1196
+ }
1197
+ )[];
1198
+ MaterialGroup: string;
1199
+ MaterialSlot: number;
1200
+ }
1201
+ | {
1202
+ MaterialGroup: string;
1203
+ MaterialSlot: number;
1204
+ Variations: {
1205
+ MaterialPath: string;
1206
+ VariationIndex: number;
1207
+ Weight: number;
1208
+ }[];
1209
+ }
1210
+ )[];
1211
+ VariationIndex: number;
1212
+ Weight: number;
1213
+ }
1214
+ | {
1215
+ AdditionalGrooms: (
1216
+ | {
1217
+ GroomBindingPath: string;
1218
+ GroomPath: string;
1219
+ Materials: {
1220
+ MaterialGroup: string;
1221
+ MaterialSlot: number;
1222
+ Variations: {
1223
+ MaterialPath: string;
1224
+ VariationIndex: number;
1225
+ Weight: number;
1226
+ }[];
1227
+ }[];
1228
+ }
1229
+ | {
1230
+ GroomBindingPath: string;
1231
+ GroomPath: string;
1232
+ }
1233
+ )[];
1234
+ GroomBindingPath: string;
1235
+ GroomPath: string;
1236
+ GroomSID: string;
1237
+ Materials: (
1238
+ | {
1239
+ CustomData: (
1240
+ | {
1241
+ Distribution: ECustomDataDistribution;
1242
+ MaterialGroup: string;
1243
+ ParameterID: number;
1244
+ Variations: {
1245
+ ParameterValue: number;
1246
+ Weight: number;
1247
+ }[];
1248
+ }
1249
+ | {
1250
+ Distribution: ECustomDataDistribution;
1251
+ MaterialGroup: string;
1252
+ Variations: {
1253
+ MaterialInstanceParameters: {
1254
+ ParameterName: string;
1255
+ TexturePath: string;
1256
+ }[];
1257
+ Weight: number;
1258
+ }[];
1259
+ }
1260
+ )[];
1261
+ MaterialGroup: string;
1262
+ MaterialSlot: number;
1263
+ }
1264
+ | {
1265
+ MaterialGroup: string;
1266
+ MaterialSlot: number;
1267
+ Variations: {
1268
+ MaterialPath: string;
1269
+ VariationIndex: number;
1270
+ Weight: number;
1271
+ }[];
1272
+ }
1273
+ )[];
1274
+ VariationIndex: number;
1275
+ Weight: number;
1276
+ }
1277
+ | {
1278
+ AdditionalGrooms: {
1279
+ GroomBindingPath: string;
1280
+ GroomPath: string;
1281
+ Materials: {
1282
+ MaterialGroup: string;
1283
+ MaterialSlot: number;
1284
+ Variations: {
1285
+ MaterialPath: string;
1286
+ VariationIndex: number;
1287
+ Weight: number;
1288
+ }[];
1289
+ }[];
1290
+ }[];
1291
+ FromHairQualityRenderTextureInsteadOfGroom: number;
1292
+ GroomBindingPath: string;
1293
+ GroomPath: string;
1294
+ GroomSID: string;
1295
+ Materials: (
1296
+ | {
1297
+ CustomData: (
1298
+ | {
1299
+ Distribution: ECustomDataDistribution;
1300
+ MaterialGroup: string;
1301
+ ParameterID: number;
1302
+ Variations: {
1303
+ ParameterValue: number;
1304
+ Weight: number;
1305
+ }[];
1306
+ }
1307
+ | {
1308
+ Distribution: ECustomDataDistribution;
1309
+ MaterialGroup: string;
1310
+ Variations: {
1311
+ MaterialInstanceParameters: {
1312
+ ParameterName: string;
1313
+ TexturePath: string;
1314
+ }[];
1315
+ Weight: number;
1316
+ }[];
1317
+ }
1318
+ )[];
1319
+ MaterialGroup: string;
1320
+ MaterialSlot: number;
1321
+ }
1322
+ | {
1323
+ MaterialGroup: string;
1324
+ MaterialSlot: number;
1325
+ Variations: {
1326
+ MaterialPath: string;
1327
+ VariationIndex: number;
1328
+ Weight: number;
1329
+ }[];
1330
+ }
1331
+ )[];
1332
+ VariationIndex: number;
1333
+ Weight: number;
1334
+ }
1335
+ | {
1336
+ AdditionalGrooms: {
1337
+ GroomBindingPath: string;
1338
+ GroomPath: string;
1339
+ Materials: {
1340
+ MaterialGroup: string;
1341
+ MaterialSlot: number;
1342
+ Variations: {
1343
+ MaterialPath: string;
1344
+ VariationIndex: number;
1345
+ Weight: number;
1346
+ }[];
1347
+ }[];
1348
+ }[];
1349
+ GroomBindingPath: string;
1350
+ GroomPath: string;
1351
+ GroomSID: string;
1352
+ Materials: (
1353
+ | {
1354
+ CustomData: (
1355
+ | {
1356
+ Distribution: ECustomDataDistribution;
1357
+ MaterialGroup: string;
1358
+ ParameterID: number;
1359
+ Variations: {
1360
+ ParameterValue: number;
1361
+ Weight: number;
1362
+ }[];
1363
+ }
1364
+ | {
1365
+ Distribution: ECustomDataDistribution;
1366
+ MaterialGroup: string;
1367
+ Variations: {
1368
+ MaterialInstanceParameters: {
1369
+ ParameterName: string;
1370
+ TexturePath: string;
1371
+ }[];
1372
+ Weight: number;
1373
+ }[];
1374
+ }
1375
+ )[];
1376
+ MaterialGroup: string;
1377
+ MaterialSlot: number;
1378
+ }
1379
+ | {
1380
+ MaterialGroup: string;
1381
+ MaterialSlot: number;
1382
+ Variations: {
1383
+ MaterialPath: string;
1384
+ VariationIndex: number;
1385
+ Weight: number;
1386
+ }[];
1387
+ }
1388
+ )[];
1389
+ VariationIndex: number;
1390
+ Weight: number;
1391
+ }
1392
+ | {
1393
+ FromHairQualityRenderTextureInsteadOfGroom: number;
1394
+ GroomBindingPath: string;
1395
+ GroomPath: string;
1396
+ GroomSID: string;
1397
+ Materials: (
1398
+ | {
1399
+ CustomData: (
1400
+ | {
1401
+ Distribution: ECustomDataDistribution;
1402
+ MaterialGroup: string;
1403
+ ParameterID: number;
1404
+ Variations: {
1405
+ ParameterValue: number;
1406
+ Weight: number;
1407
+ }[];
1408
+ }
1409
+ | {
1410
+ Distribution: ECustomDataDistribution;
1411
+ MaterialGroup: string;
1412
+ Variations: {
1413
+ MaterialInstanceParameters: {
1414
+ ParameterName: string;
1415
+ TexturePath: string;
1416
+ }[];
1417
+ Weight: number;
1418
+ }[];
1419
+ }
1420
+ )[];
1421
+ MaterialGroup: string;
1422
+ MaterialSlot: number;
1423
+ }
1424
+ | {
1425
+ MaterialGroup: string;
1426
+ MaterialSlot: number;
1427
+ Variations: {
1428
+ MaterialPath: string;
1429
+ VariationIndex: number;
1430
+ Weight: number;
1431
+ }[];
1432
+ }
1433
+ )[];
1434
+ VariationIndex: number;
1435
+ Weight: number;
1436
+ }
1437
+ )[];
1438
+ }
1439
+ | {
1440
+ CategoryName: string;
1441
+ Variations: (
1442
+ | {
1443
+ AdditionalGrooms: {
1444
+ GroomBindingPath: string;
1445
+ GroomPath: string;
1446
+ MaterialPath: string;
1447
+ Materials: {
1448
+ MaterialGroup: string;
1449
+ MaterialSlot: number;
1450
+ Variations: {
1451
+ MaterialPath: string;
1452
+ Weight: number;
1453
+ }[];
1454
+ }[];
1455
+ }[];
1456
+ GroomBindingPath: string;
1457
+ GroomPath: string;
1458
+ GroomSID: string;
1459
+ MaterialPath: string;
1460
+ Materials: {
1461
+ CustomData: (
1462
+ | {
1463
+ Distribution: ECustomDataDistribution;
1464
+ MaterialGroup: string;
1465
+ ParameterID: number;
1466
+ Variations: {
1467
+ ParameterValue: number;
1468
+ Weight: number;
1469
+ }[];
1470
+ }
1471
+ | {
1472
+ Distribution: ECustomDataDistribution;
1473
+ MaterialGroup: string;
1474
+ Variations: {
1475
+ MaterialInstanceParameters: {
1476
+ ParameterName: string;
1477
+ TexturePath: string;
1478
+ }[];
1479
+ Weight: number;
1480
+ }[];
1481
+ }
1482
+ )[];
1483
+ MaterialGroup: string;
1484
+ MaterialSlot: number;
1485
+ Variations: {
1486
+ MaterialPath: string;
1487
+ VariationIndex: number;
1488
+ Weight: number;
1489
+ }[];
1490
+ }[];
1491
+ VariationIndex: number;
1492
+ Weight: number;
1493
+ }
1494
+ | {
1495
+ AdditionalGrooms: {
1496
+ GroomBindingPath: string;
1497
+ GroomPath: string;
1498
+ Materials: {
1499
+ MaterialGroup: string;
1500
+ MaterialSlot: number;
1501
+ Variations: {
1502
+ MaterialPath: string;
1503
+ Weight: number;
1504
+ }[];
1505
+ }[];
1506
+ }[];
1507
+ CustomData: {
1508
+ ShortHair: {
1509
+ Distribution: ECustomDataDistribution;
1510
+ MaterialGroup: string;
1511
+ Variations: {
1512
+ MaterialInstanceParameters: {
1513
+ ParameterName: string;
1514
+ TexturePath: string;
1515
+ }[];
1516
+ Weight: number;
1517
+ }[];
1518
+ };
1519
+ };
1520
+ GroomBindingPath: string;
1521
+ GroomPath: string;
1522
+ GroomSID: string;
1523
+ MaterialPath: string;
1524
+ Materials: {
1525
+ CustomData: {
1526
+ ShortHair: {
1527
+ Distribution: ECustomDataDistribution;
1528
+ MaterialGroup: string;
1529
+ Variations: {
1530
+ MaterialInstanceParameters: {
1531
+ ParameterName: string;
1532
+ TexturePath: string;
1533
+ }[];
1534
+ Weight: number;
1535
+ }[];
1536
+ };
1537
+ };
1538
+ MaterialGroup: string;
1539
+ MaterialSlot: number;
1540
+ Variations: {
1541
+ MaterialPath: string;
1542
+ VariationIndex: number;
1543
+ Weight: number;
1544
+ }[];
1545
+ }[];
1546
+ VariationIndex: number;
1547
+ Weight: number;
1548
+ }
1549
+ | {
1550
+ AdditionalGrooms: {
1551
+ GroomBindingPath: string;
1552
+ GroomPath: string;
1553
+ Materials: {
1554
+ MaterialGroup: string;
1555
+ MaterialSlot: number;
1556
+ Variations: {
1557
+ MaterialPath: string;
1558
+ Weight: number;
1559
+ }[];
1560
+ }[];
1561
+ }[];
1562
+ GroomBindingPath: string;
1563
+ GroomPath: string;
1564
+ GroomSID: string;
1565
+ MaterialPath: string;
1566
+ Materials: {
1567
+ CustomData: {
1568
+ ShortHair: {
1569
+ Distribution: ECustomDataDistribution;
1570
+ MaterialGroup: string;
1571
+ Variations: {
1572
+ MaterialInstanceParameters: {
1573
+ ParameterName: string;
1574
+ TexturePath: string;
1575
+ }[];
1576
+ Weight: number;
1577
+ }[];
1578
+ };
1579
+ };
1580
+ MaterialGroup: string;
1581
+ MaterialSlot: number;
1582
+ Variations: {
1583
+ MaterialPath: string;
1584
+ VariationIndex: number;
1585
+ Weight: number;
1586
+ }[];
1587
+ }[];
1588
+ VariationIndex: number;
1589
+ Weight: number;
1590
+ }
1591
+ | {
1592
+ AdditionalGrooms: {
1593
+ GroomBindingPath: string;
1594
+ GroomPath: string;
1595
+ Materials: {
1596
+ MaterialGroup: string;
1597
+ MaterialSlot: number;
1598
+ Variations: {
1599
+ MaterialPath: string;
1600
+ Weight: number;
1601
+ }[];
1602
+ }[];
1603
+ }[];
1604
+ GroomBindingPath: string;
1605
+ GroomPath: string;
1606
+ GroomSID: string;
1607
+ Materials: {
1608
+ CustomData: {
1609
+ ShortHair: {
1610
+ Distribution: ECustomDataDistribution;
1611
+ MaterialGroup: string;
1612
+ Variations: {
1613
+ MaterialInstanceParameters: {
1614
+ ParameterName: string;
1615
+ TexturePath: string;
1616
+ }[];
1617
+ Weight: number;
1618
+ }[];
1619
+ };
1620
+ };
1621
+ MaterialGroup: string;
1622
+ MaterialSlot: number;
1623
+ Variations: {
1624
+ MaterialPath: string;
1625
+ Weight: number;
1626
+ }[];
1627
+ }[];
1628
+ VariationIndex: number;
1629
+ Weight: number;
1630
+ }
1631
+ )[];
1632
+ }
1633
+ | {
1634
+ CategoryName: string;
1635
+ Variations: (
1636
+ | {
1637
+ AdditionalGrooms: {
1638
+ GroomBindingPath: string;
1639
+ GroomPath: string;
1640
+ MaterialPath: string;
1641
+ }[];
1642
+ GroomBindingPath: string;
1643
+ GroomPath: string;
1644
+ GroomSID: string;
1645
+ MaterialPath: string;
1646
+ Materials: {
1647
+ MaterialGroup: string;
1648
+ MaterialSlot: number;
1649
+ Variations: (
1650
+ | {
1651
+ MaterialPath: string;
1652
+ VariationIndex: number;
1653
+ Weight: number;
1654
+ }
1655
+ | {
1656
+ MaterialPath: string;
1657
+ Weight: number;
1658
+ }
1659
+ )[];
1660
+ }[];
1661
+ VariationIndex: number;
1662
+ Weight: number;
1663
+ }
1664
+ | {
1665
+ AdditionalGrooms: {
1666
+ GroomBindingPath: string;
1667
+ GroomPath: string;
1668
+ MaterialPath: string;
1669
+ }[];
1670
+ GroomBindingPath: string;
1671
+ GroomPath: string;
1672
+ GroomSID: string;
1673
+ MaterialPath: string;
1674
+ Weight: number;
1675
+ }
1676
+ )[];
1677
+ }
1678
+ | {
1679
+ CategoryName: string;
1680
+ Variations: (
1681
+ | {
1682
+ AdditionalGrooms: {
1683
+ GroomBindingPath: string;
1684
+ GroomPath: string;
1685
+ MaterialPath: string;
1686
+ }[];
1687
+ GroomBindingPath: string;
1688
+ GroomPath: string;
1689
+ GroomSID: string;
1690
+ MaterialPath: string;
1691
+ Materials: {
1692
+ CustomData: {
1693
+ Distribution: ECustomDataDistribution;
1694
+ MaterialGroup: string;
1695
+ ParameterID: number;
1696
+ Variations: {
1697
+ ParameterValue: number;
1698
+ Weight: number;
1699
+ }[];
1700
+ }[];
1701
+ MaterialGroup: string;
1702
+ MaterialSlot: number;
1703
+ }[];
1704
+ Weight: number;
1705
+ }
1706
+ | {
1707
+ GroomBindingPath: string;
1708
+ GroomPath: string;
1709
+ GroomSID: string;
1710
+ MaterialPath: string;
1711
+ Materials: (
1712
+ | {
1713
+ CustomData: {
1714
+ Distribution: ECustomDataDistribution;
1715
+ MaterialGroup: string;
1716
+ ParameterID: number;
1717
+ Variations: {
1718
+ ParameterValue: number;
1719
+ Weight: number;
1720
+ }[];
1721
+ }[];
1722
+ MaterialGroup: string;
1723
+ MaterialSlot: number;
1724
+ }
1725
+ | {
1726
+ MaterialGroup: string;
1727
+ MaterialSlot: number;
1728
+ Variations: {
1729
+ MaterialPath: string;
1730
+ VariationIndex: number;
1731
+ Weight: number;
1732
+ }[];
1733
+ }
1734
+ )[];
1735
+ Weight: number;
1736
+ }
1737
+ )[];
1738
+ }
1739
+ | {
1740
+ CategoryName: string;
1741
+ Variations: (
1742
+ | {
1743
+ AdditionalGrooms: {
1744
+ GroomBindingPath: string;
1745
+ GroomPath: string;
1746
+ MaterialPath: string;
1747
+ }[];
1748
+ bHasCustomData: boolean;
1749
+ GroomBindingPath: string;
1750
+ GroomPath: string;
1751
+ GroomSID: string;
1752
+ MaterialPath: string;
1753
+ Materials: {
1754
+ CustomData: {
1755
+ Distribution: ECustomDataDistribution;
1756
+ MaterialGroup: string;
1757
+ ParameterID: number;
1758
+ Variations: {
1759
+ ParameterValue: number;
1760
+ Weight: number;
1761
+ }[];
1762
+ }[];
1763
+ MaterialGroup: string;
1764
+ MaterialSlot: number;
1765
+ Variations: {
1766
+ MaterialPath: string;
1767
+ VariationIndex: number;
1768
+ Weight: number;
1769
+ }[];
1770
+ }[];
1771
+ VariationIndex: number;
1772
+ Weight: number;
1773
+ }
1774
+ | {
1775
+ AdditionalGrooms: {
1776
+ GroomBindingPath: string;
1777
+ GroomPath: string;
1778
+ Materials: {
1779
+ MaterialGroup: string;
1780
+ MaterialSlot: number;
1781
+ Variations: {
1782
+ MaterialPath: string;
1783
+ VariationIndex: number;
1784
+ Weight: number;
1785
+ }[];
1786
+ }[];
1787
+ }[];
1788
+ GroomBindingPath: string;
1789
+ GroomPath: string;
1790
+ GroomSID: string;
1791
+ MaterialPath: string;
1792
+ Materials: (
1793
+ | {
1794
+ CustomData: {
1795
+ Distribution: ECustomDataDistribution;
1796
+ MaterialGroup: string;
1797
+ ParameterID: number;
1798
+ Variations: {
1799
+ ParameterValue: number;
1800
+ Weight: number;
1801
+ }[];
1802
+ }[];
1803
+ MaterialGroup: string;
1804
+ MaterialSlot: number;
1805
+ }
1806
+ | {
1807
+ MaterialGroup: string;
1808
+ MaterialSlot: number;
1809
+ Variations: {
1810
+ MaterialPath: string;
1811
+ VariationIndex: number;
1812
+ Weight: number;
1813
+ }[];
1814
+ }
1815
+ )[];
1816
+ VariationIndex: number;
1817
+ Weight: number;
1818
+ }
1819
+ | {
1820
+ AdditionalGrooms: {
1821
+ GroomBindingPath: string;
1822
+ GroomPath: string;
1823
+ Materials: {
1824
+ MaterialGroup: string;
1825
+ MaterialSlot: number;
1826
+ Variations: {
1827
+ MaterialPath: string;
1828
+ VariationIndex: number;
1829
+ Weight: number;
1830
+ }[];
1831
+ }[];
1832
+ }[];
1833
+ GroomBindingPath: string;
1834
+ GroomPath: string;
1835
+ GroomSID: string;
1836
+ Materials: (
1837
+ | {
1838
+ CustomData: {
1839
+ Distribution: ECustomDataDistribution;
1840
+ MaterialGroup: string;
1841
+ ParameterID: number;
1842
+ Variations: {
1843
+ ParameterValue: number;
1844
+ Weight: number;
1845
+ }[];
1846
+ }[];
1847
+ MaterialGroup: string;
1848
+ MaterialSlot: number;
1849
+ }
1850
+ | {
1851
+ MaterialGroup: string;
1852
+ MaterialSlot: number;
1853
+ Variations: {
1854
+ MaterialPath: string;
1855
+ VariationIndex: number;
1856
+ Weight: number;
1857
+ }[];
1858
+ }
1859
+ )[];
1860
+ VariationIndex: number;
1861
+ Weight: number;
1862
+ }
1863
+ )[];
1864
+ }
1865
+ | {
1866
+ CategoryName: string;
1867
+ Variations: (
1868
+ | {
1869
+ GroomBindingPath: string;
1870
+ GroomPath: string;
1871
+ GroomSID: string;
1872
+ Materials: {
1873
+ MaterialGroup: string;
1874
+ MaterialSlot: number;
1875
+ Variations: {
1876
+ MaterialPath: string;
1877
+ VariationIndex: number;
1878
+ Weight: number;
1879
+ }[];
1880
+ }[];
1881
+ Weight: number;
1882
+ }
1883
+ | {
1884
+ GroomBindingPath: string;
1885
+ GroomPath: string;
1886
+ GroomSID: string;
1887
+ Weight: number;
1888
+ }
1889
+ )[];
1890
+ }
1891
+ )