s2cfgtojson 5.0.3 → 5.1.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.
Files changed (3) hide show
  1. package/package.json +1 -1
  2. package/types.mts +9565 -8057
  3. package/utility-types.mts +220 -240
package/utility-types.mts CHANGED
@@ -1,29 +1,3 @@
1
- import {
2
- EChangeValueMode,
3
- EConditionCheckType,
4
- EConditionComparance,
5
- EContextualActionBodyPart,
6
- EContextualActionEffectType,
7
- EContextualActionNeeds,
8
- EContextualActionNodeType,
9
- EContextualActionPreconditionType,
10
- ECustomDataDistribution,
11
- EGlobalVariableType,
12
- EItemGenerationCategory,
13
- EJournalEntity,
14
- EJournalState,
15
- EMainHandEquipmentType,
16
- EQuestConditionType,
17
- EQuestNodeState,
18
- ERank,
19
- ERelationLevel,
20
- ERepetitions,
21
- ERequiredSquadMembers,
22
- EThreatAwareness,
23
- ETriggerReact,
24
- EWeather,
25
- } from "./enums.mts";
26
-
27
1
  export type WeatherSelection =
28
2
  | "CalmBeforeEmission"
29
3
  | "Clearly"
@@ -52,6 +26,8 @@ export type Caliber =
52
26
  | "APG7V"
53
27
  | "AVOG"
54
28
  | "None";
29
+
30
+ export type WeaponShootDistance = "Long" | "Medium" | "Short";
55
31
  export type SID = string;
56
32
  export type Rank = "Newbie" | "Experienced" | "Veteran" | "Master";
57
33
  export type Newbie = "ERank::Newbie";
@@ -73,6 +49,217 @@ export type Permutations3<A, B, C> = A extends string
73
49
  : never;
74
50
 
75
51
  export type Reaction = "Enemy" | "Disaffection" | "Neutral" | "Friend" | "Self";
