diff --git a/Libraries/SPTarkov.Server.Core/Helpers/RagfairHelper.cs b/Libraries/SPTarkov.Server.Core/Helpers/RagfairHelper.cs index 9fa0c5b9..e16107ac 100644 --- a/Libraries/SPTarkov.Server.Core/Helpers/RagfairHelper.cs +++ b/Libraries/SPTarkov.Server.Core/Helpers/RagfairHelper.cs @@ -83,7 +83,7 @@ public class RagfairHelper( // Case: search if (!string.IsNullOrEmpty(request.LinkedSearchId)) { - var data = ragfairLinkedItemService.GetLinkedItems(request.LinkedSearchId); + var data = ragfairLinkedItemService.GetLinkedItems(request.LinkedSearchId.Value); result = [.. data]; } diff --git a/Libraries/SPTarkov.Server.Core/Helpers/TraderHelper.cs b/Libraries/SPTarkov.Server.Core/Helpers/TraderHelper.cs index 3b29e79f..3f9114b7 100644 --- a/Libraries/SPTarkov.Server.Core/Helpers/TraderHelper.cs +++ b/Libraries/SPTarkov.Server.Core/Helpers/TraderHelper.cs @@ -69,6 +69,8 @@ public class TraderHelper( return new TraderBase { Currency = CurrencyType.RUB }; } + var traderIdMongo = new MongoId(traderID); + var pmcData = profileHelper.GetPmcProfile(sessionID); if (pmcData == null) { @@ -81,14 +83,17 @@ public class TraderHelper( } // Profile has traderInfo dict (profile beyond creation stage) but no requested trader in profile - if (pmcData?.TradersInfo != null && !(pmcData?.TradersInfo?.ContainsKey(traderID) ?? false)) + if ( + pmcData?.TradersInfo != null + && !(pmcData?.TradersInfo?.ContainsKey(traderIdMongo) ?? false) + ) { // Add trader values to profile - ResetTrader(sessionID, traderID); - LevelUp(traderID, pmcData); + ResetTrader(sessionID, traderIdMongo); + LevelUp(traderIdMongo, pmcData); } - var traderBase = databaseService.GetTrader(traderID).Base; + var traderBase = databaseService.GetTrader(traderIdMongo).Base; if (traderBase == null) { logger.Error( diff --git a/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/BotBase.cs b/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/BotBase.cs index 5b161dd8..4209bff7 100644 --- a/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/BotBase.cs +++ b/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/BotBase.cs @@ -798,7 +798,7 @@ public record Hideout [JsonPropertyName("sptUpdateLastRunTimestamp")] public long? SptUpdateLastRunTimestamp { get; set; } - public Dictionary? Customization { get; set; } // Key = Area customisaion type as string, e.g. "Wall", "Light", "ShootingRangeMark" + public Dictionary? Customization { get; set; } // Key = Area customisation type as string, e.g. "Wall", "Light", "ShootingRangeMark" } public record HideoutCounters diff --git a/Libraries/SPTarkov.Server.Core/Models/Eft/Ragfair/SearchRequestData.cs b/Libraries/SPTarkov.Server.Core/Models/Eft/Ragfair/SearchRequestData.cs index 772a4441..57f87b0b 100644 --- a/Libraries/SPTarkov.Server.Core/Models/Eft/Ragfair/SearchRequestData.cs +++ b/Libraries/SPTarkov.Server.Core/Models/Eft/Ragfair/SearchRequestData.cs @@ -65,7 +65,7 @@ public record SearchRequestData : IRequestData public MongoId? HandbookId { get; set; } [JsonPropertyName("linkedSearchId")] - public string? LinkedSearchId { get; set; } + public MongoId? LinkedSearchId { get; set; } [JsonPropertyName("neededSearchId")] public MongoId? NeededSearchId { get; set; } diff --git a/Libraries/SPTarkov.Server.Core/Services/BotEquipmentModPoolService.cs b/Libraries/SPTarkov.Server.Core/Services/BotEquipmentModPoolService.cs index 998e7f39..2ea057a6 100644 --- a/Libraries/SPTarkov.Server.Core/Services/BotEquipmentModPoolService.cs +++ b/Libraries/SPTarkov.Server.Core/Services/BotEquipmentModPoolService.cs @@ -5,6 +5,7 @@ using SPTarkov.Server.Core.Models.Common; using SPTarkov.Server.Core.Models.Eft.Common.Tables; using SPTarkov.Server.Core.Models.Enums; using SPTarkov.Server.Core.Models.Utils; +using SPTarkov.Server.Core.Utils; namespace SPTarkov.Server.Core.Services; @@ -12,6 +13,7 @@ namespace SPTarkov.Server.Core.Services; public class BotEquipmentModPoolService( ISptLogger logger, ItemHelper itemHelper, + JsonUtil jsonUtil, DatabaseService databaseService, ServerLocalisationService localisationService ) @@ -261,7 +263,11 @@ public class BotEquipmentModPoolService( && itemHelper.IsOfBaseclasses(item.Id, [BaseClasses.WEAPON, BaseClasses.MOD]) ); - return GeneratePool(weaponsAndMods, "weapon"); + var x = GeneratePool(weaponsAndMods, "weapon"); + + logger.Warning(jsonUtil.Serialize(x)); + + return x; } /// diff --git a/Libraries/SPTarkov.Server.Core/Services/MapMarkerService.cs b/Libraries/SPTarkov.Server.Core/Services/MapMarkerService.cs index 188e4a14..bd6d64cf 100644 --- a/Libraries/SPTarkov.Server.Core/Services/MapMarkerService.cs +++ b/Libraries/SPTarkov.Server.Core/Services/MapMarkerService.cs @@ -16,10 +16,14 @@ public class MapMarkerService(ISptLogger logger) /// Player profile /// Add marker request /// Item - public Item CreateMarkerOnMap(PmcData pmcData, InventoryCreateMarkerRequestData request) + public Item? CreateMarkerOnMap(PmcData pmcData, InventoryCreateMarkerRequestData request) { // Get map from inventory var mapItem = pmcData?.Inventory?.Items?.FirstOrDefault(i => i?.Id == request?.Item); + if (mapItem is null) + { + return null; + } // add marker to map item mapItem.Upd.Map = mapItem?.Upd?.Map ?? new UpdMap { Markers = [] }; diff --git a/SPTarkov.Server/Logger/SptLoggerProvider.cs b/SPTarkov.Server/Logger/SptLoggerProvider.cs index 7cdcbfe6..282a75d0 100644 --- a/SPTarkov.Server/Logger/SptLoggerProvider.cs +++ b/SPTarkov.Server/Logger/SptLoggerProvider.cs @@ -11,13 +11,13 @@ public class SptLoggerProvider( SptLoggerQueueManager queueManager ) : ILoggerProvider, ILoggerFactory { - private readonly List loggerProviders = []; + private readonly List _loggerProviders = []; public void Dispose() { } public void AddProvider(ILoggerProvider provider) { - loggerProviders?.Add(provider); + _loggerProviders?.Add(provider); } public ILogger CreateLogger(string categoryName)