Item Info 4.1.0

Please do not ask when mod authors will update their mods to 3.9.X
Bothering mod authors will lead to warnings and repeat offenses will lead to eventual bans.

Massive QoL mod that shows all useful information in item descriptions (prices, barters, crafts and profit calculation, quests, hideout, armor stats, etc) and recolors all items based on MMO-like rarity with international support.

Full international support is here

Русский, English, Spanish, Korean, French, Chinese, German and Japanese are fully translated now, other languages just use their proper in-game item and traders names.

Pick your language in config.json or hide the announcement with HideLanguageAlert flag.


Check out my other single-player focused economy overhaul mod - Softcore


Compatible with Realism mod.


Features:

Rarity Recolor

This feature clears and changes background color on EVERY item in the game based on MMO style rarity tier-list with colors that make actual sense. Tiers are based on trader level you can purchase or barter the item. Barters are considered +1 rarity level. If item is unbuyable, calculates rarity based on item in-game per-slot value and uses thresholds set in tiers config. Banned on flea market items are given highest rarity - overpowered. The tier list:

  • Common (grey background, bought with level 1 traders OR under 10k per-slot value)
  • Rare (blue, level 2 trades for currency and level 1 barters OR under 20k)
  • Epic (purple, level 3 and level 2 barters OR under 30k)
  • Legendary (dim yellow, level 4 and level 3 barters OR under 40k)
  • Uber (bright yellow, level 4 barters only OR under 60k)
  • Extraordinary (bright green, super valuable items worth over 60k per slot)
  • Overpowered (bright red, banned on flea market)
  • Custom (dim red, not used by default).

Can add tier name to Prices Info module. Add custom item rarities in config.

image

Mark Valuable Items

Marks most valuable items by adding symbols ★ and ☆ to item names and inventory icons based on item per-slot value (configured by thresholds in config) when sold to traders OR fleamarket AVG price.


Defaults:

☆ - good item - item value per slot is more then 10k when sold to vendors, or more then 15k on flea market

★ - best item - item value per slot is more then 20k to vendors, or more then 30k on flea market


Use really high values in config if you want to disable certain type of highlights, eg flea ones.

Option to always mark banned on flea items as best with a ★.



Bullet Stats In Name

Adds bullet stats to bullet name (damage / armor penetration). Calculates total damage for buckshot rounds. VERY usefull in raid, because bullet name is shown when check magazine action is used.

5.45x39mm PP gs (44/36)

Description modules:


image

Prices Info

Basic module that adds prices information to item description, includes avarage flea price and best trader to sell to. Option to hide flea price and rarity tier display.

Flea price: 61703₽ | Ragman's valuation: 37386₽

Barter Info

Adds information about how you can buy the item from traders, their levels, price or resources (barter resources short names are used and total sum is based on AVG flea prices)

[T H I C C item case] Bought @ Therapist lv.4 < ★Defibrillator ×15 + ★LEDX ×15 + Ibuprofen ×15 + ★Toothpaste ×15 | Σ ≈ 12877545₽

New feature:

Recursive search in barters!


[HK 416A5 low profile gas block]

Bought @ Mechanic lv.2 < 2,912₽

Bought ∈ HK 416A5 @ Peacekeeper lv.4 < $978 ≈ 111,535₽




Production Info

If item can be crafted, adds information on resources and total crafting sum per item based on flea prices.

[9x19mm AP 6.3] Crafted ×150 @ Workbench lv.2 < ☆Hawk ×2 + ☆Pst ×400 | Σ per item ≈ 1686₽

Crafting Material Info

Shows if item is used in crafts along with other materials and profit delta based on flea prices only (this messes up calculation on some crafts that can be done insanely cheap using trader materials or items obtained from other crafts). This is a guideline for crafting profits, not a rule.

[SSD drive] Part ×1 > Secure Flash drive ×3 @ Intelligence Center lv.2 < … + ★GPX ×1 + ☆GPhone ×1 | Δ ≈ 16234₽

Barter Resource Info