52
+ export type Archetype =
53
+ | "Bayun"
54
+ | "Blinddog"
55
+ | "Bloodsucker"
56
+ | "Boar"
57
+ | "Burer"
58
+ | "Chimera"
59
+ | "Controller"
60
+ | "Deer"
61
+ | "Flesh"
62
+ | "GeneralNPC_Bandit_CloseCombat"
63
+ | "GeneralNPC_Bandit_Heavy"
64
+ | "GeneralNPC_Bandit_Recon"
65
+ | "GeneralNPC_Bandit_Stormtrooper"
66
+ | "GeneralNPC_Corpus_CloseCombat"
67
+ | "GeneralNPC_Corpus_Heavy"
68
+ | "GeneralNPC_Corpus_Recon"
69
+ | "GeneralNPC_Corpus_Sniper"
70
+ | "GeneralNPC_Corpus_Stormtrooper"
71
+ | "GeneralNPC_Digger_CloseCombat"
72
+ | "GeneralNPC_Digger_Recon"
73
+ | "GeneralNPC_Digger_Sniper"
74
+ | "GeneralNPC_Digger_Stormtrooper"
75
+ | "GeneralNPC_Duty_CloseCombat"
76
+ | "GeneralNPC_Duty_Heavy"
77
+ | "GeneralNPC_Duty_Recon"
78
+ | "GeneralNPC_Duty_Sniper"
79
+ | "GeneralNPC_Duty_Stormtrooper"
80
+ | "GeneralNPC_EnemyVarta_CloseCombat"
81
+ | "GeneralNPC_EnemyVarta_Heavy"
82
+ | "GeneralNPC_EnemyVarta_Recon"
83
+ | "GeneralNPC_EnemyVarta_Sniper"
84
+ | "GeneralNPC_EnemyVarta_Stormtrooper"
85
+ | "GeneralNPC_Freedom_CloseCombat"
86
+ | "GeneralNPC_Freedom_Recon"
87
+ | "GeneralNPC_Freedom_Sniper"
88
+ | "GeneralNPC_Freedom_Stormtrooper"
89
+ | "GeneralNPC_IkarVarta_CloseCombat"
90
+ | "GeneralNPC_IkarVarta_Heavy"
91
+ | "GeneralNPC_IkarVarta_Recon"
92
+ | "GeneralNPC_IkarVarta_Sniper"
93
+ | "GeneralNPC_IkarVarta_Stormtrooper"
94
+ | "GeneralNPC_MALACHITE_Scientist_Recon"
95
+ | "GeneralNPC_Mercenaries_CloseCombat"
96
+ | "GeneralNPC_Mercenaries_Recon"
97
+ | "GeneralNPC_Mercenaries_Sniper"
98
+ | "GeneralNPC_Mercenaries_Stormtrooper"
99
+ | "GeneralNPC_Militaries_CloseCombat"
100
+ | "GeneralNPC_Militaries_Heavy"
101
+ | "GeneralNPC_Militaries_Recon"
102
+ | "GeneralNPC_Militaries_Sniper"
103
+ | "GeneralNPC_Militaries_Stormtrooper"
104
+ | "GeneralNPC_Monolith_CloseCombat"
105
+ | "GeneralNPC_Monolith_Recon"
106
+ | "GeneralNPC_Monolith_Sniper"
107
+ | "GeneralNPC_Monolith_Stormtrooper"
108
+ | "GeneralNPC_Neutral_CloseCombat"
109
+ | "GeneralNPC_Neutral_Recon"
110
+ | "GeneralNPC_Neutral_Sniper"
111
+ | "GeneralNPC_Neutral_Stormtrooper"
112
+ | "GeneralNPC_NeutralBandit_CloseCombat"
113
+ | "GeneralNPC_NeutralBandit_Heavy"
114
+ | "GeneralNPC_NeutralBandit_Recon"
115
+ | "GeneralNPC_NeutralBandit_Stormtrooper"
116
+ | "GeneralNPC_NeutralMSOP_CloseCombat"
117
+ | "GeneralNPC_NeutralMSOP_Heavy"
118
+ | "GeneralNPC_NeutralMSOP_Recon"
119
+ | "GeneralNPC_NeutralMSOP_Sniper"
120
+ | "GeneralNPC_NeutralMSOP_Stormtrooper"
121
+ | "GeneralNPC_Noon_CloseCombat"
122
+ | "GeneralNPC_Noon_Recon"
123
+ | "GeneralNPC_Noon_Stormtrooper"
124
+ | "GeneralNPC_Scientists_Recon"
125
+ | "GeneralNPC_Scientists_Stormtrooper"
126
+ | "GeneralNPC_SIRCAA_Scientist_Recon"
127
+ | "GeneralNPC_Spark_CloseCombat"
128
+ | "GeneralNPC_Spark_Recon"
129
+ | "GeneralNPC_Spark_Sniper"
130
+ | "GeneralNPC_Spark_Stormtrooper"
131
+ | "GeneralNPC_SultanBandit_CloseCombat"
132
+ | "GeneralNPC_SultanBandit_Heavy"
133
+ | "GeneralNPC_SultanBandit_Recon"
134
+ | "GeneralNPC_SultanBandit_Stormtrooper"
135
+ | "GeneralNPC_Varta_CloseCombat"
136
+ | "GeneralNPC_Varta_Heavy"
137
+ | "GeneralNPC_Varta_Recon"
138
+ | "GeneralNPC_Varta_Sniper"
139
+ | "GeneralNPC_Varta_Stormtrooper"
140
+ | "GeneralZombie_Bandit_CloseCombat"
141
+ | "GeneralZombie_Bandit_Heavy"
142
+ | "GeneralZombie_Bandit_Recon"
143
+ | "GeneralZombie_Bandit_Stormtrooper"
144
+ | "GeneralZombie_Corpus_CloseCombat"
145
+ | "GeneralZombie_Corpus_Heavy"
146
+ | "GeneralZombie_Corpus_Recon"
147
+ | "GeneralZombie_Corpus_Sniper"
148
+ | "GeneralZombie_Corpus_Stormtrooper"
149
+ | "GeneralZombie_Duty_CloseCombat"
150
+ | "GeneralZombie_Duty_Heavy"
151
+ | "GeneralZombie_Duty_Recon"
152
+ | "GeneralZombie_Duty_Sniper"
153
+ | "GeneralZombie_Duty_Stormtrooper"
154
+ | "GeneralZombie_Freedom_CloseCombat"
155
+ | "GeneralZombie_Freedom_Recon"
156
+ | "GeneralZombie_Freedom_Sniper"
157
+ | "GeneralZombie_Freedom_Stormtrooper"
158
+ | "GeneralZombie_Neutral_CloseCombat"
159
+ | "GeneralZombie_Neutral_Recon"
160
+ | "GeneralZombie_Neutral_Sniper"
161
+ | "GeneralZombie_Neutral_Stormtrooper"
162
+ | "GuardNPC_Corpus_CloseCombat"
163
+ | "GuardNPC_Corpus_Heavy"
164
+ | "GuardNPC_Corpus_Recon"
165
+ | "GuardNPC_Corpus_Sniper"
166
+ | "GuardNPC_Corpus_Stormtrooper"
167
+ | "GuardNPC_Digger_CloseCombat"
168
+ | "GuardNPC_Digger_Recon"
169
+ | "GuardNPC_Digger_Sniper"
170
+ | "GuardNPC_Digger_Stormtrooper"
171
+ | "GuardNPC_Duty_CloseCombat"
172
+ | "GuardNPC_Duty_Heavy"
173
+ | "GuardNPC_Duty_Recon"
174
+ | "GuardNPC_Duty_Sniper"
175
+ | "GuardNPC_Duty_Stormtrooper"
176
+ | "GuardNPC_Freedom_CloseCombat"
177
+ | "GuardNPC_Freedom_Recon"
178
+ | "GuardNPC_Freedom_Sniper"
179
+ | "GuardNPC_Freedom_Stormtrooper"
180
+ | "GuardNPC_Monolith_CloseCombat"
181
+ | "GuardNPC_Monolith_Recon"
182
+ | "GuardNPC_Monolith_Sniper"
183
+ | "GuardNPC_Monolith_Stormtrooper"
184
+ | "GuardNPC_Neutral_CloseCombat"
185
+ | "GuardNPC_Neutral_Recon"
186
+ | "GuardNPC_Neutral_Sniper"
187
+ | "GuardNPC_Neutral_Stormtrooper"
188
+ | "GuardNPC_Noon_CloseCombat"
189
+ | "GuardNPC_Noon_Recon"
190
+ | "GuardNPC_Noon_Stormtrooper"
191
+ | "GuardNPC_SultanBandit_CloseCombat"
192
+ | "GuardNPC_SultanBandit_Heavy"
193
+ | "GuardNPC_SultanBandit_Recon"
194
+ | "GuardNPC_SultanBandit_Stormtrooper"
195
+ | "GuardNPC_Varta_CloseCombat"
196
+ | "GuardNPC_Varta_Heavy"
197
+ | "GuardNPC_Varta_Recon"
198
+ | "GuardNPC_Varta_Sniper"
199
+ | "GuardNPC_Varta_Stormtrooper"
200
+ | "Poltergeist"
201
+ | "Poltergeist_Electro"
202
+ | "Poltergeist_Fire"
203
+ | "Poltergeist_Toxic"
204
+ | "PseudoDog"
205
+ | "Pseudogiant"
206
+ | "Rat"
207
+ | "Snork"
208
+ | "Tushkan"
209
+ | "BanditExperienced"
210
+ | "BanditMaster"
211
+ | "BanditNewbie"
212
+ | "BanditVeteran"
213
+ | "CorpusExperienced"
214
+ | "CorpusMaster"
215
+ | "CorpusNewbie"
216
+ | "CorpusVeteran"
217
+ | "DutyExperienced"
218
+ | "DutyMaster"
219
+ | "DutyNewbie"
220
+ | "DutyVeteran"
221
+ | "FlameExperienced"
222
+ | "FlameMaster"
223
+ | "FlameNewbie"
224
+ | "FlameVeteran"
225
+ | "FreedomExperienced"
226
+ | "FreedomMaster"
227
+ | "FreedomNewbie"
228
+ | "FreedomVeteran"
229
+ | "MercenaryExperienced"
230
+ | "MercenaryMaster"
231
+ | "MercenaryNewbie"
232
+ | "MercenaryVeteran"
233
+ | "MilitaryExperienced"
234
+ | "MilitaryMaster"
235
+ | "MilitaryNewbie"
236
+ | "MilitaryVeteran"
237
+ | "MonolithExperienced"
238
+ | "MonolithMaster"
239
+ | "MonolithNewbie"
240
+ | "MonolithVeteran"
241
+ | "NeutralExperienced"
242
+ | "NeutralMaster"
243
+ | "NeutralNewbie"
244
+ | "NeutralVeteran"
245
+ | "NoonExperienced"
246
+ | "NoonMaster"
247
+ | "NoonNewbie"
248
+ | "NoonVeteran"
249
+ | "Pseudodog"
250
+ | "ScientistExperienced"
251
+ | "ScientistMaster"
252
+ | "ScientistNewbie"
253
+ | "ScientistVeteran"
254
+ | "SparkExperienced"
255
+ | "SparkMaster"
256
+ | "SparkNewbie"
257
+ | "SparkVeteran"
258
+ | "VartaExperienced"
259
+ | "VartaMaster"
260
+ | "VartaNewbie"
261
+ | "VartaVeteran"
262
+ | "ZombieCorpusMaster";
76
263
 
