Added New Mods; Removed Backups
- AUG Attachment Pack - Plant Time Modifier
This commit is contained in:
parent
147c9bda00
commit
b292d36c21
|
|
@ -1,11 +1,11 @@
|
|||
[General]
|
||||
gameName=spt
|
||||
modid=0
|
||||
version=d2025.1.8.0
|
||||
version=d2025.1.14.0
|
||||
newestVersion=
|
||||
category="1,"
|
||||
nexusFileStatus=1
|
||||
installationFile=acidphantasm-progressivebotsystem.zip
|
||||
installationFile=AUG_AttachmentPack.zip
|
||||
repository=
|
||||
ignoredVersion=
|
||||
comments=
|
||||
|
|
@ -15,7 +15,7 @@ url=
|
|||
hasCustomURL=false
|
||||
lastNexusQuery=
|
||||
lastNexusUpdate=
|
||||
nexusLastModified=2024-12-16T07:04:24Z
|
||||
nexusLastModified=2025-01-15T01:12:37Z
|
||||
nexusCategory=0
|
||||
converted=false
|
||||
validated=false
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"manifest": [
|
||||
{
|
||||
"key": "assets/content/items/mods/handguards/handguard_fb20.bundle",
|
||||
"dependencyKeys": [
|
||||
"assets/commonassets/physics/physicsmaterials.bundle",
|
||||
"cubemaps",
|
||||
"shaders"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "assets/content/items/mods/handguards/handguard_guerilla.bundle",
|
||||
"dependencyKeys": [
|
||||
"assets/commonassets/physics/physicsmaterials.bundle",
|
||||
"cubemaps",
|
||||
"shaders"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "assets/content/items/mods/handguards/handguard_turaco.bundle",
|
||||
"dependencyKeys": [
|
||||
"assets/commonassets/physics/physicsmaterials.bundle",
|
||||
"cubemaps",
|
||||
"shaders"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "assets/content/items/mods/magazines/mag_aug_60.bundle",
|
||||
"dependencyKeys": [
|
||||
"assets/commonassets/physics/physicsmaterials.bundle",
|
||||
"cubemaps",
|
||||
"shaders"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
BIN
mods/AUG Attachment Pack/user/mods/AUG_AttachmentPack/bundles/assets/content/items/mods/handguards/handguard_fb20.bundle (Stored with Git LFS)
Normal file
BIN
mods/AUG Attachment Pack/user/mods/AUG_AttachmentPack/bundles/assets/content/items/mods/handguards/handguard_fb20.bundle (Stored with Git LFS)
Normal file
Binary file not shown.
BIN
mods/AUG Attachment Pack/user/mods/AUG_AttachmentPack/bundles/assets/content/items/mods/handguards/handguard_guerilla.bundle (Stored with Git LFS)
Normal file
BIN
mods/AUG Attachment Pack/user/mods/AUG_AttachmentPack/bundles/assets/content/items/mods/handguards/handguard_guerilla.bundle (Stored with Git LFS)
Normal file
Binary file not shown.
BIN
mods/AUG Attachment Pack/user/mods/AUG_AttachmentPack/bundles/assets/content/items/mods/handguards/handguard_turaco.bundle (Stored with Git LFS)
Normal file
BIN
mods/AUG Attachment Pack/user/mods/AUG_AttachmentPack/bundles/assets/content/items/mods/handguards/handguard_turaco.bundle (Stored with Git LFS)
Normal file
Binary file not shown.
BIN
mods/AUG Attachment Pack/user/mods/AUG_AttachmentPack/bundles/assets/content/items/mods/magazines/mag_aug_60.bundle (Stored with Git LFS)
Normal file
BIN
mods/AUG Attachment Pack/user/mods/AUG_AttachmentPack/bundles/assets/content/items/mods/magazines/mag_aug_60.bundle (Stored with Git LFS)
Normal file
Binary file not shown.
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"templates": {
|
||||
"6786e03b67ad44fd9b0fabd0": {
|
||||
"Name": "AUG RAS Handguard",
|
||||
"ShortName": "AUG",
|
||||
"Description": "ARMY Metal AUG RAS Handguard For AUG A3 AEG Bullpup Rifle"
|
||||
},
|
||||
"6786e03b67ad44fd9b0fabd1": {
|
||||
"Name": "AUG Cantilever Handguard",
|
||||
"ShortName": "AUG",
|
||||
"Description": "The AUG Cantilever Forend combines a top rail, side rail, and M-LOK forend into a compact, light, and incredibly versatile package."
|
||||
},
|
||||
"6786e03b67ad44fd9b0fabd2": {
|
||||
"Name": "AUG Turaco handguard",
|
||||
"ShortName": "AUG",
|
||||
"Description": "A CNC made handguard with an M-LOK interface."
|
||||
},
|
||||
"6786e03b67ad44fd9b0fabd3": {
|
||||
"Name": "AUG A3 556x45 60-round drum magazine",
|
||||
"ShortName": "AUG",
|
||||
"Description": "A modified PMAG-D60 made to fit Steyr AUG A3"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"Items": [
|
||||
{
|
||||
"Id": "6786e03b67ad44fd9b0fabd0",
|
||||
"ParentId": "5b5f75e486f77447ec5d7712",
|
||||
"Price": 20000
|
||||
},
|
||||
{
|
||||
"Id": "6786e03b67ad44fd9b0fabd1",
|
||||
"ParentId": "5b5f75e486f77447ec5d7712",
|
||||
"Price": 18000
|
||||
},
|
||||
{
|
||||
"Id": "6786e03b67ad44fd9b0fabd2",
|
||||
"ParentId": "5b5f75e486f77447ec5d7712",
|
||||
"Price": 17000
|
||||
},
|
||||
{
|
||||
"Id": "6786e03b67ad44fd9b0fabd3",
|
||||
"ParentId": "5b5f754a86f774094242f19b",
|
||||
"Price": 15000
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -0,0 +1,771 @@
|
|||
{
|
||||
"6786e03b67ad44fd9b0fabd0": {
|
||||
"_id": "6786e03b67ad44fd9b0fabd0",
|
||||
"_name": "handguard_fb20",
|
||||
"_parent": "55818a104bdc2db9688b4569",
|
||||
"_type": "Item",
|
||||
"_props": {
|
||||
"Name": "",
|
||||
"ShortName": "",
|
||||
"Description": "",
|
||||
"Weight": 0.209,
|
||||
"BackgroundColor": "blue",
|
||||
"Width": 2,
|
||||
"Height": 1,
|
||||
"StackMaxSize": 1,
|
||||
"ItemSound": "mod",
|
||||
"Prefab": {
|
||||
"path": "assets/content/items/mods/handguards/handguard_fb20.bundle",
|
||||
"rcid": ""
|
||||
},
|
||||
"UsePrefab": {
|
||||
"path": "",
|
||||
"rcid": ""
|
||||
},
|
||||
"StackObjectsCount": 1,
|
||||
"NotShownInSlot": false,
|
||||
"ExaminedByDefault": true,
|
||||
"ExamineTime": 1,
|
||||
"IsUndiscardable": false,
|
||||
"IsUnsaleable": false,
|
||||
"IsUnbuyable": false,
|
||||
"IsUngivable": false,
|
||||
"IsLockedafterEquip": false,
|
||||
"QuestItem": false,
|
||||
"LootExperience": 10,
|
||||
"ExamineExperience": 3,
|
||||
"HideEntrails": false,
|
||||
"RepairCost": 0,
|
||||
"RepairSpeed": 0,
|
||||
"ExtraSizeLeft": 1,
|
||||
"ExtraSizeRight": 0,
|
||||
"ExtraSizeUp": 0,
|
||||
"ExtraSizeDown": 0,
|
||||
"ExtraSizeForceAdd": false,
|
||||
"MergesWithChildren": true,
|
||||
"CanSellOnRagfair": true,
|
||||
"CanRequireOnRagfair": false,
|
||||
"ConflictingItems": [],
|
||||
"Unlootable": false,
|
||||
"UnlootableFromSlot": "FirstPrimaryWeapon",
|
||||
"UnlootableFromSide": [],
|
||||
"AnimationVariantsNumber": 0,
|
||||
"DiscardingBlock": false,
|
||||
"RagFairCommissionModifier": 1,
|
||||
"IsAlwaysAvailableForInsurance": false,
|
||||
"DiscardLimit": -1,
|
||||
"DropSoundType": "None",
|
||||
"InsuranceDisabled": false,
|
||||
"QuestStashMaxCount": 0,
|
||||
"IsSpecialSlotOnly": false,
|
||||
"IsUnremovable": false,
|
||||
"Grids": [],
|
||||
"Slots": [
|
||||
{
|
||||
"_name": "mod_mount_000",
|
||||
"_id": "5c6d5d8b2e221644fc630b3b",
|
||||
"_parent": "5c6d5d8b2e221644fc630b39",
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Shift": 0,
|
||||
"Filter": [
|
||||
"5a800961159bd4315e3a1657",
|
||||
"57fd23e32459772d0805bcf1",
|
||||
"544909bb4bdc2d6f028b4577",
|
||||
"5d10b49bd7ad1a1a560708b0",
|
||||
"5c06595c0db834001a66af6c",
|
||||
"5cc9c20cd7f00c001336c65d",
|
||||
"5d2369418abbc306c62e0c80",
|
||||
"5b07dd285acfc4001754240d",
|
||||
"56def37dd2720bec348b456a",
|
||||
"5a7b483fe899ef0016170d15",
|
||||
"61605d88ffa6e502ac5e7eeb",
|
||||
"5a5f1ce64f39f90b401987bc",
|
||||
"560d657b4bdc2da74d8b4572",
|
||||
"5b3a337e5acfc4704b4a19a0",
|
||||
"5c5952732e2216398b5abda2",
|
||||
"57d17e212459775a1179a0f5",
|
||||
"6267c6396b642f77f56f5c1c",
|
||||
"6272370ee4013c5d7e31f418",
|
||||
"6272379924e29f06af4d5ecb",
|
||||
"626becf9582c3e319310b837"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_required": false,
|
||||
"_mergeSlotWithChildren": false,
|
||||
"_proto": "55d30c4c4bdc2db4468b457e"
|
||||
},
|
||||
{
|
||||
"_name": "mod_mount_001",
|
||||
"_id": "5c6d5d8b2e221644fc630b3c",
|
||||
"_parent": "5c6d5d8b2e221644fc630b39",
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Shift": 0,
|
||||
"Filter": [
|
||||
"5a800961159bd4315e3a1657",
|
||||
"57fd23e32459772d0805bcf1",
|
||||
"544909bb4bdc2d6f028b4577",
|
||||
"5d10b49bd7ad1a1a560708b0",
|
||||
"5c06595c0db834001a66af6c",
|
||||
"5cc9c20cd7f00c001336c65d",
|
||||
"5d2369418abbc306c62e0c80",
|
||||
"5b07dd285acfc4001754240d",
|
||||
"56def37dd2720bec348b456a",
|
||||
"5a7b483fe899ef0016170d15",
|
||||
"61605d88ffa6e502ac5e7eeb",
|
||||
"5a5f1ce64f39f90b401987bc",
|
||||
"560d657b4bdc2da74d8b4572",
|
||||
"5b3a337e5acfc4704b4a19a0",
|
||||
"5c5952732e2216398b5abda2",
|
||||
"57d17e212459775a1179a0f5",
|
||||
"6267c6396b642f77f56f5c1c",
|
||||
"6272370ee4013c5d7e31f418",
|
||||
"6272379924e29f06af4d5ecb",
|
||||
"626becf9582c3e319310b837"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_required": false,
|
||||
"_mergeSlotWithChildren": false,
|
||||
"_proto": "55d30c4c4bdc2db4468b457e"
|
||||
},
|
||||
{
|
||||
"_name": "mod_tactical",
|
||||
"_id": "5c6d5d8b2e221644fc630b3e",
|
||||
"_parent": "5c6d5d8b2e221644fc630b39",
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Shift": 0,
|
||||
"Filter": [
|
||||
"57fd23e32459772d0805bcf1",
|
||||
"544909bb4bdc2d6f028b4577",
|
||||
"5d10b49bd7ad1a1a560708b0",
|
||||
"5c06595c0db834001a66af6c",
|
||||
"5a7b483fe899ef0016170d15",
|
||||
"61605d88ffa6e502ac5e7eeb",
|
||||
"5c5952732e2216398b5abda2"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_required": false,
|
||||
"_mergeSlotWithChildren": false,
|
||||
"_proto": "55d30c4c4bdc2db4468b457e"
|
||||
},
|
||||
{
|
||||
"_name": "mod_foregrip",
|
||||
"_id": "5c6d5d8b2e221644fc630b40",
|
||||
"_parent": "5c6d5d8b2e221644fc630b39",
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Shift": 0,
|
||||
"Filter": [
|
||||
"5c7fc87d2e221644f31c0298",
|
||||
"5cda9bcfd7f00c0c0b53e900",
|
||||
"59f8a37386f7747af3328f06",
|
||||
"619386379fb0c665d5490dbe",
|
||||
"5c87ca002e221600114cb150",
|
||||
"588226d124597767ad33f787",
|
||||
"588226dd24597767ad33f789",
|
||||
"588226e62459776e3e094af7",
|
||||
"588226ef24597767af46e39c",
|
||||
"59fc48e086f77463b1118392",
|
||||
"5fce0cf655375d18a253eff0",
|
||||
"5cf4fb76d7f00c065703d3ac",
|
||||
"5b057b4f5acfc4771e1bd3e9",
|
||||
"5c791e872e2216001219c40a",
|
||||
"558032614bdc2de7118b4585",
|
||||
"58c157be86f77403c74b2bb6",
|
||||
"58c157c886f774032749fb06",
|
||||
"5f6340d3ca442212f4047eb2",
|
||||
"591af28e86f77414a27a9e1d",
|
||||
"5c1cd46f2e22164bef5cfedb",
|
||||
"5c1bc4812e22164bef5cfde7",
|
||||
"5c1bc5612e221602b5429350",
|
||||
"5c1bc5af2e221602b412949b",
|
||||
"5c1bc5fb2e221602b1779b32",
|
||||
"5c1bc7432e221602b412949d",
|
||||
"5c1bc7752e221602b1779b34"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_required": false,
|
||||
"_mergeSlotWithChildren": false,
|
||||
"_proto": "55d30c4c4bdc2db4468b457e"
|
||||
}
|
||||
],
|
||||
"CanPutIntoDuringTheRaid": true,
|
||||
"CantRemoveFromSlotsDuringRaid": [],
|
||||
"Durability": 100,
|
||||
"Accuracy": 0,
|
||||
"Recoil": -1,
|
||||
"Loudness": 0,
|
||||
"EffectiveDistance": 0,
|
||||
"Ergonomics": 8,
|
||||
"Velocity": 0,
|
||||
"RaidModdable": false,
|
||||
"ToolModdable": true,
|
||||
"BlocksFolding": false,
|
||||
"BlocksCollapsible": false,
|
||||
"IsAnimated": false,
|
||||
"HasShoulderContact": false,
|
||||
"SightingRange": 0,
|
||||
"DoubleActionAccuracyPenaltyMult": 1,
|
||||
"HeatFactor": 0.985,
|
||||
"CoolFactor": 1.055
|
||||
},
|
||||
"_proto": "55d459824bdc2d892f8b4573"
|
||||
},
|
||||
"6786e03b67ad44fd9b0fabd1": {
|
||||
"_id": "6786e03b67ad44fd9b0fabd1",
|
||||
"_name": "handguard_guerilla",
|
||||
"_parent": "55818a104bdc2db9688b4569",
|
||||
"_type": "Item",
|
||||
"_props": {
|
||||
"Name": "",
|
||||
"ShortName": "",
|
||||
"Description": "",
|
||||
"Weight": 0.209,
|
||||
"BackgroundColor": "blue",
|
||||
"Width": 2,
|
||||
"Height": 1,
|
||||
"StackMaxSize": 1,
|
||||
"ItemSound": "mod",
|
||||
"Prefab": {
|
||||
"path": "assets/content/items/mods/handguards/handguard_guerilla.bundle",
|
||||
"rcid": ""
|
||||
},
|
||||
"UsePrefab": {
|
||||
"path": "",
|
||||
"rcid": ""
|
||||
},
|
||||
"StackObjectsCount": 1,
|
||||
"NotShownInSlot": false,
|
||||
"ExaminedByDefault": true,
|
||||
"ExamineTime": 1,
|
||||
"IsUndiscardable": false,
|
||||
"IsUnsaleable": false,
|
||||
"IsUnbuyable": false,
|
||||
"IsUngivable": false,
|
||||
"IsLockedafterEquip": false,
|
||||
"QuestItem": false,
|
||||
"LootExperience": 10,
|
||||
"ExamineExperience": 3,
|
||||
"HideEntrails": false,
|
||||
"RepairCost": 0,
|
||||
"RepairSpeed": 0,
|
||||
"ExtraSizeLeft": 1,
|
||||
"ExtraSizeRight": 0,
|
||||
"ExtraSizeUp": 0,
|
||||
"ExtraSizeDown": 0,
|
||||
"ExtraSizeForceAdd": false,
|
||||
"MergesWithChildren": true,
|
||||
"CanSellOnRagfair": true,
|
||||
"CanRequireOnRagfair": false,
|
||||
"ConflictingItems": [],
|
||||
"Unlootable": false,
|
||||
"UnlootableFromSlot": "FirstPrimaryWeapon",
|
||||
"UnlootableFromSide": [],
|
||||
"AnimationVariantsNumber": 0,
|
||||
"DiscardingBlock": false,
|
||||
"RagFairCommissionModifier": 1,
|
||||
"IsAlwaysAvailableForInsurance": false,
|
||||
"DiscardLimit": -1,
|
||||
"DropSoundType": "None",
|
||||
"InsuranceDisabled": false,
|
||||
"QuestStashMaxCount": 0,
|
||||
"IsSpecialSlotOnly": false,
|
||||
"IsUnremovable": false,
|
||||
"Grids": [],
|
||||
"Slots": [
|
||||
{
|
||||
"_name": "mod_mount_001",
|
||||
"_id": "5c6d5d8b2e221644fc630b3c",
|
||||
"_parent": "5c6d5d8b2e221644fc630b39",
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Shift": 0,
|
||||
"Filter": [
|
||||
"5a800961159bd4315e3a1657",
|
||||
"57fd23e32459772d0805bcf1",
|
||||
"544909bb4bdc2d6f028b4577",
|
||||
"5d10b49bd7ad1a1a560708b0",
|
||||
"5c06595c0db834001a66af6c",
|
||||
"5cc9c20cd7f00c001336c65d",
|
||||
"5d2369418abbc306c62e0c80",
|
||||
"5b07dd285acfc4001754240d",
|
||||
"56def37dd2720bec348b456a",
|
||||
"5a7b483fe899ef0016170d15",
|
||||
"61605d88ffa6e502ac5e7eeb",
|
||||
"5a5f1ce64f39f90b401987bc",
|
||||
"560d657b4bdc2da74d8b4572",
|
||||
"5b3a337e5acfc4704b4a19a0",
|
||||
"5c5952732e2216398b5abda2",
|
||||
"57d17e212459775a1179a0f5",
|
||||
"6267c6396b642f77f56f5c1c",
|
||||
"6272370ee4013c5d7e31f418",
|
||||
"6272379924e29f06af4d5ecb",
|
||||
"626becf9582c3e319310b837"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_required": false,
|
||||
"_mergeSlotWithChildren": false,
|
||||
"_proto": "55d30c4c4bdc2db4468b457e"
|
||||
},
|
||||
{
|
||||
"_name": "mod_foregrip",
|
||||
"_id": "5c6d5d8b2e221644fc630b40",
|
||||
"_parent": "5c6d5d8b2e221644fc630b39",
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Shift": 0,
|
||||
"Filter": [
|
||||
"5c7fc87d2e221644f31c0298",
|
||||
"5cda9bcfd7f00c0c0b53e900",
|
||||
"59f8a37386f7747af3328f06",
|
||||
"619386379fb0c665d5490dbe",
|
||||
"5c87ca002e221600114cb150",
|
||||
"588226d124597767ad33f787",
|
||||
"588226dd24597767ad33f789",
|
||||
"588226e62459776e3e094af7",
|
||||
"588226ef24597767af46e39c",
|
||||
"59fc48e086f77463b1118392",
|
||||
"5fce0cf655375d18a253eff0",
|
||||
"5cf4fb76d7f00c065703d3ac",
|
||||
"5b057b4f5acfc4771e1bd3e9",
|
||||
"5c791e872e2216001219c40a",
|
||||
"558032614bdc2de7118b4585",
|
||||
"58c157be86f77403c74b2bb6",
|
||||
"58c157c886f774032749fb06",
|
||||
"5f6340d3ca442212f4047eb2",
|
||||
"591af28e86f77414a27a9e1d",
|
||||
"5c1cd46f2e22164bef5cfedb",
|
||||
"5c1bc4812e22164bef5cfde7",
|
||||
"5c1bc5612e221602b5429350",
|
||||
"5c1bc5af2e221602b412949b",
|
||||
"5c1bc5fb2e221602b1779b32",
|
||||
"5c1bc7432e221602b412949d",
|
||||
"5c1bc7752e221602b1779b34"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_required": false,
|
||||
"_mergeSlotWithChildren": false,
|
||||
"_proto": "55d30c4c4bdc2db4468b457e"
|
||||
},
|
||||
{
|
||||
"_name": "mod_tactical",
|
||||
"_id": "5c6d5d8b2e221644fc630b3e",
|
||||
"_parent": "5c6d5d8b2e221644fc630b39",
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Shift": 0,
|
||||
"Filter": [
|
||||
"57fd23e32459772d0805bcf1",
|
||||
"544909bb4bdc2d6f028b4577",
|
||||
"5d10b49bd7ad1a1a560708b0",
|
||||
"5c06595c0db834001a66af6c",
|
||||
"5a7b483fe899ef0016170d15",
|
||||
"61605d88ffa6e502ac5e7eeb",
|
||||
"5c5952732e2216398b5abda2"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_required": false,
|
||||
"_mergeSlotWithChildren": false,
|
||||
"_proto": "55d30c4c4bdc2db4468b457e"
|
||||
}
|
||||
],
|
||||
"CanPutIntoDuringTheRaid": true,
|
||||
"CantRemoveFromSlotsDuringRaid": [],
|
||||
"Durability": 100,
|
||||
"Accuracy": 0,
|
||||
"Recoil": -1,
|
||||
"Loudness": 0,
|
||||
"EffectiveDistance": 0,
|
||||
"Ergonomics": 8,
|
||||
"Velocity": 0,
|
||||
"RaidModdable": false,
|
||||
"ToolModdable": true,
|
||||
"BlocksFolding": false,
|
||||
"BlocksCollapsible": false,
|
||||
"IsAnimated": false,
|
||||
"HasShoulderContact": false,
|
||||
"SightingRange": 0,
|
||||
"DoubleActionAccuracyPenaltyMult": 1,
|
||||
"HeatFactor": 0.985,
|
||||
"CoolFactor": 1.055
|
||||
},
|
||||
"_proto": "55d459824bdc2d892f8b4573"
|
||||
},
|
||||
"6786e03b67ad44fd9b0fabd2": {
|
||||
"_id": "6786e03b67ad44fd9b0fabd2",
|
||||
"_name": "handguard_turaco",
|
||||
"_parent": "55818a104bdc2db9688b4569",
|
||||
"_type": "Item",
|
||||
"_props": {
|
||||
"Name": "",
|
||||
"ShortName": "",
|
||||
"Description": "",
|
||||
"Weight": 0.209,
|
||||
"BackgroundColor": "blue",
|
||||
"Width": 2,
|
||||
"Height": 1,
|
||||
"StackMaxSize": 1,
|
||||
"ItemSound": "mod",
|
||||
"Prefab": {
|
||||
"path": "assets/content/items/mods/handguards/handguard_turaco.bundle",
|
||||
"rcid": ""
|
||||
},
|
||||
"UsePrefab": {
|
||||
"path": "",
|
||||
"rcid": ""
|
||||
},
|
||||
"StackObjectsCount": 1,
|
||||
"NotShownInSlot": false,
|
||||
"ExaminedByDefault": true,
|
||||
"ExamineTime": 1,
|
||||
"IsUndiscardable": false,
|
||||
"IsUnsaleable": false,
|
||||
"IsUnbuyable": false,
|
||||
"IsUngivable": false,
|
||||
"IsLockedafterEquip": false,
|
||||
"QuestItem": false,
|
||||
"LootExperience": 10,
|
||||
"ExamineExperience": 3,
|
||||
"HideEntrails": false,
|
||||
"RepairCost": 0,
|
||||
"RepairSpeed": 0,
|
||||
"ExtraSizeLeft": 1,
|
||||
"ExtraSizeRight": 0,
|
||||
"ExtraSizeUp": 0,
|
||||
"ExtraSizeDown": 0,
|
||||
"ExtraSizeForceAdd": false,
|
||||
"MergesWithChildren": true,
|
||||
"CanSellOnRagfair": true,
|
||||
"CanRequireOnRagfair": false,
|
||||
"ConflictingItems": [],
|
||||
"Unlootable": false,
|
||||
"UnlootableFromSlot": "FirstPrimaryWeapon",
|
||||
"UnlootableFromSide": [],
|
||||
"AnimationVariantsNumber": 0,
|
||||
"DiscardingBlock": false,
|
||||
"RagFairCommissionModifier": 1,
|
||||
"IsAlwaysAvailableForInsurance": false,
|
||||
"DiscardLimit": -1,
|
||||
"DropSoundType": "None",
|
||||
"InsuranceDisabled": false,
|
||||
"QuestStashMaxCount": 0,
|
||||
"IsSpecialSlotOnly": false,
|
||||
"IsUnremovable": false,
|
||||
"Grids": [],
|
||||
"Slots": [
|
||||
{
|
||||
"_name": "mod_mount_000",
|
||||
"_id": "5c6d5d8b2e221644fc630b3b",
|
||||
"_parent": "5c6d5d8b2e221644fc630b39",
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Shift": 0,
|
||||
"Filter": [
|
||||
"5a800961159bd4315e3a1657",
|
||||
"57fd23e32459772d0805bcf1",
|
||||
"544909bb4bdc2d6f028b4577",
|
||||
"5d10b49bd7ad1a1a560708b0",
|
||||
"5c06595c0db834001a66af6c",
|
||||
"5cc9c20cd7f00c001336c65d",
|
||||
"5d2369418abbc306c62e0c80",
|
||||
"5b07dd285acfc4001754240d",
|
||||
"56def37dd2720bec348b456a",
|
||||
"5a7b483fe899ef0016170d15",
|
||||
"61605d88ffa6e502ac5e7eeb",
|
||||
"5a5f1ce64f39f90b401987bc",
|
||||
"560d657b4bdc2da74d8b4572",
|
||||
"5b3a337e5acfc4704b4a19a0",
|
||||
"5c5952732e2216398b5abda2",
|
||||
"57d17e212459775a1179a0f5",
|
||||
"6267c6396b642f77f56f5c1c",
|
||||
"6272370ee4013c5d7e31f418",
|
||||
"6272379924e29f06af4d5ecb",
|
||||
"626becf9582c3e319310b837"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_required": false,
|
||||
"_mergeSlotWithChildren": false,
|
||||
"_proto": "55d30c4c4bdc2db4468b457e"
|
||||
},
|
||||
{
|
||||
"_name": "mod_mount_001",
|
||||
"_id": "5c6d5d8b2e221644fc630b3c",
|
||||
"_parent": "5c6d5d8b2e221644fc630b39",
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Shift": 0,
|
||||
"Filter": [
|
||||
"5a800961159bd4315e3a1657",
|
||||
"57fd23e32459772d0805bcf1",
|
||||
"544909bb4bdc2d6f028b4577",
|
||||
"5d10b49bd7ad1a1a560708b0",
|
||||
"5c06595c0db834001a66af6c",
|
||||
"5cc9c20cd7f00c001336c65d",
|
||||
"5d2369418abbc306c62e0c80",
|
||||
"5b07dd285acfc4001754240d",
|
||||
"56def37dd2720bec348b456a",
|
||||
"5a7b483fe899ef0016170d15",
|
||||
"61605d88ffa6e502ac5e7eeb",
|
||||
"5a5f1ce64f39f90b401987bc",
|
||||
"560d657b4bdc2da74d8b4572",
|
||||
"5b3a337e5acfc4704b4a19a0",
|
||||
"5c5952732e2216398b5abda2",
|
||||
"57d17e212459775a1179a0f5",
|
||||
"6267c6396b642f77f56f5c1c",
|
||||
"6272370ee4013c5d7e31f418",
|
||||
"6272379924e29f06af4d5ecb",
|
||||
"626becf9582c3e319310b837"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_required": false,
|
||||
"_mergeSlotWithChildren": false,
|
||||
"_proto": "55d30c4c4bdc2db4468b457e"
|
||||
},
|
||||
{
|
||||
"_name": "mod_tactical",
|
||||
"_id": "5c6d5d8b2e221644fc630b3e",
|
||||
"_parent": "5c6d5d8b2e221644fc630b39",
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Shift": 0,
|
||||
"Filter": [
|
||||
"57fd23e32459772d0805bcf1",
|
||||
"544909bb4bdc2d6f028b4577",
|
||||
"5d10b49bd7ad1a1a560708b0",
|
||||
"5c06595c0db834001a66af6c",
|
||||
"5a7b483fe899ef0016170d15",
|
||||
"61605d88ffa6e502ac5e7eeb",
|
||||
"5c5952732e2216398b5abda2"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_required": false,
|
||||
"_mergeSlotWithChildren": false,
|
||||
"_proto": "55d30c4c4bdc2db4468b457e"
|
||||
},
|
||||
{
|
||||
"_name": "mod_foregrip",
|
||||
"_id": "5c6d5d8b2e221644fc630b40",
|
||||
"_parent": "5c6d5d8b2e221644fc630b39",
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Shift": 0,
|
||||
"Filter": [
|
||||
"5c7fc87d2e221644f31c0298",
|
||||
"5cda9bcfd7f00c0c0b53e900",
|
||||
"59f8a37386f7747af3328f06",
|
||||
"619386379fb0c665d5490dbe",
|
||||
"5c87ca002e221600114cb150",
|
||||
"588226d124597767ad33f787",
|
||||
"588226dd24597767ad33f789",
|
||||
"588226e62459776e3e094af7",
|
||||
"588226ef24597767af46e39c",
|
||||
"59fc48e086f77463b1118392",
|
||||
"5fce0cf655375d18a253eff0",
|
||||
"5cf4fb76d7f00c065703d3ac",
|
||||
"5b057b4f5acfc4771e1bd3e9",
|
||||
"5c791e872e2216001219c40a",
|
||||
"558032614bdc2de7118b4585",
|
||||
"58c157be86f77403c74b2bb6",
|
||||
"58c157c886f774032749fb06",
|
||||
"5f6340d3ca442212f4047eb2",
|
||||
"591af28e86f77414a27a9e1d",
|
||||
"5c1cd46f2e22164bef5cfedb",
|
||||
"5c1bc4812e22164bef5cfde7",
|
||||
"5c1bc5612e221602b5429350",
|
||||
"5c1bc5af2e221602b412949b",
|
||||
"5c1bc5fb2e221602b1779b32",
|
||||
"5c1bc7432e221602b412949d",
|
||||
"5c1bc7752e221602b1779b34",
|
||||
"5a7dbfc1159bd40016548fde"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_required": false,
|
||||
"_mergeSlotWithChildren": false,
|
||||
"_proto": "55d30c4c4bdc2db4468b457e"
|
||||
}
|
||||
],
|
||||
"CanPutIntoDuringTheRaid": true,
|
||||
"CantRemoveFromSlotsDuringRaid": [],
|
||||
"Durability": 100,
|
||||
"Accuracy": 0,
|
||||
"Recoil": -1,
|
||||
"Loudness": 0,
|
||||
"EffectiveDistance": 0,
|
||||
"Ergonomics": 8,
|
||||
"Velocity": 0,
|
||||
"RaidModdable": false,
|
||||
"ToolModdable": true,
|
||||
"BlocksFolding": false,
|
||||
"BlocksCollapsible": false,
|
||||
"IsAnimated": false,
|
||||
"HasShoulderContact": false,
|
||||
"SightingRange": 0,
|
||||
"DoubleActionAccuracyPenaltyMult": 1,
|
||||
"HeatFactor": 0.985,
|
||||
"CoolFactor": 1.055
|
||||
},
|
||||
"_proto": "55d459824bdc2d892f8b4573"
|
||||
},
|
||||
"6786e03b67ad44fd9b0fabd3": {
|
||||
"_id": "6786e03b67ad44fd9b0fabd3",
|
||||
"_name": "mag_aug_60",
|
||||
"_parent": "5448bc234bdc2d3c308b4569",
|
||||
"_type": "Item",
|
||||
"_props": {
|
||||
"Name": "",
|
||||
"ShortName": "",
|
||||
"Description": "",
|
||||
"Weight": 0.58,
|
||||
"BackgroundColor": "yellow",
|
||||
"Width": 1,
|
||||
"Height": 2,
|
||||
"StackMaxSize": 1,
|
||||
"ItemSound": "mag_plastic",
|
||||
"Prefab": {
|
||||
"path": "assets/content/items/mods/magazines/mag_aug_60.bundle",
|
||||
"rcid": ""
|
||||
},
|
||||
"UsePrefab": {
|
||||
"path": "",
|
||||
"rcid": ""
|
||||
},
|
||||
"StackObjectsCount": 1,
|
||||
"NotShownInSlot": false,
|
||||
"ExaminedByDefault": true,
|
||||
"ExamineTime": 1,
|
||||
"IsUndiscardable": false,
|
||||
"IsUnsaleable": false,
|
||||
"IsUnbuyable": false,
|
||||
"IsUngivable": false,
|
||||
"IsLockedafterEquip": false,
|
||||
"QuestItem": false,
|
||||
"LootExperience": 10,
|
||||
"ExamineExperience": 2,
|
||||
"HideEntrails": false,
|
||||
"RepairCost": 0,
|
||||
"RepairSpeed": 0,
|
||||
"ExtraSizeLeft": 0,
|
||||
"ExtraSizeRight": 0,
|
||||
"ExtraSizeUp": 0,
|
||||
"ExtraSizeDown": 1,
|
||||
"ExtraSizeForceAdd": false,
|
||||
"MergesWithChildren": true,
|
||||
"CanSellOnRagfair": false,
|
||||
"CanRequireOnRagfair": false,
|
||||
"ConflictingItems": [],
|
||||
"Unlootable": false,
|
||||
"UnlootableFromSlot": "FirstPrimaryWeapon",
|
||||
"UnlootableFromSide": [],
|
||||
"AnimationVariantsNumber": 0,
|
||||
"DiscardingBlock": false,
|
||||
"RagFairCommissionModifier": 1,
|
||||
"IsAlwaysAvailableForInsurance": false,
|
||||
"DiscardLimit": -1,
|
||||
"DropSoundType": "None",
|
||||
"InsuranceDisabled": false,
|
||||
"QuestStashMaxCount": 0,
|
||||
"IsSpecialSlotOnly": false,
|
||||
"IsUnremovable": false,
|
||||
"Grids": [],
|
||||
"Slots": [],
|
||||
"CanPutIntoDuringTheRaid": true,
|
||||
"CantRemoveFromSlotsDuringRaid": [],
|
||||
"Durability": 100,
|
||||
"Accuracy": 0,
|
||||
"Recoil": 0,
|
||||
"Loudness": 0,
|
||||
"EffectiveDistance": 0,
|
||||
"Ergonomics": -16,
|
||||
"Velocity": 0,
|
||||
"RaidModdable": true,
|
||||
"ToolModdable": false,
|
||||
"BlocksFolding": false,
|
||||
"BlocksCollapsible": false,
|
||||
"IsAnimated": false,
|
||||
"HasShoulderContact": false,
|
||||
"SightingRange": 0,
|
||||
"DoubleActionAccuracyPenaltyMult": 1,
|
||||
"magAnimationIndex": 5,
|
||||
"Cartridges": [
|
||||
{
|
||||
"_name": "cartridges",
|
||||
"_id": "59c1383d86f774290a37e0cb",
|
||||
"_parent": "59c1383d86f774290a37e0ca",
|
||||
"_max_count": 60,
|
||||
"_props": {
|
||||
"filters": [
|
||||
{
|
||||
"Filter": [
|
||||
"59e6920f86f77411d82aa167",
|
||||
"59e6927d86f77411da468256",
|
||||
"54527a984bdc2d4e668b4567",
|
||||
"54527ac44bdc2d36668b4567",
|
||||
"59e68f6f86f7746c9f75e846",
|
||||
"59e6906286f7746c9f75e847",
|
||||
"59e690b686f7746c9f75e848",
|
||||
"59e6918f86f7746c9f75e849",
|
||||
"60194943740c5d77f6705eea",
|
||||
"601949593ae8f707c4608daa",
|
||||
"5c0d5ae286f7741e46554302",
|
||||
"5fbe3ffdf8b6a877a729ea82",
|
||||
"5fd20ff893a8961fc660a954",
|
||||
"619636be6db0f2477964e710",
|
||||
"6196364158ef8c428c287d9f",
|
||||
"6196365d58ef8c428c287da1"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"_proto": "5748538b2459770af276a261"
|
||||
}
|
||||
],
|
||||
"CanFast": true,
|
||||
"CanHit": false,
|
||||
"CanAdmin": false,
|
||||
"LoadUnloadModifier": 60,
|
||||
"CheckTimeModifier": 20,
|
||||
"CheckOverride": 0,
|
||||
"ReloadMagType": "ExternalMagazine",
|
||||
"VisibleAmmoRangesString": "1-3",
|
||||
"MalfunctionChance": 0.3,
|
||||
"TagColor": 0,
|
||||
"TagName": ""
|
||||
},
|
||||
"_proto": "55802d5f4bdc2dac148b458e"
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,87 @@
|
|||
{
|
||||
"traderId":"5935c25fb3acc3127c3d8cd9",
|
||||
"assorts":{
|
||||
"items":[
|
||||
{
|
||||
"_id":"6786e03b67ad44fd9b0fabd0",
|
||||
"_tpl":"6786e03b67ad44fd9b0fabd0",
|
||||
"parentId":"hideout",
|
||||
"slotId":"hideout",
|
||||
"upd":{
|
||||
"UnlimitedCount":true,
|
||||
"StackObjectsCount":999999
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id":"6786e03b67ad44fd9b0fabd1",
|
||||
"_tpl":"6786e03b67ad44fd9b0fabd1",
|
||||
"parentId":"hideout",
|
||||
"slotId":"hideout",
|
||||
"upd":{
|
||||
"UnlimitedCount":true,
|
||||
"StackObjectsCount":999999
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id":"6786e03b67ad44fd9b0fabd2",
|
||||
"_tpl":"6786e03b67ad44fd9b0fabd2",
|
||||
"parentId":"hideout",
|
||||
"slotId":"hideout",
|
||||
"upd":{
|
||||
"UnlimitedCount":true,
|
||||
"StackObjectsCount":999999
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id":"6786e03b67ad44fd9b0fabd3",
|
||||
"_tpl":"6786e03b67ad44fd9b0fabd3",
|
||||
"parentId":"hideout",
|
||||
"slotId":"hideout",
|
||||
"upd":{
|
||||
"UnlimitedCount":true,
|
||||
"StackObjectsCount":999999
|
||||
}
|
||||
}
|
||||
],
|
||||
"barter_scheme":{
|
||||
"6786e03b67ad44fd9b0fabd0":[
|
||||
[
|
||||
{
|
||||
"count":21000,
|
||||
"_tpl":"5449016a4bdc2d6f028b456f"
|
||||
}
|
||||
]
|
||||
],
|
||||
"6786e03b67ad44fd9b0fabd1":[
|
||||
[
|
||||
{
|
||||
"count":21000,
|
||||
"_tpl":"5449016a4bdc2d6f028b456f"
|
||||
}
|
||||
]
|
||||
],
|
||||
"6786e03b67ad44fd9b0fabd2":[
|
||||
[
|
||||
{
|
||||
"count":21000,
|
||||
"_tpl":"5449016a4bdc2d6f028b456f"
|
||||
}
|
||||
]
|
||||
],
|
||||
"6786e03b67ad44fd9b0fabd3":[
|
||||
[
|
||||
{
|
||||
"count":21000,
|
||||
"_tpl":"5449016a4bdc2d6f028b456f"
|
||||
}
|
||||
]
|
||||
]
|
||||
},
|
||||
"loyal_level_items":{
|
||||
"6786e03b67ad44fd9b0fabd0":3,
|
||||
"6786e03b67ad44fd9b0fabd1":3,
|
||||
"6786e03b67ad44fd9b0fabd2":3,
|
||||
"6786e03b67ad44fd9b0fabd3":3
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,103 @@
|
|||
"use strict";
|
||||
|
||||
let mydb;
|
||||
|
||||
class Mod {
|
||||
postDBLoad(container) {
|
||||
// Credit Banner
|
||||
console.log(`
|
||||
=======================================
|
||||
| AUG Attachment Pack |
|
||||
| Created by: KoKaZ93 |
|
||||
| 3.10 Port made by: GMAK3R |
|
||||
=======================================
|
||||
`);
|
||||
|
||||
const modLoader = container.resolve("PreSptModLoader");
|
||||
const importerUtil = container.resolve("ImporterUtil");
|
||||
const db = container.resolve("DatabaseServer").getTables();
|
||||
const locales = db.locales.global;
|
||||
const items = db.templates.items;
|
||||
const handbook = db.templates.handbook.Items;
|
||||
const peacekeeper = db.traders["5935c25fb3acc3127c3d8cd9"];
|
||||
|
||||
mydb = importerUtil.loadRecursive(`${modLoader.getModPath("AUG_AttachmentPack")}database/`);
|
||||
|
||||
for (const item in mydb.templates.items) {
|
||||
items[item] = mydb.templates.items[item];
|
||||
}
|
||||
|
||||
for (const item of mydb.templates.handbook.Items) {
|
||||
handbook.push(item);
|
||||
}
|
||||
|
||||
for (const item of mydb.traders.assort.assorts.items) {
|
||||
peacekeeper.assort.items.push(item);
|
||||
}
|
||||
|
||||
for (const bc in mydb.traders.assort.assorts.barter_scheme) {
|
||||
peacekeeper.assort.barter_scheme[bc] = mydb.traders.assort.assorts.barter_scheme[bc];
|
||||
}
|
||||
|
||||
for (const level in mydb.traders.assort.assorts.loyal_level_items) {
|
||||
peacekeeper.assort.loyal_level_items[level] = mydb.traders.assort.assorts.loyal_level_items[level];
|
||||
}
|
||||
|
||||
for (const localeID in locales) {
|
||||
if (localeID == "en") {
|
||||
for (const [itemId, template] of Object.entries(mydb.locales.en.templates)) {
|
||||
for (const [key, value] of Object.entries(template)) {
|
||||
locales[localeID][`${itemId} ${key}`] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Mod.addHandguardToFilters(db);
|
||||
Mod.addMagazineToFilters(db);
|
||||
}
|
||||
|
||||
static addHandguardToFilters(db) {
|
||||
const isItemSlotsExist = (item) =>
|
||||
item._props && item._props.Slots && item._props.Slots.length > 0;
|
||||
const attachmentToAdd = ["6786e03b67ad44fd9b0fabd0", "6786e03b67ad44fd9b0fabd1", "6786e03b67ad44fd9b0fabd2"];
|
||||
const attachmentItemId = "634e61b0767cb15c4601a877";
|
||||
|
||||
for (const item of Object.values(db.templates.items)) {
|
||||
if (isItemSlotsExist(item)) {
|
||||
for (const slot of item._props.Slots) {
|
||||
if (slot._props.filters.some((filter) => filter.Filter.includes(attachmentItemId))) {
|
||||
slot._props.filters.forEach((filter) => {
|
||||
if (filter.Filter.includes(attachmentItemId)) {
|
||||
filter.Filter.push(...attachmentToAdd);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static addMagazineToFilters(db) {
|
||||
const isItemSlotsExist = (item) =>
|
||||
item._props && item._props.Slots && item._props.Slots.length > 0;
|
||||
const attachmentToAdd = "6786e03b67ad44fd9b0fabd3";
|
||||
const attachmentItemId = "630e1adbbd357927e4007c09";
|
||||
|
||||
for (const item of Object.values(db.templates.items)) {
|
||||
if (isItemSlotsExist(item)) {
|
||||
for (const slot of item._props.Slots) {
|
||||
if (slot._props.filters.some((filter) => filter.Filter.includes(attachmentItemId))) {
|
||||
slot._props.filters.forEach((filter) => {
|
||||
if (filter.Filter.includes(attachmentItemId)) {
|
||||
filter.Filter.push(attachmentToAdd);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = { mod: new Mod() };
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"name": "AUG Attachment Pack",
|
||||
"author": "KoKaZ93",
|
||||
"license": "CC BY-NC-SA 3.0",
|
||||
"version": "1.0.4",
|
||||
"sptVersion": "3.10.x",
|
||||
"main": "mod.js",
|
||||
"isBundleMod": true
|
||||
}
|
||||
Binary file not shown.
|
|
@ -1,29 +0,0 @@
|
|||
name: "tagged-release"
|
||||
|
||||
on: push
|
||||
|
||||
jobs:
|
||||
tagged-release:
|
||||
name: "Tagged Release"
|
||||
runs-on: "ubuntu-latest"
|
||||
permissions:
|
||||
contents: write
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 2
|
||||
- name: Print package.json version (before)
|
||||
id: versionstep
|
||||
run: |
|
||||
echo "version=$(jq -r .version package.json)" >> $GITHUB_OUTPUT
|
||||
working-directory: ${{ github.workspace }}
|
||||
- uses: "marvinpinto/action-automatic-releases@latest"
|
||||
with:
|
||||
repo_token: "${{ secrets.GITHUB_TOKEN }}"
|
||||
automatic_release_tag: ${{ steps.versionstep.outputs.version }}
|
||||
title: "MOAR ${{ steps.versionstep.outputs.version }}"
|
||||
prerelease: false
|
||||
files: |
|
||||
./dist/*.zip
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
branches:
|
||||
- main
|
||||
- name: staging
|
||||
prerelease: true
|
||||
debug: true
|
||||
ci: true
|
||||
dryRun: false
|
||||
plugins:
|
||||
- "@semantic-release/commit-analyzer"
|
||||
- "@semantic-release/release-notes-generator"
|
||||
- "@semantic-release/github"
|
||||
- "@semantic-release/npm"
|
||||
- - "@semantic-release/git"
|
||||
- assets: ["package.json"]
|
||||
message: "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2023 Dushaoan
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
{
|
||||
"live-like": 25,
|
||||
"more-scavs": 8,
|
||||
"more-pmcs": 8,
|
||||
"more-scavs-and-pmcs": 5,
|
||||
"main-boss-roaming": 5,
|
||||
"sniper-buddies": 4,
|
||||
"boss-invasion": 2,
|
||||
"rogue-invasion": 0,
|
||||
"raider-invasion": 0,
|
||||
"insanity": 0
|
||||
}
|
||||
|
|
@ -1,65 +0,0 @@
|
|||
{
|
||||
"live-like": {},
|
||||
"more-scavs": {
|
||||
"moreScavGroups": true,
|
||||
"scavMaxGroupSize": 5,
|
||||
"scavWaveQuantity": 1.2
|
||||
},
|
||||
"more-pmcs": {
|
||||
"morePmcGroups": true,
|
||||
"pmcMaxGroupSize": 5,
|
||||
"pmcWaveQuantity": 1.2
|
||||
},
|
||||
"more-scavs-and-pmcs": {
|
||||
"maxBotCap": 30,
|
||||
"moreScavGroups": true,
|
||||
"scavMaxGroupSize": 5,
|
||||
"morePmcGroups": true,
|
||||
"pmcMaxGroupSize": 5,
|
||||
"scavWaveQuantity": 1.2,
|
||||
"pmcWaveQuantity": 1.2,
|
||||
"mainBossChanceBuff": 25
|
||||
},
|
||||
"boss-invasion": {
|
||||
"bossOpenZones": true,
|
||||
"bossInvasion": true,
|
||||
"bossInvasionSpawnChance": 10,
|
||||
"mainBossChanceBuff": 25,
|
||||
"gradualBossInvasion": true
|
||||
},
|
||||
"rogue-invasion": {
|
||||
"randomRaiderGroup": true,
|
||||
"randomRaiderGroupChance": 50
|
||||
},
|
||||
"raider-invasion": {
|
||||
"randomRaiderGroup": true,
|
||||
"randomRaiderGroupChance": 50
|
||||
},
|
||||
"insanity": {
|
||||
"scavWaveDistribution": 0.4,
|
||||
"scavWaveQuantity": 1.3,
|
||||
"pmcWaveQuantity": 1.3,
|
||||
"maxBotCap": 30,
|
||||
"maxBotPerZone": 9,
|
||||
"moreScavGroups": true,
|
||||
"morePmcGroups": true,
|
||||
"pmcMaxGroupSize": 6,
|
||||
"scavMaxGroupSize": 6,
|
||||
"snipersHaveFriends": true,
|
||||
"bossOpenZones": true,
|
||||
"randomRaiderGroup": true,
|
||||
"randomRaiderGroupChance": 50,
|
||||
"randomRogueGroup": true,
|
||||
"randomRogueGroupChance": 50,
|
||||
"mainBossChanceBuff": 50,
|
||||
"bossInvasion": true,
|
||||
"bossInvasionSpawnChance": 10
|
||||
},
|
||||
"main-boss-roaming": {
|
||||
"bossOpenZones": true,
|
||||
"mainBossChanceBuff": 35
|
||||
},
|
||||
"sniper-buddies": {
|
||||
"snipersHaveFriends": true
|
||||
}
|
||||
}
|
||||
|
|
@ -1,63 +0,0 @@
|
|||
{
|
||||
"ADD_THESE_TO_A_MAP_TO_OVERRIDE_OR_ADD_A_BOSS_TO_A_MAP": {
|
||||
"BOSS_NAME_EXAMPLE": "CHANCE_OF_SPAWNING_PERCENT",
|
||||
"sectantPriest": 0,
|
||||
"arenaFighterEvent": 0,
|
||||
"bossBoarSniper": 0,
|
||||
"pmcBot": 0,
|
||||
"bossZryachiy": 0,
|
||||
"exUsec": 0,
|
||||
"crazyAssaultEvent": 0,
|
||||
"peacemaker": 0,
|
||||
"bossKojaniy": 0,
|
||||
"bossGluhar": 0,
|
||||
"bossSanitar": 0,
|
||||
"bossKilla": 0,
|
||||
"bossTagilla": 0,
|
||||
"bossKnight": 0,
|
||||
"bossBoar": 0,
|
||||
"bossKolontay": 0,
|
||||
"bossPartisan": 0,
|
||||
"bossBully": 0
|
||||
},
|
||||
"customs": {
|
||||
"bossKnight": 30,
|
||||
"bossPartisan": 30,
|
||||
"bossBully": 30
|
||||
},
|
||||
"factoryDay": {
|
||||
"bossTagilla": 30
|
||||
},
|
||||
"factoryNight": {
|
||||
"bossTagilla": 30
|
||||
},
|
||||
"interchange": {
|
||||
"bossKilla": 30
|
||||
},
|
||||
"laboratory": {},
|
||||
"lighthouse": {
|
||||
"bossKnight": 30,
|
||||
"bossPartisan": 30
|
||||
},
|
||||
"rezervbase": {
|
||||
"bossGluhar": 30
|
||||
},
|
||||
"shoreline": {
|
||||
"bossKnight": 30,
|
||||
"bossPartisan": 30,
|
||||
"bossSanitar": 30
|
||||
},
|
||||
"tarkovstreets": {
|
||||
"bossBoar": 30,
|
||||
"bossKolontay": 30
|
||||
},
|
||||
"woods": {
|
||||
"bossKojaniy": 30,
|
||||
"bossKnight": 30,
|
||||
"bossPartisan": 30
|
||||
},
|
||||
"gzLow": {},
|
||||
"gzHigh": {
|
||||
"bossKolontay": 30
|
||||
}
|
||||
}
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
{
|
||||
"enableBotSpawning": true,
|
||||
|
||||
"pmcDifficulty": 0.6,
|
||||
"scavDifficulty": 0.3,
|
||||
|
||||
"scavWaveDistribution": 0.3,
|
||||
"scavWaveQuantity": 0.5,
|
||||
|
||||
"startingPmcs": false,
|
||||
|
||||
"pmcWaveDistribution": 0.8,
|
||||
"pmcWaveQuantity": 1.6,
|
||||
|
||||
"zombiesEnabled": false,
|
||||
"zombieWaveDistribution": 0.5,
|
||||
"zombieWaveQuantity": 1,
|
||||
"zombieHealth": 1,
|
||||
|
||||
"maxBotCap": 25,
|
||||
"maxBotPerZone": 7,
|
||||
|
||||
"moreScavGroups": false,
|
||||
"morePmcGroups": false,
|
||||
"pmcMaxGroupSize": 4,
|
||||
"scavMaxGroupSize": 4,
|
||||
|
||||
"snipersHaveFriends": false,
|
||||
|
||||
"bossOpenZones": false,
|
||||
|
||||
"randomRaiderGroup": false,
|
||||
"randomRaiderGroupChance": 10,
|
||||
|
||||
"randomRogueGroup": false,
|
||||
"randomRogueGroupChance": 10,
|
||||
|
||||
"disableBosses": false,
|
||||
"mainBossChanceBuff": 0,
|
||||
|
||||
"bossInvasion": false,
|
||||
"bossInvasionSpawnChance": 5,
|
||||
"gradualBossInvasion": true,
|
||||
|
||||
"debug": false
|
||||
}
|
||||
|
|
@ -1,149 +0,0 @@
|
|||
{
|
||||
"customs": {
|
||||
"spawnMinDistance": 30,
|
||||
"pmcWaveCount": 12,
|
||||
"scavWaveCount": 21,
|
||||
"zombieWaveCount": 9,
|
||||
"scavHotZones": [
|
||||
"ZoneDormitory",
|
||||
"ZoneCrossRoad",
|
||||
"ZoneGasStation"
|
||||
],
|
||||
"pmcHotZones": [
|
||||
"ZoneDormitory",
|
||||
"ZoneGasStation",
|
||||
"ZoneCustoms"
|
||||
]
|
||||
},
|
||||
"factoryDay": {
|
||||
"spawnMinDistance": 20,
|
||||
"maxBotCapOverride": 12,
|
||||
"maxBotPerZoneOverride": 10,
|
||||
"pmcWaveCount": 8,
|
||||
"scavWaveCount": 9,
|
||||
"zombieWaveCount": 6
|
||||
},
|
||||
"factoryNight": {
|
||||
"spawnMinDistance": 20,
|
||||
"maxBotCapOverride": 12,
|
||||
"maxBotPerZoneOverride": 10,
|
||||
"pmcWaveCount": 8,
|
||||
"scavWaveCount": 9,
|
||||
"zombieWaveCount": 6
|
||||
},
|
||||
"interchange": {
|
||||
"spawnMinDistance": 40,
|
||||
"pmcWaveCount": 14,
|
||||
"scavWaveCount": 32,
|
||||
"zombieWaveCount": 12,
|
||||
"scavHotZones": [
|
||||
"ZoneCenterBot",
|
||||
"ZoneCenter"
|
||||
],
|
||||
"pmcHotZones": [
|
||||
"ZoneIDEA",
|
||||
"ZoneOLI",
|
||||
"ZoneCenter"
|
||||
]
|
||||
},
|
||||
"laboratory": {
|
||||
"spawnMinDistance": 20,
|
||||
"pmcWaveCount": 10,
|
||||
"scavWaveCount": 0,
|
||||
"zombieWaveCount": 12
|
||||
},
|
||||
"lighthouse": {
|
||||
"spawnMinDistance": 40,
|
||||
"pmcWaveCount": 12,
|
||||
"scavWaveCount": 20,
|
||||
"zombieWaveCount": 10,
|
||||
"scavHotZones": [
|
||||
"Zone_LongRoad",
|
||||
"Zone_Village"
|
||||
],
|
||||
"pmcHotZones": [
|
||||
"Zone_DestroyedHouse",
|
||||
"Zone_Chalet",
|
||||
"Zone_Village"
|
||||
]
|
||||
},
|
||||
"rezervbase": {
|
||||
"spawnMinDistance": 40,
|
||||
"pmcWaveCount": 11,
|
||||
"scavWaveCount": 24,
|
||||
"zombieWaveCount": 9,
|
||||
"scavHotZones": [
|
||||
"ZoneRailStrorage",
|
||||
"ZoneBunkerStorage",
|
||||
"ZoneBarrack"
|
||||
],
|
||||
"pmcHotZones": [
|
||||
"ZoneBarrack",
|
||||
"ZoneBunkerStorage"
|
||||
]
|
||||
},
|
||||
"shoreline": {
|
||||
"spawnMinDistance": 40,
|
||||
"pmcWaveCount": 14,
|
||||
"scavWaveCount": 32,
|
||||
"zombieWaveCount": 12,
|
||||
"scavHotZones": [
|
||||
"ZoneSanatorium1",
|
||||
"ZoneGasStation",
|
||||
"ZonePowerStation",
|
||||
"ZoneBusStation",
|
||||
"ZoneStartVillage"
|
||||
],
|
||||
"pmcHotZones": [
|
||||
"ZoneSanatorium2",
|
||||
"ZoneGasStation",
|
||||
"ZonePowerStation"
|
||||
]
|
||||
},
|
||||
"tarkovstreets": {
|
||||
"spawnMinDistance": 40,
|
||||
"pmcWaveCount": 16,
|
||||
"scavWaveCount": 28,
|
||||
"zombieWaveCount": 13,
|
||||
"scavHotZones": [
|
||||
"ZoneHotel_2",
|
||||
"ZoneHotel_1",
|
||||
"ZoneConstruction",
|
||||
"ZoneCarShowroom"
|
||||
],
|
||||
"pmcHotZones": [
|
||||
"ZoneSanatorium2",
|
||||
"ZoneCinema",
|
||||
"ZoneConcordiaParking"
|
||||
]
|
||||
},
|
||||
"woods": {
|
||||
"spawnMinDistance": 40,
|
||||
"pmcWaveCount": 14,
|
||||
"scavWaveCount": 28,
|
||||
"zombieWaveCount": 10,
|
||||
"scavHotZones": [
|
||||
"ZoneWoodCutter",
|
||||
"ZoneClearVill",
|
||||
"ZoneScavBase2",
|
||||
"ZoneRedHouse"
|
||||
],
|
||||
"pmcHotZones": [
|
||||
"ZoneWoodCutter",
|
||||
"ZoneBigRocks",
|
||||
"ZoneHighRocks"
|
||||
]
|
||||
},
|
||||
"gzLow": {
|
||||
"spawnMinDistance": 30,
|
||||
"pmcWaveCount": 10,
|
||||
"scavWaveCount": 18,
|
||||
"zombieWaveCount": 9
|
||||
},
|
||||
"gzHigh": {
|
||||
"spawnMinDistance": 30,
|
||||
"pmcWaveCount": 12,
|
||||
"scavWaveCount": 18,
|
||||
"zombieWaveCount": 9
|
||||
}
|
||||
}
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
{
|
||||
"name": "MOAR",
|
||||
"version": "2.6.1",
|
||||
"main": "src/mod.js",
|
||||
"license": "MIT",
|
||||
"author": "DewardianDev",
|
||||
"sptVersion": "^3.10.x",
|
||||
"scripts": {
|
||||
"setup": "npm i",
|
||||
"build": "node ./packageBuild.ts"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@semantic-release/git": "^10.0.1",
|
||||
"@types/node": "16.18.10",
|
||||
"@typescript-eslint/eslint-plugin": "5.46.1",
|
||||
"@typescript-eslint/parser": "5.46.1",
|
||||
"bestzip": "2.2.1",
|
||||
"eslint": "8.30.0",
|
||||
"fs-extra": "11.1.0",
|
||||
"glob": "8.0.3",
|
||||
"semantic-release": "^24.2.0",
|
||||
"tsyringe": "4.7.0",
|
||||
"typescript": "4.9.4"
|
||||
}
|
||||
}
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
import config from "../config/config.json";
|
||||
import { ILocationBase } from "@spt/models/eft/common/ILocationBase";
|
||||
|
||||
export class globalValues {
|
||||
public static baseConfig: typeof config = undefined;
|
||||
public static overrideConfig: Partial<typeof config> = undefined;
|
||||
public static locationsBase: ILocationBase[] = undefined;
|
||||
public static currentPreset: string = "";
|
||||
public static forcedPreset: string = "custom";
|
||||
public static addedMapZones: Record<string, string[]> = {};
|
||||
}
|
||||
|
|
@ -1,168 +0,0 @@
|
|||
import { DependencyContainer } from "tsyringe";
|
||||
import { buildWaves } from "../Spawning/Spawning";
|
||||
import { StaticRouterModService } from "@spt/services/mod/staticRouter/StaticRouterModService";
|
||||
import { DynamicRouterModService } from "@spt/services/mod/dynamicRouter/DynamicRouterModService";
|
||||
import { globalValues } from "../GlobalValues";
|
||||
import { kebabToTitle } from "../utils";
|
||||
import PresetWeightingsConfig from "../../config/PresetWeightings.json";
|
||||
|
||||
export const setupRoutes = (container: DependencyContainer) => {
|
||||
const staticRouterModService = container.resolve<StaticRouterModService>(
|
||||
"StaticRouterModService"
|
||||
);
|
||||
|
||||
const dynamicRouterModService = container.resolve<DynamicRouterModService>(
|
||||
"DynamicRouterModService"
|
||||
);
|
||||
|
||||
// Make buildwaves run on game end
|
||||
staticRouterModService.registerStaticRouter(
|
||||
`moarUpdater`,
|
||||
[
|
||||
{
|
||||
url: "/client/match/local/end",
|
||||
action: async (_url, info, sessionId, output) => {
|
||||
buildWaves(container);
|
||||
return output;
|
||||
},
|
||||
},
|
||||
],
|
||||
"moarUpdater"
|
||||
);
|
||||
|
||||
staticRouterModService.registerStaticRouter(
|
||||
`moarGetCurrentPreset`,
|
||||
[
|
||||
{
|
||||
url: "/moar/currentPreset",
|
||||
action: async () => {
|
||||
return globalValues.forcedPreset || "random";
|
||||
},
|
||||
},
|
||||
],
|
||||
"moarGetCurrentPreset"
|
||||
);
|
||||
|
||||
staticRouterModService.registerStaticRouter(
|
||||
`moarGetAnnouncePreset`,
|
||||
[
|
||||
{
|
||||
url: "/moar/announcePreset",
|
||||
action: async () => {
|
||||
if (globalValues.forcedPreset?.toLowerCase() === "random") {
|
||||
return globalValues.currentPreset;
|
||||
}
|
||||
return globalValues.forcedPreset || globalValues.currentPreset;
|
||||
},
|
||||
},
|
||||
],
|
||||
"moarGetAnnouncePreset"
|
||||
);
|
||||
|
||||
staticRouterModService.registerStaticRouter(
|
||||
`getDefaultConfig`,
|
||||
[
|
||||
{
|
||||
url: "/moar/getDefaultConfig",
|
||||
action: async () => {
|
||||
return JSON.stringify(globalValues.baseConfig);
|
||||
},
|
||||
},
|
||||
],
|
||||
"getDefaultConfig"
|
||||
);
|
||||
|
||||
staticRouterModService.registerStaticRouter(
|
||||
`getServerConfigWithOverrides`,
|
||||
[
|
||||
{
|
||||
url: "/moar/getServerConfigWithOverrides",
|
||||
action: async () => {
|
||||
return JSON.stringify({
|
||||
...(globalValues.baseConfig || {}),
|
||||
...(globalValues.overrideConfig || {}),
|
||||
});
|
||||
},
|
||||
},
|
||||
],
|
||||
"getServerConfigWithOverrides"
|
||||
);
|
||||
|
||||
staticRouterModService.registerStaticRouter(
|
||||
`getServerConfigWithOverrides`,
|
||||
[
|
||||
{
|
||||
url: "/moar/getServerConfigWithOverrides",
|
||||
action: async () => {
|
||||
return JSON.stringify({
|
||||
...globalValues.baseConfig,
|
||||
...globalValues.overrideConfig,
|
||||
});
|
||||
},
|
||||
},
|
||||
],
|
||||
"getServerConfigWithOverrides"
|
||||
);
|
||||
|
||||
staticRouterModService.registerStaticRouter(
|
||||
`moarGetPresetsList`,
|
||||
[
|
||||
{
|
||||
url: "/moar/getPresets",
|
||||
action: async () => {
|
||||
let result = [
|
||||
...Object.keys(PresetWeightingsConfig).map((preset) => ({
|
||||
Name: kebabToTitle(preset),
|
||||
Label: preset,
|
||||
})),
|
||||
{ Name: "Random", Label: "random" },
|
||||
{ Name: "Custom", Label: "custom" },
|
||||
];
|
||||
|
||||
return JSON.stringify({ data: result });
|
||||
},
|
||||
},
|
||||
],
|
||||
"moarGetPresetsList"
|
||||
);
|
||||
|
||||
staticRouterModService.registerStaticRouter(
|
||||
"setOverrideConfig",
|
||||
[
|
||||
{
|
||||
url: "/moar/setOverrideConfig",
|
||||
action: async (
|
||||
url: string,
|
||||
overrideConfig: typeof globalValues.overrideConfig = {},
|
||||
sessionID,
|
||||
output
|
||||
) => {
|
||||
globalValues.overrideConfig = overrideConfig;
|
||||
|
||||
buildWaves(container);
|
||||
|
||||
return "Success";
|
||||
},
|
||||
},
|
||||
],
|
||||
"setOverrideConfig"
|
||||
);
|
||||
|
||||
staticRouterModService.registerStaticRouter(
|
||||
"moarSetPreset",
|
||||
[
|
||||
{
|
||||
url: "/moar/setPreset",
|
||||
action: async (url: string, { Preset }, sessionID, output) => {
|
||||
globalValues.forcedPreset = Preset;
|
||||
buildWaves(container);
|
||||
|
||||
return `Current Preset: ${kebabToTitle(
|
||||
globalValues.forcedPreset || "Random"
|
||||
)}`;
|
||||
},
|
||||
},
|
||||
],
|
||||
"moarSetPreset"
|
||||
);
|
||||
};
|
||||
|
|
@ -1,154 +0,0 @@
|
|||
import { IBotConfig } from "@spt/models/spt/config/IBotConfig.d";
|
||||
import { IPmcConfig } from "@spt/models/spt/config/IPmcConfig.d";
|
||||
import { DatabaseServer } from "@spt/servers/DatabaseServer";
|
||||
import _config from "../../config/config.json";
|
||||
import _mapConfig from "../../config/mapConfig.json";
|
||||
import { ConfigServer } from "@spt/servers/ConfigServer";
|
||||
import { ConfigTypes } from "@spt/models/enums/ConfigTypes";
|
||||
import { DependencyContainer } from "tsyringe";
|
||||
import { globalValues } from "../GlobalValues";
|
||||
import { cloneDeep, getRandomPresetOrCurrentlySelectedPreset } from "../utils";
|
||||
import { ILocationConfig } from "@spt/models/spt/config/ILocationConfig.d";
|
||||
import { originalMapList } from "./constants";
|
||||
import { buildBossWaves } from "./buildBossWaves";
|
||||
import buildZombieWaves from "./buildZombieWaves";
|
||||
import buildScavMarksmanWaves from "./buildScavMarksmanWaves";
|
||||
import buildPmcs from "./buildPmcs";
|
||||
import { setEscapeTimeOverrides } from "./utils";
|
||||
import { ILogger } from "@spt/models/spt/utils/ILogger";
|
||||
import updateSpawnLocations from "./updateSpawnLocations";
|
||||
|
||||
export const buildWaves = (container: DependencyContainer) => {
|
||||
const configServer = container.resolve<ConfigServer>("ConfigServer");
|
||||
const Logger = container.resolve<ILogger>("WinstonLogger");
|
||||
const pmcConfig = configServer.getConfig<IPmcConfig>(ConfigTypes.PMC);
|
||||
const botConfig = configServer.getConfig<IBotConfig>(ConfigTypes.BOT);
|
||||
|
||||
const locationConfig = configServer.getConfig<ILocationConfig>(
|
||||
ConfigTypes.LOCATION
|
||||
);
|
||||
|
||||
locationConfig.rogueLighthouseSpawnTimeSettings.waitTimeSeconds = 60;
|
||||
locationConfig.enableBotTypeLimits = false;
|
||||
locationConfig.fitLootIntoContainerAttempts = 1; // Move to ALP
|
||||
locationConfig.addCustomBotWavesToMaps = false;
|
||||
locationConfig.customWaves = { boss: {}, normal: {} };
|
||||
|
||||
const databaseServer = container.resolve<DatabaseServer>("DatabaseServer");
|
||||
|
||||
const { locations, bots, globals } = databaseServer.getTables();
|
||||
|
||||
let config = cloneDeep(globalValues.baseConfig) as typeof _config;
|
||||
|
||||
const preset = getRandomPresetOrCurrentlySelectedPreset();
|
||||
|
||||
Object.keys(globalValues.overrideConfig).forEach((key) => {
|
||||
if (config[key] !== globalValues.overrideConfig[key]) {
|
||||
config.debug &&
|
||||
console.log(
|
||||
`[MOAR] overrideConfig ${key} changed from ${config[key]} to ${globalValues.overrideConfig[key]}`
|
||||
);
|
||||
config[key] = globalValues.overrideConfig[key];
|
||||
}
|
||||
});
|
||||
|
||||
// Set from preset if preset above is not empty
|
||||
Object.keys(preset).forEach((key) => {
|
||||
if (config[key] !== preset[key]) {
|
||||
config.debug &&
|
||||
console.log(
|
||||
`[MOAR] preset ${globalValues.currentPreset}: ${key} changed from ${config[key]} to ${preset[key]}`
|
||||
);
|
||||
config[key] = preset[key];
|
||||
}
|
||||
});
|
||||
|
||||
config.debug &&
|
||||
console.log(
|
||||
globalValues.forcedPreset === "custom"
|
||||
? "custom"
|
||||
: globalValues.currentPreset
|
||||
);
|
||||
|
||||
const {
|
||||
bigmap: customs,
|
||||
factory4_day: factoryDay,
|
||||
factory4_night: factoryNight,
|
||||
interchange,
|
||||
laboratory,
|
||||
lighthouse,
|
||||
rezervbase,
|
||||
shoreline,
|
||||
tarkovstreets,
|
||||
woods,
|
||||
sandbox: gzLow,
|
||||
sandbox_high: gzHigh,
|
||||
} = locations;
|
||||
|
||||
let locationList = [
|
||||
customs,
|
||||
factoryDay,
|
||||
factoryNight,
|
||||
interchange,
|
||||
laboratory,
|
||||
lighthouse,
|
||||
rezervbase,
|
||||
shoreline,
|
||||
tarkovstreets,
|
||||
woods,
|
||||
gzLow,
|
||||
gzHigh,
|
||||
];
|
||||
|
||||
// This resets all locations to original state
|
||||
if (!globalValues.locationsBase) {
|
||||
globalValues.locationsBase = locationList.map(({ base }) =>
|
||||
cloneDeep(base)
|
||||
);
|
||||
} else {
|
||||
locationList = locationList.map((item, key) => ({
|
||||
...item,
|
||||
base: cloneDeep(globalValues.locationsBase[key]),
|
||||
}));
|
||||
}
|
||||
|
||||
pmcConfig.convertIntoPmcChance = {
|
||||
default: {
|
||||
assault: { min: 0, max: 0 },
|
||||
cursedassault: { min: 0, max: 0 },
|
||||
pmcbot: { min: 0, max: 0 },
|
||||
exusec: { min: 0, max: 0 },
|
||||
arenafighter: { min: 0, max: 0 },
|
||||
arenafighterevent: { min: 0, max: 0 },
|
||||
crazyassaultevent: { min: 0, max: 0 },
|
||||
},
|
||||
factory4_day: { assault: { min: 0, max: 0 } },
|
||||
laboratory: { pmcbot: { min: 0, max: 0 } },
|
||||
rezervbase: { pmcbot: { min: 0, max: 0 } },
|
||||
};
|
||||
|
||||
updateSpawnLocations(locationList);
|
||||
|
||||
setEscapeTimeOverrides(locationList, _mapConfig, Logger, config);
|
||||
|
||||
// Make main waves
|
||||
buildScavMarksmanWaves(config, locationList, botConfig);
|
||||
|
||||
// BOSS RELATED STUFF!
|
||||
buildBossWaves(config, locationList);
|
||||
|
||||
//Zombies
|
||||
if (config.zombiesEnabled) {
|
||||
buildZombieWaves(config, locationList, bots);
|
||||
}
|
||||
|
||||
buildPmcs(config, locationList);
|
||||
|
||||
originalMapList.forEach((name, index) => {
|
||||
if (!locations[name]) {
|
||||
console.log("[MOAR] OH CRAP we have a problem!", name);
|
||||
} else {
|
||||
locations[name] = locationList[index];
|
||||
}
|
||||
});
|
||||
};
|
||||
|
|
@ -1,278 +0,0 @@
|
|||
import { ILocation } from "@spt/models/eft/common/ILocation";
|
||||
import _config from "../../config/config.json";
|
||||
import bossConfig from "../../config/bossConfig.json";
|
||||
import mapConfig from "../../config/mapConfig.json";
|
||||
import {
|
||||
bossesToRemoveFromPool,
|
||||
configLocations,
|
||||
mainBossNameList,
|
||||
originalMapList,
|
||||
} from "./constants";
|
||||
import { buildBossBasedWave, shuffle } from "./utils";
|
||||
import { IBossLocationSpawn } from "@spt/models/eft/common/ILocationBase";
|
||||
import { cloneDeep } from "../utils";
|
||||
|
||||
export function buildBossWaves(
|
||||
config: typeof _config,
|
||||
locationList: ILocation[]
|
||||
) {
|
||||
let {
|
||||
randomRaiderGroup,
|
||||
randomRaiderGroupChance,
|
||||
randomRogueGroup,
|
||||
randomRogueGroupChance,
|
||||
mainBossChanceBuff,
|
||||
bossInvasion,
|
||||
bossInvasionSpawnChance,
|
||||
disableBosses,
|
||||
bossOpenZones,
|
||||
gradualBossInvasion,
|
||||
} = config;
|
||||
|
||||
const bossList = mainBossNameList.filter(
|
||||
(bossName) => !["bossKnight"].includes(bossName)
|
||||
);
|
||||
|
||||
const allBosses: Record<string, IBossLocationSpawn> = {};
|
||||
for (const key in locationList) {
|
||||
locationList[key].base.BossLocationSpawn.forEach((boss) => {
|
||||
if (!allBosses[boss.BossName]) {
|
||||
allBosses[boss.BossName] = boss;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// CreateBossList
|
||||
const bosses: Record<string, IBossLocationSpawn> = {};
|
||||
for (let indx = 0; indx < locationList.length; indx++) {
|
||||
// Disable Bosses
|
||||
if (disableBosses && !!locationList[indx].base?.BossLocationSpawn) {
|
||||
locationList[indx].base.BossLocationSpawn = [];
|
||||
} else {
|
||||
//Remove all other spawns from pool now that we have the spawns zone list
|
||||
locationList[indx].base.BossLocationSpawn = locationList[
|
||||
indx
|
||||
].base.BossLocationSpawn.filter(
|
||||
(boss) => !bossesToRemoveFromPool.has(boss.BossName)
|
||||
);
|
||||
|
||||
const location = locationList[indx];
|
||||
|
||||
const defaultBossSettings =
|
||||
mapConfig?.[configLocations[indx]]?.defaultBossSettings;
|
||||
|
||||
// Sets bosses spawn chance from settings
|
||||
if (
|
||||
location?.base?.BossLocationSpawn &&
|
||||
defaultBossSettings &&
|
||||
Object.keys(defaultBossSettings)?.length
|
||||
) {
|
||||
const filteredBossList = Object.keys(defaultBossSettings).filter(
|
||||
(name) => defaultBossSettings[name]?.BossChance !== undefined
|
||||
);
|
||||
if (filteredBossList?.length) {
|
||||
filteredBossList.forEach((bossName) => {
|
||||
location.base.BossLocationSpawn =
|
||||
location.base.BossLocationSpawn.map((boss) => ({
|
||||
...boss,
|
||||
...(boss.BossName === bossName
|
||||
? { BossChance: defaultBossSettings[bossName].BossChance }
|
||||
: {}),
|
||||
}));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
if (randomRaiderGroup) {
|
||||
const raiderWave = buildBossBasedWave(
|
||||
randomRaiderGroupChance,
|
||||
"1,2,2,2,3",
|
||||
"pmcBot",
|
||||
"pmcBot",
|
||||
"",
|
||||
locationList[indx].base.EscapeTimeLimit
|
||||
);
|
||||
location.base.BossLocationSpawn.push(raiderWave);
|
||||
}
|
||||
|
||||
if (randomRogueGroup) {
|
||||
const rogueWave = buildBossBasedWave(
|
||||
randomRogueGroupChance,
|
||||
"1,2,2,2,3",
|
||||
"exUsec",
|
||||
"exUsec",
|
||||
"",
|
||||
locationList[indx].base.EscapeTimeLimit
|
||||
);
|
||||
location.base.BossLocationSpawn.push(rogueWave);
|
||||
}
|
||||
|
||||
//Add each boss from each map to bosses object
|
||||
const filteredBosses = location.base.BossLocationSpawn?.filter(
|
||||
({ BossName }) => mainBossNameList.includes(BossName)
|
||||
);
|
||||
|
||||
if (filteredBosses.length) {
|
||||
for (let index = 0; index < filteredBosses.length; index++) {
|
||||
const boss = filteredBosses[index];
|
||||
if (
|
||||
!bosses[boss.BossName] ||
|
||||
(bosses[boss.BossName] &&
|
||||
bosses[boss.BossName].BossChance < boss.BossChance)
|
||||
) {
|
||||
bosses[boss.BossName] = { ...boss };
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!disableBosses) {
|
||||
// Make boss Invasion
|
||||
if (bossInvasion) {
|
||||
if (bossInvasionSpawnChance) {
|
||||
bossList.forEach((bossName) => {
|
||||
if (bosses[bossName])
|
||||
bosses[bossName].BossChance = bossInvasionSpawnChance;
|
||||
});
|
||||
}
|
||||
|
||||
for (let key = 0; key < locationList.length; key++) {
|
||||
//Gather bosses to avoid duplicating.
|
||||
let bossLocations = "";
|
||||
|
||||
const duplicateBosses = [
|
||||
...locationList[key].base.BossLocationSpawn.filter(
|
||||
({ BossName, BossZone }) => {
|
||||
bossLocations += BossZone + ",";
|
||||
return bossList.includes(BossName);
|
||||
}
|
||||
).map(({ BossName }) => BossName),
|
||||
"bossKnight", // So knight doesn't invade
|
||||
];
|
||||
|
||||
const uniqueBossZones = bossOpenZones
|
||||
? ""
|
||||
: [
|
||||
...new Set(
|
||||
bossLocations
|
||||
.split(",")
|
||||
.filter(
|
||||
(zone) => !!zone && !zone.toLowerCase().includes("snipe")
|
||||
)
|
||||
),
|
||||
].join(",");
|
||||
|
||||
//Build bosses to add
|
||||
const bossesToAdd = shuffle<IBossLocationSpawn[]>(Object.values(bosses))
|
||||
.filter(({ BossName }) => !duplicateBosses.includes(BossName))
|
||||
.map((boss, j) => ({
|
||||
...boss,
|
||||
BossZone: uniqueBossZones,
|
||||
BossEscortAmount:
|
||||
boss.BossEscortAmount === "0" ? boss.BossEscortAmount : "1",
|
||||
...(gradualBossInvasion ? { Time: j * 20 + 1 } : {}),
|
||||
}));
|
||||
|
||||
// UpdateBosses
|
||||
locationList[key].base.BossLocationSpawn = [
|
||||
...locationList[key].base.BossLocationSpawn,
|
||||
...bossesToAdd,
|
||||
];
|
||||
}
|
||||
}
|
||||
let hasChangedBossSpawns = false;
|
||||
// console.log(Object.keys(allBosses));
|
||||
configLocations.forEach((mapName, index) => {
|
||||
const bossLocationSpawn = locationList[index].base.BossLocationSpawn;
|
||||
const mapBossConfig: Record<string, number> = cloneDeep(
|
||||
bossConfig[mapName] || {}
|
||||
);
|
||||
// if (Object.keys(mapBossConfig).length === 0) console.log(name, "empty");
|
||||
const adjusted = new Set<string>([]);
|
||||
|
||||
bossLocationSpawn.forEach(({ BossName, BossChance }, bossIndex) => {
|
||||
if (typeof mapBossConfig[BossName] === "number") {
|
||||
if (BossChance !== mapBossConfig[BossName]) {
|
||||
if (!hasChangedBossSpawns) {
|
||||
console.log(
|
||||
`\n[MOAR]: --- Adjusting default boss spawn rates --- `
|
||||
);
|
||||
hasChangedBossSpawns = true;
|
||||
}
|
||||
console.log(
|
||||
`[MOAR]: ${mapName} ${BossName}: ${locationList[index].base.BossLocationSpawn[bossIndex].BossChance} => ${mapBossConfig[BossName]}`
|
||||
);
|
||||
locationList[index].base.BossLocationSpawn[bossIndex].BossChance =
|
||||
mapBossConfig[BossName];
|
||||
}
|
||||
adjusted.add(BossName);
|
||||
}
|
||||
});
|
||||
|
||||
const bossesToAdd = Object.keys(mapBossConfig)
|
||||
.filter(
|
||||
(adjustName) => !adjusted.has(adjustName) && !!allBosses[adjustName]
|
||||
)
|
||||
.map((bossName) => {
|
||||
`[MOAR]: Adding non-default boss ${bossName} to ${originalMapList[index]}`;
|
||||
|
||||
const newBoss: IBossLocationSpawn = cloneDeep(
|
||||
allBosses[bossName] || {}
|
||||
);
|
||||
newBoss.BossChance = mapBossConfig[bossName];
|
||||
// console.log(
|
||||
// "Adding boss",
|
||||
// bossName,
|
||||
// "to ",
|
||||
// originalMapList[index],
|
||||
// "spawn chance =>",
|
||||
// mapBossConfig[bossName]
|
||||
// );
|
||||
return newBoss;
|
||||
});
|
||||
|
||||
// console.log(bossesToAdd);
|
||||
|
||||
if (bossOpenZones || mainBossChanceBuff) {
|
||||
locationList[index].base?.BossLocationSpawn?.forEach((boss, key) => {
|
||||
if (bossList.includes(boss.BossName)) {
|
||||
if (bossOpenZones) {
|
||||
locationList[index].base.BossLocationSpawn[key] = {
|
||||
...locationList[index].base.BossLocationSpawn[key],
|
||||
BossZone: "",
|
||||
};
|
||||
}
|
||||
|
||||
if (!!boss.BossChance && mainBossChanceBuff > 0) {
|
||||
locationList[index].base.BossLocationSpawn[key] = {
|
||||
...locationList[index].base.BossLocationSpawn[key],
|
||||
BossChance:
|
||||
boss.BossChance + mainBossChanceBuff > 100
|
||||
? 100
|
||||
: Math.round(boss.BossChance + mainBossChanceBuff),
|
||||
};
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
locationList[index].base.BossLocationSpawn = [
|
||||
...locationList[index].base.BossLocationSpawn,
|
||||
...bossesToAdd,
|
||||
];
|
||||
|
||||
bossesToAdd.length &&
|
||||
console.log(
|
||||
`[MOAR] Adding the following bosses to map ${
|
||||
configLocations[index]
|
||||
}: ${bossesToAdd.map(({ BossName }) => BossName)}`
|
||||
);
|
||||
});
|
||||
if (hasChangedBossSpawns) {
|
||||
console.log(
|
||||
`[MOAR]: --- Adjusting default boss spawn rates complete --- \n`
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,87 +0,0 @@
|
|||
import { ILocation } from "@spt/models/eft/common/ILocation";
|
||||
import _config from "../../config/config.json";
|
||||
import mapConfig from "../../config/mapConfig.json";
|
||||
import {
|
||||
bossesToRemoveFromPool,
|
||||
defaultEscapeTimes,
|
||||
defaultHostility,
|
||||
} from "./constants";
|
||||
import { buildPmcWaves, MapSettings, shuffle } from "./utils";
|
||||
import { saveToFile } from "../utils";
|
||||
|
||||
export default function buildPmcs(
|
||||
config: typeof _config,
|
||||
locationList: ILocation[]
|
||||
) {
|
||||
for (let index = 0; index < locationList.length; index++) {
|
||||
const mapSettingsList = Object.keys(mapConfig) as Array<
|
||||
keyof typeof mapConfig
|
||||
>;
|
||||
const map = mapSettingsList[index];
|
||||
|
||||
locationList[index].base.BotLocationModifier.AdditionalHostilitySettings =
|
||||
defaultHostility;
|
||||
|
||||
const { pmcHotZones = [] } = (mapConfig?.[map] as MapSettings) || {};
|
||||
|
||||
let pmcZones = shuffle<string[]>([
|
||||
...new Set(
|
||||
[...locationList[index].base.SpawnPointParams]
|
||||
.filter(
|
||||
({ Categories, BotZoneName }) =>
|
||||
!!BotZoneName &&
|
||||
(Categories.includes("Player") ||
|
||||
(map === "laboratory" &&
|
||||
!BotZoneName.includes("BotZoneGate"))) &&
|
||||
!BotZoneName.includes("snipe")
|
||||
)
|
||||
.map(({ BotZoneName, ...rest }) => {
|
||||
return BotZoneName;
|
||||
})
|
||||
),
|
||||
...pmcHotZones,
|
||||
]);
|
||||
// Make labs have only named zones
|
||||
if (map === "laboratory") {
|
||||
pmcZones = new Array(10).fill(pmcZones).flat(1);
|
||||
// console.log(pmcZones);
|
||||
}
|
||||
|
||||
const timeLimit = locationList[index].base.EscapeTimeLimit * 60;
|
||||
|
||||
const { pmcWaveCount } = mapConfig[map];
|
||||
|
||||
const escapeTimeLimitRatio = Math.round(
|
||||
locationList[index].base.EscapeTimeLimit / defaultEscapeTimes[map]
|
||||
);
|
||||
|
||||
const totalWaves = Math.round(
|
||||
pmcWaveCount * config.pmcWaveQuantity * escapeTimeLimitRatio
|
||||
);
|
||||
// console.log(pmcZones.length, totalWaves);
|
||||
const numberOfZoneless = totalWaves - pmcZones.length;
|
||||
if (numberOfZoneless > 0) {
|
||||
const addEmpty = new Array(numberOfZoneless).fill("");
|
||||
pmcZones = shuffle<string[]>([...pmcZones, ...addEmpty]);
|
||||
}
|
||||
// if (map === "laboratory") console.log(numberOfZoneless, pmcZones);
|
||||
|
||||
if (config.debug) {
|
||||
console.log(`${map} PMC count ${totalWaves} \n`);
|
||||
|
||||
escapeTimeLimitRatio !== 1 &&
|
||||
console.log(
|
||||
`${map} PMC wave count changed from ${pmcWaveCount} to ${totalWaves} due to escapeTimeLimit adjustment`
|
||||
);
|
||||
}
|
||||
|
||||
const waves = buildPmcWaves(pmcWaveCount, timeLimit, config, pmcZones);
|
||||
// if (map === "laboratory")
|
||||
// console.log(waves.map(({ BossZone }) => BossZone));
|
||||
// apply our new waves
|
||||
locationList[index].base.BossLocationSpawn = [
|
||||
...waves,
|
||||
...locationList[index].base.BossLocationSpawn,
|
||||
];
|
||||
}
|
||||
}
|
||||
|
|
@ -1,226 +0,0 @@
|
|||
import { ILocation } from "@spt/models/eft/common/ILocation";
|
||||
import _config from "../../config/config.json";
|
||||
import mapConfig from "../../config/mapConfig.json";
|
||||
import {
|
||||
configLocations,
|
||||
defaultEscapeTimes,
|
||||
defaultHostility,
|
||||
originalMapList,
|
||||
} from "./constants";
|
||||
import { MapSettings, shuffle, waveBuilder } from "./utils";
|
||||
import { IWave, WildSpawnType } from "@spt/models/eft/common/ILocationBase";
|
||||
import { IBotConfig } from "@spt/models/spt/config/IBotConfig";
|
||||
import { saveToFile } from "../utils";
|
||||
|
||||
export default function buildScavMarksmanWaves(
|
||||
config: typeof _config,
|
||||
locationList: ILocation[],
|
||||
botConfig: IBotConfig
|
||||
) {
|
||||
let {
|
||||
debug,
|
||||
maxBotCap,
|
||||
scavWaveQuantity,
|
||||
scavWaveDistribution,
|
||||
snipersHaveFriends,
|
||||
maxBotPerZone,
|
||||
scavMaxGroupSize,
|
||||
scavDifficulty,
|
||||
moreScavGroups,
|
||||
} = config;
|
||||
|
||||
for (let index = 0; index < locationList.length; index++) {
|
||||
const mapSettingsList = Object.keys(mapConfig) as Array<
|
||||
keyof typeof mapConfig
|
||||
>;
|
||||
const map = mapSettingsList[index];
|
||||
|
||||
locationList[index].base = {
|
||||
...locationList[index].base,
|
||||
...{
|
||||
NewSpawn: false,
|
||||
OcculsionCullingEnabled: true,
|
||||
OfflineNewSpawn: false,
|
||||
OfflineOldSpawn: true,
|
||||
OldSpawn: true,
|
||||
BotSpawnCountStep: 0,
|
||||
},
|
||||
};
|
||||
|
||||
locationList[index].base.NonWaveGroupScenario.Enabled = false;
|
||||
locationList[index].base["BotStartPlayer"] = 0;
|
||||
if (
|
||||
locationList[index].base.BotStop <
|
||||
locationList[index].base.EscapeTimeLimit * 60
|
||||
) {
|
||||
locationList[index].base.BotStop =
|
||||
locationList[index].base.EscapeTimeLimit * 60;
|
||||
}
|
||||
|
||||
const {
|
||||
maxBotPerZoneOverride,
|
||||
maxBotCapOverride,
|
||||
EscapeTimeLimit,
|
||||
scavHotZones,
|
||||
} = (mapConfig?.[map] as MapSettings) || {};
|
||||
|
||||
// Set per map EscapeTimeLimit
|
||||
if (EscapeTimeLimit) {
|
||||
locationList[index].base.EscapeTimeLimit = EscapeTimeLimit;
|
||||
locationList[index].base.exit_access_time = EscapeTimeLimit + 1;
|
||||
}
|
||||
|
||||
// Set default or per map maxBotCap
|
||||
if (maxBotCapOverride || maxBotCap) {
|
||||
const capToSet = maxBotCapOverride || maxBotCap;
|
||||
// console.log(map, capToSet, maxBotCapOverride, maxBotCap);
|
||||
locationList[index].base.BotMax = capToSet;
|
||||
locationList[index].base.BotMaxPvE = capToSet;
|
||||
botConfig.maxBotCap[originalMapList[index]] = capToSet;
|
||||
}
|
||||
|
||||
// Adjust botZone quantity
|
||||
if (maxBotPerZoneOverride || maxBotPerZone) {
|
||||
const BotPerZone = maxBotPerZoneOverride || maxBotPerZone;
|
||||
// console.log(map, BotPerZone, maxBotPerZoneOverride, maxBotPerZone);
|
||||
locationList[index].base.MaxBotPerZone = BotPerZone;
|
||||
}
|
||||
|
||||
const sniperLocations = new Set(
|
||||
[...locationList[index].base.SpawnPointParams]
|
||||
.filter(
|
||||
({ Categories, Sides, BotZoneName }) =>
|
||||
!!BotZoneName &&
|
||||
Sides.includes("Savage") &&
|
||||
!Categories.includes("Boss")
|
||||
)
|
||||
.filter(
|
||||
({ BotZoneName, DelayToCanSpawnSec }) =>
|
||||
BotZoneName?.toLowerCase().includes("snipe") ||
|
||||
DelayToCanSpawnSec > 300
|
||||
)
|
||||
.map(({ BotZoneName }) => BotZoneName)
|
||||
);
|
||||
|
||||
if (sniperLocations.size) {
|
||||
locationList[index].base.MinMaxBots = [
|
||||
{
|
||||
WildSpawnType: "marksman",
|
||||
max: sniperLocations.size * 5,
|
||||
min: sniperLocations.size,
|
||||
},
|
||||
];
|
||||
}
|
||||
|
||||
const scavZones = shuffle<string[]>([
|
||||
...new Set(
|
||||
[...locationList[index].base.SpawnPointParams]
|
||||
.filter(
|
||||
({ Categories, Sides, BotZoneName }) =>
|
||||
!!BotZoneName &&
|
||||
Sides.includes("Savage") &&
|
||||
!Categories.includes("Boss")
|
||||
)
|
||||
.map(({ BotZoneName }) => BotZoneName)
|
||||
.filter((name) => !sniperLocations.has(name))
|
||||
),
|
||||
]);
|
||||
|
||||
// Reduced Zone Delay
|
||||
locationList[index].base.SpawnPointParams = locationList[
|
||||
index
|
||||
].base.SpawnPointParams.map((spawn) => ({
|
||||
...spawn,
|
||||
DelayToCanSpawnSec:
|
||||
spawn.DelayToCanSpawnSec > 20
|
||||
? Math.round(spawn.DelayToCanSpawnSec / 10)
|
||||
: spawn.DelayToCanSpawnSec,
|
||||
}));
|
||||
|
||||
const timeLimit = locationList[index].base.EscapeTimeLimit * 60;
|
||||
const { scavWaveCount } = mapConfig[map];
|
||||
|
||||
const escapeTimeLimitRatio = Math.round(
|
||||
locationList[index].base.EscapeTimeLimit / defaultEscapeTimes[map]
|
||||
);
|
||||
|
||||
// Scavs
|
||||
const scavTotalWaveCount = Math.round(
|
||||
scavWaveCount * scavWaveQuantity * escapeTimeLimitRatio
|
||||
);
|
||||
|
||||
config.debug &&
|
||||
escapeTimeLimitRatio !== 1 &&
|
||||
console.log(
|
||||
`${map} Scav wave count changed from ${scavWaveCount} to ${scavTotalWaveCount} due to escapeTimeLimit adjustment`
|
||||
);
|
||||
|
||||
let snipers = waveBuilder(
|
||||
sniperLocations.size,
|
||||
Math.round(timeLimit / 4),
|
||||
0.5,
|
||||
WildSpawnType.MARKSMAN,
|
||||
0.7,
|
||||
false,
|
||||
2,
|
||||
[],
|
||||
shuffle([...sniperLocations]),
|
||||
80,
|
||||
false,
|
||||
true
|
||||
);
|
||||
|
||||
if (snipersHaveFriends)
|
||||
snipers = snipers.map((wave) => ({
|
||||
...wave,
|
||||
slots_min: 0,
|
||||
...(snipersHaveFriends && wave.slots_max < 2
|
||||
? { slots_min: 1, slots_max: 2 }
|
||||
: {}),
|
||||
}));
|
||||
|
||||
const scavWaves = waveBuilder(
|
||||
scavTotalWaveCount,
|
||||
timeLimit,
|
||||
scavWaveDistribution,
|
||||
WildSpawnType.ASSAULT,
|
||||
scavDifficulty,
|
||||
false,
|
||||
scavMaxGroupSize,
|
||||
map === "gzHigh" ? [] : scavZones,
|
||||
scavHotZones,
|
||||
0,
|
||||
false,
|
||||
!!moreScavGroups
|
||||
);
|
||||
|
||||
if (debug) {
|
||||
let totalscav = 0;
|
||||
scavWaves.forEach(({ slots_max }) => (totalscav += slots_max));
|
||||
|
||||
console.log(configLocations[index]);
|
||||
console.log(
|
||||
"Scavs:",
|
||||
totalscav,
|
||||
"configVal",
|
||||
Math.round((totalscav / scavWaveCount) * 100) / 100,
|
||||
"configWaveCount",
|
||||
scavWaveCount,
|
||||
"waveCount",
|
||||
scavWaves.length,
|
||||
"\n"
|
||||
);
|
||||
}
|
||||
|
||||
// const finalSniperWaves = snipers?.map(({ ...rest }, snipKey) => ({
|
||||
// ...rest,
|
||||
// number: snipKey,
|
||||
// time_min: snipKey * 120,
|
||||
// time_max: snipKey * 120 + 120,
|
||||
// }));
|
||||
// if (map === "customs") saveToFile({ scavWaves }, "scavWaves.json");
|
||||
locationList[index].base.waves = [...snipers, ...scavWaves]
|
||||
.sort(({ time_min: a }, { time_min: b }) => a - b)
|
||||
.map((wave, i) => ({ ...wave, number: i + 1 }));
|
||||
}
|
||||
}
|
||||
|
|
@ -1,80 +0,0 @@
|
|||
import { ILocation } from "@spt/models/eft/common/ILocation";
|
||||
import _config from "../../config/config.json";
|
||||
import mapConfig from "../../config/mapConfig.json";
|
||||
import { configLocations, defaultEscapeTimes } from "./constants";
|
||||
import {
|
||||
buildZombie,
|
||||
getHealthBodyPartsByPercentage,
|
||||
zombieTypes,
|
||||
} from "./utils";
|
||||
import { IBots } from "@spt/models/spt/bots/IBots";
|
||||
|
||||
export default function buildZombieWaves(
|
||||
config: typeof _config,
|
||||
locationList: ILocation[],
|
||||
bots: IBots
|
||||
) {
|
||||
let { debug, zombieWaveDistribution, zombieWaveQuantity, zombieHealth } =
|
||||
config;
|
||||
|
||||
const zombieBodyParts = getHealthBodyPartsByPercentage(zombieHealth);
|
||||
zombieTypes.forEach((type) => {
|
||||
bots.types?.[type]?.health?.BodyParts?.forEach((_, index) => {
|
||||
bots.types[type].health.BodyParts[index] = zombieBodyParts;
|
||||
});
|
||||
});
|
||||
|
||||
for (let indx = 0; indx < locationList.length; indx++) {
|
||||
const location = locationList[indx].base;
|
||||
const mapSettingsList = Object.keys(mapConfig) as Array<
|
||||
keyof typeof mapConfig
|
||||
>;
|
||||
const map = mapSettingsList[indx];
|
||||
|
||||
const { zombieWaveCount } = mapConfig?.[configLocations[indx]];
|
||||
|
||||
// if (location.Events?.Halloween2024?.MaxCrowdAttackSpawnLimit)
|
||||
// location.Events.Halloween2024.MaxCrowdAttackSpawnLimit = 100;
|
||||
// if (location.Events?.Halloween2024?.CrowdCooldownPerPlayerSec)
|
||||
// location.Events.Halloween2024.CrowdCooldownPerPlayerSec = 60;
|
||||
// if (location.Events?.Halloween2024?.CrowdCooldownPerPlayerSec)
|
||||
// location.Events.Halloween2024.CrowdsLimit = 10;
|
||||
// if (location.Events?.Halloween2024?.CrowdAttackSpawnParams)
|
||||
// location.Events.Halloween2024.CrowdAttackSpawnParams = [];
|
||||
|
||||
if (!zombieWaveCount) return;
|
||||
|
||||
const escapeTimeLimitRatio = Math.round(
|
||||
locationList[indx].base.EscapeTimeLimit / defaultEscapeTimes[map]
|
||||
);
|
||||
|
||||
const zombieTotalWaveCount = Math.round(
|
||||
zombieWaveCount * zombieWaveQuantity * escapeTimeLimitRatio
|
||||
);
|
||||
|
||||
config.debug &&
|
||||
escapeTimeLimitRatio !== 1 &&
|
||||
console.log(
|
||||
`${map} Zombie wave count changed from ${zombieWaveCount} to ${zombieTotalWaveCount} due to escapeTimeLimit adjustment`
|
||||
);
|
||||
|
||||
const zombieWaves = buildZombie(
|
||||
zombieTotalWaveCount,
|
||||
location.EscapeTimeLimit,
|
||||
zombieWaveDistribution,
|
||||
9999
|
||||
);
|
||||
|
||||
debug &&
|
||||
console.log(
|
||||
configLocations[indx],
|
||||
" generated ",
|
||||
zombieWaves.length,
|
||||
"Zombies"
|
||||
);
|
||||
|
||||
location.BossLocationSpawn.push(...zombieWaves);
|
||||
|
||||
// console.log(zombieWaves[0], zombieWaves[7]);
|
||||
}
|
||||
}
|
||||
|
|
@ -1,204 +0,0 @@
|
|||
export const defaultHostility = [
|
||||
{
|
||||
AlwaysEnemies: [
|
||||
"bossTest",
|
||||
"followerTest",
|
||||
"bossKilla",
|
||||
"bossKojaniy",
|
||||
"followerKojaniy",
|
||||
"cursedAssault",
|
||||
"bossGluhar",
|
||||
"followerGluharAssault",
|
||||
"followerGluharSecurity",
|
||||
"followerGluharScout",
|
||||
"followerGluharSnipe",
|
||||
"followerSanitar",
|
||||
"bossSanitar",
|
||||
"test",
|
||||
"assaultGroup",
|
||||
"sectantWarrior",
|
||||
"sectantPriest",
|
||||
"bossTagilla",
|
||||
"followerTagilla",
|
||||
"bossKnight",
|
||||
"followerBigPipe",
|
||||
"followerBirdEye",
|
||||
"bossBoar",
|
||||
"followerBoar",
|
||||
"arenaFighter",
|
||||
"arenaFighterEvent",
|
||||
"bossBoarSniper",
|
||||
"crazyAssaultEvent",
|
||||
"sectactPriestEvent",
|
||||
"followerBoarClose1",
|
||||
"followerBoarClose2",
|
||||
"bossKolontay",
|
||||
"followerKolontayAssault",
|
||||
"followerKolontaySecurity",
|
||||
"shooterBTR",
|
||||
"bossPartisan",
|
||||
"spiritWinter",
|
||||
"spiritSpring",
|
||||
"peacemaker",
|
||||
"skier",
|
||||
"assault",
|
||||
"marksman",
|
||||
"pmcUSEC",
|
||||
"pmcBEAR",
|
||||
"exUsec",
|
||||
"pmcBot",
|
||||
"bossBully",
|
||||
],
|
||||
AlwaysFriends: [
|
||||
"bossZryachiy",
|
||||
"followerZryachiy",
|
||||
"peacefullZryachiyEvent",
|
||||
"ravangeZryachiyEvent",
|
||||
"gifter",
|
||||
],
|
||||
BearEnemyChance: 100,
|
||||
BearPlayerBehaviour: "AlwaysEnemies",
|
||||
BotRole: "pmcBEAR",
|
||||
ChancedEnemies: [],
|
||||
Neutral: [],
|
||||
SavagePlayerBehaviour: "AlwaysEnemies",
|
||||
UsecEnemyChance: 100,
|
||||
UsecPlayerBehaviour: "AlwaysEnemies",
|
||||
Warn: ["sectactPriestEvent"],
|
||||
},
|
||||
{
|
||||
AlwaysEnemies: [
|
||||
"bossTest",
|
||||
"followerTest",
|
||||
"bossKilla",
|
||||
"bossKojaniy",
|
||||
"followerKojaniy",
|
||||
"cursedAssault",
|
||||
"bossGluhar",
|
||||
"followerGluharAssault",
|
||||
"followerGluharSecurity",
|
||||
"followerGluharScout",
|
||||
"followerGluharSnipe",
|
||||
"followerSanitar",
|
||||
"bossSanitar",
|
||||
"test",
|
||||
"assaultGroup",
|
||||
"sectantWarrior",
|
||||
"sectantPriest",
|
||||
"bossTagilla",
|
||||
"followerTagilla",
|
||||
"bossKnight",
|
||||
"followerBigPipe",
|
||||
"followerBirdEye",
|
||||
"bossBoar",
|
||||
"followerBoar",
|
||||
"arenaFighter",
|
||||
"arenaFighterEvent",
|
||||
"bossBoarSniper",
|
||||
"crazyAssaultEvent",
|
||||
"sectactPriestEvent",
|
||||
"followerBoarClose1",
|
||||
"followerBoarClose2",
|
||||
"bossKolontay",
|
||||
"followerKolontayAssault",
|
||||
"followerKolontaySecurity",
|
||||
"shooterBTR",
|
||||
"bossPartisan",
|
||||
"spiritWinter",
|
||||
"spiritSpring",
|
||||
"peacemaker",
|
||||
"skier",
|
||||
"assault",
|
||||
"marksman",
|
||||
"pmcUSEC",
|
||||
"pmcBEAR",
|
||||
"exUsec",
|
||||
"pmcBot",
|
||||
"bossBully",
|
||||
],
|
||||
AlwaysFriends: [
|
||||
"bossZryachiy",
|
||||
"followerZryachiy",
|
||||
"peacefullZryachiyEvent",
|
||||
"ravangeZryachiyEvent",
|
||||
"gifter",
|
||||
],
|
||||
BearEnemyChance: 100,
|
||||
BearPlayerBehaviour: "AlwaysEnemies",
|
||||
BotRole: "pmcUSEC",
|
||||
ChancedEnemies: [],
|
||||
Neutral: [],
|
||||
SavagePlayerBehaviour: "AlwaysEnemies",
|
||||
UsecEnemyChance: 100,
|
||||
UsecPlayerBehaviour: "AlwaysEnemies",
|
||||
Warn: ["sectactPriestEvent"],
|
||||
},
|
||||
];
|
||||
|
||||
export const configLocations = [
|
||||
"customs",
|
||||
"factoryDay",
|
||||
"factoryNight",
|
||||
"interchange",
|
||||
"laboratory",
|
||||
"lighthouse",
|
||||
"rezervbase",
|
||||
"shoreline",
|
||||
"tarkovstreets",
|
||||
"woods",
|
||||
"gzLow",
|
||||
"gzHigh",
|
||||
];
|
||||
|
||||
export const originalMapList = [
|
||||
"bigmap",
|
||||
"factory4_day",
|
||||
"factory4_night",
|
||||
"interchange",
|
||||
"laboratory",
|
||||
"lighthouse",
|
||||
"rezervbase",
|
||||
"shoreline",
|
||||
"tarkovstreets",
|
||||
"woods",
|
||||
"sandbox",
|
||||
"sandbox_high",
|
||||
];
|
||||
|
||||
export const bossesToRemoveFromPool = new Set([
|
||||
"assault",
|
||||
"pmcBEAR",
|
||||
"pmcUSEC",
|
||||
"infectedAssault",
|
||||
"infectedTagilla",
|
||||
"infectedLaborant",
|
||||
"infectedCivil",
|
||||
]);
|
||||
|
||||
export const mainBossNameList = [
|
||||
"bossKojaniy",
|
||||
"bossGluhar",
|
||||
"bossSanitar",
|
||||
"bossKilla",
|
||||
"bossTagilla",
|
||||
"bossKnight",
|
||||
"bossBoar",
|
||||
"bossKolontay",
|
||||
"bossPartisan",
|
||||
"bossBully",
|
||||
];
|
||||
|
||||
export const defaultEscapeTimes = {
|
||||
customs: 40,
|
||||
factoryDay: 20,
|
||||
factoryNight: 25,
|
||||
interchange: 40,
|
||||
laboratory: 35,
|
||||
lighthouse: 40,
|
||||
rezervbase: 40,
|
||||
shoreline: 45,
|
||||
tarkovstreets: 50,
|
||||
woods: 40,
|
||||
gzLow: 35,
|
||||
gzHigh: 35,
|
||||
};
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
import { ILocation } from "@spt/models/eft/common/ILocation";
|
||||
import { configLocations } from "./constants";
|
||||
import mapConfig from "../../config/mapConfig.json";
|
||||
|
||||
export default function updateSpawnLocations(locationList: ILocation[]) {
|
||||
for (let index = 0; index < locationList.length; index++) {
|
||||
const map = configLocations[index];
|
||||
|
||||
const limit = mapConfig[map].spawnMinDistance;
|
||||
|
||||
// console.log("\n" + map);
|
||||
locationList[index].base.SpawnPointParams.forEach(
|
||||
(
|
||||
{ ColliderParams, BotZoneName, DelayToCanSpawnSec, Categories, Sides },
|
||||
innerIndex
|
||||
) => {
|
||||
if (
|
||||
ColliderParams?._props?.Radius !== undefined &&
|
||||
ColliderParams?._props?.Radius < limit &&
|
||||
!BotZoneName?.toLowerCase().includes("snipe") &&
|
||||
DelayToCanSpawnSec < 300
|
||||
) {
|
||||
// console.log(
|
||||
// "----",
|
||||
// ColliderParams._props.Radius,
|
||||
// "=>",
|
||||
// limit,
|
||||
// BotZoneName
|
||||
// );
|
||||
|
||||
locationList[index].base.SpawnPointParams[
|
||||
innerIndex
|
||||
].ColliderParams._props.Radius = limit;
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -1,430 +0,0 @@
|
|||
import {
|
||||
IBossLocationSpawn,
|
||||
IWave,
|
||||
WildSpawnType,
|
||||
} from "@spt/models/eft/common/ILocationBase";
|
||||
import _config from "../../config/config.json";
|
||||
import { ILocation } from "@spt/models/eft/common/ILocation";
|
||||
import { defaultEscapeTimes } from "./constants";
|
||||
import { ILogger } from "@spt/models/spt/utils/ILogger";
|
||||
|
||||
export const waveBuilder = (
|
||||
totalWaves: number,
|
||||
timeLimit: number,
|
||||
waveDistribution: number,
|
||||
wildSpawnType: "marksman" | "assault",
|
||||
difficulty: number,
|
||||
isPlayer: boolean,
|
||||
maxSlots: number,
|
||||
combinedZones: string[] = [],
|
||||
specialZones: string[] = [],
|
||||
offset?: number,
|
||||
starting?: boolean,
|
||||
moreGroups?: boolean
|
||||
): IWave[] => {
|
||||
if (totalWaves === 0) return [];
|
||||
|
||||
const averageTime = timeLimit / totalWaves;
|
||||
const firstHalf = Math.round(averageTime * (1 - waveDistribution));
|
||||
const secondHalf = Math.round(averageTime * (1 + waveDistribution));
|
||||
let timeStart = offset || 0;
|
||||
const waves: IWave[] = [];
|
||||
let maxSlotsReached = Math.round(1.3 * totalWaves);
|
||||
while (
|
||||
totalWaves > 0 &&
|
||||
(waves.length < totalWaves || specialZones.length > 0)
|
||||
) {
|
||||
const accelerate = totalWaves > 5 && waves.length < totalWaves / 3;
|
||||
const stage = Math.round(
|
||||
waves.length < Math.round(totalWaves * 0.5)
|
||||
? accelerate
|
||||
? firstHalf / 3
|
||||
: firstHalf
|
||||
: secondHalf
|
||||
);
|
||||
|
||||
const min = !offset && waves.length < 1 ? 0 : timeStart;
|
||||
const max = !offset && waves.length < 1 ? 0 : timeStart + 10;
|
||||
|
||||
if (waves.length >= 1 || offset) timeStart = timeStart + stage;
|
||||
const BotPreset = getDifficulty(difficulty);
|
||||
// console.log(wildSpawnType, BotPreset);
|
||||
// Math.round((1 - waves.length / totalWaves) * maxSlots) || 1;
|
||||
let slotMax = Math.round(
|
||||
(moreGroups ? Math.random() : Math.random() * Math.random()) * maxSlots
|
||||
);
|
||||
|
||||
if (slotMax < 1) slotMax = 1;
|
||||
const slotMin = (Math.round(Math.random() * slotMax) || 1) - 1;
|
||||
|
||||
waves.push({
|
||||
BotPreset,
|
||||
BotSide: getBotSide(wildSpawnType),
|
||||
SpawnPoints: getZone(
|
||||
specialZones,
|
||||
combinedZones,
|
||||
waves.length >= totalWaves
|
||||
),
|
||||
isPlayers: isPlayer,
|
||||
slots_max: slotMax,
|
||||
slots_min: slotMin,
|
||||
time_min: starting || !max ? -1 : min,
|
||||
time_max: starting || !max ? -1 : max,
|
||||
WildSpawnType: wildSpawnType as WildSpawnType,
|
||||
number: waves.length,
|
||||
sptId: wildSpawnType + waves.length,
|
||||
SpawnMode: ["regular", "pve"],
|
||||
});
|
||||
maxSlotsReached -= slotMax;
|
||||
// if (wildSpawnType === "assault") console.log(slotMax, maxSlotsReached);
|
||||
if (maxSlotsReached <= 0) break;
|
||||
}
|
||||
// console.log(waves.map(({ slots_min }) => slots_min));
|
||||
return waves;
|
||||
};
|
||||
|
||||
const getZone = (specialZones, combinedZones, specialOnly) => {
|
||||
if (!specialOnly && combinedZones.length)
|
||||
return combinedZones[
|
||||
Math.round((combinedZones.length - 1) * Math.random())
|
||||
];
|
||||
if (specialZones.length) return specialZones.pop();
|
||||
return "";
|
||||
};
|
||||
|
||||
export const getDifficulty = (diff: number) => {
|
||||
const randomNumb = Math.random() + diff;
|
||||
switch (true) {
|
||||
case randomNumb < 0.55:
|
||||
return "easy";
|
||||
case randomNumb < 1.4:
|
||||
return "normal";
|
||||
case randomNumb < 1.85:
|
||||
return "hard";
|
||||
default:
|
||||
return "impossible";
|
||||
}
|
||||
};
|
||||
|
||||
export const shuffle = <n>(array: any): n => {
|
||||
let currentIndex = array.length,
|
||||
randomIndex;
|
||||
|
||||
// While there remain elements to shuffle.
|
||||
while (currentIndex != 0) {
|
||||
// Pick a remaining element.
|
||||
randomIndex = Math.floor(Math.random() * currentIndex);
|
||||
currentIndex--;
|
||||
|
||||
// And swap it with the current element.
|
||||
[array[currentIndex], array[randomIndex]] = [
|
||||
array[randomIndex],
|
||||
array[currentIndex],
|
||||
];
|
||||
}
|
||||
|
||||
return array;
|
||||
};
|
||||
|
||||
const getBotSide = (
|
||||
spawnType: "marksman" | "assault" | "pmcBEAR" | "pmcUSEC"
|
||||
) => {
|
||||
switch (spawnType) {
|
||||
case "pmcBEAR":
|
||||
return "Bear";
|
||||
case "pmcUSEC":
|
||||
return "Usec";
|
||||
default:
|
||||
return "Savage";
|
||||
}
|
||||
};
|
||||
|
||||
export const buildBossBasedWave = (
|
||||
BossChance: number,
|
||||
BossEscortAmount: string,
|
||||
BossEscortType: string,
|
||||
BossName: string,
|
||||
BossZone: string,
|
||||
raidTime?: number
|
||||
): IBossLocationSpawn => {
|
||||
return {
|
||||
BossChance,
|
||||
BossDifficult: "normal",
|
||||
BossEscortAmount,
|
||||
BossEscortDifficult: "normal",
|
||||
BossEscortType,
|
||||
BossName,
|
||||
BossPlayer: false,
|
||||
BossZone,
|
||||
Delay: 0,
|
||||
ForceSpawn: false,
|
||||
IgnoreMaxBots: true,
|
||||
RandomTimeSpawn: false,
|
||||
Time: raidTime ? Math.round(Math.random() * (raidTime * 5)) : -1,
|
||||
Supports: null,
|
||||
TriggerId: "",
|
||||
TriggerName: "",
|
||||
spawnMode: ["regular", "pve"],
|
||||
};
|
||||
};
|
||||
|
||||
export const zombieTypes = [
|
||||
"infectedassault",
|
||||
"infectedpmc",
|
||||
"infectedlaborant",
|
||||
"infectedcivil",
|
||||
];
|
||||
|
||||
export const zombieTypesCaps = [
|
||||
"infectedAssault",
|
||||
"infectedPmc",
|
||||
"infectedLaborant",
|
||||
"infectedCivil",
|
||||
];
|
||||
|
||||
export const getRandomDifficulty = (num: number = 1.5) =>
|
||||
getDifficulty(Math.round(Math.random() * num * 10) / 10);
|
||||
|
||||
export const getRandomZombieType = () =>
|
||||
zombieTypesCaps[Math.round((zombieTypesCaps.length - 1) * Math.random())];
|
||||
|
||||
export const buildPmcWaves = (
|
||||
totalWaves: number,
|
||||
escapeTimeLimit: number,
|
||||
config: typeof _config,
|
||||
bossZones: string[]
|
||||
): IBossLocationSpawn[] => {
|
||||
let {
|
||||
pmcMaxGroupSize,
|
||||
pmcDifficulty,
|
||||
startingPmcs,
|
||||
morePmcGroups,
|
||||
pmcWaveDistribution,
|
||||
} = config;
|
||||
|
||||
const averageTime = escapeTimeLimit / totalWaves;
|
||||
const firstHalf = Math.round(averageTime * (1 - pmcWaveDistribution));
|
||||
const secondHalf = Math.round(averageTime * (1 + pmcWaveDistribution));
|
||||
let timeStart = -1;
|
||||
const waves: IBossLocationSpawn[] = [];
|
||||
let maxSlotsReached = totalWaves;
|
||||
|
||||
while (totalWaves > 0) {
|
||||
let bossEscortAmount = Math.round(
|
||||
(morePmcGroups ? 1 : Math.random()) *
|
||||
Math.random() *
|
||||
(pmcMaxGroupSize - 1)
|
||||
);
|
||||
|
||||
if (bossEscortAmount < 0) bossEscortAmount = 0;
|
||||
const accelerate = totalWaves > 5 && waves.length < totalWaves / 3;
|
||||
const stage = startingPmcs
|
||||
? 10
|
||||
: Math.round(
|
||||
waves.length < Math.round(totalWaves * 0.5)
|
||||
? accelerate
|
||||
? firstHalf / 3
|
||||
: firstHalf
|
||||
: secondHalf
|
||||
);
|
||||
|
||||
if (waves.length >= 1) timeStart = timeStart + stage;
|
||||
|
||||
// console.log(timeStart, BossEscortAmount);
|
||||
const side = Math.random() > 0.5 ? "pmcBEAR" : "pmcUSEC";
|
||||
|
||||
const BossDifficult = getDifficulty(pmcDifficulty);
|
||||
|
||||
waves.push({
|
||||
BossChance: 9999,
|
||||
BossDifficult,
|
||||
BossEscortAmount: bossEscortAmount.toString(),
|
||||
BossEscortDifficult: "normal",
|
||||
BossEscortType: side,
|
||||
BossName: side,
|
||||
BossPlayer: false,
|
||||
BossZone: bossZones.pop() || "",
|
||||
Delay: 0,
|
||||
DependKarma: false,
|
||||
DependKarmaPVE: false,
|
||||
ForceSpawn: true,
|
||||
IgnoreMaxBots: true,
|
||||
RandomTimeSpawn: false,
|
||||
Time: timeStart,
|
||||
Supports: null,
|
||||
TriggerId: "",
|
||||
TriggerName: "",
|
||||
spawnMode: ["regular", "pve"],
|
||||
});
|
||||
|
||||
maxSlotsReached -= 1 + bossEscortAmount;
|
||||
if (maxSlotsReached <= 0) break;
|
||||
}
|
||||
|
||||
return waves;
|
||||
};
|
||||
|
||||
export const buildZombie = (
|
||||
totalWaves: number,
|
||||
escapeTimeLimit: number,
|
||||
waveDistribution: number,
|
||||
BossChance: number = 100
|
||||
): IBossLocationSpawn[] => {
|
||||
const averageTime = (escapeTimeLimit * 60) / totalWaves;
|
||||
const firstHalf = Math.round(averageTime * (1 - waveDistribution));
|
||||
const secondHalf = Math.round(averageTime * (1 + waveDistribution));
|
||||
let timeStart = 90;
|
||||
const waves: IBossLocationSpawn[] = [];
|
||||
let maxSlotsReached = Math.round(1.3 * totalWaves);
|
||||
|
||||
while (totalWaves > 0) {
|
||||
const accelerate = totalWaves > 5 && waves.length < totalWaves / 3;
|
||||
const stage = Math.round(
|
||||
waves.length < Math.round(totalWaves * 0.5)
|
||||
? accelerate
|
||||
? firstHalf / 3
|
||||
: firstHalf
|
||||
: secondHalf
|
||||
);
|
||||
|
||||
if (waves.length >= 1) timeStart = timeStart + stage;
|
||||
const main = getRandomZombieType();
|
||||
waves.push({
|
||||
BossChance,
|
||||
BossDifficult: "normal",
|
||||
BossEscortAmount: "0",
|
||||
BossEscortDifficult: "normal",
|
||||
BossEscortType: main,
|
||||
BossName: main,
|
||||
BossPlayer: false,
|
||||
BossZone: "",
|
||||
Delay: 0,
|
||||
IgnoreMaxBots: true,
|
||||
RandomTimeSpawn: false,
|
||||
Time: timeStart,
|
||||
Supports: new Array(
|
||||
Math.round(Math.random() * 4) /* <= 4 AddthistoConfig */
|
||||
)
|
||||
.fill("")
|
||||
.map(() => ({
|
||||
BossEscortType: getRandomZombieType(),
|
||||
BossEscortDifficult: ["normal"],
|
||||
BossEscortAmount: "1",
|
||||
})),
|
||||
TriggerId: "",
|
||||
TriggerName: "",
|
||||
spawnMode: ["regular", "pve"],
|
||||
});
|
||||
|
||||
maxSlotsReached -= 1 + waves[waves.length - 1].Supports.length;
|
||||
if (maxSlotsReached <= 0) break;
|
||||
}
|
||||
|
||||
return waves;
|
||||
};
|
||||
|
||||
export interface MapSettings {
|
||||
EscapeTimeLimit?: number;
|
||||
maxBotPerZoneOverride?: number;
|
||||
maxBotCapOverride?: number;
|
||||
pmcHotZones?: string[];
|
||||
scavHotZones?: string[];
|
||||
pmcWaveCount: number;
|
||||
scavWaveCount: number;
|
||||
zombieWaveCount: number;
|
||||
}
|
||||
|
||||
export const getHealthBodyPartsByPercentage = (num: number) => {
|
||||
const num35 = Math.round(35 * num);
|
||||
const num100 = Math.round(100 * num);
|
||||
const num70 = Math.round(70 * num);
|
||||
const num80 = Math.round(80 * num);
|
||||
return {
|
||||
Head: {
|
||||
min: num35,
|
||||
max: num35,
|
||||
},
|
||||
Chest: {
|
||||
min: num100,
|
||||
max: num100,
|
||||
},
|
||||
Stomach: {
|
||||
min: num100,
|
||||
max: num100,
|
||||
},
|
||||
LeftArm: {
|
||||
min: num70,
|
||||
max: num70,
|
||||
},
|
||||
RightArm: {
|
||||
min: num70,
|
||||
max: num70,
|
||||
},
|
||||
LeftLeg: {
|
||||
min: num80,
|
||||
max: num80,
|
||||
},
|
||||
RightLeg: {
|
||||
min: num80,
|
||||
max: num80,
|
||||
},
|
||||
};
|
||||
};
|
||||
|
||||
export interface MapConfigType {
|
||||
spawnMinDistance: number;
|
||||
pmcWaveCount: number;
|
||||
scavWaveCount: number;
|
||||
zombieWaveCount?: number;
|
||||
scavHotZones?: string[];
|
||||
pmcHotZones?: string[];
|
||||
EscapeTimeLimitOverride?: number;
|
||||
}
|
||||
|
||||
export const setEscapeTimeOverrides = (
|
||||
locationList: ILocation[],
|
||||
mapConfig: Record<string, MapConfigType>,
|
||||
logger: ILogger,
|
||||
config: typeof _config
|
||||
) => {
|
||||
for (let index = 0; index < locationList.length; index++) {
|
||||
const mapSettingsList = Object.keys(mapConfig) as Array<
|
||||
keyof typeof mapConfig
|
||||
>;
|
||||
|
||||
const map = mapSettingsList[index];
|
||||
const override = mapConfig[map].EscapeTimeLimitOverride;
|
||||
const hardcodedEscapeLimitMax = 5;
|
||||
|
||||
if (
|
||||
!override &&
|
||||
locationList[index].base.EscapeTimeLimit / defaultEscapeTimes[map] >
|
||||
hardcodedEscapeLimitMax
|
||||
) {
|
||||
const maxLimit = defaultEscapeTimes[map] * hardcodedEscapeLimitMax;
|
||||
logger.warning(
|
||||
`[MOAR] EscapeTimeLimit set too high on ${map}\nEscapeTimeLimit changed from ${locationList[index].base.EscapeTimeLimit} => ${maxLimit}\n`
|
||||
);
|
||||
locationList[index].base.EscapeTimeLimit = maxLimit;
|
||||
}
|
||||
|
||||
if (override && locationList[index].base.EscapeTimeLimit !== override) {
|
||||
console.log(
|
||||
`[Moar] Set ${map}'s Escape time limit to ${override} from ${locationList[index].base.EscapeTimeLimit}\n`
|
||||
);
|
||||
locationList[index].base.EscapeTimeLimit = override;
|
||||
locationList[index].base.EscapeTimeLimitCoop = override;
|
||||
locationList[index].base.EscapeTimeLimitPVE = override;
|
||||
}
|
||||
|
||||
if (
|
||||
config.startingPmcs &&
|
||||
locationList[index].base.EscapeTimeLimit / defaultEscapeTimes[map] > 2
|
||||
) {
|
||||
logger.warning(
|
||||
`[MOAR] Average EscapeTimeLimit is too high (greater than 2x) to enable starting PMCS\nStarting PMCS has been turned off to prevent performance issues.\n`
|
||||
);
|
||||
config.startingPmcs = false;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
import { ILogger } from "@spt/models/spt/utils/ILogger";
|
||||
import { DependencyContainer } from "tsyringe";
|
||||
import config from "../../config/config.json";
|
||||
import presets from "../../config/Presets.json";
|
||||
import presetWeightings from "../../config/PresetWeightings.json";
|
||||
|
||||
export default function checkPresetLogic(container: DependencyContainer) {
|
||||
const Logger = container.resolve<ILogger>("WinstonLogger");
|
||||
|
||||
for (const key in presetWeightings) {
|
||||
if (presets[key] === undefined) {
|
||||
Logger.error(
|
||||
`\n[MOAR]: No preset found in PresetWeightings.json for preset "${key}" in Presets.json`
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
for (const key in presets) {
|
||||
const preset = presets[key];
|
||||
for (const id in preset) {
|
||||
if (config[id] === undefined) {
|
||||
Logger.error(
|
||||
`\n[MOAR]: No associated key found in config.json called "${id}" for preset "${key}" in Presets.json`
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,160 +0,0 @@
|
|||
import { DependencyContainer } from "tsyringe";
|
||||
import {
|
||||
ISeasonalEventConfig,
|
||||
ISeasonalEvent,
|
||||
} from "@spt/models/spt/config/ISeasonalEventConfig.d";
|
||||
|
||||
import { ConfigServer } from "@spt/servers/ConfigServer";
|
||||
import { ConfigTypes } from "@spt/models/enums/ConfigTypes";
|
||||
import { SeasonalEventService } from "@spt/services/SeasonalEventService";
|
||||
import { zombieTypesCaps } from "../Spawning/utils";
|
||||
|
||||
export const baseZombieSettings = (enabled: boolean, count: number) =>
|
||||
({
|
||||
enabled,
|
||||
name: "zombies",
|
||||
type: "Zombies",
|
||||
startDay: "1",
|
||||
startMonth: "1",
|
||||
endDay: "31",
|
||||
endMonth: "12",
|
||||
settings: {
|
||||
enableSummoning: false,
|
||||
removeEntryRequirement: [],
|
||||
replaceBotHostility: true,
|
||||
zombieSettings: {
|
||||
enabled: true,
|
||||
mapInfectionAmount: {
|
||||
Interchange: count === -1 ? randomNumber100() : count,
|
||||
Lighthouse: count === -1 ? randomNumber100() : count,
|
||||
RezervBase: count === -1 ? randomNumber100() : count,
|
||||
Sandbox: count === -1 ? randomNumber100() : count,
|
||||
Shoreline: count === -1 ? randomNumber100() : count,
|
||||
TarkovStreets: count === -1 ? randomNumber100() : count,
|
||||
Woods: count === -1 ? randomNumber100() : count,
|
||||
bigmap: count === -1 ? randomNumber100() : count,
|
||||
factory4: count === -1 ? randomNumber100() : count,
|
||||
laboratory: count === -1 ? randomNumber100() : count,
|
||||
},
|
||||
disableBosses: [],
|
||||
disableWaves: [],
|
||||
},
|
||||
},
|
||||
} as unknown as ISeasonalEvent);
|
||||
|
||||
const randomNumber100 = () => Math.round(Math.random() * 100);
|
||||
|
||||
export const resetCurrentEvents = (
|
||||
container: DependencyContainer,
|
||||
enabled: boolean,
|
||||
zombieWaveQuantity: number,
|
||||
random: boolean = false
|
||||
) => {
|
||||
const configServer = container.resolve<ConfigServer>("ConfigServer");
|
||||
const eventConfig = configServer.getConfig<ISeasonalEventConfig>(
|
||||
ConfigTypes.SEASONAL_EVENT
|
||||
);
|
||||
|
||||
let percentToShow = random ? -1 : Math.round(zombieWaveQuantity * 100);
|
||||
if (percentToShow > 100) percentToShow = 100;
|
||||
|
||||
eventConfig.events = [baseZombieSettings(enabled, percentToShow)];
|
||||
|
||||
const seasonalEventService = container.resolve<SeasonalEventService>(
|
||||
"SeasonalEventService"
|
||||
) as any;
|
||||
|
||||
// First we need to clear any existing data
|
||||
seasonalEventService.currentlyActiveEvents = [];
|
||||
seasonalEventService.christmasEventActive = false;
|
||||
seasonalEventService.halloweenEventActive = false;
|
||||
// Then re-calculate the cached data
|
||||
seasonalEventService.cacheActiveEvents();
|
||||
// seasonalEventService.addEventBossesToMaps("halloweenzombies");
|
||||
};
|
||||
|
||||
export const setUpZombies = (container: DependencyContainer) => {
|
||||
const configServer = container.resolve<ConfigServer>("ConfigServer");
|
||||
const eventConfig = configServer.getConfig<ISeasonalEventConfig>(
|
||||
ConfigTypes.SEASONAL_EVENT
|
||||
);
|
||||
|
||||
eventConfig.events = [baseZombieSettings(false, 100)];
|
||||
|
||||
// eventConfig.eventBossSpawns = {
|
||||
// zombies: eventConfig.eventBossSpawns.halloweenzombies,
|
||||
// };
|
||||
eventConfig.eventGear[eventConfig.events[0].name] = {};
|
||||
eventConfig.hostilitySettingsForEvent.zombies.default =
|
||||
eventConfig.hostilitySettingsForEvent.zombies.default
|
||||
.filter(({ BotRole }) => !["pmcBEAR", "pmcUSEC"].includes(BotRole))
|
||||
.map((host) => ({
|
||||
...host,
|
||||
AlwaysEnemies: [
|
||||
"infectedAssault",
|
||||
"infectedPmc",
|
||||
"infectedCivil",
|
||||
"infectedLaborant",
|
||||
"infectedTagilla",
|
||||
"pmcBEAR",
|
||||
"pmcUSEC",
|
||||
],
|
||||
AlwaysNeutral: [
|
||||
"marksman",
|
||||
"assault",
|
||||
"bossTest",
|
||||
"bossBully",
|
||||
"followerTest",
|
||||
"bossKilla",
|
||||
"bossKojaniy",
|
||||
"followerKojaniy",
|
||||
"pmcBot",
|
||||
"cursedAssault",
|
||||
"bossGluhar",
|
||||
"followerGluharAssault",
|
||||
"followerGluharSecurity",
|
||||
"followerGluharScout",
|
||||
"followerGluharSnipe",
|
||||
"followerSanitar",
|
||||
"bossSanitar",
|
||||
"test",
|
||||
"assaultGroup",
|
||||
"sectantWarrior",
|
||||
"sectantPriest",
|
||||
"bossTagilla",
|
||||
"followerTagilla",
|
||||
"exUsec",
|
||||
"gifter",
|
||||
"bossKnight",
|
||||
"followerBigPipe",
|
||||
"followerBirdEye",
|
||||
"bossZryachiy",
|
||||
"followerZryachiy",
|
||||
"bossBoar",
|
||||
"followerBoar",
|
||||
"arenaFighter",
|
||||
"arenaFighterEvent",
|
||||
"bossBoarSniper",
|
||||
"crazyAssaultEvent",
|
||||
"peacefullZryachiyEvent",
|
||||
"sectactPriestEvent",
|
||||
"ravangeZryachiyEvent",
|
||||
"followerBoarClose1",
|
||||
"followerBoarClose2",
|
||||
"bossKolontay",
|
||||
"followerKolontayAssault",
|
||||
"followerKolontaySecurity",
|
||||
"shooterBTR",
|
||||
"bossPartisan",
|
||||
"spiritWinter",
|
||||
"spiritSpring",
|
||||
"peacemaker",
|
||||
"skier",
|
||||
],
|
||||
SavagePlayerBehaviour: "Neutral",
|
||||
BearPlayerBehaviour: "AlwaysEnemies",
|
||||
UsecPlayerBehaviour: "AlwaysEnemies",
|
||||
}));
|
||||
|
||||
// console.log(eventConfig.hostilitySettingsForEvent.zombies.default);
|
||||
};
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
import { DependencyContainer } from "tsyringe";
|
||||
import { IPostSptLoadMod } from "@spt/models/external/IPostSptLoadMod";
|
||||
import { IPreSptLoadMod } from "@spt/models/external/IPreSptLoadMod";
|
||||
import { enableBotSpawning } from "../config/config.json";
|
||||
import { buildWaves } from "./Spawning/Spawning";
|
||||
import config from "../config/config.json";
|
||||
import { globalValues } from "./GlobalValues";
|
||||
import { ILogger } from "@spt/models/spt/utils/ILogger";
|
||||
import { setupRoutes } from "./Routes/routes";
|
||||
import checkPresetLogic from "./Tests/checkPresets";
|
||||
|
||||
class Moar implements IPostSptLoadMod, IPreSptLoadMod {
|
||||
preSptLoad(container: DependencyContainer): void {
|
||||
if (enableBotSpawning) setupRoutes(container);
|
||||
}
|
||||
|
||||
postSptLoad(container: DependencyContainer): void {
|
||||
if (enableBotSpawning) {
|
||||
checkPresetLogic(container);
|
||||
globalValues.baseConfig = config;
|
||||
globalValues.overrideConfig = {};
|
||||
const logger = container.resolve<ILogger>("WinstonLogger");
|
||||
logger.info("\n[MOAR]: Starting up, may the bots ever be in your favour!");
|
||||
buildWaves(container);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = { mod: new Moar() };
|
||||
|
|
@ -1,57 +0,0 @@
|
|||
import PresetWeightings from "../config/PresetWeightings.json";
|
||||
import Presets from "../config/Presets.json";
|
||||
import { globalValues } from "./GlobalValues";
|
||||
|
||||
export const saveToFile = (data, filePath) => {
|
||||
var fs = require("fs");
|
||||
let dir = __dirname;
|
||||
let dirArray = dir.split("\\");
|
||||
const directory = `${dirArray[dirArray.length - 4]}/${
|
||||
dirArray[dirArray.length - 3]
|
||||
}/${dirArray[dirArray.length - 2]}/`;
|
||||
fs.writeFile(
|
||||
directory + filePath,
|
||||
JSON.stringify(data, null, 4),
|
||||
function (err) {
|
||||
if (err) throw err;
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
export const cloneDeep = (objectToClone: any) =>
|
||||
JSON.parse(JSON.stringify(objectToClone));
|
||||
|
||||
export const getRandomPresetOrCurrentlySelectedPreset = () => {
|
||||
switch (true) {
|
||||
case globalValues.forcedPreset.toLowerCase() === "custom":
|
||||
return {};
|
||||
case !globalValues.forcedPreset:
|
||||
globalValues.forcedPreset = "random";
|
||||
break;
|
||||
case globalValues.forcedPreset === "random":
|
||||
break;
|
||||
|
||||
default:
|
||||
return Presets[globalValues.forcedPreset];
|
||||
}
|
||||
|
||||
const all = [];
|
||||
|
||||
const itemKeys = Object.keys(PresetWeightings);
|
||||
|
||||
for (const key of itemKeys) {
|
||||
for (let i = 0; i < PresetWeightings[key]; i++) {
|
||||
all.push(key);
|
||||
}
|
||||
}
|
||||
|
||||
const preset: string = all[Math.round(Math.random() * (all.length - 1))];
|
||||
globalValues.currentPreset = preset;
|
||||
return Presets[preset];
|
||||
};
|
||||
|
||||
export const kebabToTitle = (str: string): string =>
|
||||
str
|
||||
.split("-")
|
||||
.map((word) => word.slice(0, 1).toUpperCase() + word.slice(1))
|
||||
.join(" ");
|
||||
Binary file not shown.
|
|
@ -1,11 +1,11 @@
|
|||
[General]
|
||||
gameName=spt
|
||||
modid=0
|
||||
version=d2024.12.31.0
|
||||
version=d2025.1.14.0
|
||||
newestVersion=
|
||||
category="1,"
|
||||
nexusFileStatus=1
|
||||
installationFile=DewardianDev-MOAR-2.6.1.zip
|
||||
installationFile=utjan.PlantTimeModifier-1.2.0.zip
|
||||
repository=Nexus
|
||||
ignoredVersion=
|
||||
comments=
|
||||
|
|
@ -15,7 +15,7 @@ url=
|
|||
hasCustomURL=false
|
||||
lastNexusQuery=
|
||||
lastNexusUpdate=
|
||||
nexusLastModified=2024-12-16T06:46:30Z
|
||||
nexusLastModified=2025-01-15T01:13:31Z
|
||||
nexusCategory=0
|
||||
converted=false
|
||||
validated=false
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2024 acidphantasm
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
|
@ -1,47 +0,0 @@
|
|||
# Welcome to PBS (Progressive Bot System)
|
||||
|
||||
The goal of this mod is to provide a system that allows all bots to progress with the player.
|
||||
|
||||
In vanilla, scavs are a minor annoyance once you reach level 30+. This aims to change that, they may not always have the best ammo but they won't always be rocking crappy shotguns or low level weapons.
|
||||
|
||||
## General Notes
|
||||
|
||||
This mod has only been tested with SAIN, SWAG+Donuts, QuestingBots, and LootingBots.
|
||||
|
||||
This mod may have missing mods or templates for weapons. If you see errors or warning - REPORT THEM.
|
||||
|
||||
This mod may have issues that prevent the game from working - if this happens, REMOVE THE MOD and REPORT THEM.
|
||||
|
||||
Currently all bots that are due to spawn or have spawned are logged inside the \user\mods\acidphantasm-progressivebotsystem\logs\ folder. These logs are wiped when you restart the server. These may be needed to provide support, and are a nice thing to review if you happen to want to know everything that has or will spawn.
|
||||
|
||||
## Put this mod last in your load order. If you have issues and it isn't last, then move it last.
|
||||
|
||||
### Current Features
|
||||
- All AI will level with you.
|
||||
- All AI have a tiering system.
|
||||
- All AI will use modded weapons that you have installed.
|
||||
- USEC spawn with weapons that you would expect from non-Russian forces.
|
||||
- BEAR spawn with weapons that you would expect from Russian forces.
|
||||
- Scavs pull a weapon from the Tier they have spawned from (any weapon available in that tier from USEC or BEAR can be chosen.)
|
||||
- Scavs pull from ammo pools that do not contains meta ammo. I felt this was too easy a source of ammunition. This is subject to change.
|
||||
- Bosses pull weapons from their vanilla pools until a later version.
|
||||
- Bosses & guards pull ammo from a Tier4 pool.
|
||||
- Boss guards pull a Tier4 weapon from the combined pools of USEC & BEAR.
|
||||
|
||||
### Current Tiers
|
||||
- Tier 1 = Lv1-10
|
||||
- Level Variance +/- 5
|
||||
- Tier 2 = Lv11-20
|
||||
- Level Variance +/- 7
|
||||
- Tier 3 = Lv21-30
|
||||
- Level Variance +/- 10
|
||||
- Tier 4 = Lv31-40
|
||||
- Level Variance +/- 15
|
||||
- Tier 5 = Lv41-50
|
||||
- Level Variance +/- 15
|
||||
- Tier 6 = Lv51-60
|
||||
- Level Variance +/- 20
|
||||
- Tier 7 = Lv61-78
|
||||
- Level Variance +/- 30
|
||||
|
||||
## Put this mod last in your load order. If you have issues and it isn't last, then move it last.
|
||||
|
|
@ -1,264 +0,0 @@
|
|||
{
|
||||
// Enable/Disable using a preset
|
||||
// Presets are to be built and shared among APBS users. If enabled, ensure that you set the "presetName" to the name of the folder of your preset
|
||||
"usePreset": false,
|
||||
"presetName": "example",
|
||||
|
||||
// If you enable either of these settings, support will not be granted.
|
||||
// enableModdedWeapons - Any mods adding weapons loaded before APBS will have their weapons & attachments imported.
|
||||
// enableModdedEquipment - Any mods adding equipment loaded before APBS will be imported with their attachments (if any).
|
||||
// enableModdedClothing - Any mods adding clothing loaded before APBS will be imported.
|
||||
// initialTierAppearance - Whatever number (1-7) you put here, will be the first tier that imported mod items will be added to.
|
||||
// pmcWeaponWeights - Weight of modded weapons being added to PMCs
|
||||
// scavWeaponWeights - Weight of modded weapons being added to Scavs
|
||||
// followerWeaponWeights - Weight of modded weapons being added to boss followers (not Goons)
|
||||
// enableSafeGuard - Enables preventing weapon importing from bastardizing vanilla weapons. If you disable this, you will get cursed vanilla weapons.
|
||||
// Higher weights = more often. Lower weights = less often. If you add a LOT of mod weapons, I suggest using a lower value.
|
||||
// REVIEW THE APBS LOGS TO TUNE YOUR CONFIG. (\user\mods\acidphantasm-progressivebotsystem\logs)
|
||||
"enableModdedWeapons": true,
|
||||
"enableModdedEquipment": true,
|
||||
"enableModdedClothing": true,
|
||||
"initalTierAppearance": 3,
|
||||
"pmcWeaponWeights": 10,
|
||||
"scavWeaponWeights": 1,
|
||||
"followerWeaponWeights": 7,
|
||||
"enableSafeGuard": true,
|
||||
|
||||
// Enable/Disable PMC Seasonal Clothing
|
||||
// If true, PMCs will wear seasonal appropriate clothing to blend into the environment better. If disabled, clothing will be tiered by level instead.
|
||||
// If true, modded clothing will not import, regardless of setting, to protect the appearance of appropriate clothing.
|
||||
"seasonalPmcAppearance": true,
|
||||
|
||||
// Enable/Disable Realism Gas Mask Compatibility
|
||||
// APBS automatically detects Realism and adds gas masks to bots due to Radiation Zones. If you dont want this to happen, set to true.
|
||||
"disableRealismGasMasks": false,
|
||||
|
||||
// Looking for a challenge, or maybe just want to chill and wreck some bots?
|
||||
// Enable "onlyChads" to force all bots to be Tier7, or enable "tarkovAndChill" to force all bots to be Tier1
|
||||
// Enabling both will enable chaos mode, bots will pull gear and weapons from completely random Tiers during generation. It's chaos.
|
||||
// Alternatively, enable "blickyMode" to give everyone a blicky. It's actually the real chill mode.
|
||||
// Side note on "blickyMode" - it breaks some boss guards. Don't report it. It's a joke mode. It also won't do anything if either of the other two "modes" are enabled.
|
||||
"onlyChads": false,
|
||||
"tarkovAndChill": false,
|
||||
"blickyMode": false,
|
||||
|
||||
// Enable/Disable specific bot generation
|
||||
// If set to true, it will disable APBS generation for that bot type, if false - will use APBS generation.
|
||||
"disableScavTierGeneration": false,
|
||||
"disablePMCTierGeneration": false,
|
||||
"disableBossTierGeneration": false,
|
||||
"disableBossFollowerTierGeneration": false,
|
||||
"disableRaiderRogueTierGeneration": false,
|
||||
|
||||
// Enable/Disable bots having the chance to roll ammo choice for rig magazines after selecting ammo choice for weapon
|
||||
// "enableBotsToRollAmmoAgain" If set to true, AI PMCs will roll their ammo choice for additional magazines based on the chance configured - if false all magazines will always have the same ammo selected for the weapon.
|
||||
// "chanceToRollAmmoAgain" chance out of 100 that bot will roll ammo again for each subsequent additional magazine they spawn with in their rig.
|
||||
"enableBotsToRollAmmoAgain": true,
|
||||
"chanceToRollAmmoAgain": 50,
|
||||
|
||||
// Enable/Disable custom game version weights for AI PMCs
|
||||
// If set to true, AI PMCs will roll their weights from the values below - if false will use SPT defaults.
|
||||
// The values listed below ARE the SPT defaults (for reference)
|
||||
"gameVersionWeight": false,
|
||||
"standard": 2,
|
||||
"left_behind": 1,
|
||||
"prepare_for_escape": 1,
|
||||
"edge_of_darkness": 4,
|
||||
"unheard_edition": 2,
|
||||
|
||||
// Enable/Disable PMC ammo tier sliding
|
||||
// If set to true, it will enabling a sliding system for PMC ammo pools. If you enable this, the below numbers are the recommended amounts. Tweak as you wish.
|
||||
// Example: "pmcAmmoTierSlideAmount: 1 will allow a Tier5 PMC to "slide" down and pick from a Tier4 ammo pool, if it passes the roll for "slideChance".
|
||||
"enablePMCAmmoTierSliding": false,
|
||||
"slideAmount": 1,
|
||||
"slideChance": 33,
|
||||
|
||||
// Enable/Disable using individual weapon type attachment chances.
|
||||
// If set to true, will allow generation to use individual category based weapon attachment chances, if false - all weapons use the same attachment chance pool.
|
||||
// For Preset Makers:
|
||||
// If the below setting is false, "weaponMods" in the chances.json is the attachment chance rolls used.
|
||||
// If the below setting is true, then you must also fill out each weapons category of chances.
|
||||
"enablePerWeaponTypeAttachmentChances": true,
|
||||
|
||||
// Force weapon stocks
|
||||
// If set to true, will enforce all AI weapons to have stocks, if false - will use APBS values
|
||||
// "stockButtpadChance" will allow dynamic configuration of any butt pads spawning on a stock that can take them.
|
||||
"forceStock": false,
|
||||
"stockButtpadChance": 50,
|
||||
|
||||
// Force weapon dust covers
|
||||
// If set to true, will enforce all AI weapons to have dust covers, if false - will use APBS values
|
||||
"forceDustCover": false,
|
||||
|
||||
// Force weapon mod_scope slot
|
||||
// If set to true, will enforce all AI weapons to have a mod in the mod_scope slot
|
||||
// This slot is *MOSTLY* optics but it's sometimes a laser/flashlight depending on gun, if false - will use APBS values
|
||||
"forceScopeSlot": false,
|
||||
|
||||
// Force weapon muzzles
|
||||
// "forceMuzzle" If set to true, will enforce all AI PMC weapons to have muzzles based on the chance configured, if false - will use APBS values
|
||||
// "muzzleChance" chance of muzzle being selected (overrides preset and database values) for each tier [ T1, T2, T3, T4, T5, T6, T7 ]
|
||||
// "forceChildrenMuzzle" If set to true, enforces muzzle children to also spawn (so if it rolls to pick a threaded adapter, the child silencer will be forced to spawn), if false - will roll those slots independently
|
||||
// "forceChildrenMuzzle" works regardless of you setting forceMuzzle or not - if you just want to see more children adapters spawn, just set this true
|
||||
"forceMuzzle": false,
|
||||
"muzzleChance": [ 10, 25, 40, 55, 65, 75, 75 ],
|
||||
"forceChildrenMuzzle": false,
|
||||
|
||||
// Force weapon mod count limits
|
||||
// If set to true, will enforce all AI weapons to be limited to the scopeLimit & tacticalLimit, if disabled the generation may go wild
|
||||
"forceWeaponModLimits": true,
|
||||
"scopeLimit": 2,
|
||||
"tacticalLimit": 1,
|
||||
|
||||
// Enable/disable AI having T-7 thermal goggles
|
||||
// If set to true, will allow AI to spawn with T-7 thermal goggles, if false they will not.
|
||||
// "startTier" controls what tier the goggles will be available in. "5c110624d174af029e69734c"
|
||||
"enableT7Thermals": false,
|
||||
"startTier": 6,
|
||||
|
||||
// Enable/Disable PMC/scav Loot
|
||||
// If set to true, will allow PMCs/scavs to have backpack/rig/pocket loot. If disabled, they will not.
|
||||
// Add ItemIDs to the blacklist array to prevent them from spawning
|
||||
// Blacklist example "pmcLootBlacklistItems": ["6711039f9e648049e50b3307", "5c0e531286f7747fa54205c2"]
|
||||
"pmcLoot": false,
|
||||
"pmcLootBlacklistItems": [ "6711039f9e648049e50b3307" ],
|
||||
"scavLoot": true,
|
||||
|
||||
// Enable/Disabe Scav specific tiering options
|
||||
// "enableScavAttachmentTiering" - If set to true, will allow scavs to get additional weapon/equipment attachments as they tier up. If disabled, they will always have tier 1 attachments.
|
||||
// "enableScavEqualChanceEquipmentTiering" - If set to true, will allow scavs to have equal chances for any equipment in their pools. If disabled, they will use APBS defaults (low chances for good gear).
|
||||
"enableScavAttachmentTiering": false,
|
||||
"enableScavEqualEquipmentTiering": false,
|
||||
|
||||
// Enable/Disable adding keys to Scav Backpack loot
|
||||
// Pick -ONE- option below and enable it if you would like to expand the backpack key pool for scavs.
|
||||
// All keys include every key/keycard.
|
||||
// Mechanical keys are keys that aren't keycards. <- Recommended, if you are going to enable something
|
||||
// Keycards include ALL keycards.
|
||||
"addAllKeysToScavs": false,
|
||||
"addOnlyMechanicalKeysToScavs": false,
|
||||
"addOnlyKeyCardsToScavs": false,
|
||||
|
||||
// Configure Weapon Durability per AI Bot Type
|
||||
// Numbers are as follows: [ minDurability, maxDurability, minDelta, maxDelta ]
|
||||
// Example: [ 50, 90, 0, 25 ]
|
||||
// Ex ctd: Minimum possible "max" durability would be 50%, the highest possible "max" durability is 90%
|
||||
// Ex ctd: Whatever value is picked between 50% & 90% will be the "max" durability of the weapon ("max" is the limit you can repair the weapon to)
|
||||
// Ex ctd: After the max durability is selected, it will roll for the actual current durability which will be between 0-25% lower than the max.
|
||||
// Ex ctd: Weapons are safeguarded to never fall below 40%.
|
||||
"scavWeaponDurability": [ 50, 90, 0, 20 ],
|
||||
"pmcWeaponDurability": [ 95, 100, 0, 5 ],
|
||||
"bossWeaponDurability": [ 80, 100, 0, 20 ],
|
||||
"guardWeaponDurability": [ 80, 100, 0, 20 ],
|
||||
"raiderWeaponDurability": [ 80, 100, 0, 20 ],
|
||||
|
||||
// Enable/Disable custom plate chances
|
||||
// If you REALLY don't like APBS plate chances then you can adjust it here.
|
||||
// If set to true, will change all AI plate chances to the values you set below, if false - will use APBS values
|
||||
// If set to true, Main Plates = front/back and Side Plates = left/right, if false - APBS uses individual plate chances for front/back and sides.
|
||||
// Values are configured for each tier, example: [ Tier1, Tier2, Tier3, Tier4, Tier5, Tier6, Tier7 ]
|
||||
"enableCustomPlateChances": false,
|
||||
"scavMainPlateChance": [ 25, 25, 25, 25, 25, 25, 25 ],
|
||||
"scavSidePlateChance": [ 25, 25, 25, 25, 25, 25, 25 ],
|
||||
"pmcMainPlateChance": [ 65, 75, 90, 90, 95, 100, 100 ],
|
||||
"pmcSidePlateChance": [ 15, 25, 50, 75, 90, 95, 100 ],
|
||||
"bossMainPlateChance": [ 75, 75, 75, 75, 75, 75, 75 ],
|
||||
"bossSidePlateChance": [ 50, 50, 50, 50, 50, 50, 50 ],
|
||||
"guardMainPlateChance": [ 75, 75, 75, 75, 75, 75, 75 ],
|
||||
"guardSidePlateChance": [ 75, 75, 75, 75, 75, 75, 75 ],
|
||||
"raiderMainPlateChance": [ 75, 75, 75, 75, 75, 75, 75 ],
|
||||
"raiderSidePlateChance": [ 75, 75, 75, 75, 75, 75, 75 ],
|
||||
|
||||
// Enable/Disable randomization of medical and food resource values
|
||||
// If set to true, all scavs and PMCs will have randomized resource values, based on the chances you set below, for medical and food items.
|
||||
// If disabled the items will always be full resource values.
|
||||
// Explanation: "pmcMedRates": [ Chance for full resource value available, Minimum percent of item randomized between min and max resource ]
|
||||
// Example.. "pmcMedRates": [ 65, 20 ] --- AFAK on a PMC has a 65% chance to be 400/400 and 35% chance to be between 0% and 80% used (it would spawn somewhere between 80/400 to 400/400).
|
||||
"enableConsumableResourceRandomization": true,
|
||||
"scavFoodRates": [ 10, 25 ],
|
||||
"scavMedRates": [ 10, 25 ],
|
||||
"pmcFoodRates": [ 10, 25 ],
|
||||
"pmcMedRates": [ 10, 25 ],
|
||||
|
||||
// Blacklist specific ammo types from all AI -- USE "https://db.sp-tarkov.com/" to get the item _id
|
||||
// Configure per tier blacklists
|
||||
// Example.. this will blacklist 9x19 RIP and 5.45x39mm PP from all bots in Tier1
|
||||
// tier1AmmoBlacklist: [ "5c0d56a986f774449d5de529", "56dff2ced2720bb4668b4567" ]
|
||||
"tier1AmmoBlacklist": [],
|
||||
"tier2AmmoBlacklist": [],
|
||||
"tier3AmmoBlacklist": [],
|
||||
"tier4AmmoBlacklist": [],
|
||||
"tier5AmmoBlacklist": [],
|
||||
"tier6AmmoBlacklist": [],
|
||||
"tier7AmmoBlacklist": [],
|
||||
|
||||
// Blacklist specific equipment from all AI -- USE "https://db.sp-tarkov.com/" to get the item _id
|
||||
// Configure per tier blacklists
|
||||
// Example.. this will blacklist BlackRock chest rig and GSSh-01 headset from all bots in Tier1
|
||||
// tier1EquipmentBlacklist: [ "5648a69d4bdc2ded0b8b457b", "5b432b965acfc47a8774094e" ]
|
||||
"tier1EquipmentBlacklist": [],
|
||||
"tier2EquipmentBlacklist": [],
|
||||
"tier3EquipmentBlacklist": [],
|
||||
"tier4EquipmentBlacklist": [],
|
||||
"tier5EquipmentBlacklist": [],
|
||||
"tier6EquipmentBlacklist": [],
|
||||
"tier7EquipmentBlacklist": [],
|
||||
|
||||
// Blacklist specific weapons from all AI -- USE "https://db.sp-tarkov.com/" to get the item _id
|
||||
// Configure per tier blacklists
|
||||
// Example.. this will blacklist PKP and PKM from all bots in Tier1
|
||||
// tier1EquipmentBlacklist: [ "64ca3d3954fc657e230529cc", "64637076203536ad5600c990" ]
|
||||
"tier1WeaponBlacklist": [],
|
||||
"tier2WeaponBlacklist": [],
|
||||
"tier3WeaponBlacklist": [],
|
||||
"tier4WeaponBlacklist": [],
|
||||
"tier5WeaponBlacklist": [],
|
||||
"tier6WeaponBlacklist": [],
|
||||
"tier7WeaponBlacklist": [],
|
||||
|
||||
// Blacklist specific attachments from all AI -- USE "https://db.sp-tarkov.com/" to get the item _id
|
||||
// Configure per tier blacklists - very useful setting for those that play with modded weapon/equipment importing
|
||||
// Example.. this will blacklist "AK 7.62x39 aluminium 10-round magazine" and "Ops-Core SLAAP Armor Helmet Plate" from all bots in Tier1
|
||||
// tier1EquipmentBlacklist: [ "5b1fd4e35acfc40018633c39", "5c0e66e2d174af02a96252f4" ]
|
||||
"tier1AttachmentBlacklist": [],
|
||||
"tier2AttachmentBlacklist": [],
|
||||
"tier3AttachmentBlacklist": [],
|
||||
"tier4AttachmentBlacklist": [],
|
||||
"tier5AttachmentBlacklist": [],
|
||||
"tier6AttachmentBlacklist": [],
|
||||
"tier7AttachmentBlacklist": [],
|
||||
|
||||
// LevelDelta's are the lowest and highest levels that AI can spawn relative to the player's level.
|
||||
// Examples:
|
||||
// "tier1LevelDelta": [ 5, 5 ] --- While you are Tier1 (lv1-10), all AI will be leveled -5 to +5 of your level.
|
||||
// "tier2LevelDelta": [ 10, 25 ] --- While you are Tier2 (lv11-20), all AI will be leveled -10 to +25 of your level.
|
||||
// "enableCustomLevelDeltas" if true will use the values you set below, otherwise they will use APBS values
|
||||
// THE BELOW VALUES BY DEFAULT ARE APBS DEFAULTS
|
||||
// IF YOU WANT EVERY TIER AT EVERY LEVEL, SET ALL OF THESE TO: [ 79, 79 ]
|
||||
"enableCustomLevelDeltas": true,
|
||||
"tier1LevelDelta": [ 10, 5 ], // 1-10
|
||||
"tier2LevelDelta": [ 20, 5 ], // 11-20
|
||||
"tier3LevelDelta": [ 25, 7 ], // 21-30
|
||||
"tier4LevelDelta": [ 35, 10 ], // 31-40
|
||||
"tier5LevelDelta": [ 40, 15 ], // 41-50
|
||||
"tier6LevelDelta": [ 50, 20 ], // 51-60
|
||||
"tier7LevelDelta": [ 55, 20 ], // 61-79
|
||||
|
||||
// LevelDelta's are the lowest and highest levels that AI can spawn relative to the player's level.
|
||||
// Examples:
|
||||
// "tier2ScavLevelDelta": [ 10, -10 ] --- While you are Tier2 (lv11-20), scavs will be leveled -10 to -10 of your level. (always 10 levels behind you)
|
||||
// "tier3ScavLevelDelta": [ 30, -10 ] --- While you are Tier3 (lv21-30), scavs will be leveled -30 to -10 of your level. (always 10 to 30 levels behind you)
|
||||
// "enableScavCustomLevelDeltas" if true will use the values you set below, otherwise they will use APBS values
|
||||
// Default values below will always spawn scavs that are at least 1 tier below you unless you are Tier1.
|
||||
"enableScavCustomLevelDeltas": false,
|
||||
"tier1ScavLevelDelta": [ 10, 0 ], // 1-10
|
||||
"tier2ScavLevelDelta": [ 10, -10 ], // 11-20
|
||||
"tier3ScavLevelDelta": [ 15, -10 ], // 21-30
|
||||
"tier4ScavLevelDelta": [ 20, -10 ], // 31-40
|
||||
"tier5ScavLevelDelta": [ 30, -10 ], // 41-50
|
||||
"tier6ScavLevelDelta": [ 40, -10 ], // 51-60
|
||||
"tier7ScavLevelDelta": [ 50, -10 ], // 61-79
|
||||
|
||||
// Enable/disable debug logging
|
||||
"enableDebugLog": true
|
||||
}
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
{
|
||||
"name": "Acids Progressive Bot System",
|
||||
"version": "1.4.0",
|
||||
"sptVersion": "~3.10",
|
||||
"loadBefore": [],
|
||||
"loadAfter": [
|
||||
"DanW-SPTQuestingBots"
|
||||
],
|
||||
"incompatibilities": [],
|
||||
"isBundleMod": false,
|
||||
"main": "src/mod.js",
|
||||
"scripts": {
|
||||
"setup": "npm i",
|
||||
"build": "node ./build.mjs",
|
||||
"buildinfo": "node ./build.mjs --verbose"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "20.11",
|
||||
"@typescript-eslint/eslint-plugin": "7.2",
|
||||
"@typescript-eslint/parser": "7.2",
|
||||
"archiver": "^6.0",
|
||||
"eslint": "8.57",
|
||||
"fs-extra": "11.2",
|
||||
"ignore": "^5.2",
|
||||
"tsyringe": "4.8.0",
|
||||
"typescript": "5.4",
|
||||
"winston": "3.12"
|
||||
},
|
||||
"author": "acidphantasm",
|
||||
"contributors": [],
|
||||
"license": "MIT"
|
||||
}
|
||||
|
|
@ -1,479 +0,0 @@
|
|||
{
|
||||
"scavAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5efb0fc6aeb21837e749c801": 1,
|
||||
"5efb0d4f4bc50b58e81710f3": 3
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 1
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6772a4b936088465b17c": 2,
|
||||
"5d6e6806a4b936088465b17e": 2,
|
||||
"5d6e67fba4b9361bc73bc779": 2,
|
||||
"560d5e524bdc2d25448b4571": 2,
|
||||
"5d6e6869a4b9361c140bcfde": 1,
|
||||
"5d6e68b3a4b9361bca7e50b5": 1,
|
||||
"58820d1224597753c90aeb13": 1,
|
||||
"5d6e68dea4b9361bcc29e659": 1,
|
||||
"5d6e6891a4b9361bd473feea": 1,
|
||||
"5d6e68e6a4b9361c140bcfe0": 1,
|
||||
"5d6e689ca4b9361bc8618956": 1
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e695fa4b936359b35d852": 2,
|
||||
"5d6e69b9a4b9361bc8618958": 2,
|
||||
"5a38ebd9c4a282000d722a5b": 2,
|
||||
"5d6e69c7a4b9360b6c0d54e4": 1,
|
||||
"5d6e6a53a4b9361bd473feec": 1
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 3,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 1
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6658b86f77411d949b250": 3,
|
||||
"59e6542b86f77411dc52a77a": 1
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26812d4351e003201fef1": 3,
|
||||
"5ba26844d4351e00334c9475": 1
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff216d2720bbd668b4568": 1,
|
||||
"56dff338d2720bbd668b4569": 4,
|
||||
"56dff421d2720b5f5a8b4567": 4,
|
||||
"56dff4ecd2720b5f5a8b4568": 2,
|
||||
"56dff4a2d2720bbd668b456a": 4,
|
||||
"56dff0bed2720bb0668b4567": 3,
|
||||
"56dff3afd2720bba668b4567": 1
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"59e6927d86f77411da468256": 2,
|
||||
"59e6918f86f7746c9f75e849": 2,
|
||||
"59e68f6f86f7746c9f75e846": 4,
|
||||
"59e6920f86f77411d82aa167": 5,
|
||||
"54527a984bdc2d4e668b4567": 1
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc86832d7f00c000d3a6e6c": 2,
|
||||
"5cc80f79e4a949033c7343b2": 3,
|
||||
"5cc86840d7f00c002412c56c": 3,
|
||||
"5cc80f8fe4a949033b0224a2": 1,
|
||||
"5cc80f53e4a949000e1ea4f8": 1
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 1
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"573602322459776445391df1": 2,
|
||||
"573601b42459776410737435": 2,
|
||||
"5735fdcd2459776445391d61": 1,
|
||||
"5736026a245977644601dc61": 1
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 1,
|
||||
"6196364158ef8c428c287d9f": 6,
|
||||
"5fbe3ffdf8b6a877a729ea82": 3
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"59e4d3d286f774176a36250a": 2,
|
||||
"64b7af734b75259c590fa895": 2,
|
||||
"64b7af5a8532cf95ee0a0dbd": 6,
|
||||
"59e4d24686f7741776641ac7": 4,
|
||||
"59e4cf5286f7741778269d8a": 2,
|
||||
"5656d7c34bdc2d9d198b4587": 1
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e88277cce2b522ff2b1": 2,
|
||||
"5e023e6e34d52a55c3304f71": 2,
|
||||
"5e023e53d4353e3302577c4c": 1
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"64b8f7c241772715af0f9c3d": 2,
|
||||
"64b8f7b5389d7ffd620ccba2": 2,
|
||||
"64b8f7968532cf95ee0a0dbf": 2,
|
||||
"5e023cf8186a883be655e54f": 2,
|
||||
"5887431f2459777e1612938f": 1
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 2,
|
||||
"5fc382c1016cce60e8341b20": 1
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"5737218f245977612125ba51": 5,
|
||||
"57372140245977611f70ee91": 5,
|
||||
"5737207f24597760ff7b25f2": 2,
|
||||
"573719762459775a626ccbc1": 3,
|
||||
"57371f8d24597761006c6a81": 3,
|
||||
"57371f2b24597761224311f1": 5,
|
||||
"57371eb62459776125652ac1": 1,
|
||||
"57371b192459775a9f58a5e0": 1,
|
||||
"57371e4124597760ff7b25f1": 1
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5efb0e16aeb21837e749c7ff": 1,
|
||||
"58864a4f2459770fcc257101": 7,
|
||||
"5a3c16fe86f77452b62de32a": 12,
|
||||
"5c3df7d588a4501f290594e5": 6,
|
||||
"64b7bbb74b75259c590fa897": 4,
|
||||
"56d59d3ad2720bdb418b4577": 2
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a26ac06c4a282000c5a90a8": 5,
|
||||
"5a26abfac4a28232980eabff": 3,
|
||||
"5a269f97c4a282000b151807": 1
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c40bdd19b369e1e53d1": 5,
|
||||
"62330bfadc5883093563729b": 3,
|
||||
"62330c18744e5e31df12f516": 1
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"6576f96220d53a5b8f3e395e": 7,
|
||||
"57a0dfb82459774d3078b56c": 5,
|
||||
"5c0d668f86f7747ccb7f13b2": 1
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 10,
|
||||
"66a0d1f88486c69fce00fdf6": 1
|
||||
}
|
||||
},
|
||||
"pmcAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5ea2a8e200685063ec28c05a": 1,
|
||||
"5efb0fc6aeb21837e749c801": 8,
|
||||
"5efb0d4f4bc50b58e81710f3": 40,
|
||||
"5e81f423763d9f754677bf2e": 15
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 45
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6806a4b936088465b17e": 10,
|
||||
"5c0d591486f7744c505b416f": 3,
|
||||
"5d6e68d1a4b93622fe60e845": 3,
|
||||
"5d6e6869a4b9361c140bcfde": 2,
|
||||
"5d6e68b3a4b9361bca7e50b5": 4,
|
||||
"58820d1224597753c90aeb13": 6,
|
||||
"5d6e68dea4b9361bcc29e659": 8,
|
||||
"5d6e6891a4b9361bd473feea": 12,
|
||||
"5d6e68e6a4b9361c140bcfe0": 12,
|
||||
"5d6e689ca4b9361bc8618956": 9
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e695fa4b936359b35d852": 8,
|
||||
"5d6e69b9a4b9361bc8618958": 8,
|
||||
"5a38ebd9c4a282000d722a5b": 8,
|
||||
"5d6e69c7a4b9360b6c0d54e4": 10,
|
||||
|
||||
"5d6e6a5fa4b93614ec501745": 3,
|
||||
"5d6e6a53a4b9361bd473feec": 3
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 10,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 2
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6658b86f77411d949b250": 20,
|
||||
"59e6542b86f77411dc52a77a": 25,
|
||||
"59e655cb86f77411dc52a77b": 8
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26812d4351e003201fef1": 50,
|
||||
"5ba26844d4351e00334c9475": 50
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff216d2720bbd668b4568": 1,
|
||||
"56dff338d2720bbd668b4569": 10,
|
||||
"56dff421d2720b5f5a8b4567": 10,
|
||||
"56dff4ecd2720b5f5a8b4568": 15,
|
||||
"56dff4a2d2720bbd668b456a": 15,
|
||||
"56dff0bed2720bb0668b4567": 35,
|
||||
"56dff3afd2720bba668b4567": 45
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"59e6927d86f77411da468256": 10,
|
||||
"59e6918f86f7746c9f75e849": 20,
|
||||
"59e68f6f86f7746c9f75e846": 45,
|
||||
"59e6920f86f77411d82aa167": 50,
|
||||
"54527a984bdc2d4e668b4567": 20
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc86832d7f00c000d3a6e6c": 10,
|
||||
"5cc80f79e4a949033c7343b2": 19,
|
||||
"5cc86840d7f00c002412c56c": 24,
|
||||
"5cc80f8fe4a949033b0224a2": 13,
|
||||
"5cc80f53e4a949000e1ea4f8": 9
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 1
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"573602322459776445391df1": 6,
|
||||
"573601b42459776410737435": 10,
|
||||
"5735fdcd2459776445391d61": 18,
|
||||
"5736026a245977644601dc61": 10,
|
||||
"573603c924597764442bd9cb": 4,
|
||||
"573603562459776430731618": 1
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 9,
|
||||
"6196364158ef8c428c287d9f": 19,
|
||||
"5fbe3ffdf8b6a877a729ea82": 14
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"59e4d3d286f774176a36250a": 3,
|
||||
"64b7af734b75259c590fa895": 10,
|
||||
"64b7af5a8532cf95ee0a0dbd": 20,
|
||||
"59e4d24686f7741776641ac7": 25,
|
||||
"59e4cf5286f7741778269d8a": 35,
|
||||
"5656d7c34bdc2d9d198b4587": 15
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e88277cce2b522ff2b1": 10,
|
||||
"5e023e6e34d52a55c3304f71": 40,
|
||||
"5e023e53d4353e3302577c4c": 50
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"64b8f7c241772715af0f9c3d": 9,
|
||||
"64b8f7b5389d7ffd620ccba2": 14,
|
||||
"64b8f7968532cf95ee0a0dbf": 16,
|
||||
"5e023cf8186a883be655e54f": 20,
|
||||
"5887431f2459777e1612938f": 14
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 95,
|
||||
"5fc382c1016cce60e8341b20": 5
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"5737218f245977612125ba51": 2,
|
||||
"57372140245977611f70ee91": 6,
|
||||
"5737207f24597760ff7b25f2": 6,
|
||||
"573719762459775a626ccbc1": 6,
|
||||
"57371f8d24597761006c6a81": 9,
|
||||
"57371f2b24597761224311f1": 9,
|
||||
"57371eb62459776125652ac1": 9,
|
||||
"57371b192459775a9f58a5e0": 18,
|
||||
"57371e4124597760ff7b25f1": 23,
|
||||
"5737201124597760fc4431f1": 18,
|
||||
"573720e02459776143012541": 9,
|
||||
"573718ba2459775a75491131": 6
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5c0d56a986f774449d5de529": 1,
|
||||
"5efb0e16aeb21837e749c7ff": 7,
|
||||
"58864a4f2459770fcc257101": 20,
|
||||
"5a3c16fe86f77452b62de32a": 30,
|
||||
"5c3df7d588a4501f290594e5": 40,
|
||||
"64b7bbb74b75259c590fa897": 40,
|
||||
"56d59d3ad2720bdb418b4577": 25
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a26ac06c4a282000c5a90a8": 9,
|
||||
"5a26abfac4a28232980eabff": 22,
|
||||
"5a269f97c4a282000b151807": 17
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c40bdd19b369e1e53d1": 15,
|
||||
"62330bfadc5883093563729b": 12
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"6576f96220d53a5b8f3e395e": 19,
|
||||
"57a0dfb82459774d3078b56c": 27,
|
||||
"5c0d668f86f7747ccb7f13b2": 13
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 50,
|
||||
"66a0d1f88486c69fce00fdf6": 30
|
||||
}
|
||||
},
|
||||
"bossAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5ea2a8e200685063ec28c05a": 4,
|
||||
"5efb0fc6aeb21837e749c801": 1,
|
||||
"5efb0d4f4bc50b58e81710f3": 10,
|
||||
"5e81f423763d9f754677bf2e": 18,
|
||||
"5efb0cabfb3e451d70735af5": 10
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 3,
|
||||
"5cadf6ddae9215051e1c23b2": 12,
|
||||
"5cadf6eeae921500134b2799": 8
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6806a4b936088465b17e": 7,
|
||||
"64b8ee384b75259c590fa89b": 4,
|
||||
"5d6e6911a4b9361bd5780d52": 3,
|
||||
"5c0d591486f7744c505b416f": 5,
|
||||
"5d6e6891a4b9361bd473feea": 2,
|
||||
"5d6e68e6a4b9361c140bcfe0": 6,
|
||||
"5d6e689ca4b9361bc8618956": 8,
|
||||
"5d6e68c4a4b9361b93413f79": 8,
|
||||
"5d6e68a8a4b9360b6c0d54e2": 3
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e69c7a4b9360b6c0d54e4": 1,
|
||||
"5d6e6a53a4b9361bd473feec": 4,
|
||||
"5d6e6a05a4b93618084f58d0": 5,
|
||||
"5d6e6a42a4b9364f07165f52": 5
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 2,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 4,
|
||||
"5e85aa1a988a8701445df1f5": 4
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6658b86f77411d949b250": 1,
|
||||
"59e6542b86f77411dc52a77a": 2,
|
||||
"59e655cb86f77411dc52a77b": 10,
|
||||
"5f0596629e22f464da6bbdd9": 8
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26812d4351e003201fef1": 2,
|
||||
"5ba26844d4351e00334c9475": 4,
|
||||
"5ba2678ad4351e44f824b344": 15,
|
||||
"64b6979341772715af0f9c39": 15,
|
||||
"5ba26835d4351e0035628ff5": 8
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff3afd2720bba668b4567": 6,
|
||||
"56dff2ced2720bb4668b4567": 12,
|
||||
"56dff061d2720bb5668b4567": 20,
|
||||
"61962b617c6c7b169525f168": 12,
|
||||
"56dfef82d2720bbd668b4567": 9,
|
||||
"56dff026d2720bb8668b4567": 8,
|
||||
"5c0d5e4486f77478390952fe": 4
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"5c0d5ae286f7741e46554302": 1,
|
||||
"54527a984bdc2d4e668b4567": 7,
|
||||
"60194943740c5d77f6705eea": 20,
|
||||
"59e6906286f7746c9f75e847": 26,
|
||||
"54527ac44bdc2d36668b4567": 30,
|
||||
"59e690b686f7746c9f75e848": 7,
|
||||
"601949593ae8f707c4608daa": 5
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc80f8fe4a949033b0224a2": 5,
|
||||
"5cc80f53e4a949000e1ea4f8": 21,
|
||||
"5cc80f67e4a949035e43bbba": 15,
|
||||
"5cc80f38e4a949001152b560": 12
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 10,
|
||||
"6529243824cbe3c74a05e5c1": 5
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"5736026a245977644601dc61": 5,
|
||||
"573603c924597764442bd9cb": 10,
|
||||
"573603562459776430731618": 10
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 7,
|
||||
"5fbe3ffdf8b6a877a729ea82": 6,
|
||||
"619636be6db0f2477964e710": 23,
|
||||
"64b8725c4b75259c590fa899": 20,
|
||||
"5fd20ff893a8961fc660a954": 9
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"59e4cf5286f7741778269d8a": 4,
|
||||
"5656d7c34bdc2d9d198b4587": 28,
|
||||
"64b7af434b75259c590fa893": 33,
|
||||
"59e0d99486f7744a32234762": 20,
|
||||
"601aa3d2b2bcb34913271e6d": 12
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e53d4353e3302577c4c": 6,
|
||||
"58dd3ad986f77403051cba8f": 27,
|
||||
"5a608bf24f39f98ffc77720e": 19,
|
||||
"5a6086ea4f39f99cd479502f": 9,
|
||||
"5efb0c1bd79ff02a1f5e68d9": 2
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"5e023cf8186a883be655e54f": 3,
|
||||
"5887431f2459777e1612938f": 20,
|
||||
"59e77a2386f7742ee578960a": 25,
|
||||
"5e023d34e8a400319a28ed44": 22,
|
||||
"560d61e84bdc2da74d8b4571": 15,
|
||||
"5e023d48186a883be655e551": 10
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 5,
|
||||
"5fc382c1016cce60e8341b20": 8,
|
||||
"5fc275cf85fd526b824a571a": 8,
|
||||
"5fc382a9d724d907e2077dab": 5
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"57371e4124597760ff7b25f1": 3,
|
||||
"5737201124597760fc4431f1": 5,
|
||||
"573720e02459776143012541": 12,
|
||||
"573718ba2459775a75491131": 18,
|
||||
"57371aab2459775a77142f22": 12,
|
||||
"573719df2459775a626ccbc2": 10
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5c0d56a986f774449d5de529": 9,
|
||||
"5efb0e16aeb21837e749c7ff": 5,
|
||||
"5a3c16fe86f77452b62de32a": 4,
|
||||
"56d59d3ad2720bdb418b4577": 18,
|
||||
"5c925fa22e221601da359b7b": 22,
|
||||
"5efb0da7a29a85116f6ea05f": 9
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a269f97c4a282000b151807": 8,
|
||||
"6576f93989f0062e741ba952": 18,
|
||||
"5a26ac0ec4a28200741e1e18": 18,
|
||||
"6576f4708ca9c4381d16cd9d": 8
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c18744e5e31df12f516": 9,
|
||||
"62330b3ed4dc74626d570b95": 6
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"5c0d668f86f7747ccb7f13b2": 9,
|
||||
"61962d879bb3d20b0946d385": 25,
|
||||
"57a0e5022459774d1673f889": 25,
|
||||
"5c0d688c86f77413ae3407b2": 12
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 3,
|
||||
"66a0d1f88486c69fce00fdf6": 30,
|
||||
"66a0d1e0ed648d72fe064d06": 25,
|
||||
"668fe62ac62660a5d8071446": 12
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,411 +0,0 @@
|
|||
{
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 5,
|
||||
"66546f823b51a4d21e0d17d7": 1,
|
||||
"5d1f56a686f7744bce0ee9eb": 2
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 5,
|
||||
"5d1f58ed86f7744bcb0acd1c": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 5,
|
||||
"66546f823b51a4d21e0d17d7": 1,
|
||||
"5d1f565786f7743f8362bcd5": 2
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 5,
|
||||
"5d1f58bd86f7744bce0ee9ef": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"springEarly": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"660437e57502eca33a08caca": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5d1f56ff86f7743f8362bcd7": 1,
|
||||
"5d1f56a686f7744bce0ee9eb": 2,
|
||||
"5e9da17386f774054b6f79a3": 2,
|
||||
"5e4bb35286f77406a511c9bc": 2,
|
||||
"5d1f56e486f7744bce0ee9ed": 2
|
||||
},
|
||||
"feet": {
|
||||
"642d4d8eb6b75d4c89077cf9": 1,
|
||||
"5fcf940bce1ba36a513bb9cc": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"6295e944e9de5e7b3751c4da": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"5e4bb3b586f77406812bd579": 1,
|
||||
"5d1f590486f7744bcd13459e": 3,
|
||||
"5d1f58ed86f7744bcb0acd1c": 3
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"657058fddf9b3231400e9188": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5d1f567786f7744bcc04874f": 1,
|
||||
"5e9d9fa986f774054d6b89f2": 1,
|
||||
"5f5e401747344c2e4f6c42c5": 1,
|
||||
"642e8ae07e17c882400c4f87": 2,
|
||||
"5d1f568486f7744bca3f0b98": 2,
|
||||
"66acec1dc94f4bf5bc063a16": 2,
|
||||
"5e4bb31586f7740695730568": 2
|
||||
},
|
||||
"feet": {
|
||||
"5d1f58bd86f7744bce0ee9ef": 1,
|
||||
"6377315993a3b4967208e437": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"5d1f58cb86f7744bca3f0b9a": 1,
|
||||
"5d1f58a086f7743f8362bcd9": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"5f5e40400bc58666c37e7819": 1,
|
||||
"66acebd4ede86671bb09584b": 3,
|
||||
"5d1f58ab86f7743014162042": 3
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"spring": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"5d4da0cb86f77450fe0a6629": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5f5e4075df4f3100376a8138": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 1,
|
||||
"6033a3fee29c9f6c9b14e74e": 1,
|
||||
"660436487502eca33a08cac8": 1,
|
||||
"6571cad4c8673f00290f5657": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"642d6941ff5ecad7810a8a61": 1,
|
||||
"5e9dcadd86f7743e20652f23": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 1,
|
||||
"5d1f564b86f7744bcb0acd16": 1,
|
||||
"6295e698e9de5e7b3751c47a": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5fce3e47fe40296c1d5fd784": 1,
|
||||
"617bca4b4013b06b0b78df2a": 1,
|
||||
"5df89f1f86f77412631087ea": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 1,
|
||||
"5d1f588e86f7744bcc048753": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"6033a3d8ed2e0509b15f9031": 1,
|
||||
"642e71620a69698d1b049f0a": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"642eea6f881906a7fe086841": 1,
|
||||
"5df89f8f86f77412672a1e38": 1,
|
||||
"5e9dc97c86f774054c19ac9a": 1,
|
||||
"5e4bb39386f774067f79de05": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"summer": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 1,
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"5d4da0cb86f77450fe0a6629": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"642c18b8a6a0660b560fb31c": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5f5e4075df4f3100376a8138": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 1,
|
||||
"6033a3fee29c9f6c9b14e74e": 1,
|
||||
"660436487502eca33a08cac8": 1,
|
||||
"6571cad4c8673f00290f5657": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"5d1f593286f7743014162044": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"642d6941ff5ecad7810a8a61": 1,
|
||||
"5e9dcadd86f7743e20652f23": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 1,
|
||||
"5d1f564b86f7744bcb0acd16": 1,
|
||||
"6295e698e9de5e7b3751c47a": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5fce3e47fe40296c1d5fd784": 1,
|
||||
"617bca4b4013b06b0b78df2a": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"5df89f1f86f77412631087ea": 1,
|
||||
"5e9d9fa986f774054d6b89f2": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 1,
|
||||
"5d1f588e86f7744bcc048753": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"6033a3d8ed2e0509b15f9031": 1,
|
||||
"642e71620a69698d1b049f0a": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"642eea6f881906a7fe086841": 1,
|
||||
"5df89f8f86f77412672a1e38": 1,
|
||||
"5e9dc97c86f774054c19ac9a": 1,
|
||||
"5e4bb39386f774067f79de05": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"autumn": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"637b945722e2a933ed0e33c8": 1,
|
||||
"6571cb0923aa6d72760a7f8f": 1,
|
||||
"6033a35f80ae5e2f970ba6bb": 1,
|
||||
"5d1f56e486f7744bce0ee9ed": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"660437e57502eca33a08caca": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"5d1f56ff86f7743f8362bcd7": 1
|
||||
},
|
||||
"feet": {
|
||||
"642d4d8eb6b75d4c89077cf9": 1,
|
||||
"5fcf940bce1ba36a513bb9cc": 1,
|
||||
"637ba17aa10a96c2b605dbc2": 1,
|
||||
"6295e944e9de5e7b3751c4da": 1,
|
||||
"5e4bb3b586f77406812bd579": 1,
|
||||
"5f5e40a06760b4138443b341": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"6377266693a3b4967208e42b": 1,
|
||||
"5d1f568486f7744bca3f0b98": 1,
|
||||
"657058fddf9b3231400e9188": 1,
|
||||
"642ed297ac11c9eaf10d87e8": 1,
|
||||
"5d1f567786f7744bcc04874f": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"6430119aac11c9eaf10d881b": 1,
|
||||
"5f5e401747344c2e4f6c42c5": 1
|
||||
},
|
||||
"feet": {
|
||||
"5d1f58bd86f7744bce0ee9ef": 1,
|
||||
"6377315993a3b4967208e437": 1,
|
||||
"642ed40af5bdf1c04e01952e": 1,
|
||||
"6295e63de08ed747e64ae991": 1,
|
||||
"5d1f58a086f7743f8362bcd9": 1,
|
||||
"66043d7ac8949a435906e434": 1,
|
||||
"5d1f58ab86f7743014162042": 1,
|
||||
"5f5e40400bc58666c37e7819": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"winter": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56a686f7744bce0ee9eb": 1,
|
||||
"5e9da17386f774054b6f79a3": 1,
|
||||
"5e4bb35286f77406a511c9bc": 1,
|
||||
"5d1f56e486f7744bce0ee9ed": 1
|
||||
},
|
||||
"feet": {
|
||||
"5d1f590486f7744bcd13459e": 1,
|
||||
"5d1f58ed86f7744bcb0acd1c": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"642e8ae07e17c882400c4f87": 1,
|
||||
"5d1f568486f7744bca3f0b98": 1,
|
||||
"66acec1dc94f4bf5bc063a16": 1,
|
||||
"5e4bb31586f7740695730568": 1
|
||||
},
|
||||
"feet": {
|
||||
"66acebd4ede86671bb09584b": 1,
|
||||
"5d1f58ab86f7743014162042": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -1,476 +0,0 @@
|
|||
{
|
||||
"scavAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5efb0fc6aeb21837e749c801": 1,
|
||||
"5efb0d4f4bc50b58e81710f3": 3
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 1
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6772a4b936088465b17c": 2,
|
||||
"5d6e6806a4b936088465b17e": 2,
|
||||
"5d6e67fba4b9361bc73bc779": 2,
|
||||
"560d5e524bdc2d25448b4571": 2,
|
||||
"5d6e6869a4b9361c140bcfde": 1,
|
||||
"5d6e68b3a4b9361bca7e50b5": 1,
|
||||
"58820d1224597753c90aeb13": 1,
|
||||
"5d6e68dea4b9361bcc29e659": 1,
|
||||
"5d6e6891a4b9361bd473feea": 1,
|
||||
"5d6e68e6a4b9361c140bcfe0": 1,
|
||||
"5d6e689ca4b9361bc8618956": 1
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e695fa4b936359b35d852": 2,
|
||||
"5d6e69b9a4b9361bc8618958": 2,
|
||||
"5a38ebd9c4a282000d722a5b": 2,
|
||||
"5d6e69c7a4b9360b6c0d54e4": 1,
|
||||
"5d6e6a53a4b9361bd473feec": 1
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 3,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 1
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6658b86f77411d949b250": 3,
|
||||
"59e6542b86f77411dc52a77a": 1
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26812d4351e003201fef1": 3,
|
||||
"5ba26844d4351e00334c9475": 1
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff216d2720bbd668b4568": 1,
|
||||
"56dff338d2720bbd668b4569": 4,
|
||||
"56dff421d2720b5f5a8b4567": 4,
|
||||
"56dff4ecd2720b5f5a8b4568": 2,
|
||||
"56dff4a2d2720bbd668b456a": 4,
|
||||
"56dff0bed2720bb0668b4567": 3,
|
||||
"56dff3afd2720bba668b4567": 1
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"59e6927d86f77411da468256": 2,
|
||||
"59e6918f86f7746c9f75e849": 2,
|
||||
"59e68f6f86f7746c9f75e846": 4,
|
||||
"59e6920f86f77411d82aa167": 5,
|
||||
"54527a984bdc2d4e668b4567": 1
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc86832d7f00c000d3a6e6c": 2,
|
||||
"5cc80f79e4a949033c7343b2": 3,
|
||||
"5cc86840d7f00c002412c56c": 3,
|
||||
"5cc80f8fe4a949033b0224a2": 1,
|
||||
"5cc80f53e4a949000e1ea4f8": 1
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 1
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"573602322459776445391df1": 2,
|
||||
"573601b42459776410737435": 2,
|
||||
"5735fdcd2459776445391d61": 1,
|
||||
"5736026a245977644601dc61": 1
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 1,
|
||||
"6196364158ef8c428c287d9f": 6,
|
||||
"5fbe3ffdf8b6a877a729ea82": 3
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"59e4d3d286f774176a36250a": 2,
|
||||
"64b7af734b75259c590fa895": 2,
|
||||
"64b7af5a8532cf95ee0a0dbd": 6,
|
||||
"59e4d24686f7741776641ac7": 4,
|
||||
"59e4cf5286f7741778269d8a": 2,
|
||||
"5656d7c34bdc2d9d198b4587": 1
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e88277cce2b522ff2b1": 2,
|
||||
"5e023e6e34d52a55c3304f71": 2,
|
||||
"5e023e53d4353e3302577c4c": 1
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"64b8f7c241772715af0f9c3d": 2,
|
||||
"64b8f7b5389d7ffd620ccba2": 2,
|
||||
"64b8f7968532cf95ee0a0dbf": 2,
|
||||
"5e023cf8186a883be655e54f": 2,
|
||||
"5887431f2459777e1612938f": 1
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 2,
|
||||
"5fc382c1016cce60e8341b20": 1
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"5737218f245977612125ba51": 5,
|
||||
"57372140245977611f70ee91": 5,
|
||||
"5737207f24597760ff7b25f2": 2,
|
||||
"573719762459775a626ccbc1": 3,
|
||||
"57371f8d24597761006c6a81": 3,
|
||||
"57371f2b24597761224311f1": 5,
|
||||
"57371eb62459776125652ac1": 1,
|
||||
"57371b192459775a9f58a5e0": 1,
|
||||
"57371e4124597760ff7b25f1": 1
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5efb0e16aeb21837e749c7ff": 1,
|
||||
"58864a4f2459770fcc257101": 7,
|
||||
"5a3c16fe86f77452b62de32a": 12,
|
||||
"5c3df7d588a4501f290594e5": 6,
|
||||
"64b7bbb74b75259c590fa897": 4,
|
||||
"56d59d3ad2720bdb418b4577": 2
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a26ac06c4a282000c5a90a8": 5,
|
||||
"5a26abfac4a28232980eabff": 3,
|
||||
"5a269f97c4a282000b151807": 1
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c40bdd19b369e1e53d1": 5,
|
||||
"62330bfadc5883093563729b": 3,
|
||||
"62330c18744e5e31df12f516": 1
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"6576f96220d53a5b8f3e395e": 7,
|
||||
"57a0dfb82459774d3078b56c": 5,
|
||||
"5c0d668f86f7747ccb7f13b2": 1
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 10,
|
||||
"66a0d1f88486c69fce00fdf6": 1
|
||||
}
|
||||
},
|
||||
"pmcAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5ea2a8e200685063ec28c05a": 1,
|
||||
"5efb0fc6aeb21837e749c801": 8,
|
||||
"5efb0d4f4bc50b58e81710f3": 40,
|
||||
"5e81f423763d9f754677bf2e": 25
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 45
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6806a4b936088465b17e": 10,
|
||||
"5c0d591486f7744c505b416f": 3,
|
||||
"5d6e68d1a4b93622fe60e845": 3,
|
||||
"5d6e6869a4b9361c140bcfde": 2,
|
||||
"5d6e68b3a4b9361bca7e50b5": 2,
|
||||
"58820d1224597753c90aeb13": 2,
|
||||
"5d6e68dea4b9361bcc29e659": 2,
|
||||
"5d6e6891a4b9361bd473feea": 9,
|
||||
"5d6e68e6a4b9361c140bcfe0": 15,
|
||||
"5d6e689ca4b9361bc8618956": 9
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e695fa4b936359b35d852": 3,
|
||||
"5d6e69b9a4b9361bc8618958": 3,
|
||||
"5a38ebd9c4a282000d722a5b": 5,
|
||||
"5d6e69c7a4b9360b6c0d54e4": 10,
|
||||
|
||||
"5d6e6a5fa4b93614ec501745": 3,
|
||||
"5d6e6a53a4b9361bd473feec": 3
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 8,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 2
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6658b86f77411d949b250": 12,
|
||||
"59e6542b86f77411dc52a77a": 35,
|
||||
"59e655cb86f77411dc52a77b": 20
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26812d4351e003201fef1": 40,
|
||||
"5ba26844d4351e00334c9475": 60
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff338d2720bbd668b4569": 5,
|
||||
"56dff4a2d2720bbd668b456a": 7,
|
||||
"56dff0bed2720bb0668b4567": 10,
|
||||
"56dff3afd2720bba668b4567": 60,
|
||||
"56dff2ced2720bb4668b4567": 5,
|
||||
"56dff061d2720bb5668b4567": 1
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"59e6918f86f7746c9f75e849": 10,
|
||||
"59e68f6f86f7746c9f75e846": 40,
|
||||
"59e6920f86f77411d82aa167": 50,
|
||||
"54527a984bdc2d4e668b4567": 30,
|
||||
"60194943740c5d77f6705eea": 10,
|
||||
"59e6906286f7746c9f75e847": 5
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc86832d7f00c000d3a6e6c": 4,
|
||||
"5cc80f79e4a949033c7343b2": 11,
|
||||
"5cc86840d7f00c002412c56c": 21,
|
||||
"5cc80f8fe4a949033b0224a2": 21,
|
||||
"5cc80f53e4a949000e1ea4f8": 12,
|
||||
"5cc80f67e4a949035e43bbba": 4
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 1
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"573601b42459776410737435": 8,
|
||||
"5735fdcd2459776445391d61": 12,
|
||||
"5736026a245977644601dc61": 18,
|
||||
"573603c924597764442bd9cb": 13,
|
||||
"573603562459776430731618": 3
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 9,
|
||||
"6196364158ef8c428c287d9f": 18,
|
||||
"5fbe3ffdf8b6a877a729ea82": 18
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"64b7af5a8532cf95ee0a0dbd": 5,
|
||||
"59e4d24686f7741776641ac7": 15,
|
||||
"59e4cf5286f7741778269d8a": 40,
|
||||
"5656d7c34bdc2d9d198b4587": 45,
|
||||
"64b7af434b75259c590fa893": 10
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e88277cce2b522ff2b1": 10,
|
||||
"5e023e6e34d52a55c3304f71": 30,
|
||||
"5e023e53d4353e3302577c4c": 50,
|
||||
"58dd3ad986f77403051cba8f": 10
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"64b8f7b5389d7ffd620ccba2": 5,
|
||||
"64b8f7968532cf95ee0a0dbf": 9,
|
||||
"5e023cf8186a883be655e54f": 16,
|
||||
"5887431f2459777e1612938f": 22,
|
||||
"59e77a2386f7742ee578960a": 10
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 90,
|
||||
"5fc382c1016cce60e8341b20": 5,
|
||||
"5fc275cf85fd526b824a571a": 5
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"57371f8d24597761006c6a81": 3,
|
||||
"57371f2b24597761224311f1": 3,
|
||||
"57371eb62459776125652ac1": 3,
|
||||
"57371b192459775a9f58a5e0": 9,
|
||||
"57371e4124597760ff7b25f1": 13,
|
||||
"5737201124597760fc4431f1": 21,
|
||||
"573720e02459776143012541": 14,
|
||||
"573718ba2459775a75491131": 8
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5efb0e16aeb21837e749c7ff": 7,
|
||||
"58864a4f2459770fcc257101": 1,
|
||||
"5a3c16fe86f77452b62de32a": 15,
|
||||
"5c3df7d588a4501f290594e5": 20,
|
||||
"64b7bbb74b75259c590fa897": 30,
|
||||
"56d59d3ad2720bdb418b4577": 55
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a26ac06c4a282000c5a90a8": 1,
|
||||
"5a26abfac4a28232980eabff": 20,
|
||||
"5a269f97c4a282000b151807": 27
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c40bdd19b369e1e53d1": 7,
|
||||
"62330bfadc5883093563729b": 8,
|
||||
"62330c18744e5e31df12f516": 4
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"6576f96220d53a5b8f3e395e": 10,
|
||||
"57a0dfb82459774d3078b56c": 50,
|
||||
"5c0d668f86f7747ccb7f13b2": 40
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 30,
|
||||
"66a0d1f88486c69fce00fdf6": 50
|
||||
}
|
||||
},
|
||||
"bossAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5ea2a8e200685063ec28c05a": 4,
|
||||
"5efb0fc6aeb21837e749c801": 1,
|
||||
"5efb0d4f4bc50b58e81710f3": 10,
|
||||
"5e81f423763d9f754677bf2e": 18,
|
||||
"5efb0cabfb3e451d70735af5": 10
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 3,
|
||||
"5cadf6ddae9215051e1c23b2": 12,
|
||||
"5cadf6eeae921500134b2799": 8
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6806a4b936088465b17e": 7,
|
||||
"64b8ee384b75259c590fa89b": 4,
|
||||
"5d6e6911a4b9361bd5780d52": 3,
|
||||
"5c0d591486f7744c505b416f": 5,
|
||||
"5d6e6891a4b9361bd473feea": 2,
|
||||
"5d6e68e6a4b9361c140bcfe0": 6,
|
||||
"5d6e689ca4b9361bc8618956": 8,
|
||||
"5d6e68c4a4b9361b93413f79": 8,
|
||||
"5d6e68a8a4b9360b6c0d54e2": 3
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e69c7a4b9360b6c0d54e4": 1,
|
||||
"5d6e6a53a4b9361bd473feec": 4,
|
||||
"5d6e6a05a4b93618084f58d0": 5,
|
||||
"5d6e6a42a4b9364f07165f52": 5
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 2,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 4,
|
||||
"5e85aa1a988a8701445df1f5": 4
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6658b86f77411d949b250": 1,
|
||||
"59e6542b86f77411dc52a77a": 2,
|
||||
"59e655cb86f77411dc52a77b": 10,
|
||||
"5f0596629e22f464da6bbdd9": 8
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26812d4351e003201fef1": 2,
|
||||
"5ba26844d4351e00334c9475": 4,
|
||||
"5ba2678ad4351e44f824b344": 15,
|
||||
"64b6979341772715af0f9c39": 15,
|
||||
"5ba26835d4351e0035628ff5": 8
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff3afd2720bba668b4567": 6,
|
||||
"56dff2ced2720bb4668b4567": 12,
|
||||
"56dff061d2720bb5668b4567": 20,
|
||||
"61962b617c6c7b169525f168": 12,
|
||||
"56dfef82d2720bbd668b4567": 9,
|
||||
"56dff026d2720bb8668b4567": 8,
|
||||
"5c0d5e4486f77478390952fe": 4
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"5c0d5ae286f7741e46554302": 1,
|
||||
"54527a984bdc2d4e668b4567": 7,
|
||||
"60194943740c5d77f6705eea": 20,
|
||||
"59e6906286f7746c9f75e847": 26,
|
||||
"54527ac44bdc2d36668b4567": 30,
|
||||
"59e690b686f7746c9f75e848": 7,
|
||||
"601949593ae8f707c4608daa": 5
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc80f8fe4a949033b0224a2": 5,
|
||||
"5cc80f53e4a949000e1ea4f8": 21,
|
||||
"5cc80f67e4a949035e43bbba": 15,
|
||||
"5cc80f38e4a949001152b560": 12
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 10,
|
||||
"6529243824cbe3c74a05e5c1": 5
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"5736026a245977644601dc61": 5,
|
||||
"573603c924597764442bd9cb": 10,
|
||||
"573603562459776430731618": 10
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 7,
|
||||
"5fbe3ffdf8b6a877a729ea82": 6,
|
||||
"619636be6db0f2477964e710": 23,
|
||||
"64b8725c4b75259c590fa899": 20,
|
||||
"5fd20ff893a8961fc660a954": 9
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"59e4cf5286f7741778269d8a": 4,
|
||||
"5656d7c34bdc2d9d198b4587": 28,
|
||||
"64b7af434b75259c590fa893": 33,
|
||||
"59e0d99486f7744a32234762": 20,
|
||||
"601aa3d2b2bcb34913271e6d": 12
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e53d4353e3302577c4c": 6,
|
||||
"58dd3ad986f77403051cba8f": 27,
|
||||
"5a608bf24f39f98ffc77720e": 19,
|
||||
"5a6086ea4f39f99cd479502f": 9,
|
||||
"5efb0c1bd79ff02a1f5e68d9": 2
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"5e023cf8186a883be655e54f": 3,
|
||||
"5887431f2459777e1612938f": 20,
|
||||
"59e77a2386f7742ee578960a": 25,
|
||||
"5e023d34e8a400319a28ed44": 22,
|
||||
"560d61e84bdc2da74d8b4571": 15,
|
||||
"5e023d48186a883be655e551": 10
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 5,
|
||||
"5fc382c1016cce60e8341b20": 8,
|
||||
"5fc275cf85fd526b824a571a": 8,
|
||||
"5fc382a9d724d907e2077dab": 5
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"57371e4124597760ff7b25f1": 3,
|
||||
"5737201124597760fc4431f1": 5,
|
||||
"573720e02459776143012541": 12,
|
||||
"573718ba2459775a75491131": 18,
|
||||
"57371aab2459775a77142f22": 12,
|
||||
"573719df2459775a626ccbc2": 10
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5c0d56a986f774449d5de529": 9,
|
||||
"5efb0e16aeb21837e749c7ff": 5,
|
||||
"5a3c16fe86f77452b62de32a": 4,
|
||||
"56d59d3ad2720bdb418b4577": 18,
|
||||
"5c925fa22e221601da359b7b": 22,
|
||||
"5efb0da7a29a85116f6ea05f": 9
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a269f97c4a282000b151807": 8,
|
||||
"6576f93989f0062e741ba952": 18,
|
||||
"5a26ac0ec4a28200741e1e18": 18,
|
||||
"6576f4708ca9c4381d16cd9d": 8
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c18744e5e31df12f516": 9,
|
||||
"62330b3ed4dc74626d570b95": 6
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"5c0d668f86f7747ccb7f13b2": 9,
|
||||
"61962d879bb3d20b0946d385": 25,
|
||||
"57a0e5022459774d1673f889": 25,
|
||||
"5c0d688c86f77413ae3407b2": 12
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 3,
|
||||
"66a0d1f88486c69fce00fdf6": 30,
|
||||
"66a0d1e0ed648d72fe064d06": 25,
|
||||
"668fe62ac62660a5d8071446": 12
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,430 +0,0 @@
|
|||
{
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 5,
|
||||
"66546f823b51a4d21e0d17d7": 1,
|
||||
"5d1f56a686f7744bce0ee9eb": 2,
|
||||
"5d1f56c686f7744bcd13459c": 3,
|
||||
"637b945722e2a933ed0e33c8": 3,
|
||||
"6571cb0923aa6d72760a7f8f": 3,
|
||||
"5fd3e9f71b735718c25cd9f8": 3,
|
||||
"642d9bbf6c06444bf7033855": 3
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 5,
|
||||
"5d1f58ed86f7744bcb0acd1c": 2,
|
||||
"5d1f590486f7744bcd13459e": 3,
|
||||
"642d4d8eb6b75d4c89077cf9": 3,
|
||||
"6033a3fee29c9f6c9b14e74e": 3
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 5,
|
||||
"66546f823b51a4d21e0d17d7": 1,
|
||||
"5d1f565786f7743f8362bcd5": 2,
|
||||
"5fce3e0cfe40296c1d5fd782": 3,
|
||||
"6377266693a3b4967208e42b": 3,
|
||||
"5d1f564b86f7744bcb0acd16": 3,
|
||||
"6295e698e9de5e7b3751c47a": 3,
|
||||
"642e8ae07e17c882400c4f87": 3,
|
||||
"5d1f568486f7744bca3f0b98": 3
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 5,
|
||||
"5d1f58bd86f7744bce0ee9ef": 2,
|
||||
"6377315993a3b4967208e437": 3,
|
||||
"5d1f588e86f7744bcc048753": 3,
|
||||
"65707a89f5a6f1412f0c5f7b": 3,
|
||||
"642ed40af5bdf1c04e01952e": 3,
|
||||
"5fce3e965a9f8c40685693bc": 3
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"springEarly": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"660437e57502eca33a08caca": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5d1f56ff86f7743f8362bcd7": 1,
|
||||
"5d1f56a686f7744bce0ee9eb": 2,
|
||||
"5e9da17386f774054b6f79a3": 2,
|
||||
"5e4bb35286f77406a511c9bc": 2,
|
||||
"5d1f56e486f7744bce0ee9ed": 2
|
||||
},
|
||||
"feet": {
|
||||
"642d4d8eb6b75d4c89077cf9": 1,
|
||||
"5fcf940bce1ba36a513bb9cc": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"6295e944e9de5e7b3751c4da": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"5e4bb3b586f77406812bd579": 1,
|
||||
"5d1f590486f7744bcd13459e": 3,
|
||||
"5d1f58ed86f7744bcb0acd1c": 3
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"657058fddf9b3231400e9188": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5d1f567786f7744bcc04874f": 1,
|
||||
"5e9d9fa986f774054d6b89f2": 1,
|
||||
"5f5e401747344c2e4f6c42c5": 1,
|
||||
"642e8ae07e17c882400c4f87": 2,
|
||||
"5d1f568486f7744bca3f0b98": 2,
|
||||
"66acec1dc94f4bf5bc063a16": 2,
|
||||
"5e4bb31586f7740695730568": 2
|
||||
},
|
||||
"feet": {
|
||||
"5d1f58bd86f7744bce0ee9ef": 1,
|
||||
"6377315993a3b4967208e437": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"5d1f58cb86f7744bca3f0b9a": 1,
|
||||
"5d1f58a086f7743f8362bcd9": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"5f5e40400bc58666c37e7819": 1,
|
||||
"66acebd4ede86671bb09584b": 3,
|
||||
"5d1f58ab86f7743014162042": 3
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"spring": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"5d4da0cb86f77450fe0a6629": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5f5e4075df4f3100376a8138": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 1,
|
||||
"6033a3fee29c9f6c9b14e74e": 1,
|
||||
"660436487502eca33a08cac8": 1,
|
||||
"6571cad4c8673f00290f5657": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"642d6941ff5ecad7810a8a61": 1,
|
||||
"5e9dcadd86f7743e20652f23": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 1,
|
||||
"5d1f564b86f7744bcb0acd16": 1,
|
||||
"6295e698e9de5e7b3751c47a": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5fce3e47fe40296c1d5fd784": 1,
|
||||
"617bca4b4013b06b0b78df2a": 1,
|
||||
"5df89f1f86f77412631087ea": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 1,
|
||||
"5d1f588e86f7744bcc048753": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"6033a3d8ed2e0509b15f9031": 1,
|
||||
"642e71620a69698d1b049f0a": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"642eea6f881906a7fe086841": 1,
|
||||
"5df89f8f86f77412672a1e38": 1,
|
||||
"5e9dc97c86f774054c19ac9a": 1,
|
||||
"5e4bb39386f774067f79de05": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"summer": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 1,
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"5d4da0cb86f77450fe0a6629": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"642c18b8a6a0660b560fb31c": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5f5e4075df4f3100376a8138": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 1,
|
||||
"6033a3fee29c9f6c9b14e74e": 1,
|
||||
"660436487502eca33a08cac8": 1,
|
||||
"6571cad4c8673f00290f5657": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"5d1f593286f7743014162044": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"642d6941ff5ecad7810a8a61": 1,
|
||||
"5e9dcadd86f7743e20652f23": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 1,
|
||||
"5d1f564b86f7744bcb0acd16": 1,
|
||||
"6295e698e9de5e7b3751c47a": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5fce3e47fe40296c1d5fd784": 1,
|
||||
"617bca4b4013b06b0b78df2a": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"5df89f1f86f77412631087ea": 1,
|
||||
"5e9d9fa986f774054d6b89f2": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 1,
|
||||
"5d1f588e86f7744bcc048753": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"6033a3d8ed2e0509b15f9031": 1,
|
||||
"642e71620a69698d1b049f0a": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"642eea6f881906a7fe086841": 1,
|
||||
"5df89f8f86f77412672a1e38": 1,
|
||||
"5e9dc97c86f774054c19ac9a": 1,
|
||||
"5e4bb39386f774067f79de05": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"autumn": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"637b945722e2a933ed0e33c8": 1,
|
||||
"6571cb0923aa6d72760a7f8f": 1,
|
||||
"6033a35f80ae5e2f970ba6bb": 1,
|
||||
"5d1f56e486f7744bce0ee9ed": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"660437e57502eca33a08caca": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"5d1f56ff86f7743f8362bcd7": 1
|
||||
},
|
||||
"feet": {
|
||||
"642d4d8eb6b75d4c89077cf9": 1,
|
||||
"5fcf940bce1ba36a513bb9cc": 1,
|
||||
"637ba17aa10a96c2b605dbc2": 1,
|
||||
"6295e944e9de5e7b3751c4da": 1,
|
||||
"5e4bb3b586f77406812bd579": 1,
|
||||
"5f5e40a06760b4138443b341": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"6377266693a3b4967208e42b": 1,
|
||||
"5d1f568486f7744bca3f0b98": 1,
|
||||
"657058fddf9b3231400e9188": 1,
|
||||
"642ed297ac11c9eaf10d87e8": 1,
|
||||
"5d1f567786f7744bcc04874f": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"6430119aac11c9eaf10d881b": 1,
|
||||
"5f5e401747344c2e4f6c42c5": 1
|
||||
},
|
||||
"feet": {
|
||||
"5d1f58bd86f7744bce0ee9ef": 1,
|
||||
"6377315993a3b4967208e437": 1,
|
||||
"642ed40af5bdf1c04e01952e": 1,
|
||||
"6295e63de08ed747e64ae991": 1,
|
||||
"5d1f58a086f7743f8362bcd9": 1,
|
||||
"66043d7ac8949a435906e434": 1,
|
||||
"5d1f58ab86f7743014162042": 1,
|
||||
"5f5e40400bc58666c37e7819": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"winter": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56a686f7744bce0ee9eb": 1,
|
||||
"5e9da17386f774054b6f79a3": 1,
|
||||
"5e4bb35286f77406a511c9bc": 1,
|
||||
"5d1f56e486f7744bce0ee9ed": 1
|
||||
},
|
||||
"feet": {
|
||||
"5d1f590486f7744bcd13459e": 1,
|
||||
"5d1f58ed86f7744bcb0acd1c": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"642e8ae07e17c882400c4f87": 1,
|
||||
"5d1f568486f7744bca3f0b98": 1,
|
||||
"66acec1dc94f4bf5bc063a16": 1,
|
||||
"5e4bb31586f7740695730568": 1
|
||||
},
|
||||
"feet": {
|
||||
"66acebd4ede86671bb09584b": 1,
|
||||
"5d1f58ab86f7743014162042": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -1,464 +0,0 @@
|
|||
{
|
||||
"scavAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5efb0fc6aeb21837e749c801": 1,
|
||||
"5efb0d4f4bc50b58e81710f3": 3
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 1
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6772a4b936088465b17c": 2,
|
||||
"5d6e6806a4b936088465b17e": 2,
|
||||
"5d6e67fba4b9361bc73bc779": 2,
|
||||
"560d5e524bdc2d25448b4571": 2,
|
||||
"5d6e6869a4b9361c140bcfde": 1,
|
||||
"5d6e68b3a4b9361bca7e50b5": 1,
|
||||
"58820d1224597753c90aeb13": 1,
|
||||
"5d6e68dea4b9361bcc29e659": 1,
|
||||
"5d6e6891a4b9361bd473feea": 1,
|
||||
"5d6e68e6a4b9361c140bcfe0": 1,
|
||||
"5d6e689ca4b9361bc8618956": 1
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e695fa4b936359b35d852": 2,
|
||||
"5d6e69b9a4b9361bc8618958": 2,
|
||||
"5a38ebd9c4a282000d722a5b": 2,
|
||||
"5d6e69c7a4b9360b6c0d54e4": 1,
|
||||
"5d6e6a53a4b9361bd473feec": 1
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 3,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 1
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6658b86f77411d949b250": 3,
|
||||
"59e6542b86f77411dc52a77a": 1
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26812d4351e003201fef1": 3,
|
||||
"5ba26844d4351e00334c9475": 1
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff216d2720bbd668b4568": 1,
|
||||
"56dff338d2720bbd668b4569": 4,
|
||||
"56dff421d2720b5f5a8b4567": 4,
|
||||
"56dff4ecd2720b5f5a8b4568": 2,
|
||||
"56dff4a2d2720bbd668b456a": 4,
|
||||
"56dff0bed2720bb0668b4567": 3,
|
||||
"56dff3afd2720bba668b4567": 1
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"59e6927d86f77411da468256": 2,
|
||||
"59e6918f86f7746c9f75e849": 2,
|
||||
"59e68f6f86f7746c9f75e846": 4,
|
||||
"59e6920f86f77411d82aa167": 5,
|
||||
"54527a984bdc2d4e668b4567": 1
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc86832d7f00c000d3a6e6c": 2,
|
||||
"5cc80f79e4a949033c7343b2": 3,
|
||||
"5cc86840d7f00c002412c56c": 3,
|
||||
"5cc80f8fe4a949033b0224a2": 1,
|
||||
"5cc80f53e4a949000e1ea4f8": 1
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 1
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"573602322459776445391df1": 2,
|
||||
"573601b42459776410737435": 2,
|
||||
"5735fdcd2459776445391d61": 1,
|
||||
"5736026a245977644601dc61": 1
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 1,
|
||||
"6196364158ef8c428c287d9f": 6,
|
||||
"5fbe3ffdf8b6a877a729ea82": 3
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"59e4d3d286f774176a36250a": 2,
|
||||
"64b7af734b75259c590fa895": 2,
|
||||
"64b7af5a8532cf95ee0a0dbd": 6,
|
||||
"59e4d24686f7741776641ac7": 4,
|
||||
"59e4cf5286f7741778269d8a": 2,
|
||||
"5656d7c34bdc2d9d198b4587": 1
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e88277cce2b522ff2b1": 2,
|
||||
"5e023e6e34d52a55c3304f71": 2,
|
||||
"5e023e53d4353e3302577c4c": 1
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"64b8f7c241772715af0f9c3d": 2,
|
||||
"64b8f7b5389d7ffd620ccba2": 2,
|
||||
"64b8f7968532cf95ee0a0dbf": 2,
|
||||
"5e023cf8186a883be655e54f": 2,
|
||||
"5887431f2459777e1612938f": 1
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 2,
|
||||
"5fc382c1016cce60e8341b20": 1
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"5737218f245977612125ba51": 5,
|
||||
"57372140245977611f70ee91": 5,
|
||||
"5737207f24597760ff7b25f2": 2,
|
||||
"573719762459775a626ccbc1": 3,
|
||||
"57371f8d24597761006c6a81": 3,
|
||||
"57371f2b24597761224311f1": 5,
|
||||
"57371eb62459776125652ac1": 1,
|
||||
"57371b192459775a9f58a5e0": 1,
|
||||
"57371e4124597760ff7b25f1": 1
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5efb0e16aeb21837e749c7ff": 1,
|
||||
"58864a4f2459770fcc257101": 7,
|
||||
"5a3c16fe86f77452b62de32a": 12,
|
||||
"5c3df7d588a4501f290594e5": 6,
|
||||
"64b7bbb74b75259c590fa897": 4,
|
||||
"56d59d3ad2720bdb418b4577": 2
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a26ac06c4a282000c5a90a8": 5,
|
||||
"5a26abfac4a28232980eabff": 3,
|
||||
"5a269f97c4a282000b151807": 1
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c40bdd19b369e1e53d1": 5,
|
||||
"62330bfadc5883093563729b": 3,
|
||||
"62330c18744e5e31df12f516": 1
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"6576f96220d53a5b8f3e395e": 7,
|
||||
"57a0dfb82459774d3078b56c": 5,
|
||||
"5c0d668f86f7747ccb7f13b2": 1
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 10,
|
||||
"66a0d1f88486c69fce00fdf6": 1
|
||||
}
|
||||
},
|
||||
"pmcAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5ea2a8e200685063ec28c05a": 10,
|
||||
"5efb0fc6aeb21837e749c801": 5,
|
||||
"5efb0d4f4bc50b58e81710f3": 30,
|
||||
"5e81f423763d9f754677bf2e": 50,
|
||||
"5efb0cabfb3e451d70735af5": 10
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 80,
|
||||
"5cadf6ddae9215051e1c23b2": 20
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6806a4b936088465b17e": 15,
|
||||
"64b8ee384b75259c590fa89b": 6,
|
||||
"5c0d591486f7744c505b416f": 5,
|
||||
"5d6e68e6a4b9361c140bcfe0": 15,
|
||||
"5d6e689ca4b9361bc8618956": 13,
|
||||
"5d6e68c4a4b9361b93413f79": 9
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e69c7a4b9360b6c0d54e4": 8,
|
||||
"5d6e6a5fa4b93614ec501745": 6,
|
||||
"5d6e6a53a4b9361bd473feec": 6,
|
||||
"5d6e6a05a4b93618084f58d0": 3,
|
||||
"5d6e6a42a4b9364f07165f52": 2
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 60,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 30,
|
||||
"5e85aa1a988a8701445df1f5": 10
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6542b86f77411dc52a77a": 5,
|
||||
"59e655cb86f77411dc52a77b": 65,
|
||||
"5f0596629e22f464da6bbdd9": 30
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26844d4351e00334c9475": 70,
|
||||
"64b6979341772715af0f9c39": 15,
|
||||
"5ba2678ad4351e44f824b344": 10,
|
||||
"5ba26835d4351e0035628ff5": 5
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff0bed2720bb0668b4567": 5,
|
||||
"56dff3afd2720bba668b4567": 40,
|
||||
"56dff2ced2720bb4668b4567": 30,
|
||||
"56dff061d2720bb5668b4567": 15,
|
||||
"61962b617c6c7b169525f168": 5,
|
||||
"56dfef82d2720bbd668b4567": 5
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"5c0d5ae286f7741e46554302": 5,
|
||||
"59e6920f86f77411d82aa167": 10,
|
||||
"54527a984bdc2d4e668b4567": 50,
|
||||
"60194943740c5d77f6705eea": 30,
|
||||
"59e6906286f7746c9f75e847": 10,
|
||||
"54527ac44bdc2d36668b4567": 5
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc86840d7f00c002412c56c": 10,
|
||||
"5cc80f8fe4a949033b0224a2": 15,
|
||||
"5cc80f53e4a949000e1ea4f8": 28,
|
||||
"5cc80f67e4a949035e43bbba": 7
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 1
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"5736026a245977644601dc61": 5,
|
||||
"573603c924597764442bd9cb": 10,
|
||||
"573603562459776430731618": 10
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 5,
|
||||
"5fbe3ffdf8b6a877a729ea82": 55,
|
||||
"619636be6db0f2477964e710": 30,
|
||||
"64b8725c4b75259c590fa899": 10
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"5656d7c34bdc2d9d198b4587": 60,
|
||||
"64b7af434b75259c590fa893": 35,
|
||||
"59e0d99486f7744a32234762": 5
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e53d4353e3302577c4c": 60,
|
||||
"58dd3ad986f77403051cba8f": 35,
|
||||
"5a608bf24f39f98ffc77720e": 5
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"5887431f2459777e1612938f": 50,
|
||||
"59e77a2386f7742ee578960a": 25,
|
||||
"5e023d34e8a400319a28ed44": 5
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 75,
|
||||
"5fc382c1016cce60e8341b20": 20,
|
||||
"5fc275cf85fd526b824a571a": 5
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"5737201124597760fc4431f1": 35,
|
||||
"573720e02459776143012541": 25,
|
||||
"573718ba2459775a75491131": 25,
|
||||
"57371aab2459775a77142f22": 10
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5c0d56a986f774449d5de529": 5,
|
||||
"5efb0e16aeb21837e749c7ff": 25,
|
||||
"56d59d3ad2720bdb418b4577": 65,
|
||||
"5c925fa22e221601da359b7b": 5
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a26abfac4a28232980eabff": 12,
|
||||
"5a269f97c4a282000b151807": 30,
|
||||
"6576f93989f0062e741ba952": 12,
|
||||
"5a26ac0ec4a28200741e1e18": 8
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330bfadc5883093563729b": 8,
|
||||
"62330c18744e5e31df12f516": 8,
|
||||
"62330b3ed4dc74626d570b95": 2
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"57a0dfb82459774d3078b56c": 25,
|
||||
"5c0d668f86f7747ccb7f13b2": 60,
|
||||
"61962d879bb3d20b0946d385": 10,
|
||||
"57a0e5022459774d1673f889": 5
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 30,
|
||||
"66a0d1f88486c69fce00fdf6": 60,
|
||||
"66a0d1e0ed648d72fe064d06": 10
|
||||
}
|
||||
},
|
||||
"bossAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5ea2a8e200685063ec28c05a": 4,
|
||||
"5efb0fc6aeb21837e749c801": 1,
|
||||
"5efb0d4f4bc50b58e81710f3": 10,
|
||||
"5e81f423763d9f754677bf2e": 18,
|
||||
"5efb0cabfb3e451d70735af5": 10
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 3,
|
||||
"5cadf6ddae9215051e1c23b2": 12,
|
||||
"5cadf6eeae921500134b2799": 8
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6806a4b936088465b17e": 7,
|
||||
"64b8ee384b75259c590fa89b": 4,
|
||||
"5d6e6911a4b9361bd5780d52": 3,
|
||||
"5c0d591486f7744c505b416f": 5,
|
||||
"5d6e6891a4b9361bd473feea": 2,
|
||||
"5d6e68e6a4b9361c140bcfe0": 6,
|
||||
"5d6e689ca4b9361bc8618956": 8,
|
||||
"5d6e68c4a4b9361b93413f79": 8,
|
||||
"5d6e68a8a4b9360b6c0d54e2": 3
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e69c7a4b9360b6c0d54e4": 1,
|
||||
"5d6e6a53a4b9361bd473feec": 4,
|
||||
"5d6e6a05a4b93618084f58d0": 5,
|
||||
"5d6e6a42a4b9364f07165f52": 5
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 2,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 4,
|
||||
"5e85aa1a988a8701445df1f5": 4
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6658b86f77411d949b250": 1,
|
||||
"59e6542b86f77411dc52a77a": 2,
|
||||
"59e655cb86f77411dc52a77b": 10,
|
||||
"5f0596629e22f464da6bbdd9": 8
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26812d4351e003201fef1": 2,
|
||||
"5ba26844d4351e00334c9475": 4,
|
||||
"5ba2678ad4351e44f824b344": 15,
|
||||
"64b6979341772715af0f9c39": 15,
|
||||
"5ba26835d4351e0035628ff5": 8
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff3afd2720bba668b4567": 6,
|
||||
"56dff2ced2720bb4668b4567": 12,
|
||||
"56dff061d2720bb5668b4567": 20,
|
||||
"61962b617c6c7b169525f168": 12,
|
||||
"56dfef82d2720bbd668b4567": 9,
|
||||
"56dff026d2720bb8668b4567": 8,
|
||||
"5c0d5e4486f77478390952fe": 4
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"5c0d5ae286f7741e46554302": 1,
|
||||
"54527a984bdc2d4e668b4567": 7,
|
||||
"60194943740c5d77f6705eea": 20,
|
||||
"59e6906286f7746c9f75e847": 26,
|
||||
"54527ac44bdc2d36668b4567": 30,
|
||||
"59e690b686f7746c9f75e848": 7,
|
||||
"601949593ae8f707c4608daa": 5
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc80f8fe4a949033b0224a2": 5,
|
||||
"5cc80f53e4a949000e1ea4f8": 21,
|
||||
"5cc80f67e4a949035e43bbba": 15,
|
||||
"5cc80f38e4a949001152b560": 12
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 10,
|
||||
"6529243824cbe3c74a05e5c1": 5
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"5736026a245977644601dc61": 5,
|
||||
"573603c924597764442bd9cb": 10,
|
||||
"573603562459776430731618": 10
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 7,
|
||||
"5fbe3ffdf8b6a877a729ea82": 6,
|
||||
"619636be6db0f2477964e710": 23,
|
||||
"64b8725c4b75259c590fa899": 20,
|
||||
"5fd20ff893a8961fc660a954": 9
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"59e4cf5286f7741778269d8a": 4,
|
||||
"5656d7c34bdc2d9d198b4587": 28,
|
||||
"64b7af434b75259c590fa893": 33,
|
||||
"59e0d99486f7744a32234762": 20,
|
||||
"601aa3d2b2bcb34913271e6d": 12
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e53d4353e3302577c4c": 6,
|
||||
"58dd3ad986f77403051cba8f": 27,
|
||||
"5a608bf24f39f98ffc77720e": 19,
|
||||
"5a6086ea4f39f99cd479502f": 9,
|
||||
"5efb0c1bd79ff02a1f5e68d9": 2
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"5e023cf8186a883be655e54f": 3,
|
||||
"5887431f2459777e1612938f": 20,
|
||||
"59e77a2386f7742ee578960a": 25,
|
||||
"5e023d34e8a400319a28ed44": 22,
|
||||
"560d61e84bdc2da74d8b4571": 15,
|
||||
"5e023d48186a883be655e551": 10
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 5,
|
||||
"5fc382c1016cce60e8341b20": 8,
|
||||
"5fc275cf85fd526b824a571a": 8,
|
||||
"5fc382a9d724d907e2077dab": 5
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"57371e4124597760ff7b25f1": 3,
|
||||
"5737201124597760fc4431f1": 5,
|
||||
"573720e02459776143012541": 12,
|
||||
"573718ba2459775a75491131": 18,
|
||||
"57371aab2459775a77142f22": 12,
|
||||
"573719df2459775a626ccbc2": 10
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5c0d56a986f774449d5de529": 9,
|
||||
"5efb0e16aeb21837e749c7ff": 5,
|
||||
"5a3c16fe86f77452b62de32a": 4,
|
||||
"56d59d3ad2720bdb418b4577": 18,
|
||||
"5c925fa22e221601da359b7b": 22,
|
||||
"5efb0da7a29a85116f6ea05f": 9
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a269f97c4a282000b151807": 8,
|
||||
"6576f93989f0062e741ba952": 18,
|
||||
"5a26ac0ec4a28200741e1e18": 18,
|
||||
"6576f4708ca9c4381d16cd9d": 8
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c18744e5e31df12f516": 9,
|
||||
"62330b3ed4dc74626d570b95": 6
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"5c0d668f86f7747ccb7f13b2": 9,
|
||||
"61962d879bb3d20b0946d385": 25,
|
||||
"57a0e5022459774d1673f889": 25,
|
||||
"5c0d688c86f77413ae3407b2": 12
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 3,
|
||||
"66a0d1f88486c69fce00fdf6": 30,
|
||||
"66a0d1e0ed648d72fe064d06": 25,
|
||||
"668fe62ac62660a5d8071446": 12
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,457 +0,0 @@
|
|||
{
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 1,
|
||||
"66546f823b51a4d21e0d17d7": 1,
|
||||
"5d1f56a686f7744bce0ee9eb": 1,
|
||||
"5d1f56c686f7744bcd13459c": 3,
|
||||
"637b945722e2a933ed0e33c8": 3,
|
||||
"6571cb0923aa6d72760a7f8f": 3,
|
||||
"5fd3e9f71b735718c25cd9f8": 3,
|
||||
"642d9bbf6c06444bf7033855": 3,
|
||||
"6033a35f80ae5e2f970ba6bb": 5,
|
||||
"66043728333907134309d647": 5,
|
||||
"5d1f56e486f7744bce0ee9ed": 5,
|
||||
"6295e8c3e08ed747e64aea00": 5,
|
||||
"642c18b8a6a0660b560fb31c": 5,
|
||||
"66acbe49dc61999a6a03d4d6": 5
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 1,
|
||||
"5d1f58ed86f7744bcb0acd1c": 1,
|
||||
"5d1f590486f7744bcd13459e": 3,
|
||||
"642d4d8eb6b75d4c89077cf9": 3,
|
||||
"6033a3fee29c9f6c9b14e74e": 3,
|
||||
"5fcf940bce1ba36a513bb9cc": 5,
|
||||
"660436487502eca33a08cac8": 5,
|
||||
"6571cad4c8673f00290f5657": 5,
|
||||
"637ba17aa10a96c2b605dbc2": 5,
|
||||
"5d1f591186f7744bcc048755": 5,
|
||||
"6295e944e9de5e7b3751c4da": 5,
|
||||
"642c19360a69698d1b049e12": 5,
|
||||
"66acc8f719271bd6d00dec0b": 5
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 1,
|
||||
"66546f823b51a4d21e0d17d7": 1,
|
||||
"5d1f565786f7743f8362bcd5": 1,
|
||||
"5fce3e0cfe40296c1d5fd782": 3,
|
||||
"6377266693a3b4967208e42b": 3,
|
||||
"5d1f564b86f7744bcb0acd16": 3,
|
||||
"6295e698e9de5e7b3751c47a": 3,
|
||||
"642e8ae07e17c882400c4f87": 3,
|
||||
"5d1f568486f7744bca3f0b98": 3,
|
||||
"657058fddf9b3231400e9188": 5,
|
||||
"6033a31e9ec839204e6a2f3e": 5,
|
||||
"66043cc27502eca33a08cad0": 5,
|
||||
"5fce3e47fe40296c1d5fd784": 5,
|
||||
"642ed297ac11c9eaf10d87e8": 5,
|
||||
"66acec1dc94f4bf5bc063a16": 5
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 1,
|
||||
"5d1f58bd86f7744bce0ee9ef": 1,
|
||||
"6377315993a3b4967208e437": 3,
|
||||
"5d1f588e86f7744bcc048753": 3,
|
||||
"65707a89f5a6f1412f0c5f7b": 3,
|
||||
"642ed40af5bdf1c04e01952e": 3,
|
||||
"5fce3e965a9f8c40685693bc": 3,
|
||||
"6295e63de08ed747e64ae991": 5,
|
||||
"66043cf87502eca33a08cad2": 5,
|
||||
"6033a3d8ed2e0509b15f9031": 5,
|
||||
"5d1f58cb86f7744bca3f0b9a": 5,
|
||||
"5d1f58a086f7743f8362bcd9": 5,
|
||||
"642e71620a69698d1b049f0a": 5,
|
||||
"66acebd4ede86671bb09584b": 5
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"springEarly": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"660437e57502eca33a08caca": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5d1f56ff86f7743f8362bcd7": 1,
|
||||
"5d1f56a686f7744bce0ee9eb": 2,
|
||||
"5e9da17386f774054b6f79a3": 2,
|
||||
"5e4bb35286f77406a511c9bc": 2,
|
||||
"5d1f56e486f7744bce0ee9ed": 2
|
||||
},
|
||||
"feet": {
|
||||
"642d4d8eb6b75d4c89077cf9": 1,
|
||||
"5fcf940bce1ba36a513bb9cc": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"6295e944e9de5e7b3751c4da": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"5e4bb3b586f77406812bd579": 1,
|
||||
"5d1f590486f7744bcd13459e": 3,
|
||||
"5d1f58ed86f7744bcb0acd1c": 3
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"657058fddf9b3231400e9188": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5d1f567786f7744bcc04874f": 1,
|
||||
"5e9d9fa986f774054d6b89f2": 1,
|
||||
"5f5e401747344c2e4f6c42c5": 1,
|
||||
"642e8ae07e17c882400c4f87": 2,
|
||||
"5d1f568486f7744bca3f0b98": 2,
|
||||
"66acec1dc94f4bf5bc063a16": 2,
|
||||
"5e4bb31586f7740695730568": 2
|
||||
},
|
||||
"feet": {
|
||||
"5d1f58bd86f7744bce0ee9ef": 1,
|
||||
"6377315993a3b4967208e437": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"5d1f58cb86f7744bca3f0b9a": 1,
|
||||
"5d1f58a086f7743f8362bcd9": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"5f5e40400bc58666c37e7819": 1,
|
||||
"66acebd4ede86671bb09584b": 3,
|
||||
"5d1f58ab86f7743014162042": 3
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"spring": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"5d4da0cb86f77450fe0a6629": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5f5e4075df4f3100376a8138": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 1,
|
||||
"6033a3fee29c9f6c9b14e74e": 1,
|
||||
"660436487502eca33a08cac8": 1,
|
||||
"6571cad4c8673f00290f5657": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"642d6941ff5ecad7810a8a61": 1,
|
||||
"5e9dcadd86f7743e20652f23": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 1,
|
||||
"5d1f564b86f7744bcb0acd16": 1,
|
||||
"6295e698e9de5e7b3751c47a": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5fce3e47fe40296c1d5fd784": 1,
|
||||
"617bca4b4013b06b0b78df2a": 1,
|
||||
"5df89f1f86f77412631087ea": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 1,
|
||||
"5d1f588e86f7744bcc048753": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"6033a3d8ed2e0509b15f9031": 1,
|
||||
"642e71620a69698d1b049f0a": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"642eea6f881906a7fe086841": 1,
|
||||
"5df89f8f86f77412672a1e38": 1,
|
||||
"5e9dc97c86f774054c19ac9a": 1,
|
||||
"5e4bb39386f774067f79de05": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"summer": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 1,
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"5d4da0cb86f77450fe0a6629": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"642c18b8a6a0660b560fb31c": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5f5e4075df4f3100376a8138": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 1,
|
||||
"6033a3fee29c9f6c9b14e74e": 1,
|
||||
"660436487502eca33a08cac8": 1,
|
||||
"6571cad4c8673f00290f5657": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"5d1f593286f7743014162044": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"642d6941ff5ecad7810a8a61": 1,
|
||||
"5e9dcadd86f7743e20652f23": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 1,
|
||||
"5d1f564b86f7744bcb0acd16": 1,
|
||||
"6295e698e9de5e7b3751c47a": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5fce3e47fe40296c1d5fd784": 1,
|
||||
"617bca4b4013b06b0b78df2a": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"5df89f1f86f77412631087ea": 1,
|
||||
"5e9d9fa986f774054d6b89f2": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 1,
|
||||
"5d1f588e86f7744bcc048753": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"6033a3d8ed2e0509b15f9031": 1,
|
||||
"642e71620a69698d1b049f0a": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"642eea6f881906a7fe086841": 1,
|
||||
"5df89f8f86f77412672a1e38": 1,
|
||||
"5e9dc97c86f774054c19ac9a": 1,
|
||||
"5e4bb39386f774067f79de05": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"autumn": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"637b945722e2a933ed0e33c8": 1,
|
||||
"6571cb0923aa6d72760a7f8f": 1,
|
||||
"6033a35f80ae5e2f970ba6bb": 1,
|
||||
"5d1f56e486f7744bce0ee9ed": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"660437e57502eca33a08caca": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"5d1f56ff86f7743f8362bcd7": 1
|
||||
},
|
||||
"feet": {
|
||||
"642d4d8eb6b75d4c89077cf9": 1,
|
||||
"5fcf940bce1ba36a513bb9cc": 1,
|
||||
"637ba17aa10a96c2b605dbc2": 1,
|
||||
"6295e944e9de5e7b3751c4da": 1,
|
||||
"5e4bb3b586f77406812bd579": 1,
|
||||
"5f5e40a06760b4138443b341": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"6377266693a3b4967208e42b": 1,
|
||||
"5d1f568486f7744bca3f0b98": 1,
|
||||
"657058fddf9b3231400e9188": 1,
|
||||
"642ed297ac11c9eaf10d87e8": 1,
|
||||
"5d1f567786f7744bcc04874f": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"6430119aac11c9eaf10d881b": 1,
|
||||
"5f5e401747344c2e4f6c42c5": 1
|
||||
},
|
||||
"feet": {
|
||||
"5d1f58bd86f7744bce0ee9ef": 1,
|
||||
"6377315993a3b4967208e437": 1,
|
||||
"642ed40af5bdf1c04e01952e": 1,
|
||||
"6295e63de08ed747e64ae991": 1,
|
||||
"5d1f58a086f7743f8362bcd9": 1,
|
||||
"66043d7ac8949a435906e434": 1,
|
||||
"5d1f58ab86f7743014162042": 1,
|
||||
"5f5e40400bc58666c37e7819": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"winter": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56a686f7744bce0ee9eb": 1,
|
||||
"5e9da17386f774054b6f79a3": 1,
|
||||
"5e4bb35286f77406a511c9bc": 1,
|
||||
"5d1f56e486f7744bce0ee9ed": 1
|
||||
},
|
||||
"feet": {
|
||||
"5d1f590486f7744bcd13459e": 1,
|
||||
"5d1f58ed86f7744bcb0acd1c": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"642e8ae07e17c882400c4f87": 1,
|
||||
"5d1f568486f7744bca3f0b98": 1,
|
||||
"66acec1dc94f4bf5bc063a16": 1,
|
||||
"5e4bb31586f7740695730568": 1
|
||||
},
|
||||
"feet": {
|
||||
"66acebd4ede86671bb09584b": 1,
|
||||
"5d1f58ab86f7743014162042": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -1,471 +0,0 @@
|
|||
{
|
||||
"scavAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5efb0fc6aeb21837e749c801": 1,
|
||||
"5efb0d4f4bc50b58e81710f3": 3
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 1
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6772a4b936088465b17c": 2,
|
||||
"5d6e6806a4b936088465b17e": 2,
|
||||
"5d6e67fba4b9361bc73bc779": 2,
|
||||
"560d5e524bdc2d25448b4571": 2,
|
||||
"5d6e6869a4b9361c140bcfde": 1,
|
||||
"5d6e68b3a4b9361bca7e50b5": 1,
|
||||
"58820d1224597753c90aeb13": 1,
|
||||
"5d6e68dea4b9361bcc29e659": 1,
|
||||
"5d6e6891a4b9361bd473feea": 1,
|
||||
"5d6e68e6a4b9361c140bcfe0": 1,
|
||||
"5d6e689ca4b9361bc8618956": 1
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e695fa4b936359b35d852": 2,
|
||||
"5d6e69b9a4b9361bc8618958": 2,
|
||||
"5a38ebd9c4a282000d722a5b": 2,
|
||||
"5d6e69c7a4b9360b6c0d54e4": 1,
|
||||
"5d6e6a53a4b9361bd473feec": 1
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 3,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 1
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6658b86f77411d949b250": 3,
|
||||
"59e6542b86f77411dc52a77a": 1
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26812d4351e003201fef1": 3,
|
||||
"5ba26844d4351e00334c9475": 1
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff216d2720bbd668b4568": 1,
|
||||
"56dff338d2720bbd668b4569": 4,
|
||||
"56dff421d2720b5f5a8b4567": 4,
|
||||
"56dff4ecd2720b5f5a8b4568": 2,
|
||||
"56dff4a2d2720bbd668b456a": 4,
|
||||
"56dff0bed2720bb0668b4567": 3,
|
||||
"56dff3afd2720bba668b4567": 1
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"59e6927d86f77411da468256": 2,
|
||||
"59e6918f86f7746c9f75e849": 2,
|
||||
"59e68f6f86f7746c9f75e846": 4,
|
||||
"59e6920f86f77411d82aa167": 5,
|
||||
"54527a984bdc2d4e668b4567": 1
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc86832d7f00c000d3a6e6c": 2,
|
||||
"5cc80f79e4a949033c7343b2": 3,
|
||||
"5cc86840d7f00c002412c56c": 3,
|
||||
"5cc80f8fe4a949033b0224a2": 1,
|
||||
"5cc80f53e4a949000e1ea4f8": 1
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 1
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"573602322459776445391df1": 2,
|
||||
"573601b42459776410737435": 2,
|
||||
"5735fdcd2459776445391d61": 1,
|
||||
"5736026a245977644601dc61": 1
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 1,
|
||||
"6196364158ef8c428c287d9f": 6,
|
||||
"5fbe3ffdf8b6a877a729ea82": 3
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"59e4d3d286f774176a36250a": 2,
|
||||
"64b7af734b75259c590fa895": 2,
|
||||
"64b7af5a8532cf95ee0a0dbd": 6,
|
||||
"59e4d24686f7741776641ac7": 4,
|
||||
"59e4cf5286f7741778269d8a": 2,
|
||||
"5656d7c34bdc2d9d198b4587": 1
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e88277cce2b522ff2b1": 2,
|
||||
"5e023e6e34d52a55c3304f71": 2,
|
||||
"5e023e53d4353e3302577c4c": 1
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"64b8f7c241772715af0f9c3d": 2,
|
||||
"64b8f7b5389d7ffd620ccba2": 2,
|
||||
"64b8f7968532cf95ee0a0dbf": 2,
|
||||
"5e023cf8186a883be655e54f": 2,
|
||||
"5887431f2459777e1612938f": 1
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 2,
|
||||
"5fc382c1016cce60e8341b20": 1
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"5737218f245977612125ba51": 5,
|
||||
"57372140245977611f70ee91": 5,
|
||||
"5737207f24597760ff7b25f2": 2,
|
||||
"573719762459775a626ccbc1": 3,
|
||||
"57371f8d24597761006c6a81": 3,
|
||||
"57371f2b24597761224311f1": 5,
|
||||
"57371eb62459776125652ac1": 1,
|
||||
"57371b192459775a9f58a5e0": 1,
|
||||
"57371e4124597760ff7b25f1": 1
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5efb0e16aeb21837e749c7ff": 1,
|
||||
"58864a4f2459770fcc257101": 7,
|
||||
"5a3c16fe86f77452b62de32a": 12,
|
||||
"5c3df7d588a4501f290594e5": 6,
|
||||
"64b7bbb74b75259c590fa897": 4,
|
||||
"56d59d3ad2720bdb418b4577": 2
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a26ac06c4a282000c5a90a8": 5,
|
||||
"5a26abfac4a28232980eabff": 3,
|
||||
"5a269f97c4a282000b151807": 1
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c40bdd19b369e1e53d1": 5,
|
||||
"62330bfadc5883093563729b": 3,
|
||||
"62330c18744e5e31df12f516": 1
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"6576f96220d53a5b8f3e395e": 7,
|
||||
"57a0dfb82459774d3078b56c": 5,
|
||||
"5c0d668f86f7747ccb7f13b2": 1
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 10,
|
||||
"66a0d1f88486c69fce00fdf6": 1
|
||||
}
|
||||
},
|
||||
"pmcAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5ea2a8e200685063ec28c05a": 20,
|
||||
"5efb0d4f4bc50b58e81710f3": 10,
|
||||
"5e81f423763d9f754677bf2e": 30,
|
||||
"5efb0cabfb3e451d70735af5": 20
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 15,
|
||||
"5cadf6ddae9215051e1c23b2": 50,
|
||||
"5cadf6eeae921500134b2799": 35
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6806a4b936088465b17e": 10,
|
||||
"64b8ee384b75259c590fa89b": 20,
|
||||
"5d6e6911a4b9361bd5780d52": 20,
|
||||
"5c0d591486f7744c505b416f": 5,
|
||||
"5d6e68e6a4b9361c140bcfe0": 5,
|
||||
"5d6e689ca4b9361bc8618956": 5,
|
||||
"5d6e68c4a4b9361b93413f79": 35,
|
||||
"5d6e68a8a4b9360b6c0d54e2": 15
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e6a5fa4b93614ec501745": 15,
|
||||
"5d6e6a53a4b9361bd473feec": 15,
|
||||
"5d6e6a05a4b93618084f58d0": 35,
|
||||
"5d6e6a42a4b9364f07165f52": 35
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 40,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 35,
|
||||
"5e85aa1a988a8701445df1f5": 25
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e655cb86f77411dc52a77b": 40,
|
||||
"5f0596629e22f464da6bbdd9": 60
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26844d4351e00334c9475": 40,
|
||||
"64b6979341772715af0f9c39": 30,
|
||||
"5ba2678ad4351e44f824b344": 20,
|
||||
"5ba26835d4351e0035628ff5": 10
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff2ced2720bb4668b4567": 30,
|
||||
"56dff061d2720bb5668b4567": 50,
|
||||
"61962b617c6c7b169525f168": 10,
|
||||
"56dfef82d2720bbd668b4567": 10,
|
||||
"56dff026d2720bb8668b4567": 5,
|
||||
"5c0d5e4486f77478390952fe": 5
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"5c0d5ae286f7741e46554302": 10,
|
||||
"60194943740c5d77f6705eea": 25,
|
||||
"59e6906286f7746c9f75e847": 25,
|
||||
"54527ac44bdc2d36668b4567": 30,
|
||||
"59e690b686f7746c9f75e848": 5,
|
||||
"601949593ae8f707c4608daa": 5
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc80f53e4a949000e1ea4f8": 20,
|
||||
"5cc80f67e4a949035e43bbba": 40,
|
||||
"5cc80f38e4a949001152b560": 30
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 80,
|
||||
"6529243824cbe3c74a05e5c1": 20
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"573603c924597764442bd9cb": 10,
|
||||
"573603562459776430731618": 10
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 5,
|
||||
"5fbe3ffdf8b6a877a729ea82": 40,
|
||||
"619636be6db0f2477964e710": 40,
|
||||
"64b8725c4b75259c590fa899": 10,
|
||||
"5fd20ff893a8961fc660a954": 5
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"5656d7c34bdc2d9d198b4587": 25,
|
||||
"64b7af434b75259c590fa893": 50,
|
||||
"59e0d99486f7744a32234762": 20,
|
||||
"601aa3d2b2bcb34913271e6d": 5
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e53d4353e3302577c4c": 20,
|
||||
"58dd3ad986f77403051cba8f": 45,
|
||||
"5a608bf24f39f98ffc77720e": 20,
|
||||
"5a6086ea4f39f99cd479502f": 10,
|
||||
"5efb0c1bd79ff02a1f5e68d9": 5
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"5887431f2459777e1612938f": 30,
|
||||
"59e77a2386f7742ee578960a": 45,
|
||||
"5e023d34e8a400319a28ed44": 20,
|
||||
"560d61e84bdc2da74d8b4571": 5
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 20,
|
||||
"5fc382c1016cce60e8341b20": 40,
|
||||
"5fc275cf85fd526b824a571a": 25,
|
||||
"5fc382a9d724d907e2077dab": 5
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"5737201124597760fc4431f1": 15,
|
||||
"573720e02459776143012541": 20,
|
||||
"573718ba2459775a75491131": 30,
|
||||
"57371aab2459775a77142f22": 20,
|
||||
"573719df2459775a626ccbc2": 15
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5c0d56a986f774449d5de529": 10,
|
||||
"5efb0e16aeb21837e749c7ff": 15,
|
||||
"56d59d3ad2720bdb418b4577": 50,
|
||||
"5c925fa22e221601da359b7b": 20,
|
||||
"5efb0da7a29a85116f6ea05f": 5
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a269f97c4a282000b151807": 25,
|
||||
"6576f93989f0062e741ba952": 25,
|
||||
"5a26ac0ec4a28200741e1e18": 12,
|
||||
"6576f4708ca9c4381d16cd9d": 8
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c18744e5e31df12f516": 9,
|
||||
"62330b3ed4dc74626d570b95": 6
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"5c0d668f86f7747ccb7f13b2": 20,
|
||||
"61962d879bb3d20b0946d385": 50,
|
||||
"57a0e5022459774d1673f889": 25,
|
||||
"5c0d688c86f77413ae3407b2": 5
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 5,
|
||||
"66a0d1f88486c69fce00fdf6": 60,
|
||||
"66a0d1e0ed648d72fe064d06": 30,
|
||||
"668fe62ac62660a5d8071446": 5
|
||||
}
|
||||
},
|
||||
"bossAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5ea2a8e200685063ec28c05a": 4,
|
||||
"5efb0fc6aeb21837e749c801": 1,
|
||||
"5efb0d4f4bc50b58e81710f3": 10,
|
||||
"5e81f423763d9f754677bf2e": 18,
|
||||
"5efb0cabfb3e451d70735af5": 10
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 3,
|
||||
"5cadf6ddae9215051e1c23b2": 12,
|
||||
"5cadf6eeae921500134b2799": 8
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6806a4b936088465b17e": 7,
|
||||
"64b8ee384b75259c590fa89b": 4,
|
||||
"5d6e6911a4b9361bd5780d52": 3,
|
||||
"5c0d591486f7744c505b416f": 5,
|
||||
"5d6e6891a4b9361bd473feea": 2,
|
||||
"5d6e68e6a4b9361c140bcfe0": 6,
|
||||
"5d6e689ca4b9361bc8618956": 8,
|
||||
"5d6e68c4a4b9361b93413f79": 8,
|
||||
"5d6e68a8a4b9360b6c0d54e2": 3
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e69c7a4b9360b6c0d54e4": 1,
|
||||
"5d6e6a53a4b9361bd473feec": 4,
|
||||
"5d6e6a05a4b93618084f58d0": 5,
|
||||
"5d6e6a42a4b9364f07165f52": 5
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 2,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 4,
|
||||
"5e85aa1a988a8701445df1f5": 4
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6658b86f77411d949b250": 1,
|
||||
"59e6542b86f77411dc52a77a": 2,
|
||||
"59e655cb86f77411dc52a77b": 10,
|
||||
"5f0596629e22f464da6bbdd9": 8
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26812d4351e003201fef1": 2,
|
||||
"5ba26844d4351e00334c9475": 4,
|
||||
"5ba2678ad4351e44f824b344": 15,
|
||||
"64b6979341772715af0f9c39": 15,
|
||||
"5ba26835d4351e0035628ff5": 8
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff3afd2720bba668b4567": 6,
|
||||
"56dff2ced2720bb4668b4567": 12,
|
||||
"56dff061d2720bb5668b4567": 20,
|
||||
"61962b617c6c7b169525f168": 12,
|
||||
"56dfef82d2720bbd668b4567": 9,
|
||||
"56dff026d2720bb8668b4567": 8,
|
||||
"5c0d5e4486f77478390952fe": 4
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"5c0d5ae286f7741e46554302": 1,
|
||||
"54527a984bdc2d4e668b4567": 7,
|
||||
"60194943740c5d77f6705eea": 20,
|
||||
"59e6906286f7746c9f75e847": 26,
|
||||
"54527ac44bdc2d36668b4567": 30,
|
||||
"59e690b686f7746c9f75e848": 7,
|
||||
"601949593ae8f707c4608daa": 5
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc80f8fe4a949033b0224a2": 5,
|
||||
"5cc80f53e4a949000e1ea4f8": 21,
|
||||
"5cc80f67e4a949035e43bbba": 15,
|
||||
"5cc80f38e4a949001152b560": 12
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 10,
|
||||
"6529243824cbe3c74a05e5c1": 5
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"5736026a245977644601dc61": 5,
|
||||
"573603c924597764442bd9cb": 10,
|
||||
"573603562459776430731618": 10
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 7,
|
||||
"5fbe3ffdf8b6a877a729ea82": 6,
|
||||
"619636be6db0f2477964e710": 23,
|
||||
"64b8725c4b75259c590fa899": 20,
|
||||
"5fd20ff893a8961fc660a954": 9
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"59e4cf5286f7741778269d8a": 4,
|
||||
"5656d7c34bdc2d9d198b4587": 28,
|
||||
"64b7af434b75259c590fa893": 33,
|
||||
"59e0d99486f7744a32234762": 20,
|
||||
"601aa3d2b2bcb34913271e6d": 12
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e53d4353e3302577c4c": 6,
|
||||
"58dd3ad986f77403051cba8f": 27,
|
||||
"5a608bf24f39f98ffc77720e": 19,
|
||||
"5a6086ea4f39f99cd479502f": 9,
|
||||
"5efb0c1bd79ff02a1f5e68d9": 2
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"5e023cf8186a883be655e54f": 3,
|
||||
"5887431f2459777e1612938f": 20,
|
||||
"59e77a2386f7742ee578960a": 25,
|
||||
"5e023d34e8a400319a28ed44": 22,
|
||||
"560d61e84bdc2da74d8b4571": 15,
|
||||
"5e023d48186a883be655e551": 10
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 5,
|
||||
"5fc382c1016cce60e8341b20": 8,
|
||||
"5fc275cf85fd526b824a571a": 8,
|
||||
"5fc382a9d724d907e2077dab": 5
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"57371e4124597760ff7b25f1": 3,
|
||||
"5737201124597760fc4431f1": 5,
|
||||
"573720e02459776143012541": 12,
|
||||
"573718ba2459775a75491131": 18,
|
||||
"57371aab2459775a77142f22": 12,
|
||||
"573719df2459775a626ccbc2": 10
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5c0d56a986f774449d5de529": 9,
|
||||
"5efb0e16aeb21837e749c7ff": 5,
|
||||
"5a3c16fe86f77452b62de32a": 4,
|
||||
"56d59d3ad2720bdb418b4577": 18,
|
||||
"5c925fa22e221601da359b7b": 22,
|
||||
"5efb0da7a29a85116f6ea05f": 9
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a269f97c4a282000b151807": 8,
|
||||
"6576f93989f0062e741ba952": 18,
|
||||
"5a26ac0ec4a28200741e1e18": 18,
|
||||
"6576f4708ca9c4381d16cd9d": 8
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c18744e5e31df12f516": 9,
|
||||
"62330b3ed4dc74626d570b95": 6
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"5c0d668f86f7747ccb7f13b2": 9,
|
||||
"61962d879bb3d20b0946d385": 25,
|
||||
"57a0e5022459774d1673f889": 25,
|
||||
"5c0d688c86f77413ae3407b2": 12
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 3,
|
||||
"66a0d1f88486c69fce00fdf6": 30,
|
||||
"66a0d1e0ed648d72fe064d06": 25,
|
||||
"668fe62ac62660a5d8071446": 12
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,473 +0,0 @@
|
|||
{
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 1,
|
||||
"66546f823b51a4d21e0d17d7": 1,
|
||||
"5d1f56a686f7744bce0ee9eb": 1,
|
||||
"5d1f56c686f7744bcd13459c": 2,
|
||||
"637b945722e2a933ed0e33c8": 2,
|
||||
"6571cb0923aa6d72760a7f8f": 2,
|
||||
"5fd3e9f71b735718c25cd9f8": 2,
|
||||
"642d9bbf6c06444bf7033855": 2,
|
||||
"6033a35f80ae5e2f970ba6bb": 3,
|
||||
"66043728333907134309d647": 3,
|
||||
"5d1f56e486f7744bce0ee9ed": 3,
|
||||
"6295e8c3e08ed747e64aea00": 3,
|
||||
"642c18b8a6a0660b560fb31c": 3,
|
||||
"66acbe49dc61999a6a03d4d6": 3,
|
||||
"5d4da0cb86f77450fe0a6629": 5,
|
||||
"660437e57502eca33a08caca": 5,
|
||||
"5fcf63da5c287f01f22bf245": 5,
|
||||
"618109c96d7ca35d076b3363": 5,
|
||||
"5d1f56f186f7744bcb0acd1a": 5
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 1,
|
||||
"5d1f58ed86f7744bcb0acd1c": 1,
|
||||
"5d1f590486f7744bcd13459e": 2,
|
||||
"642d4d8eb6b75d4c89077cf9": 2,
|
||||
"6033a3fee29c9f6c9b14e74e": 2,
|
||||
"5fcf940bce1ba36a513bb9cc": 3,
|
||||
"660436487502eca33a08cac8": 3,
|
||||
"6571cad4c8673f00290f5657": 3,
|
||||
"637ba17aa10a96c2b605dbc2": 3,
|
||||
"5d1f591186f7744bcc048755": 3,
|
||||
"6295e944e9de5e7b3751c4da": 3,
|
||||
"642c19360a69698d1b049e12": 3,
|
||||
"66acc8f719271bd6d00dec0b": 3,
|
||||
"660436a810bcdf80ff0e9f78": 5,
|
||||
"617c02e24013b06b0b78df80": 5,
|
||||
"5d1f593286f7743014162044": 5,
|
||||
"5d1f592286f7743f8362bcdb": 5
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 1,
|
||||
"66546f823b51a4d21e0d17d7": 1,
|
||||
"5d1f565786f7743f8362bcd5": 1,
|
||||
"5fce3e0cfe40296c1d5fd782": 2,
|
||||
"6377266693a3b4967208e42b": 2,
|
||||
"5d1f564b86f7744bcb0acd16": 2,
|
||||
"6295e698e9de5e7b3751c47a": 2,
|
||||
"642e8ae07e17c882400c4f87": 2,
|
||||
"5d1f568486f7744bca3f0b98": 2,
|
||||
"657058fddf9b3231400e9188": 3,
|
||||
"6033a31e9ec839204e6a2f3e": 3,
|
||||
"66043cc27502eca33a08cad0": 3,
|
||||
"5fce3e47fe40296c1d5fd784": 3,
|
||||
"642ed297ac11c9eaf10d87e8": 3,
|
||||
"66acec1dc94f4bf5bc063a16": 3,
|
||||
"5d1f567786f7744bcc04874f": 5,
|
||||
"660440d2c8949a435906e43a": 5,
|
||||
"617bca4b4013b06b0b78df2a": 5,
|
||||
"5d1f566d86f7744bcd13459a": 5
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 1,
|
||||
"5d1f58bd86f7744bce0ee9ef": 1,
|
||||
"6377315993a3b4967208e437": 2,
|
||||
"5d1f588e86f7744bcc048753": 2,
|
||||
"65707a89f5a6f1412f0c5f7b": 2,
|
||||
"642ed40af5bdf1c04e01952e": 2,
|
||||
"5fce3e965a9f8c40685693bc": 2,
|
||||
"6295e63de08ed747e64ae991": 3,
|
||||
"66043cf87502eca33a08cad2": 3,
|
||||
"6033a3d8ed2e0509b15f9031": 3,
|
||||
"5d1f58cb86f7744bca3f0b9a": 3,
|
||||
"5d1f58a086f7743f8362bcd9": 3,
|
||||
"642e71620a69698d1b049f0a": 3,
|
||||
"66acebd4ede86671bb09584b": 3,
|
||||
"66043d7ac8949a435906e434": 5,
|
||||
"5d1f58ab86f7743014162042": 5,
|
||||
"617be9e4e02b3b3fa50fa8f2": 5
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"springEarly": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"660437e57502eca33a08caca": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5d1f56ff86f7743f8362bcd7": 1,
|
||||
"5d1f56a686f7744bce0ee9eb": 2,
|
||||
"5e9da17386f774054b6f79a3": 2,
|
||||
"5e4bb35286f77406a511c9bc": 2,
|
||||
"5d1f56e486f7744bce0ee9ed": 2
|
||||
},
|
||||
"feet": {
|
||||
"642d4d8eb6b75d4c89077cf9": 1,
|
||||
"5fcf940bce1ba36a513bb9cc": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"6295e944e9de5e7b3751c4da": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"5e4bb3b586f77406812bd579": 1,
|
||||
"5d1f590486f7744bcd13459e": 3,
|
||||
"5d1f58ed86f7744bcb0acd1c": 3
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"657058fddf9b3231400e9188": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5d1f567786f7744bcc04874f": 1,
|
||||
"5e9d9fa986f774054d6b89f2": 1,
|
||||
"5f5e401747344c2e4f6c42c5": 1,
|
||||
"642e8ae07e17c882400c4f87": 2,
|
||||
"5d1f568486f7744bca3f0b98": 2,
|
||||
"66acec1dc94f4bf5bc063a16": 2,
|
||||
"5e4bb31586f7740695730568": 2
|
||||
},
|
||||
"feet": {
|
||||
"5d1f58bd86f7744bce0ee9ef": 1,
|
||||
"6377315993a3b4967208e437": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"5d1f58cb86f7744bca3f0b9a": 1,
|
||||
"5d1f58a086f7743f8362bcd9": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"5f5e40400bc58666c37e7819": 1,
|
||||
"66acebd4ede86671bb09584b": 3,
|
||||
"5d1f58ab86f7743014162042": 3
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"spring": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"5d4da0cb86f77450fe0a6629": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5f5e4075df4f3100376a8138": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 1,
|
||||
"6033a3fee29c9f6c9b14e74e": 1,
|
||||
"660436487502eca33a08cac8": 1,
|
||||
"6571cad4c8673f00290f5657": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"642d6941ff5ecad7810a8a61": 1,
|
||||
"5e9dcadd86f7743e20652f23": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 1,
|
||||
"5d1f564b86f7744bcb0acd16": 1,
|
||||
"6295e698e9de5e7b3751c47a": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5fce3e47fe40296c1d5fd784": 1,
|
||||
"617bca4b4013b06b0b78df2a": 1,
|
||||
"5df89f1f86f77412631087ea": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 1,
|
||||
"5d1f588e86f7744bcc048753": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"6033a3d8ed2e0509b15f9031": 1,
|
||||
"642e71620a69698d1b049f0a": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"642eea6f881906a7fe086841": 1,
|
||||
"5df89f8f86f77412672a1e38": 1,
|
||||
"5e9dc97c86f774054c19ac9a": 1,
|
||||
"5e4bb39386f774067f79de05": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"summer": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cde95d97d6c8b647a3769b0": 1,
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"5fd3e9f71b735718c25cd9f8": 1,
|
||||
"66043728333907134309d647": 1,
|
||||
"5d4da0cb86f77450fe0a6629": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"642c18b8a6a0660b560fb31c": 1,
|
||||
"5d1f56f186f7744bcb0acd1a": 1,
|
||||
"5f5e4075df4f3100376a8138": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cde95ef7d6c8b04713c4f2d": 1,
|
||||
"6033a3fee29c9f6c9b14e74e": 1,
|
||||
"660436487502eca33a08cac8": 1,
|
||||
"6571cad4c8673f00290f5657": 1,
|
||||
"66acc8f719271bd6d00dec0b": 1,
|
||||
"5d1f593286f7743014162044": 1,
|
||||
"5d1f592286f7743f8362bcdb": 1,
|
||||
"642d6941ff5ecad7810a8a61": 1,
|
||||
"5e9dcadd86f7743e20652f23": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5cc0858d14c02e000c6bea66": 1,
|
||||
"5d1f564b86f7744bcb0acd16": 1,
|
||||
"6295e698e9de5e7b3751c47a": 1,
|
||||
"6033a31e9ec839204e6a2f3e": 1,
|
||||
"5fce3e47fe40296c1d5fd784": 1,
|
||||
"617bca4b4013b06b0b78df2a": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"5df89f1f86f77412631087ea": 1,
|
||||
"5e9d9fa986f774054d6b89f2": 1
|
||||
},
|
||||
"feet": {
|
||||
"5cc085bb14c02e000e67a5c5": 1,
|
||||
"5d1f588e86f7744bcc048753": 1,
|
||||
"66043cf87502eca33a08cad2": 1,
|
||||
"6033a3d8ed2e0509b15f9031": 1,
|
||||
"642e71620a69698d1b049f0a": 1,
|
||||
"617be9e4e02b3b3fa50fa8f2": 1,
|
||||
"642eea6f881906a7fe086841": 1,
|
||||
"5df89f8f86f77412672a1e38": 1,
|
||||
"5e9dc97c86f774054c19ac9a": 1,
|
||||
"5e4bb39386f774067f79de05": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"autumn": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56c686f7744bcd13459c": 1,
|
||||
"637b945722e2a933ed0e33c8": 1,
|
||||
"6571cb0923aa6d72760a7f8f": 1,
|
||||
"6033a35f80ae5e2f970ba6bb": 1,
|
||||
"5d1f56e486f7744bce0ee9ed": 1,
|
||||
"66acbe49dc61999a6a03d4d6": 1,
|
||||
"660437e57502eca33a08caca": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"5d1f56ff86f7743f8362bcd7": 1
|
||||
},
|
||||
"feet": {
|
||||
"642d4d8eb6b75d4c89077cf9": 1,
|
||||
"5fcf940bce1ba36a513bb9cc": 1,
|
||||
"637ba17aa10a96c2b605dbc2": 1,
|
||||
"6295e944e9de5e7b3751c4da": 1,
|
||||
"5e4bb3b586f77406812bd579": 1,
|
||||
"5f5e40a06760b4138443b341": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"6377266693a3b4967208e42b": 1,
|
||||
"5d1f568486f7744bca3f0b98": 1,
|
||||
"657058fddf9b3231400e9188": 1,
|
||||
"642ed297ac11c9eaf10d87e8": 1,
|
||||
"5d1f567786f7744bcc04874f": 1,
|
||||
"64ef3efdb63b74469b6c1499": 1,
|
||||
"6430119aac11c9eaf10d881b": 1,
|
||||
"5f5e401747344c2e4f6c42c5": 1
|
||||
},
|
||||
"feet": {
|
||||
"5d1f58bd86f7744bce0ee9ef": 1,
|
||||
"6377315993a3b4967208e437": 1,
|
||||
"642ed40af5bdf1c04e01952e": 1,
|
||||
"6295e63de08ed747e64ae991": 1,
|
||||
"5d1f58a086f7743f8362bcd9": 1,
|
||||
"66043d7ac8949a435906e434": 1,
|
||||
"5d1f58ab86f7743014162042": 1,
|
||||
"5f5e40400bc58666c37e7819": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"winter": {
|
||||
"pmcUSEC": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"5d1f56a686f7744bce0ee9eb": 1,
|
||||
"5e9da17386f774054b6f79a3": 1,
|
||||
"5e4bb35286f77406a511c9bc": 1,
|
||||
"5d1f56e486f7744bce0ee9ed": 1
|
||||
},
|
||||
"feet": {
|
||||
"5d1f590486f7744bcd13459e": 1,
|
||||
"5d1f58ed86f7744bcb0acd1c": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cde95fa7d6c8b04737c2d13": 1
|
||||
},
|
||||
"head": {
|
||||
"5cde96047d6c8b20b577f016": 1,
|
||||
"5fdb4139e4ed5b5ea251e4ed": 1,
|
||||
"5fdb5950f5264a66150d1c6e": 1,
|
||||
"60a6aa8fd559ae040d0d951f": 1,
|
||||
"619f9e338858a474c8685cc9": 1,
|
||||
"62aca6a1310e67685a2fc2e7": 1,
|
||||
"6574aabee0423b9ebe0c79cf": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"pmcBEAR": {
|
||||
"appearance": {
|
||||
"body": {
|
||||
"642e8ae07e17c882400c4f87": 1,
|
||||
"5d1f568486f7744bca3f0b98": 1,
|
||||
"66acec1dc94f4bf5bc063a16": 1,
|
||||
"5e4bb31586f7740695730568": 1
|
||||
},
|
||||
"feet": {
|
||||
"66acebd4ede86671bb09584b": 1,
|
||||
"5d1f58ab86f7743014162042": 1
|
||||
},
|
||||
"hands": {
|
||||
"5cc0876314c02e000c6bea6b": 1
|
||||
},
|
||||
"head": {
|
||||
"5cc084dd14c02e000b0550a3": 1,
|
||||
"5fdb50bb2b730a787b3f78cf": 1,
|
||||
"5fdb7571e4ed5b5ea251e529": 1,
|
||||
"60a6aaad42fd2735e4589978": 1,
|
||||
"619f94f5b90286142b59d45f": 1,
|
||||
"62a9e7d15ea3b87d6f642a28": 1,
|
||||
"6574aa9a1b144de18c0fba45": 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -1,456 +0,0 @@
|
|||
{
|
||||
"scavAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5efb0fc6aeb21837e749c801": 1,
|
||||
"5efb0d4f4bc50b58e81710f3": 3
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6e5ae921500113bb973": 1
|
||||
},
|
||||
"Caliber12g": {
|
||||
"5d6e6772a4b936088465b17c": 2,
|
||||
"5d6e6806a4b936088465b17e": 2,
|
||||
"5d6e67fba4b9361bc73bc779": 2,
|
||||
"560d5e524bdc2d25448b4571": 2,
|
||||
"5d6e6869a4b9361c140bcfde": 1,
|
||||
"5d6e68b3a4b9361bca7e50b5": 1,
|
||||
"58820d1224597753c90aeb13": 1,
|
||||
"5d6e68dea4b9361bcc29e659": 1,
|
||||
"5d6e6891a4b9361bd473feea": 1,
|
||||
"5d6e68e6a4b9361c140bcfe0": 1,
|
||||
"5d6e689ca4b9361bc8618956": 1
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e695fa4b936359b35d852": 2,
|
||||
"5d6e69b9a4b9361bc8618958": 2,
|
||||
"5a38ebd9c4a282000d722a5b": 2,
|
||||
"5d6e69c7a4b9360b6c0d54e4": 1,
|
||||
"5d6e6a53a4b9361bd473feec": 1
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 3,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 1
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e6658b86f77411d949b250": 3,
|
||||
"59e6542b86f77411dc52a77a": 1
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26812d4351e003201fef1": 3,
|
||||
"5ba26844d4351e00334c9475": 1
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff216d2720bbd668b4568": 1,
|
||||
"56dff338d2720bbd668b4569": 4,
|
||||
"56dff421d2720b5f5a8b4567": 4,
|
||||
"56dff4ecd2720b5f5a8b4568": 2,
|
||||
"56dff4a2d2720bbd668b456a": 4,
|
||||
"56dff0bed2720bb0668b4567": 3,
|
||||
"56dff3afd2720bba668b4567": 1
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"59e6927d86f77411da468256": 2,
|
||||
"59e6918f86f7746c9f75e849": 2,
|
||||
"59e68f6f86f7746c9f75e846": 4,
|
||||
"59e6920f86f77411d82aa167": 5,
|
||||
"54527a984bdc2d4e668b4567": 1
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc86832d7f00c000d3a6e6c": 2,
|
||||
"5cc80f79e4a949033c7343b2": 3,
|
||||
"5cc86840d7f00c002412c56c": 3,
|
||||
"5cc80f8fe4a949033b0224a2": 1,
|
||||
"5cc80f53e4a949000e1ea4f8": 1
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 1
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"573602322459776445391df1": 2,
|
||||
"573601b42459776410737435": 2,
|
||||
"5735fdcd2459776445391d61": 1,
|
||||
"5736026a245977644601dc61": 1
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"6196365d58ef8c428c287da1": 1,
|
||||
"6196364158ef8c428c287d9f": 6,
|
||||
"5fbe3ffdf8b6a877a729ea82": 3
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"59e4d3d286f774176a36250a": 2,
|
||||
"64b7af734b75259c590fa895": 2,
|
||||
"64b7af5a8532cf95ee0a0dbd": 6,
|
||||
"59e4d24686f7741776641ac7": 4,
|
||||
"59e4cf5286f7741778269d8a": 2,
|
||||
"5656d7c34bdc2d9d198b4587": 1
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"5e023e88277cce2b522ff2b1": 2,
|
||||
"5e023e6e34d52a55c3304f71": 2,
|
||||
"5e023e53d4353e3302577c4c": 1
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"64b8f7c241772715af0f9c3d": 2,
|
||||
"64b8f7b5389d7ffd620ccba2": 2,
|
||||
"64b8f7968532cf95ee0a0dbf": 2,
|
||||
"5e023cf8186a883be655e54f": 2,
|
||||
"5887431f2459777e1612938f": 1
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 2,
|
||||
"5fc382c1016cce60e8341b20": 1
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"5737218f245977612125ba51": 5,
|
||||
"57372140245977611f70ee91": 5,
|
||||
"5737207f24597760ff7b25f2": 2,
|
||||
"573719762459775a626ccbc1": 3,
|
||||
"57371f8d24597761006c6a81": 3,
|
||||
"57371f2b24597761224311f1": 5,
|
||||
"57371eb62459776125652ac1": 1,
|
||||
"57371b192459775a9f58a5e0": 1,
|
||||
"57371e4124597760ff7b25f1": 1
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5efb0e16aeb21837e749c7ff": 1,
|
||||
"58864a4f2459770fcc257101": 7,
|
||||
"5a3c16fe86f77452b62de32a": 12,
|
||||
"5c3df7d588a4501f290594e5": 6,
|
||||
"64b7bbb74b75259c590fa897": 4,
|
||||
"56d59d3ad2720bdb418b4577": 2
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a26ac06c4a282000c5a90a8": 5,
|
||||
"5a26abfac4a28232980eabff": 3,
|
||||
"5a269f97c4a282000b151807": 1
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c40bdd19b369e1e53d1": 5,
|
||||
"62330bfadc5883093563729b": 3,
|
||||
"62330c18744e5e31df12f516": 1
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"6576f96220d53a5b8f3e395e": 7,
|
||||
"57a0dfb82459774d3078b56c": 5,
|
||||
"5c0d668f86f7747ccb7f13b2": 1
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 10,
|
||||
"66a0d1f88486c69fce00fdf6": 1
|
||||
}
|
||||
},
|
||||
"pmcAmmo": {
|
||||
"Caliber1143x23ACP": {
|
||||
"5ea2a8e200685063ec28c05a": 20,
|
||||
"5e81f423763d9f754677bf2e": 35,
|
||||
"5efb0cabfb3e451d70735af5": 45
|
||||
},
|
||||
"Caliber127x55": {
|
||||
"5cadf6ddae9215051e1c23b2": 45,
|
||||
"5cadf6eeae921500134b2799": 55
|
||||
},
|
||||
"Caliber12g": {
|
||||
"64b8ee384b75259c590fa89b": 10,
|
||||
"5d6e6911a4b9361bd5780d52": 25,
|
||||
"5d6e68c4a4b9361b93413f79": 25,
|
||||
"5d6e68a8a4b9360b6c0d54e2": 25
|
||||
},
|
||||
"Caliber20g": {
|
||||
"5d6e6a5fa4b93614ec501745": 10,
|
||||
"5d6e6a53a4b9361bd473feec": 10,
|
||||
"5d6e6a05a4b93618084f58d0": 40,
|
||||
"5d6e6a42a4b9364f07165f52": 40
|
||||
},
|
||||
"Caliber23x75": {
|
||||
"5f647f31b6238e5dd066e196": 20,
|
||||
"5e85a9a6eacf8c039e4e2ac1": 35,
|
||||
"5e85aa1a988a8701445df1f5": 35
|
||||
},
|
||||
"Caliber366TKM": {
|
||||
"59e655cb86f77411dc52a77b": 10,
|
||||
"5f0596629e22f464da6bbdd9": 90
|
||||
},
|
||||
"Caliber40mmRU": {
|
||||
"5656eb674bdc2d35148b457c": 1
|
||||
},
|
||||
"Caliber40x46": {
|
||||
"5ede4739e0350d05467f73e8": 1,
|
||||
"5ede47405b097655935d7d16": 1,
|
||||
"5ede474b0c226a66f5402622": 1,
|
||||
"5ede475339ee016e8c534742": 1,
|
||||
"5ede475b549eed7c6d5c18fb": 1,
|
||||
"5f0c892565703e5c461894e9": 1
|
||||
},
|
||||
"Caliber46x30": {
|
||||
"5ba26844d4351e00334c9475": 15,
|
||||
"64b6979341772715af0f9c39": 30,
|
||||
"5ba2678ad4351e44f824b344": 40,
|
||||
"5ba26835d4351e0035628ff5": 15
|
||||
},
|
||||
"Caliber545x39": {
|
||||
"56dff2ced2720bb4668b4567": 10,
|
||||
"56dff061d2720bb5668b4567": 30,
|
||||
"61962b617c6c7b169525f168": 30,
|
||||
"56dfef82d2720bbd668b4567": 10,
|
||||
"56dff026d2720bb8668b4567": 5,
|
||||
"5c0d5e4486f77478390952fe": 5
|
||||
},
|
||||
"Caliber556x45NATO": {
|
||||
"60194943740c5d77f6705eea": 5,
|
||||
"59e6906286f7746c9f75e847": 10,
|
||||
"54527ac44bdc2d36668b4567": 50,
|
||||
"59e690b686f7746c9f75e848": 20,
|
||||
"601949593ae8f707c4608daa": 15
|
||||
},
|
||||
"Caliber57x28": {
|
||||
"5cc80f67e4a949035e43bbba": 35,
|
||||
"5cc80f38e4a949001152b560": 65
|
||||
},
|
||||
"Caliber68x51": {
|
||||
"6529302b8c26af6326029fb7": 50,
|
||||
"6529243824cbe3c74a05e5c1": 50
|
||||
},
|
||||
"Caliber762x25TT": {
|
||||
"573603562459776430731618": 10
|
||||
},
|
||||
"Caliber762x35": {
|
||||
"5fbe3ffdf8b6a877a729ea82": 15,
|
||||
"619636be6db0f2477964e710": 40,
|
||||
"64b8725c4b75259c590fa899": 30,
|
||||
"5fd20ff893a8961fc660a954": 15
|
||||
},
|
||||
"Caliber762x39": {
|
||||
"64b7af434b75259c590fa893": 40,
|
||||
"59e0d99486f7744a32234762": 45,
|
||||
"601aa3d2b2bcb34913271e6d": 15
|
||||
},
|
||||
"Caliber762x51": {
|
||||
"58dd3ad986f77403051cba8f": 40,
|
||||
"5a608bf24f39f98ffc77720e": 35,
|
||||
"5a6086ea4f39f99cd479502f": 20,
|
||||
"5efb0c1bd79ff02a1f5e68d9": 5
|
||||
},
|
||||
"Caliber762x54R": {
|
||||
"5887431f2459777e1612938f": 5,
|
||||
"59e77a2386f7742ee578960a": 30,
|
||||
"5e023d34e8a400319a28ed44": 40,
|
||||
"560d61e84bdc2da74d8b4571": 20,
|
||||
"5e023d48186a883be655e551": 5
|
||||
},
|
||||
"Caliber86x70": {
|
||||
"5fc382b6d6fa9c00c571bbc3": 5,
|
||||
"5fc382c1016cce60e8341b20": 25,
|
||||
"5fc275cf85fd526b824a571a": 45,
|
||||
"5fc382a9d724d907e2077dab": 25
|
||||
},
|
||||
"Caliber9x18PM": {
|
||||
"573718ba2459775a75491131": 15,
|
||||
"57371aab2459775a77142f22": 50,
|
||||
"573719df2459775a626ccbc2": 35
|
||||
},
|
||||
"Caliber9x19PARA": {
|
||||
"5c0d56a986f774449d5de529": 10,
|
||||
"56d59d3ad2720bdb418b4577": 25,
|
||||
"5c925fa22e221601da359b7b": 40,
|
||||
"5efb0da7a29a85116f6ea05f": 25
|
||||
},
|
||||
"Caliber9x21": {
|
||||
"5a269f97c4a282000b151807": 20,
|
||||
"6576f93989f0062e741ba952": 20,
|
||||
"5a26ac0ec4a28200741e1e18": 15,
|
||||
"6576f4708ca9c4381d16cd9d": 10
|
||||
},
|
||||
"Caliber9x33R": {
|
||||
"62330c18744e5e31df12f516": 10,
|
||||
"62330b3ed4dc74626d570b95": 10
|
||||
},
|
||||
"Caliber9x39": {
|
||||
"61962d879bb3d20b0946d385": 30,
|
||||
"57a0e5022459774d1673f889": 40,
|
||||
"5c0d688c86f77413ae3407b2": 30
|
||||
},
|
||||
"Caliber127x33": {
|
||||
"66a0d1c87d0d369e270bb9de": 5,
|
||||
"66a0d1f88486c69fce00fdf6": 20,
|
||||
"66a0d1e0ed648d72fe064d06": 50,
|
||||
"668fe62ac62660a5d8071446": 30
|
||||
}
|
||||
} | ||||