Shows info if an item can be traded for something with traders along with other resources. Calculates total sum of all resourses (based on flea prices) and delta between buying the final item directly on flea or from trader. Positive delta = profit, negative = don't bother, buy it directly if you can.

[Ibuprofen painkillers] Traded ×15 @ Therapist lv.4 > T H I C C item case < … + ★Defibrillator ×15 + ★LEDX ×15 + ★Toothpaste ×15 | Δ ≈ -9777545₽

Quest Info

Adds information if the item needs to be handed in for a quest. Marks find in raid quest condition with a checkmark with an option to add this checkmark to an item name.

[CMS surgical kit] Found (✔) ×2 > Ambulance @ Jaeger

Hideout Info

Shows if item is needed for hideout construction.

[Secure Flash drive] Need ×3 > Intelligence Center lv.2

Armor Info

Adds armor stats for armor level (useful for Realism mod), effective durability calculation, material quality and per repair degradation.

[BNTI Zhuk-6a body armor] Armor class: 6 | Effective durability: 94 (Max: 75 x Ceramic: 1.3) | Repair degradation: 17% - 22%

Container Info

Adds slot efficiency calculation for rigs, backpacks and containers (number of internal slots / item size)

[WARTECH TV-110 plate carrier rig] Slot effeciency: ×1.92 (23/12)


image

Headset Info

Adds headset actual audio stats with pseudo compression boost calculation. In theory, more compression and lower ambient volume = better (BSG headset rarity tiering supports this theory), but it seems for me, in practice, it's not always the case in-game. Higher resonance means harsher sound and boost at filter frequency.

[Peltor ComTac 2 headset] Ambient Volume: -5dB | Compressor: Gain 10dB × Treshold -25dB ≈ ×2.5 Boost | Resonance & Filter: 2.47@245Hz | Distortion: 28%

Spawn Info

Shows pseudo spawn info based on BSG handbook data. Mildly useful, not representative to real spawns, can be safely disabled.


How to install

