True Items

  • PlinioJRM added a new file:

  • here ya go here is the error with Barter items enabled and a bater air drop fail


    Just so you know its the same error you get when you use SVM to enable stackable items with the same variables the barter items break the air drop


    2023-12-05 20:18:20.146 +11:00|0.13.5.3.26535|Error|Default|[AKI-AIRDROPS]: An error occurred during the airdrop FixedUpdate process

    2023-12-05 20:18:20.146 +11:00|0.13.5.3.26535|Error|Default|

    EXCEPTION: Newtonsoft.Json.JsonSerializationException: Error converting value {null} to type 'System.Int32'. Path 'loot[1].stackCount', line 1, position 228. ---> System.InvalidCastException: Null object cannot be converted to a value type.

    at System.Convert.ChangeType (System.Object value, System.Type conversionType, System.IFormatProvider provider) [0x00029] in <eae584ce26bc40229c1b1aa476bfa589>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType (Newtonsoft.Json.JsonReader reader, System.Object value, System.Globalization.CultureInfo culture, Newtonsoft.Json.Serialization.JsonContract contract, System.Type targetType) [0x00103] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    --- End of inner exception stack trace ---

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType (Newtonsoft.Json.JsonReader reader, System.Object value, System.Globalization.CultureInfo culture, Newtonsoft.Json.Serialization.JsonContract contract, System.Type targetType) [0x00146] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x00125] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue (Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.JsonConverter propertyConverter, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, Newtonsoft.Json.JsonReader reader, System.Object target) [0x00065] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (System.Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.String id) [0x00280] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x00161] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0006d] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList (System.Collections.IList list, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonArrayContract contract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, System.String id) [0x00173] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.Object existingValue, System.String id) [0x000dc] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0007f] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue (Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.JsonConverter propertyConverter, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, Newtonsoft.Json.JsonReader reader, System.Object target) [0x00065] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (System.Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.String id) [0x00280] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x00161] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0006d] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) [0x000db] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.JsonSerializer.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00054] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.JsonSerializer.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00000] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.JsonConvert.DeserializeObject (System.String value, System.Type type, Newtonsoft.Json.JsonSerializerSettings settings) [0x0002d] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value) [0x00000] in <a188f91889dd430ea0449cfb94e0c4ca>:0

    at Aki.Custom.Airdrops.Utils.ItemFactoryUtil.GetLoot () [0x0000b] in <2aff7de6041a4dcc84dbf623aaa5ee84>:0

    at Aki.Custom.Airdrops.AirdropsManager.BuildLootContainer (Aki.Custom.Airdrops.Models.AirdropConfigModel config)

  • [0x00000] in <2aff7de6041a4dcc84dbf623aaa5ee84>:0

    at Aki.Custom.Airdrops.AirdropsManager.FixedUpdate () [0x00166] in <2aff7de6041a4dcc84dbf623aaa5ee84>:0

    2023-12-05 20:18:20.146 +11:00|0.13.5.3.26535|Error|Default|InvalidCastException: Null object cannot be converted to a value type.

    System.Convert.ChangeType (System.Object value, System.Type conversionType, System.IFormatProvider provider) (at <eae584ce26bc40229c1b1aa476bfa589>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType (Newtonsoft.Json.JsonReader reader, System.Object value, System.Globalization.CultureInfo culture, Newtonsoft.Json.Serialization.JsonContract contract, System.Type targetType) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Rethrow as JsonSerializationException: Error converting value {null} to type 'System.Int32'. Path 'loot[1].stackCount', line 1, position 228.

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType (Newtonsoft.Json.JsonReader reader, System.Object value, System.Globalization.CultureInfo culture, Newtonsoft.Json.Serialization.JsonContract contract, System.Type targetType) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue (Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.JsonConverter propertyConverter, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, Newtonsoft.Json.JsonReader reader, System.Object target) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (System.Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.String id) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList (System.Collections.IList list, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonArrayContract contract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, System.String id) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.Object existingValue, System.String id) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue (Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.JsonConverter propertyConverter, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, Newtonsoft.Json.JsonReader reader, System.Object target) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (System.Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.String id) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.JsonSerializer.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.JsonSerializer.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.JsonConvert.DeserializeObject (System.String value, System.Type type, Newtonsoft.Json.JsonSerializerSettings settings) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value, Newtonsoft.Json.JsonSerializerSettings settings) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value) (at <a188f91889dd430ea0449cfb94e0c4ca>:0)

    Aki.Custom.Airdrops.Utils.ItemFactoryUtil.GetLoot () (at <2aff7de6041a4dcc84dbf623aaa5ee84>:0)

    Aki.Custom.Airdrops.AirdropsManager.BuildLootContainer (Aki.Custom.Airdrops.Models.AirdropConfigModel config) (at <2aff7de6041a4dcc84dbf623aaa5ee84>:0)

    Aki.Custom.Airdrops.AirdropsManager.FixedUpdate () (at <2aff7de6041a4dcc84dbf623aaa5ee84>:0)

    UnityEngine.DebugLogHandler:LogException(Exception, Object)

    Class327:UnityEngine.ILogHandler.LogException(Exception, Object)

    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)

  • I think i know what may be the cause of the issue. I'll do some testing to make sure.

    Tell me: Did you change "StackMult" with a floating point value? Example: "1.5"

  • No I didn't change that, I used 1.0.1 to test it


    I changed barter items true/false in true items config and


    the airdrops config to set to 100% in shoreline, set mixed, weapons and medical to 0 weight and Barter to 1 to get 100% barter drops


    the air drop only failed when barter items was set to true in true items config


    It is the same for using the SVM experimental tab throws the same error, and I have tested all the combinations in SVM and only have stackable barter items causes the air drop to fail in the barter drop. (The 3 other air drops didn't fail in either mode)


    I have yet to try changing each of the other 3 drop types with true items which i will do asap


    The other thing i want to try is setting up something like 100% weapons drop with true items weapon mods turned and the same for medical


    I will let ya know what it returns

  • PlinioJRM added a new version:

    Quote
    • Mod tested and working on SPT-AKI 3.7.4.
    • Change Barter items default value to false.
      Because AKI have an issue when generating Barter items that have Stack changed!
    • VirusTotal Link
  • so something i notice testing things out is that if you use item stack to stack all your stuff then remove the mod or disable it it still is okay with things being stacked and crafting and inventory stay stacked and are happy.


    and then you can collect then turn it back on and re stack and rinse repeat, I havent found any issues with doing that.


    So a) is there a way to disable "item count" or " stack recognition in air drop generation, or like ignore stack system ect


    or b) is there a way to toggle without reloading ( i don't think there is but just asking the question)

  • Yeah, i updated the config file on 1.0.3.
    If you download 1.0.3, now barter items enabled will work with airdrop.

    You don't have to worry anymore ;)


    Right now i'm looking up a way to fix food items consumption, to not deplete the one stacked when consuming stacked ones

  • hi I got a tiny problem, when I do barters or craft something for some reason the hole stack is being used.

    Can you make something to prevent this? ty in advance

    I will look into it, However i will not promise as i am almost certain that will require me to dive into client-mod.

    I'm trying to stick with server mod only. However if anyone want to create a following client-mod for this server mod, feel free to do so.


    What i advice is to unstack them to the appropriate amount that the quest or crafting recipe require.
    ;)

  • ITs only some interface windows that the problems happen and In raid quests, think I mentioned it somewhere else, probably should have posted it here to, SVM stacking has the same issues like don't stack GPUs and try to transfer them in farm GUI it will count only as 1 heh figured that one out the hard way heh. Trader barters are varied, bitcoin X tetris and gbattery gobbles the stack where as I haven't come across a therapist issue yet and sugar with jaeger is fine, so its not a specific mod issue per se something more to do with EFT and Mod interactions i think maybe there's a category/classification difference in the coding.


    I have been slowly going through the items list adding them to stack list and removing the ones that gobble stacks, its a slow process ill post a list when i can, maybe you can figure out if there's a pattern

  • PlinioJRM added a new version:

    Quote

    Mod updated for 3.8.0!

    Code wise:

    • The source code is refactored and refined
    • Using interface to make it easy for anyone to edit

    Mod wise:

    • The config is now separated into many files for categories
    • Works the same as before

    Virus Total Link

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!