Fix sandbox_high
not registering properly - Change processor to use map id instead of name
This commit is contained in:
parent
87ff9ecb0c
commit
f3c904e1d5
@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
Customs:
|
bigmap:
|
||||||
- 5938188786f77474f723e87f # Case 0031
|
- 5938188786f77474f723e87f # Case 0031
|
||||||
- 5c12301c86f77419522ba7e4 # Flash drive with fake info
|
- 5c12301c86f77419522ba7e4 # Flash drive with fake info
|
||||||
- 593965cf86f774087a77e1b6 # Case 0048
|
- 593965cf86f774087a77e1b6 # Case 0048
|
||||||
@ -15,7 +15,7 @@ Customs:
|
|||||||
- 64e74a3d4d49d23b2c39d319 # item_quest_clock_07 (Out of Time)
|
- 64e74a3d4d49d23b2c39d319 # item_quest_clock_07 (Out of Time)
|
||||||
#- 64bd1abff3a668f08805ce4f # Secure Flash drive V4 REMOVED BY BSG
|
#- 64bd1abff3a668f08805ce4f # Secure Flash drive V4 REMOVED BY BSG
|
||||||
|
|
||||||
Woods:
|
woods:
|
||||||
- 5938878586f7741b797c562f # Case 0052
|
- 5938878586f7741b797c562f # Case 0052
|
||||||
- 5d3ec50586f774183a607442 # Jaeger's message Underneath the wooden lookout post.
|
- 5d3ec50586f774183a607442 # Jaeger's message Underneath the wooden lookout post.
|
||||||
- 5af04e0a86f7743a532b79e2 # Single-axis Fiber Optic Gyroscope: item_barter_electr_gyroscope
|
- 5af04e0a86f7743a532b79e2 # Single-axis Fiber Optic Gyroscope: item_barter_electr_gyroscope
|
||||||
@ -24,7 +24,7 @@ Woods:
|
|||||||
#- 64bde2248f3a947a990aa4a5 # Sliderkey Secure Flash drive #1 REMOVED BY BSG
|
#- 64bde2248f3a947a990aa4a5 # Sliderkey Secure Flash drive #1 REMOVED BY BSG
|
||||||
#- 64bde265807321a9b905f076 # Sliderkey Secure Flash drive #2 REMOVED BY BSG
|
#- 64bde265807321a9b905f076 # Sliderkey Secure Flash drive #2 REMOVED BY BSG
|
||||||
|
|
||||||
Shoreline:
|
shoreline:
|
||||||
- 5a294d7c86f7740651337cf9 # Drone 1 SAS disk
|
- 5a294d7c86f7740651337cf9 # Drone 1 SAS disk
|
||||||
- 5a294d8486f774068638cd93 # Drone 2 SAS disk: ambiguous with itemTpl 5a294f1686f774340c7b7e4a
|
- 5a294d8486f774068638cd93 # Drone 2 SAS disk: ambiguous with itemTpl 5a294f1686f774340c7b7e4a
|
||||||
- 5efdafc1e70b5e33f86de058 # Sanitar's Surgery kit marked with a blue symbol
|
- 5efdafc1e70b5e33f86de058 # Sanitar's Surgery kit marked with a blue symbol
|
||||||
@ -42,7 +42,7 @@ Shoreline:
|
|||||||
- 5a29284f86f77463ef3db363 # Toughbook reinforced laptop
|
- 5a29284f86f77463ef3db363 # Toughbook reinforced laptop
|
||||||
- 64e74a534d49d23b2c39d31b # item_quest_clock_10 (Out of Time)
|
- 64e74a534d49d23b2c39d31b # item_quest_clock_10 (Out of Time)
|
||||||
|
|
||||||
Interchange:
|
interchange:
|
||||||
- 5ae9a18586f7746e381e16a3 # OLI cargo manifests
|
- 5ae9a18586f7746e381e16a3 # OLI cargo manifests
|
||||||
- 5ae9a0dd86f7742e5f454a05 # Goshan cargo manifests
|
- 5ae9a0dd86f7742e5f454a05 # Goshan cargo manifests
|
||||||
- 5ae9a1b886f77404c8537c62 # Idea cargo manifests
|
- 5ae9a1b886f77404c8537c62 # Idea cargo manifests
|
||||||
@ -53,11 +53,15 @@ Interchange:
|
|||||||
- 5b4c81bd86f77418a75ae159 # Chemical container item_quest_chem_container3
|
- 5b4c81bd86f77418a75ae159 # Chemical container item_quest_chem_container3
|
||||||
- 64e74a5ac2b4f829615ec336 # item_quest_clock_11 (Out of Time)
|
- 64e74a5ac2b4f829615ec336 # item_quest_clock_11 (Out of Time)
|
||||||
|
|
||||||
Factory:
|
factory4_day:
|
||||||
- 591093bb86f7747caa7bb2ee # On the neck of the dead scav in the bunker (Postman Pat Part 2)
|
- 591093bb86f7747caa7bb2ee # On the neck of the dead scav in the bunker (Postman Pat Part 2)
|
||||||
- 593a87af86f774122f54a951 # Syringe with a chemical
|
- 593a87af86f774122f54a951 # Syringe with a chemical
|
||||||
|
|
||||||
Lighthouse:
|
factory4_night:
|
||||||
|
- 591093bb86f7747caa7bb2ee # On the neck of the dead scav in the bunker (Postman Pat Part 2)
|
||||||
|
- 593a87af86f774122f54a951 # Syringe with a chemical
|
||||||
|
|
||||||
|
lighthouse:
|
||||||
- 61904c9df62c89219a56e034 # The message is tucked under the bottom of the door to the cabin.
|
- 61904c9df62c89219a56e034 # The message is tucked under the bottom of the door to the cabin.
|
||||||
- 619268ad78f4fa33f173dbe5 # Water pump operation data On the desk between other documents in the upper office.
|
- 619268ad78f4fa33f173dbe5 # Water pump operation data On the desk between other documents in the upper office.
|
||||||
- 619268de2be33f2604340159 # Pumping Station Operation Data In the upper floor office on the shelf.
|
- 619268de2be33f2604340159 # Pumping Station Operation Data In the upper floor office on the shelf.
|
||||||
@ -71,7 +75,7 @@ Lighthouse:
|
|||||||
- 578f87a3245977356274f2cb #
|
- 578f87a3245977356274f2cb #
|
||||||
# - 64b91627dd13d43b9d01d6d1 # Toughbook reinforced laptop (Event quest) REMOVED BY BSG
|
# - 64b91627dd13d43b9d01d6d1 # Toughbook reinforced laptop (Event quest) REMOVED BY BSG
|
||||||
|
|
||||||
ReserveBase:
|
rezervbase:
|
||||||
- 60915994c49cf53e4772cc38 # Military documents 1 on the table inside bunker control room (Documents)
|
- 60915994c49cf53e4772cc38 # Military documents 1 on the table inside bunker control room (Documents)
|
||||||
- 60a3b6359c427533db36cf84 # Military documents 2 On the bottom shelf of the cupboard near the corner.
|
- 60a3b6359c427533db36cf84 # Military documents 2 On the bottom shelf of the cupboard near the corner.
|
||||||
- 60a3b65c27adf161da7b6e14 # Military documents 3 Inside the cupboard next to the 4x4 Weapon Box.
|
- 60a3b65c27adf161da7b6e14 # Military documents 3 Inside the cupboard next to the 4x4 Weapon Box.
|
||||||
@ -82,7 +86,7 @@ ReserveBase:
|
|||||||
- 6398a072e301557ae24cec92 # Original Lightkeeper Intelligence (Snatch)
|
- 6398a072e301557ae24cec92 # Original Lightkeeper Intelligence (Snatch)
|
||||||
- 64e74a4baac4cd0a7264ecdd # item_quest_clock_09 (Out of Time)
|
- 64e74a4baac4cd0a7264ecdd # item_quest_clock_09 (Out of Time)
|
||||||
|
|
||||||
Laboratory:
|
laboratory:
|
||||||
- 5eff135be0d3331e9d282b7b # Flash drive marked with blue tape (TerraGroup employee)
|
- 5eff135be0d3331e9d282b7b # Flash drive marked with blue tape (TerraGroup employee)
|
||||||
- 6398a4cfb5992f573c6562b3 # Secured tape
|
- 6398a4cfb5992f573c6562b3 # Secured tape
|
||||||
#- 64e74a44c2b4f829615ec334 # item_quest_clock_08 (Out of Time) #1 REMOVED BY BSG
|
#- 64e74a44c2b4f829615ec334 # item_quest_clock_08 (Out of Time) #1 REMOVED BY BSG
|
||||||
@ -90,7 +94,7 @@ Laboratory:
|
|||||||
#- 64bdd008b0bf3baa6702f35f # Hermetic container for storing various chemicals #2 REMOVED BY BSG
|
#- 64bdd008b0bf3baa6702f35f # Hermetic container for storing various chemicals #2 REMOVED BY BSG
|
||||||
#- 64bdd014f3a668f08805ce64 # Hermetic container for storing various chemicals #3 REMOVED BY BSG
|
#- 64bdd014f3a668f08805ce64 # Hermetic container for storing various chemicals #3 REMOVED BY BSG
|
||||||
|
|
||||||
Streets of Tarkov:
|
tarkovstreets:
|
||||||
- 63a943cead5cc12f22161ff7 # Accountant's notes (Audit)
|
- 63a943cead5cc12f22161ff7 # Accountant's notes (Audit)
|
||||||
- 638cbc68a63f1b49be6a3010 # Registered letter (Youve Got Mail)
|
- 638cbc68a63f1b49be6a3010 # Registered letter (Youve Got Mail)
|
||||||
- 638df4cc7b560b03794a18d2 # AG guitar pick (Audiophile)
|
- 638df4cc7b560b03794a18d2 # AG guitar pick (Audiophile)
|
||||||
@ -114,6 +118,10 @@ Streets of Tarkov:
|
|||||||
- 64f5b4f71a5f313cb144c06c # Secret component (Beyond the Red Meat - Part 2)
|
- 64f5b4f71a5f313cb144c06c # Secret component (Beyond the Red Meat - Part 2)
|
||||||
- 657acb2ac900be5902191ac9 # Cadastral registry records
|
- 657acb2ac900be5902191ac9 # Cadastral registry records
|
||||||
|
|
||||||
Sandbox:
|
sandbox:
|
||||||
|
- 6582bd252b50c61c565828e2 # Bottle of Le Jean wine
|
||||||
|
- 6575a6ca8778e96ded05a802 # TerraGroup scientist's hard drive
|
||||||
|
|
||||||
|
sandbox_high:
|
||||||
- 6582bd252b50c61c565828e2 # Bottle of Le Jean wine
|
- 6582bd252b50c61c565828e2 # Bottle of Le Jean wine
|
||||||
- 6575a6ca8778e96ded05a802 # TerraGroup scientist's hard drive
|
- 6575a6ca8778e96ded05a802 # TerraGroup scientist's hard drive
|
@ -5,17 +5,17 @@ static_weapon_ids:
|
|||||||
- 5cdeb229d7f00c000e7ce174
|
- 5cdeb229d7f00c000e7ce174
|
||||||
|
|
||||||
forced_items:
|
forced_items:
|
||||||
Customs:
|
bigmap:
|
||||||
# unknown key
|
# unknown key
|
||||||
- containerId: custom_multiScene_00058
|
- containerId: custom_multiScene_00058
|
||||||
itemTpl: 593962ca86f774068014d9af
|
itemTpl: 593962ca86f774068014d9af
|
||||||
|
|
||||||
Streets of Tarkov:
|
tarkovstreets:
|
||||||
# Backup hideout key
|
# Backup hideout key
|
||||||
- containerId: container_City_SE_02_DesignStuff_00025
|
- containerId: container_City_SE_02_DesignStuff_00025
|
||||||
itemTpl: 6398fd8ad3de3849057f5128
|
itemTpl: 6398fd8ad3de3849057f5128
|
||||||
|
|
||||||
Sandbox:
|
sandbox:
|
||||||
- containerId: container_Test_for_export_00002 # Lab technician body
|
- containerId: container_Test_for_export_00002 # Lab technician body
|
||||||
itemTpl: 658199aa38c79576a2569e13 # TerraGroup science office key
|
itemTpl: 658199aa38c79576a2569e13 # TerraGroup science office key
|
||||||
- containerId: container_custom_DesignStuff_00029 # dead body of scav near exit
|
- containerId: container_custom_DesignStuff_00029 # dead body of scav near exit
|
||||||
|
@ -55,16 +55,17 @@ public class MultithreadSteppedDumpProcessor : IDumpProcessor
|
|||||||
if (LoggerFactory.GetInstance().CanBeLogged(LogLevel.Debug))
|
if (LoggerFactory.GetInstance().CanBeLogged(LogLevel.Debug))
|
||||||
LoggerFactory.GetInstance().Log($"Processing static data for file {dumped.BasicInfo.FileName}", LogLevel.Debug);
|
LoggerFactory.GetInstance().Log($"Processing static data for file {dumped.BasicInfo.FileName}", LogLevel.Debug);
|
||||||
var dataDump = _jsonSerializer.Deserialize<RootData>(File.ReadAllText(dumped.BasicInfo.FileName));
|
var dataDump = _jsonSerializer.Deserialize<RootData>(File.ReadAllText(dumped.BasicInfo.FileName));
|
||||||
var mapName = dataDump.Data.Name;
|
//var mapName = dataDump.Data.Name;
|
||||||
|
var mapId = dataDump.Data.Id.ToLower();
|
||||||
|
|
||||||
// the if statement below takes care of processing "forced" or real static data for each map, only need
|
// the if statement below takes care of processing "forced" or real static data for each map, only need
|
||||||
// to do this once per map, we dont care about doing it again
|
// to do this once per map, we dont care about doing it again
|
||||||
lock (staticContainersLock)
|
lock (staticContainersLock)
|
||||||
{
|
{
|
||||||
if (!staticContainers.ContainsKey(mapName))
|
if (!staticContainers.ContainsKey(mapId))
|
||||||
{
|
{
|
||||||
if (LoggerFactory.GetInstance().CanBeLogged(LogLevel.Info))
|
if (LoggerFactory.GetInstance().CanBeLogged(LogLevel.Info))
|
||||||
LoggerFactory.GetInstance().Log($"Doing first time process for map {mapName} of real static data", LogLevel.Info);
|
LoggerFactory.GetInstance().Log($"Doing first time process for map {mapId} of real static data", LogLevel.Info);
|
||||||
var mapStaticContainers = StaticLootProcessor.CreateStaticWeaponsAndStaticForcedContainers(dataDump);
|
var mapStaticContainers = StaticLootProcessor.CreateStaticWeaponsAndStaticForcedContainers(dataDump);
|
||||||
// .Item1 = map name
|
// .Item1 = map name
|
||||||
// .Item2 = force/weapon static arrays
|
// .Item2 = force/weapon static arrays
|
||||||
@ -77,10 +78,10 @@ public class MultithreadSteppedDumpProcessor : IDumpProcessor
|
|||||||
lock (mapStaticContainersAggregatedLock)
|
lock (mapStaticContainersAggregatedLock)
|
||||||
{
|
{
|
||||||
// Init dict if map key doesnt exist
|
// Init dict if map key doesnt exist
|
||||||
if (!mapStaticContainersAggregated.TryGetValue(mapName, out mapAggregatedDataDict))
|
if (!mapStaticContainersAggregated.TryGetValue(mapId, out mapAggregatedDataDict))
|
||||||
{
|
{
|
||||||
mapAggregatedDataDict = new Dictionary<Template, int>();
|
mapAggregatedDataDict = new Dictionary<Template, int>();
|
||||||
mapStaticContainersAggregated.Add(mapName, mapAggregatedDataDict);
|
mapStaticContainersAggregated.Add(mapId, mapAggregatedDataDict);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,10 +94,10 @@ public class MultithreadSteppedDumpProcessor : IDumpProcessor
|
|||||||
// Keep track of how many dumps we have for each map
|
// Keep track of how many dumps we have for each map
|
||||||
lock (mapDumpCounterLock)
|
lock (mapDumpCounterLock)
|
||||||
{
|
{
|
||||||
IncrementMapCounterDictionaryValue(mapDumpCounter, mapName);
|
IncrementMapCounterDictionaryValue(mapDumpCounter, mapId);
|
||||||
}
|
}
|
||||||
|
|
||||||
var containerIgnoreListExists = LootDumpProcessorContext.GetConfig().ContainerIgnoreList.TryGetValue(dataDump.Data.Id.ToLower(), out string[]? ignoreListForMap);
|
var containerIgnoreListExists = LootDumpProcessorContext.GetConfig().ContainerIgnoreList.TryGetValue(mapId, out string[]? ignoreListForMap);
|
||||||
foreach (var dynamicStaticContainer in StaticLootProcessor.CreateDynamicStaticContainers(dataDump))
|
foreach (var dynamicStaticContainer in StaticLootProcessor.CreateDynamicStaticContainers(dataDump))
|
||||||
{
|
{
|
||||||
lock (mapStaticContainersAggregatedLock)
|
lock (mapStaticContainersAggregatedLock)
|
||||||
|
@ -33,6 +33,7 @@ public static class StaticLootProcessor
|
|||||||
public static Tuple<string, MapStaticLoot> CreateStaticWeaponsAndStaticForcedContainers(RootData rawMapDump)
|
public static Tuple<string, MapStaticLoot> CreateStaticWeaponsAndStaticForcedContainers(RootData rawMapDump)
|
||||||
{
|
{
|
||||||
var mapName = rawMapDump.Data.Name;
|
var mapName = rawMapDump.Data.Name;
|
||||||
|
var mapId = rawMapDump.Data.Id.ToLower();
|
||||||
var staticLootPositions = (from li in rawMapDump.Data.Loot
|
var staticLootPositions = (from li in rawMapDump.Data.Loot
|
||||||
where li.IsContainer ?? false
|
where li.IsContainer ?? false
|
||||||
select li).ToList();
|
select li).ToList();
|
||||||
@ -55,7 +56,7 @@ public static class StaticLootProcessor
|
|||||||
StaticWeapons = staticWeapons,
|
StaticWeapons = staticWeapons,
|
||||||
StaticForced = forcedStaticItems
|
StaticForced = forcedStaticItems
|
||||||
};
|
};
|
||||||
return Tuple.Create(mapName, mapStaticData);
|
return Tuple.Create(mapId, mapStaticData);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static List<Template> CreateDynamicStaticContainers(RootData rawMapDump)
|
public static List<Template> CreateDynamicStaticContainers(RootData rawMapDump)
|
||||||
|
@ -39,7 +39,7 @@ public class JsonFileIntakeReader : IIntakeReader
|
|||||||
{
|
{
|
||||||
basicInfo = new BasicInfo
|
basicInfo = new BasicInfo
|
||||||
{
|
{
|
||||||
Map = fi.Data.Name,
|
Map = fi.Data.Id.ToLower(),
|
||||||
FileHash = ProcessorUtil.HashFile(fileData),
|
FileHash = ProcessorUtil.HashFile(fileData),
|
||||||
Data = fi,
|
Data = fi,
|
||||||
Date = date.Value,
|
Date = date.Value,
|
||||||
|
@ -47,42 +47,33 @@ public class FileWriter : IWriter
|
|||||||
var looseLootData = (Dictionary<string, LooseLootRoot>)data;
|
var looseLootData = (Dictionary<string, LooseLootRoot>)data;
|
||||||
foreach (var (key, value) in looseLootData)
|
foreach (var (key, value) in looseLootData)
|
||||||
{
|
{
|
||||||
foreach (var s in LootDumpProcessorContext.GetDirectoryMappings()[key].Name)
|
if (!Directory.Exists($@"{_outputPath}\locations\{key}"))
|
||||||
{
|
Directory.CreateDirectory($@"{_outputPath}\locations\{key}");
|
||||||
if (!Directory.Exists($@"{_outputPath}\locations\{s}"))
|
File.WriteAllText($@"{_outputPath}\locations\{key}\looseLoot.json",
|
||||||
Directory.CreateDirectory($@"{_outputPath}\locations\{s}");
|
|
||||||
File.WriteAllText($@"{_outputPath}\locations\{s}\looseLoot.json",
|
|
||||||
_jsonSerializer.Serialize(value));
|
_jsonSerializer.Serialize(value));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case OutputFileType.StaticContainer:
|
case OutputFileType.StaticContainer:
|
||||||
var staticContainer = (Dictionary<string, MapStaticLoot>)data;
|
var staticContainer = (Dictionary<string, MapStaticLoot>)data;
|
||||||
foreach (var (key, value) in staticContainer)
|
foreach (var (key, value) in staticContainer)
|
||||||
{
|
{
|
||||||
foreach (var s in LootDumpProcessorContext.GetDirectoryMappings()[key].Name)
|
if (!Directory.Exists($@"{_outputPath}\locations\{key}"))
|
||||||
{
|
Directory.CreateDirectory($@"{_outputPath}\locations\{key}");
|
||||||
if (!Directory.Exists($@"{_outputPath}\locations\{s}"))
|
File.WriteAllText($@"{_outputPath}\locations\{key}\staticContainers.json",
|
||||||
Directory.CreateDirectory($@"{_outputPath}\locations\{s}");
|
|
||||||
File.WriteAllText($@"{_outputPath}\locations\{s}\staticContainers.json",
|
|
||||||
_jsonSerializer.Serialize(value));
|
_jsonSerializer.Serialize(value));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case OutputFileType.StaticLoot:
|
case OutputFileType.StaticLoot:
|
||||||
var staticLootData = (Dictionary<string, Dictionary<string, StaticItemDistribution>>)data;
|
var staticLootData = (Dictionary<string, Dictionary<string, StaticItemDistribution>>)data;
|
||||||
foreach (var (key, value) in staticLootData)
|
foreach (var (key, value) in staticLootData)
|
||||||
{
|
{
|
||||||
foreach (var s in LootDumpProcessorContext.GetDirectoryMappings()[key].Name)
|
if (!Directory.Exists($@"{_outputPath}\locations\{key}"))
|
||||||
{
|
Directory.CreateDirectory($@"{_outputPath}\locations\{key}");
|
||||||
if (!Directory.Exists($@"{_outputPath}\locations\{s}"))
|
File.WriteAllText($@"{_outputPath}\locations\{key}\staticLoot.json",
|
||||||
Directory.CreateDirectory($@"{_outputPath}\locations\{s}");
|
|
||||||
File.WriteAllText($@"{_outputPath}\locations\{s}\staticLoot.json",
|
|
||||||
_jsonSerializer.Serialize(value));
|
_jsonSerializer.Serialize(value));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case OutputFileType.StaticAmmo:
|
case OutputFileType.StaticAmmo:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user