77
264
  export type Faction =
78
265
  | "Humanoid"
@@ -166,82 +353,14 @@ export type Faction =
166
353
  | "StrelokBoss_Faction"
167
354
  | "FaustBoss_Faction";
168
355
 
169
- export type Condition = {
170
- AITarget: string;
171
- AmmoRequired: number;
172
- AnyBody: boolean;
173
- BoolValue: boolean;
174
- ChangeValueMode: EChangeValueMode;
175
- CompletedNodeLauncherNames: string[];
176
- ConditionComparance: EConditionComparance;
177
- ConditionType: EQuestConditionType;
178
- DialogMemberIndex: number;
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: Vec3;
205
- RandomProbability: number;
206
- Rank: ERank;
207
- ReactType: ETriggerReact;
208
- Relationships: ERelationLevel;
209
- RequiredSquadMembers: ERequiredSquadMembers;
210
- TargetCharacter: string;
211
- TargetContextualActionPlaceholder: string;
212
- TargetCorpsePlaceholder: string;
213
- TargetItemContainer: string;
214
- TargetNPC: string;
215
- TargetNode: string;
216
- TargetPlaceholder: string;
217
- TargetPoint: Vec3;
218
- ThreatAwareness: EThreatAwareness;
219
- Trigger: string;
220
- VariableValue: number;
221
- Weather: EWeather;
222
- WithBodyArmor: boolean;
223
- WithEquipped: boolean;
224
- WithHeadArmor: boolean;
225
- WithInventory: boolean;
226
- bTriggersByAnybody: boolean;
227
- };
228
-
229
- export type Conditions = (
230
- | EConditionCheckType
231
- | (
232
- | EConditionComparance
233
- | EQuestConditionType
234
- | number
235
- | string
236
- | Vec3
237
- | Condition
238
- )[]
239
- )[];
240
-
241
- export type Ability =
356
+ export type HumanAbilityName =
242
357
  | "Human_CombatPSYAttack"