Open zip and copy folder into spt/user/mods

  • In response to http://127.0.0.1:6969/client/items:

    Error converting value "tracerorange" to type

    JsonType.TaxonomyColor! Path

    BackgroundColor', line 1, position 1265574.


    Hello, which colors can be modified in this mod? When I tried to modify the colors myself, I encountered this error and couldn't open the game

  • TypeError: Cannot read properties of undefined (reading '_props')

    TypeError: Cannot read properties of undefined (reading '_props')

    at ItemInfo.getItemShortName (D:\Jogos\SPT - 3.9.8\user\mods\odt-iteminfo\src\mod.ts:1032:30)

    at ItemInfo.CraftingMaterialInfoGenarator (D:\Jogos\SPT - 3.9.8\user\mods\odt-iteminfo\src\mod.ts:1482:49)

    at ItemInfoMain (D:\Jogos\SPT - 3.9.8\user\mods\odt-iteminfo\src\mod.ts:955:44)

    at Timeout._onTimeout (D:\Jogos\SPT - 3.9.8\user\mods\odt-iteminfo\src\mod.ts:540:10)

    at listOnTimeout (node:internal/timers:573:17)

    at processTimers (node:internal/timers:514:7)

    TypeError: Cannot read properties of undefined (reading '_props')

    TypeError: Cannot read properties of undefined (reading '_props')

    at ItemInfo.getItemShortName (D:\Jogos\SPT - 3.9.8\user\mods\odt-iteminfo\src\mod.ts:1032:30)

    at ItemInfo.CraftingMaterialInfoGenarator (D:\Jogos\SPT - 3.9.8\user\mods\odt-iteminfo\src\mod.ts:1482:49)

    at ItemInfoMain (D:\Jogos\SPT - 3.9.8\user\mods\odt-iteminfo\src\mod.ts:955:44)

    at Timeout._onTimeout (D:\Jogos\SPT - 3.9.8\user\mods\odt-iteminfo\src\mod.ts:540:10)

    at listOnTimeout (node:internal/timers:573:17)

    at processTimers (node:internal/timers:514:7)

    • found the problem.. the mod ConsumableGalore, more exact the ElephantStim.json...

      deleted that and all works fine now...

  • If using a flea market blacklist remover, it's impossible to show the flea price for previously banned items. Setting "useBSGStaticFleaBanlist" to false does nothing.


    Line 672: mod.ts

    Code
    if (config.useBSGStaticFleaBanlist) {

    should be

    Code
    if (config.useBSGStaticFleaBanlist.enabled) {


    Now flea prices show up on previously banned items

  • Hi

    I hope this is the right place to ask this question. I have a suggestion about a potential new feature.

    Is it possible to when it's about keys and im hovering my mouse over a key in the stash/inventory, that it says what map it's used for ?.


    Just so it's easier to identify what key goes to what map, because right now i have to right click on the key - select inspect, and then there the big window with all the information where you then can see what map the key is for. I have a lot of keys, i think more then 200 keys, so that's a lot of time for me to do this, and this little feature to have the map name in hovering the key with the mouse, would help :-).

  • What is the dummy option in the bottom of the config file?

  • [ItemInfo] bartersResolver failed because of another mod. Send bug report. Continue safely.

    TypeError: Cannot read properties of undefined (reading '0')

    at C:\SPT\user\mods\odt-iteminfo\src\mod.ts:1201:63

    at Array.map (<anonymous>)

    at C:\SPT\user\mods\odt-iteminfo\src\mod.ts:1197:7

    at Array.forEach (<anonymous>)

    at ItemInfo.bartersResolver (C:\SPT\user\mods\odt-iteminfo\src\mod.ts:1191:20)

    at ItemInfoMain (C:\SPT\user\mods\odt-iteminfo\src\mod.ts:664:30)

    at Timeout._onTimeout (C:\SPT\user\mods\odt-iteminfo\src\mod.ts:540:10)

    at listOnTimeout (node:internal/timers:573:17)

    at processTimers (node: internal/timers:514:7)


    Keep getting this error? Any help ODT?

  • TypeError: Cannot read properties of undefined (reading '_props')

    TypeError: Cannot read properties of undefined (reading '_props')

    at ItemInfo.getItemShortName (E:\Games\SPT\user\mods\odt-iteminfo\src\mod.ts:1032:30)

    at ItemInfo.barterInfoGenerator (E:\Games\SPT\user\mods\odt-iteminfo\src\mod.ts:1245:25)

    at ItemInfoMain (E:\Games\SPT\user\mods\odt-iteminfo\src\mod.ts:665:29)

    at Timeout._onTimeout (E:\Games\SPT\user\mods\odt-iteminfo\src\mod.ts:540:10)

    at listOnTimeout (node:internal/timers:573:17)

    at processTimers (node:internal/timers:514:7)

    TypeError: Cannot read properties of undefined (reading '_props')

    TypeError: Cannot read properties of undefined (reading '_props')

    at ItemInfo.getItemShortName (E:\Games\SPT\user\mods\odt-iteminfo\src\mod.ts:1032:30)

    at ItemInfo.barterInfoGenerator (E:\Games\SPT\user\mods\odt-iteminfo\src\mod.ts:1245:25)

    at ItemInfoMain (E:\Games\SPT\user\mods\odt-iteminfo\src\mod.ts:665:29)

    at Timeout._onTimeout (E:\Games\SPT\user\mods\odt-iteminfo\src\mod.ts:540:10)

    at listOnTimeout (node:internal/timers:573:17)

    at processTimers (node:internal/timers:514:7)

    • I got this error after downloading Black Equipment Pack idk if you have that mod or not but if you do then that's probably your issue

    • for me the problem are ConsumableGalore, the ElephantStim.json more exact, dont know why but i deleted that stim and all works as intended ...

  • Thanks very much for making this mod! In particular love the customisable recolouring that works with other mods that change prices etc. I didn't really grok before how much Tarkov was like a MMO, but this mod really highlights this aspect and improves the gameplay in SPT!


    I made some trivial edits to also show ammo calibre (prepended) and container size/efficiency in the item short names (so visible in inventory) using your existing functions which greatly aids in sorting items and quick comparisons in the middle of a raid!


    I wonder though - is it possible within SPT to specify different names for items in-raid versus out of raid? I would love to add prices etc to names only out of raid (like when you are on the trader screen - so I guess that shows there is some native method of only showing that prices string based on the screen), but not in-raid, since it's a bit overwhelming (colours is good enough, adds some nice guesswork and 'fog of war' about what to loot).

  • [ItemInfo] bartersResolver failed because of another mod. Send bug report. Continue safely.

    TypeError: Cannot read properties of undefined (reading '0')

    at F:\Tarkov395\user\mods\odt-iteminfo\src\mod.ts:1201:63

    at Array.map (<anonymous>)

    at F:\Tarkov395\user\mods\odt-iteminfo\src\mod.ts:1197:7

    at Array.forEach (<anonymous>)

    at ItemInfo.bartersResolver (F:\Tarkov395\user\mods\odt-iteminfo\src\mod.ts:1191:20)

    at ItemInfoMain (F:\Tarkov395\user\mods\odt-iteminfo\src\mod.ts:664:30)

    at Timeout._onTimeout (F:\Tarkov395\user\mods\odt-iteminfo\src\mod.ts:540:10)

    at listOnTimeout (node:internal/timers:573:17)

    at processTimers (node:internal/timers:514:7)

    Getting this error, anyone knows which other mod it could be?

    Or how to solve this issue?

    Tried to reinstall, tried to change settings, tried to uninstall other mods, tried loadorders.

    • Im getting the same thing unfortunately.

    • im getting this too but mod seems to load fine what about for you guys?

    • Yeah, getting the same error myself. Tried the same things too.

    • solved this it was created by a samswat reupload of a mod. The M1014. Here's the link-


  • :thumbup: <3

  • love this mod visually clear and extremely informative

    Heart 1
  • Не выдает не каких ошибок, но когда открываешь торговца игра просо закрывается.


    G.T.

    It doesn’t give any errors, but when you open the merchant, the game closes.

    • не могу воспроизвести баг, проблема с другими модами.

      Heart 1
    • Установил на чистую версии и правда работает. Спасибо.

      Нужно искать с чем не работает.


      G.T.

      I installed it on a clean version and it really works. Thank you.


      You need to look for what doesn't work.

  • Thank you so much!
    Your recent upload says updated for 3.9.2 but is still tagged as 3.8.0 just as a heads up.

    Edit; AND ITS FIXED IGNORE ME!

    but really, love your work.

    Heart 1
  • does it work for 3.9.0?

    • no, but actually yes.


      I managed to get it to work though, but you must update 2 files:


      1. user\mods\odt-iteminfo-4.0.3\package.json


      In this file, update line 7 to this: "sptVersion": "~3.9",


      2. user\mods\odt-iteminfo-4.0.3\src\mod.ts

      In this file, update all of the imports at the top of the file that contain the string 'spt-aki' to just 'spt'

      Example (line 3):

      BEFORE CHANGES:

      import { ConfigTypes } from "@spt-aki/models/enums/ConfigTypes";

      AFTER CHANGES:

      import { ConfigTypes } from "@spt/models/enums/ConfigTypes";


      Do that re-naming for all the imports at the top of the file (roughly lines 3-26).


      Save both files and then it should load fine. It works for me. :)

      Heart 3 Thumbs Up 1
    • I did this and it didn't work :sadge:


      Edit: nvm I change it from "akiVersion" to "sptVersion" LOL

    • Thank you @EthicsGradient. Easy to do and it works great on 3.9.0 :thumbup:

      Thumbs Up 1
  • Just curious, has this mod has been dropped?

  • Very useful and works flawlessly with live flea prices, thank you so much bro!


    It'd be amazing if it had compatibility with Color Converter API

  • I have a suggestion, for the flea price, any chance to use the lowest price in the ragfair but not the price before discount.

  • In case anyone else couldn't get it to work with ammo mods and realism:

    1. Make it load after realism

    You do this by editing SPT/user/mods/order.json like so:

    JSON: order.json
    {
        "order": [
                  "SPT-Realism",
                  "odt-iteminfo-4.0.3"
                 ]
    }


    2. Add a long compat delay, for me the golden value was 40 seconds:

    You do this by editing SPT/user/mods/odt-iteminfo-4.0.3/config/config.json line 120 - 124 like this:

    JSON: config.json
    "delay": {
            "_description": "Delay loading the mod for compatibility reasons (mods that add items in a weird way, or mods that take too long to load like Lua's Flea Market Price Updater).",
            "enabled": true,
            "seconds": 40
        },


    Hope that helps :)

    Thumbs Up 1 Heart 1
    • Which one has higher priority, the above one or the below one..Im confused. Could you please give a explaination?THX>.<

    • You're going to want to do both things I mentioned :)


      In order.json, it loads from top to bottom, then it loads things not in the list from your mod folder in alphabetical order.

  • Love it, great job! Makes it feel even more special when receiving some high value loot and it being colored appropriately - just like playing Diablo and getting a legendary item!


    I appreciate the ability to disable price info, questing info, bartering info, etc. as I use this purely for eye-candy MMO-like rarity colors. Thanks! :thumbup: <3

  • I'm seeing a recipe for 7.62x39 PS gzh even though that ammo cannot be crafted.

  • Works on 3.8.3

  • Does this still work in 3.8.3 without realism?

  • For anyone having truble with Realism compatibility patches breaking ammo stats and mods that add things like recipes eg(MOREHIDEOUTCRAFTS) you need a delay for compatibility mod already does that but sometimes gets database before other mods to fix this try to up the seconds to load at config.json on the mods files but dont overdo it as ITEM INFO will wait that many seconds

  • Hello everyone, I have a question regarding this mod and the integration with LIVE FLEA PRICES.

    I noticed that the prices shown in the item info tooltip are different from those in the flea market after using the live flea prices mod.

    I tried to see how the function that creates the price tooltip is called in mod.ts, but I only found the following:

    Code
        getFleaPrice(itemID: string): number {
            if (typeof this.fleaPrices[itemID] != "undefined") {
                // Forgot quotes, typeof returns string..
                return this.fleaPrices[itemID]
            } else if (typeof this.getItemInHandbook(itemID)?.Price != "undefined"){
                return this.getItemInHandbook(itemID).Price
            } else {
                return 0;
            }
        }

    I thought it might be something related to price calculation per slot, but it doesn't seem to be the case either. Do you have any idea how to reflect the prices correctly when updating the flea market?

    I am using the following order.json:

    :/

  • Hi ODT -

    Quick info; after extended testing with Fontaine and EpicRangeTime - we have found that if you add ItemInfo + Realism + EpicRangeTime-Weapons(allinone) - the ammo stats in the header will return to vanilla values.


    We have tested the loading order with ItemInfo first, between Realism and EpicRangeTime-Weapons and last - the issue persists.


    Thanks :)

  • Aye, Realism broke this mod. It now requires Item Info to not only load after Realism, but to have a >10 second waiting time using the "delay" config line. That makes ammo and armour stats correct again, but the valuable item icon in the name is still hit-and-miss.

    • I also was able to fix my install loading ODT-ItemInfo after SPT-Realism and by adding a 15s delay to ODT-ItemInfo at the bottom of the config.
      This may have to be put as the default number on the next build to avoid future conflicts.

      Code
      "delay": {
      "_description": "Delay loading the mod for compatibility reasons (mods that add items in a weird way, or mods that take too long to load like Lua's Flea Market Price Updater).",
      "enabled": true,
      "seconds": 15

      Thanks for mentioning this! ^^

    • Ive added 20s delay iirc but I'll check again. Do you by any chance epic's all-in-one? Some report that his all-in-one mod also causes issues


      yup just checked, item info load after realism with 20s delay. might try longer duration but dont think its gonna make a change


      ok it worked, i set the delay for 40s and it worked :D

  • after updating the game to 3.8.3 and updating realism to 1.2.2, your mod stopped being compatible with realism

    • this is what i mean with it not being compatible anymore


      image.png

    • This should be fixed if you make Item Info load after Realism.


      You can do it manually by opening /user/mods/order.json and editing it like so:


      Code: order.json
      {
          "order": [
              "SPT-Realism",
              "odt-iteminfo-4.0.3"
          ]
      }

      (Any other mods not included in the file will be loaded alphabetically after those)


      Or you can use one of the load order editors on the hub.

    • Item info is literally loaded as the last mod but i can check the load order again

    • {
        "order": [
          "AAAArtemTrader",
          "AArtemEquipment",
          "aMoxoPixel-Painter",
          "ACOG4Life-OpticRework-SPT-380",
          "ATLAS-GEAR",
          "bluehead-AIOTrader",
          "BRNVG_N-15Adapter",
          "DanW-SPTQuestingBots",
          "EpicRangeTime-Weapons",
          "WTT-SianydeAndACRiness",
          "Lyconox-AKExtension-1.4.0",
          "Lyconox-G36ex-1.7.3",
          "Lyconox-HK416HeavyBarrel-1.1.1",
          "Lyconox-Shak12System-1.4.1",
          "MoxoPixel-BlackCore",
          "MoxoPixel-GreenCore",
          "MoxoPixel-MagTape",
          "MoxoPixel-SandCore",
          "MoxoPixel-TacticalGearComponent",
          "MoxoPixel-WhiteCore",
          "SPT-Realism",
          "ServerValueModifier",
          "Fontaine-FOV-Fix",
          "Hephaestus",
          "Lotus",
          "MoreCheckmarksBackend",
          "odt-iteminfo-4.0.3",
          "Platinum-TheBlacklist-2.0.0",
          "Platinum-TwoSlotExtendedMags-1.0.3",
          "RaidOverhaul",
          "Realistic-Thermals-1.0.2",
          "refringe-openextracts",
          "revingly-fooddrinkredux-5.0.1",
          "Skwizzy-NoDiscardLimit",
          "SWAG",
          "Virtual's Custom Quest Loader",
          "zSolarint-SAIN-ServerMod",
          "zzBlackMamba-AllTheLoot-1.0.6",
          "zzSamSWAT-EOTechVuduOverhaul",
          "Gunsmith",
          "ChooChoo-TraderModding-1.2.0",
          "DJCore",
          "ExpandedTaskText",
          "Module-AdditionalWeapons",
          "acidphantasm-scorpion",
          "zrairaitheraichu-ammostats-3.1.1"
      ]
      }


      this is the load order i have. as you can see realism is on top while item info is closer to the bottom

    • I don't know then, possibly another mod conflict? I just know that I had the same issue when Item Info was loading before Realism, and changing the load order fixed it for me.

  • Is there a fix for realism i noticed while the price is correct for vendor selling it fails to select the best trader properlly

    • Fixing this would need a rework of how Item Info is coded. Right now it uses a manually-ordered list of traders by their price multipliers.


      For example, Therapist buys items at 63% of their value, so she will be the best trader for any items that she buys. Any items she doesn't buy are checked at the next-highest trader, and so on.


      When you have "Trader Buy Prices" enabled in Realism, it randomizes the price multipliers, so you can't rely on a static list like Item Info uses.


      I would recommend using Item Sell Price for trader prices instead, it works dynamically and will give you the exact price including durability etc.

  • Would you be able to add 'Ammo Pen' to the stats? I've tried to personally but failed. Attempted to use RaiRai's mod to implement it.

    • Maybe it's not 'Ammo Pen' but 'Effective Against' stat

  • Hi, the recolor option of your mod conflicts with RaiRaiTheRaichu's Ammo Stats in description mod's recolor option, even if it is loaded before of this one in the order. Can you make an option to disable the recolor just for ammunitions in the future updates?? Thanks!

    • Check config, you can disable ammunition by inputting "5485a8684bdc2da71d8b4567" in the "RarityRecolorBlacklist" field.

      Heart 2
    • Wonderful, it works! Sorry, I didn't see that option, ty for your advice! Awesome mod btw!!!