KcY - SeeItemValue 1.4.0

Mods made for AKI 2.3.1 or older are NOT compatible with 3.0.0.
Please do not spam mod comments with requests for mods to be updated - repeat offenders will be muted at moderator discretion.

See the trader value of an item when inspecting it, in or out of raid!

WHILST KcY ISNT AROUND, I HAVE UPDATED TO WORK ON 2.2.2 AND A FEW ADJUSTMENTS LISTED AT THE BOTTOM:

Original mod: SeeItemValue


Adds an attribute to every items' inspect page, this value shows the full price of the item to traders.


Example:


1.0.1:

as requested, you can now config to show trader price over Flea AVG price

check the config file in SRC/

TraderPrice: true - will choose the trader price

TraderPrice: false - will choose the flea AVG price and fall back to Trader price if no price can be found

you do not need to update if you are not interested in the above feature.


1.0.2:

I have now added a config option to set a multiplier, ranging from 0 to 1

its default is 0.54 and this seems to be a happy medium across all traders, it won't be completely accurate as all traders have different modifiers

Thanks to TEOA, you can check the comment section to see their multipliers,

this is only being used if, TraderPrice is True or a Flea AVG wasn't found.


1.1.0:

updated the mod to show a price based on the trader that buys it for the most

prices shown should be correct within 1 rouble


A few Changes I made for performance:

no longer works the total price of a Stack, so an ammo stack will show the price of 1 bullet

no longer works total price of all items in a container will show the container price

no longer works total price of all parts of a weapon, want the individual price open the extra part up


1.3.1:
added cache system, check version tab for more notes.


1.3.4:

Hopefully fixed issues with pricing and some items breaking on inspection



______________________________________________

I have removed the need for the TarkovLoader KcY originally had.

at any point, if KcY wants to continue making the mod, let me know ill remove it.


HOW TO INSTALL: (this is how to install for AKI 2.3.0 onwards)

1. Open the Zip

2. inside you will see, a BepInEx folder and a user folder.



3. copy these and paste them to your AKI install folder.



4. Done! there is nothing else for you to do.


IF YOU WANT TO REMOVE THE MOD, DELETE THE FOLLOWING:


  • SPT Install / User / Mods / KcY-SeeItemValue 1.4.0 (this folder)
  • SPT Install / BepInEx / plugins / KcY-SeeItemValue.dll (this dll file)