358
+ | "Human_MeleeAttack"
243
359
  | "Human_MeleeAttack_Agent"
244
360
  | "Human_PhantomAttack"
361
+ | "Human_ThrowGrenade";
362
+
363
+ export type ObjectAbilityName =
245
364
  | "AlertedAbility_BlindDog"
246
365
  | "AlertedAbility_Bloodsucker"
247
366
  | "AlertedAbility_Boar"
@@ -354,6 +473,7 @@ export type Ability =
354
473
  | "GruntAbility"
355
474
  | "HowlAbility_BlindDog"
356
475
  | "HowlAbility_Pseudog"
476
+ | "Human_CombatPSYAttack"
357
477
  | "Human_MeleeAttack"
358
478
  | "Human_ThrowGrenade"
359
479
  | "Korshunov_Jump"
@@ -414,17 +534,7 @@ export type Ability =
414
534
  | "TrickSoundMockery_Cat"
415
535
  | "Tushkan_ClawAttack"
416
536
  | "Tushkan_JumpAttack"
417
- | "WoundedPSYStrike"
418
- | "NoDamagePSYAttack";
419
-
420
- export type Vec2 = { X: number; Y: number };
421
- export type Vec3 = Vec2 & { Z: number };
422
- export type Vec4 = Vec3 & { W: number };
423
-
424
- export type Rot = { Pitch: number; Roll: number; Yaw: number };
425
- export type VecRot = Vec3 & Rot;
426
- export type VecRotTemp = VecRot & { Temperature: number };
427
- export type RGBA = { A: number; B: number; G: number; R: number };
537
+ | "WoundedPSYStrike";
428
538
 
429
539
  export type MeshAttachment =
430
540
  | "Bbe"
@@ -501,134 +611,4 @@ export type MeshAttachment =
501
611
  | "Faust_Fbe"
502
612
  | "Faust_Lhi";
503
613
 
504
- export type ItemGeneratorEntry = {
505
- Category: EItemGenerationCategory;
506
- bAllowSameCategoryGeneration: boolean;
507
- PossibleItems: {
508
- AmmoMaxCount: number;
509
- AmmoMinCount: number;
510
- Chance: number;
511
- ItemPrototypeSID: string;
512
- MaxCount: number;
513
- MaxDurability: number;
514
- MinCount: number;
515
- MinDurability: number;
516
- Weight: number;
517
- bRequireWeapon: boolean;
518
- ItemGeneratorPrototypeSID: string;
519
- Upgrades: {
520
- Chance: number;
521
- MaxCount: number;
522
- MinCount: number;
523
- PossibleItems: string;
524
- };
525
- }[];
526
- };
527
-
528
- export type GroomCategory = {
529
- CategoryName: string;
530
- FromHairQualityUseVariationReplacementMap: number;
531
- VariationReplacementMap: {
532
- From: number;
533
- To: number;
534
- }[];
535
- Variations: {
536
- AdditionalGrooms: {
537
- GroomBindingPath: string;
538
- GroomPath: string;
539
- MaterialPath: string;
540
- Materials: {
541
- CustomData: {
542
- Distribution: ECustomDataDistribution;
543
- MaterialGroup: string;
544
- ParameterID: number;
545
- ShortHair: {
546
- Distribution: ECustomDataDistribution;
547
- MaterialGroup: string;
548
- Variations: {
549
- MaterialInstanceParameters: {
550
- ParameterName: string;
551
- TexturePath: string;
552
- }[];
553
- Weight: number;
554
- }[];
555
- };
556
- Variations: {
557
- ParameterValue: number;
558
- Weight: number;
559
- }[];
560
- }[];
561
- MaterialGroup: string;
562
- MaterialSlot: number;
563
- Variations: {
564
- ParameterValue: number;
565
- VariationIndex: number;
566
-
567
- MaterialInstanceParameters: {
568
- ParameterName: string;
569
- TexturePath: string;
570
- }[];
571
- MaterialPath: string;
572
-
573
- Weight: number;
574
- }[];
575
- }[];
576
- }[];
577
- CustomData: {
578
- ShortHair: {
579
- Distribution: ECustomDataDistribution;
580
- MaterialGroup: string;
581
- };
582
- };
583
- FromHairQualityRenderTextureInsteadOfGroom: number;
584
- GroomBindingPath: string;
585
- GroomPath: string;
586
- GroomSID: string;
587
- MaterialPath: string;
588
- Materials: {
589
- CustomData: {
590
- Distribution: ECustomDataDistribution;
591
- MaterialGroup: string;
592
- ParameterID: number;
593
- Variations: {
594
- ParameterValue: number;
595
- Weight: number;
596
- MaterialInstanceParameters: {
597
- ParameterName: string;
598
- TexturePath: string;
599
- }[];
600
- }[];
601
- }[];
602
- MaterialGroup: string;
603
- MaterialSlot: number;
604
- Variations: {
605
- MaterialPath: string;
606
- VariationIndex: number;
607
- Weight: number;
608
- }[];
609
- }[];
610
- VariationIndex: number;
611
- Weight: number;
612
- bHasCustomData: boolean;
613
- }[];
614
- };
615
-
616
614
  export type FactionGoalType = "Aggressive" | "Defensive" | "Normal";
617
-
618
- export type ContextualAction = {
619
- AnimationData: { MontagePath: string; MontageSection: string }[];
620
- CanInteractWithPlayer: boolean;
621
- ConditionalSelectorNodes: ContextualAction[];
622
- Effects: string;
623
- Interrupt: ContextualAction;
624
- IsValidForQuestDialog: boolean;
625
- NodeType: EContextualActionNodeType;
626
- Preconditions: string;
627
- RandomSelectorNodes: ContextualAction[];
628
- Repetitions: ERepetitions;
629
- RepetitionsCount: number;
630
- SequentialSelectorNodes: ContextualAction[];
631
- ShouldDisableDialogAnimations: boolean;
632
- ShouldPlayerCrouchDuringDialog: boolean;
633
- Weights: { Weight: number }[];
634
- };