Thanks to Senko, Chomp, Valens and TEOA for the help with coding and testing

  • Version 1.4.0

    CHANGELOG:


    Fixed to work with latest Client and AKI 3.1.1


    HOTFIX:


    Fixed package.json to show correct akiversion

  • Version 1.3.5

    CHANGELOG:

    Fixed prices for AVG live price,

    reuploading as well in the hope i just fecked the zip up last time as im unable to reproduce the issues with items not loading

  • Version 1.3.4

    CHANGELOG:


    Fixed pricing for a few items,


    Hopefully fixed any issues with the item opening up broken


    Hopefully the last version needed for now :nikitathinking:

  • Version 1.3.3

    CHANGELOG:


    fixed pricing for some extra things, E.G. Fuel and RepairKits


    Added debug mode to config, don’t worry about this, just make it easier for me


    Might be a bug with some items, I’ll check it out when I have time


    whilst doing this I discovered a bug in the server which will be fixed at a later date, if durability is equal to max durability, traders will pay full price, even if the max durability has lowered.


    so armor and weapons will be different if the durability is not full on this mod in anticipation of that fix to the server. killme

  • Version 1.3.2

    CHANGELOG:


    Fixed issues with using trader pricing. (hopefully) killme


    make sure you delete all old files and folders related to this mod like described at the bottom of the overview page.

  • Version 1.3.1

    CHANGELOG:


    Fixed issue with loading into the game with this mod enabled.

    Added new cache system, will only fetch item price from the server once per session.

    (this means when you do level your loyalty up, restart your client to refresh the cache, otherwise, the prices will be off)

  • Version 1.2.1

    CHANGELOG:

    should have no client-side changes,

    changed "akiVersion" to 2.3.1

  • Version 1.2.0

    CHANGE LOG:

    updated to work with BepInEx

    updated to work with AKI 2.3.0

    updated to work with Client 17107

  • Version 1.1.2

    CHANGELOG:

    updated to work with Aki 2.2.3 and client version 16909

  • Version 1.1.1

    CHANGELOG:

    Updated to work on 2.2.2 and client 16778


    I will change the version shown on the front page when i can

  • It's a bug report.

    If you pick up and open this item, you will not be able to operate it.
    I checked the item.json and it looks fine, but it's strange in-game. please confirm.

    (By the way, it works when you remove the mod.)
    https://imgur.com/a/ED7QTom

  • For reasons unbeknownst to me, this is currently conflicting with Fin's Armor Plates- may want to troubleshoot or list as an incompatibility.

  • I seem to be having an issue relating to this mod. I've installed this along with Hideout Architect and Munitions Expert and when they're all together once I inspect an item the menus stop working and the ingame console is full of errors. So far Hideout Architect and Munitions Expert work fine without this mod, although I haven't tried this mod without the other two (prefer the use of these two more).


    From what I understand, you updated this mod on behalf of another user whereas the other two are your own. Any ideas?


    Side note, have you considered adding this functionality to your own mod(s) and bundling them all together in one package as I find them extremely useful.

    • hmm i try them all together and dont get issues, what errors do you get in your client logs/ bepinex log.


      i didnt make SeeItemValue, MunitionsExpert or HideoutArchitect i only maintain them atm,

      i dont think i can put them together :/ as they are all not made by the same person, then i'd have to add configs to disable them all also

  • ModLoader: loading mods...

    Mod KcY-SeeItemValue is not compatible with the current version of AKI. You may encounter issues - no support will be provided!

    loading: KcY: SeeItemValue 1.4.0


    Even though your mod says it is compatible, the server says otherwise. Can you fix it so the server does not say this anymore and we are sure it is all compatible?

    • looks like I forgot to update the package.json, I’ll update that in a bit

  • Hey is it possible to make it display whichever is the most expensive price out of Flea and Trader or even show both prices?

    • Had to disable the mod since when I inspect an item, there is a chance that the console opens and spits out an error, the error and console issue isn't completely the fault of the mod, since it still happens when the mod is removed, but with the mod installed, it happens a lot more, in some case happens 5 times in a row on the same item and is fairly often whereas without the mod, it only happens once or twice a raid and never happens while inspecting an item.


      I believe this is caused by the latest update to the mod as before this update, inspecting items never brought up the issue.

    • whats the error you are getting?

    • [Exception] : WebException: The request timed out

      System.Net.HttpWebRequest.EndGetResponse (System.IAsyncResult asyncResult) (at <ef151b6abb5d474cb2c1cb8906a8b5a4>:0)

      System.Net.HttpWebRequest.GetResponse () (at <ef151b6abb5d474cb2c1cb8906a8b5a4>:0)

      Aki.Common.Http.Request.Send (System.String url, System.String method, System.Byte[] data, System.Boolean compress, System.String mime, System.Collections.Generic.Dictionary`2[TKey,TValue] headers) (at <7709b962fca4469baf07372829517df9>:0)

      Aki.Common.Http.RequestHandler.PostJson (System.String path, System.String json, System.Boolean hasHost) (at <7709b962fca4469baf07372829517df9>:0)

      Aki.SinglePlayer.Utils.Healing.HealthSynchronizer.Update () (at <02456efdf660429ca3888f9dd7986384>:0)

      UnityEngine.DebugLogHandler:LogException(Exception, Object)

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

      UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)


      [Exception] : WebException: The request timed out

      System.Net.HttpWebRequest.EndGetResponse (System.IAsyncResult asyncResult) (at <ef151b6abb5d474cb2c1cb8906a8b5a4>:0)

      System.Net.HttpWebRequest.GetResponse () (at <ef151b6abb5d474cb2c1cb8906a8b5a4>:0)

      Aki.Common.Http.Request.Send (System.String url, System.String method, System.Byte[] data, System.Boolean compress, System.String mime, System.Collections.Generic.Dictionary`2[TKey,TValue] headers) (at <7709b962fca4469baf07372829517df9>:0)

      Aki.Common.Http.RequestHandler.GetJson (System.String path, System.Boolean hasHost) (at <7709b962fca4469baf07372829517df9>:0)

      itemValueMod.ValueExtension.Value (EFT.InventoryLogic.Item item) (at <24f684457154418f823bcc3d83ac2acc>:0)

      itemValueMod.ValueExtension.ValueStr (EFT.InventoryLogic.Item item) (at <24f684457154418f823bcc3d83ac2acc>:0)

      EFT.UI.CompactCharacteristicPanel.SetValues () (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.CompactCharacteristicPanel.CompareWith (GClass2100 attribute) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.ItemSpecificationPanel.smethod_1[T] (GClass2362`2[T,U] viewList, System.Collections.Generic.List`1[T] changedList) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.ItemSpecificationPanel.method_6 (EFT.InventoryLogic.Item compareItem) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.ItemSpecificationPanel.method_5 () (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.ItemSpecificationPanel.method_1 () (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.ItemSpecificationPanel.Show (GClass2161 itemContext, EFT.Profile profile, GClass2110 inventoryController, GClass1986[] playerCollections, SkillsClass skills, WeaponPreviewPool weaponPreviewPool, EFT.UI.ItemUiContext itemUiContext, GClass2313`1[T] contextInteractions, EFT.UI.SimpleTooltip secondaryTooltip) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.ItemUiContext.InitSpecificationPanel (EFT.UI.ItemSpecificationPanel panel, GClass2161 itemContext, GClass2313`1[T] contextInteractions) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.InfoWindow.Show (GClass2161 itemContext, GInterface224 itemController, GClass1696 trader, System.Action onSelectedAction, EFT.UI.ItemUiContext itemUiContext, System.Action onClosedAction, GClass2313`1[T] contextInteractions) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.ItemUiContext+Class2091.method_0 (EFT.UI.InfoWindow window, System.Action setPriority, System.Action onClosed) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.ItemUiContext.method_11[T] (GClass2161 itemContext, T template, System.Action`3[T1,T2,T3] show) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.ItemUiContext.Inspect (GClass2161 itemContext, GClass2313`1[T] contextInteractions) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      GClass2314.method_4 () (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      GClass2313`1[T].ExecuteInteraction (T interaction) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.DragAndDrop.ItemView.OnClick (UnityEngine.EventSystems.PointerEventData+InputButton button, UnityEngine.Vector2 position, System.Boolean doubleClick) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      EFT.UI.DragAndDrop.ItemView.UnityEngine.EventSystems.IPointerClickHandler.OnPointerClick (UnityEngine.EventSystems.PointerEventData eventData) (at <06a6ceb0951a4952911c576c67e8f55f>:0)

      UnityEngine.EventSystems.ExecuteEvents.Execute (UnityEngine.EventSystems.IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData) (at <949c5d8e10904bfd86782cc33e89bb14>:0)

      UnityEngine.EventSystems.ExecuteEvents.Execute[T] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.ExecuteEvents+EventFunction`1[T1] functor) (at <949c5d8e10904bfd86782cc33e89bb14>:0)

      UnityEngine.DebugLogHandler:LogException(Exception, Object)

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

      UnityEngine.EventSystems.EventSystem:Update()


      Done a quick raid and these were the latest 2, only ever happens when I inspect an item and through a few quick glances at the errors, it doesn't seem to be the same error every time

  • In 1.3.4 of your mod some melee weapons avg flee prices are a lot higher than they should be? Like the red rebel ice pick for example.Look at the price for the weapon on the left

    • i'm hoping to have a look at these issues today after work

    • this should be fixed on the latest version

    • Thank you for your work :thumbup:

    • if you set "TraderPrice": true to false, then the prices displayed are much higher, similar thing happens to what was shown in Kuro's screenshot above, I am using latest version.


      Everything works as intended if kept to true.

    • traders price set to true will find the trader that can buy it in order of best multiplier to worst, if you put traders price to false, i just pull the price from the prices.json which is what the flea works with.

  • for me the blablabla thing freeze the game I mean not freezing but cant close the inspection windows and cant do anything afterward had to alt f4, specially modded items, such as Fin's ai tweaks' COD stim

    • exact same problem I have which is a shame since as a tarkov noob, this mod is amazing. just can't deal with so much of time being wasted due to game breaking mid raids.

    • i'm hoping to have a look at these issues today after work

      Thanks 1
  • 1.3.4 didn't fix blablabla thing. the game doesn't freeze or anything, but pretty annoying since I have to re-inspect everything.


    I disabled trader price and flea market price isn't accurate. gun prices are way cheaper on flea compared to what it show when inspecting.

    • Trader price, so far, has been pretty accurate for me. Not using any mods to change the rates traders give me though.

      the last update did fix a MAJOR problem though. Now when you get the examine :{0} issue, yeah it might freeze for a few seconds, but it eventually lets you close the window. It doesn't mean the root issue's fixed, but at least we don't have to alt f4 out of raids just because we used a mod while looting.

    • Most of the times it lets me close the window after a few seconds, but not always. Sometimes there is just no solution other than rebooting.

    • i'm hoping to have a look at these issues today after work

    • YOOOO I think you fixed it. I haven't been able to reproduce broken item description so far. Thanks a lot man. However, flea market gun prices are still inaccurate for me. Described price is now way cheaper than actual flea price and I'm not using any mods to affect flea price.


      EDIT: After 7 hours of countinous playing, I was able to reproduce the problem total of 3 times. At least it's occurring way less and hasn't frozen the game.

    • traders price set to true will find the trader that can buy it in order of best multiplier to worst,


      if you put traders price to false, i just pull the price from the prices.json which is what the flea works with.


      depending on which is you choose, will show a different price


      glad the BLAHBLAH shit has been reduced, i went through all the items last night and it didnt show once.

  • Screenshot (using lightshot, don't feel like actually uploading somewhere just to get a link)


    double clicking money on accident opens an examine window and bricks. I'm sure you already know the whole spiel of what the examine :{0} window being stuck does.

    • got the same thing in a raid just a minute ago with the broken LCD, and had to ALT+F4 because I couldn't close the window.

    • I got the same problem, I had to reinspect some things, then kept spamming the esc in order to close it somehow.

  • Hello. When I use 1.3.3 of your mod and inspect a container (backpack, scav junk box, etc.) I get the inspect window with blablabla written in the place where the category of the item is normally written and can't close that window, although the item image disappears. After this, I can't change to any other window and can only alt+f4 to leave the game. This wasn't an issue with 1.3.2. Just giving a heads up (maybe you are already aware :) )

    • thanks for letting me know, i have been battling with BSG components all day for it, the new version ill upload soon has the fix, Arhelay on discord has been doing some testings for me.

      seems good so far

      Like 1
  • Most prices are incorrect, why so?

    Sad 1
    • It's going off Flea prices by default. If you go into the config there's an option to change it to trader prices...

      at the moment though, there's an issue where double clicking an item to open the inspection window will brick the game though. Seems to happen 100% of the time on trader prices.

      Thanks 1
    • well fork me, I hoped it was just going to be the profile issue, looks like I have to go over the whole fecking thing. ill be looking into all the issues soon

      Thanks 1
    • updated the mod, if you can let me know if that fixes it

      Like 1
    • Everything is fine now, thank you very much!

  • Another interesting issue detected. While redacting preset, I can't actually change details, and according to server message, it's trying to get price of selected detail.

    • can you try explaining that again? i dont quite get what you mean "while redacting preset"

    • I meant that modding thing where you can get by pressing "edit preset" in weapon's context menu, idk how to explain it clearer

    • can you post an image to imgur and link it? i'll try what i think you might be talking about and see

    • I can't log into imgur, so I've tried to find another sources. I meant this menu1-1.png

    • updated the mod, if you can let me know if that fixes it

  • It is still somehow not working for me... when I was examining items from Fence, it gives me EXAMINE: {0}

    https://imgur.com/a/KXFSKm3


    Guess the issue comes from BepInEx plugin which cause me to still have this issue even when the mod is removed from the mod folder. The issue is solved after removing the BepInEx plugin.

    Sad 1
    • hmm, i'll have a look at this later on, i didnt check from examining something

    • Yay thanks!

      I think it is similar to the issue in the next thread, where something is wrong with preset.


      More information being that there are all weapons I opened have the tag 'Blablabla' somehow, and all its parameters like calibers etc has the value 5/90. And I cannot close those windows which I opened the weapons, with esc key only escaping the model in the preview window but not closing the preview window, and cannot exit the Fence page through clicking 'Main menu' or 'Back'.


      Maybe it is some issue with parameters?


      It has been a great mod in the end and thank for all the porting and maintenance! animelove

    • yeah so when i config setting "traderPrice": false", so it gets the avg price for flea, everything is fine, so im just going over the code for when its set true and finding the best price per trader.


      getting there, killme

    • updated the mod, if you can let me know if that fixes it

    • I think it works well, Thanks!

  • Not working on 3.0.0


    'The given key was not present in the dictionary'


    This is the error message

    Like 1 Thanks 1
    • oh no, ill have a look in a bit

    • Can confirm, getting the same error and after deleting a couple mods one by one I found it was this one.

    • yep, currently looking into this now, ill remove the version and back it to 2.3.1

    • Aww wish I saw this before I had the error, wasn't sure which mod caused it.

  • Amazing...

  • THANK YOU FOR TAKING OVER MANY PROJECTS AND UPDATING THEM FOR US <3

    Like 1
  • Is there any way I can modify this to show both the trader value and approx flea value at the same time? Eg two additional lines of text in the inspect view? Would be great if so, would also love to learn how you did it! Cheers for the mod and update. appreciated.

    • the source code is linked so you can see exactly how it’s all done etc, it is 100% possible to do, if I will get around to doing it, I’m not sure, I have left some stuff in the code so names of traders can be passed through, I just haven’t got around to it

    • Thanks for this! I'm very new to this so have a question if you could help, I think I understand that you are adding a new item to the table handbookTable.Items called 'Price', working all of your magic to produce this figure in the process-


      Does this table already exist in Tarkov, so it knows to display it in the inspect screen? Or does the inspect screen simply display every table assigned to an item ID?


      I don't see any reference to you outputting a symbol for rubles, but I might be missing it..


      Also I got super confused trying to install the new version, as your version in the src itself is still 1.1.0,


      Cheers!

    • it will be hard to explain over this comment section but:

      • I have indeed forgotten to update the version number in the SRC/ folder.
      • handbookTable.items already has the price for a new item defined, the Javascript side will then apply a trader multiplier based on who will take it and who offers the best price.
      • the price is then passed into the module.dll and that will work out some additional things like durability loss, dogtag level etc.
      • then module.dll (C# language) will at a new attribute to the item info screen and it should be able to apply an additional one if wanted, inside there is where the `Name = "RUB ₽",`
        is given, this is where you would change it to be a traders name for example.

      just to note aswell there are two parts to this mod, one that attaches to the client and one that the server runs itself.


      plus im always terrible at explaining things so hopefully this helps a little, if you wanted you can clone the git repo and do a pull request with your ideas and any code for example and let me know i might be able to take a look at it.


      i might take a look into adding the traders name myself later today, need something to get my mind of whats going on ATM.

  • 请更新16909的版本

  • Love the idea for the mod, but cant get it to work. Im not getting any error for it in the server module

  • Hi, this mod doesn't seem to be working for me. I've reinstalled it and even took all of my other mods out and only had this one in there but it still was not working

    • check your module.log, any errors in there?

    • I solved it whenever i updated the aki version.

  • hey thanks for the update, but you linked muntions expert

    • are you sure, i click the link and it goes to SeeItemValue 1.1.1

    • oopsies, wrong mod... Its what happened with hideout architect. Sorry!

    • yep i see it, should be fixed now

      Thanks 1
  • Does this work with Fin's Economy Tweaks? Will it show the adjusted prices or were the values entered manually?

    • not sure how Fins Mod works, you can try see if it changes with and without Fins mod and see

  • Trader Price from the handbook isnt actually the price you will sell for.

    There is actually a table determining the trader multiplier from the original value.

    TraderMultiplier
    Therapist0.63
    Ragman0.62
    Jaeger0.6
    Mechanic0.56
    Prapor0.5
    Peacekeeper0.495 (not exactly)
    Skier0.49
    Fence0.4


    I added this bit of code to more realistically reflect the trader price

    Code
    return parseInt(itemsTable[i].Price * 0.54);

    0.54 is the rounded average of all trader multipliers

    This was previously in file mod.js at line 58

    Code
    return itemsTable[i].Price;
    • ooo interesting, can you send me the mod.js through https://codepaste.sp-tarkov.com/ ?
      i couldnt download the original mod and only had the repo which didnt have a mod.js
      i can add it in then

    • I have no experience coding tarkov mods in js but this is a better but still suboptimal solution.

      I will take a look into automatically determining the best trader to sell to and applying the appropriate multiplier. Cheers

    • added new version for this, credited you for the change too, thanks again

  • I have a good idea to synchronize the flea market price with the merchant's price so that both show the same price

    • What are you trying to say?

      You want it to return trader value regardless if it's set to return flea average value?

      So you just don't want a config option at all?

      :/

    • if you set TraderPrice to True, it will ALWAYS use trader price from the handbook.


      in terms of your issue with the bitcoin in the other comment (please just reply to this one or this comment section gets way too messy) I have not tried this, go to SPTINSTALL/logs/ and you should have an error file, copy it and paste it to: https://codepaste.sp-tarkov.com/ and reply here,


      remember its not my mod so maybe something needs to be changed or something.

    • "TraderPrice": true

      This setting, open the bitcoin item interface

      Try it and you'll know what's wrong

  • someone taking old mods and updating them till the author returns


    sounds kinda familiar ngl

    Haha 1
  • really convenient mod.


    by using this I can enjoy more. it saves my immersion with tarkov.

  • This mod looks at the price of the flea market, many of us want one that can see the price sold to the merchant, is it possible to see two prices?

    • ^ this

      or maybe choose which id displayed

    • i have made it so you can select the type of price that comes through, check the version and see the change log on how to change it, ill update the from page in a sec

    • Yeah, it would be nice to have an option to have both values displayed. I don't know how difficult would it be to implement though... Awesome mod though!

  • This is HOT, is HOT