Nightingale added a new file:
QuoteDisplay MoreQuick Description
I got tired of clicking everywhere and switching between different lagging menus and so here we go. This guy should reduce the amount of clicks and button presses needed to sell stuff.
Adds a new trader - the Broker. He should sell your items to the most profitable option - trader or flea, while following the game logic. Also sells and buys foreign currencies based on PK's and Skier's pricing. Currency purchases are redirected to PK and Skier so you also level them up. The cash equivalent number is also changed, check out the screenshots to see how it looks, it's the number on top of the "DEAL!" button. For every other trader changes only the number format(adds spaces between thousands).
Installation
Before installing the mod, make sure to make a backup of your profile at SPTARKOV/user/profiles/
Just copy the contents of the archive into the directory where your SP Tarkov is located. Don't forget to delete the old version if you are updating.
Compatibility
- Should be incompatible with mods that override server's "TradeController".
- If you have any mods that affect trader/flea pricing - load this mod after them.
- If you have any mods that completely remove player offers from flea and the ability to create yours - set useRagfair to false in the config. Otherwise Broker will still show you fallback flea prices and will still trade items to flea market.
- If you installed any mods that affect Flea Market prices after launching the server with my mod at least once, and you have caching enabled(useCache: true) - clear the mod cache.
Note
If you notice inconsistencies in prices, unexpected behaviour, encounter crashes/errors - inform me about that in the comments.
Details
This trader will sell your is stuff in the most profitable way. The principle is as follows:
- Most profitable trader price and flea market prices are compared.
- If player has unlocked the flea, item is found in raid, not blacklisted and the flea price is more profitable - item will be sold to flea.
- If previously mentioned conditions are not met - item will be sold to most profitable trader.
* When selecting the most profitable trader all conditions are accounted (whether the trader can buy this item, item's durability/resource, etc.). So for example broken items will be sold to Fence.
* Broker buys a total of everything that every other trader buys.
Overall the Broker follows basic player and game logic (or rather should if doesn't).
The prices at which items will be sold should be displayed accordingly to where they're sold. When trader price is displayed his currency is accounted for. Flea market prices are always in roubles, also the price shown is the actual profit(profit = offer price - tax).
When selling to Traders
Items are quite literally redirected to a different trader. So they are sold in the same way as if you would sell them yourself. So you receive money from that exact trader and in his appropriate currency. The trader's sales sum is also increased just as it would normally, so you will make progress towards leveling his loyalty level.
When selling to Flea market
Items sold will be counted as being sold to Broker. The profit you get is a subtraction profit = offer price - tax. Following the game logic, the flea reputation is will also be increased with the account of offer price, not profit. Broker's sales sum includes the profit you've made selling items to flea market with his help. The flea price of an item is also affected by item's condition.
* Flea reputation on the client updates when you reboot the game or get out of a raid.
Found in raid item attachments, weapons etc.
These are a bit complicated balance-wise. Due to how items are priced on the flea only the price of the base item is accounted. The accounted price is the average offer price for an operational(has all vital attachments) item.
So technically you can sell an M4A1 or HK416 with just the lower receiver for the full flea price of ~50k. The reason for that is that some attachments have hilarious prices. E.g. M4A1 lower receiver is ~200-250k roubles on flea, or some basic items from default weapon presets are overpriced at about ~10-50k roubles.
Any attachments on the found in raid weapon are not accounted towards its price, if you want to sell some valuable attachment - sell separately. You also could disassemble a weapon completely and abuse the hilarious prices on the flea.
On the other hand if you somehow fixed the prices, have a mod that does it or just want to sell a stock found in raid M4A1 for ~250k roubles - this feature can be configured in the config.json file.
Configuration
Default looks of the config file:
Code: config.jsonDisplay More{ "logger": { "verbose": false }, "useCutomTraders": false, "customTraderIds": [], "buyRateDollar": 1, "buyRateEuro": 1, "profitCommissionPercentage": 0, "useRagfair": true, "ragfairUseLowestPrice": true, "ragfairIgnoreAttachments": true, "ragfairIgnorePlayerLevel": false, "ragfairIgnoreFoundInRaid": false, "tradersIgnoreUnlockedStatus": false, "useNotifications": true, "notificationsLongerDuration": false, "useCache": false, "useClientPlugin": true, "useItemBaseClassServiceFix": false }
logger - can be ignored. If you set "verbose" to true - it will output some log messages in the server console.
useCutomTraders - default value false. Determines whether Broker will sell to custom traders.
customTraderIds - default value [](empty array). An explicit range of custom traders to be used by Broker, obviously matters only if useCustomTraders is true. When left empy ([]) - all custom traders will be used. If you want an explicit range of traders add their IDs into the array in the following manner: ["customTraderId1", "customTraderId2", "customTraderId3"]. Trader IDs can be found in their base.json file, look for a line with "_id" (it's usually in the beginning).
buyRateDollar - by default is set to 1. Must be a positive number or 0. Determines the rate at which Broker buys dollars from you, base price is Peacekeeper's sell price. If set to 0 - Broker will stop buying dollars.
buyRateEuro - by default is set to 1. Must be a positive number or 0. Determines the rate at which Broker buys euros from you, base price is Skier's sell price. If set to 0 - Broker will stop buying euros.
profitCommissionPercentage - by default is set to 0. Available range of values is [0-99]. Determines how much Broker will take from your profits.
- Since v1.2.0, doesn't reduce the sales sum increase when items are sold to their corresponding traders.
- Doesn't affect foreign currency sales.
- For flea transactions commission is calculated from the profit(price - tax), not the flea price of an item. It doesn't affect flea rep gain.
useRagfair - by default true. When set to false - Broker will only show trader prices and sell to traders. With this settings being false, any other setting with "ragfair" prefix should be irrelevant.
ragfairUseLowestPrice- default value true. When calculating flea item prices, gets the lowest flea price of an item with best possible condition. Set to false for old behaviour where its calculating an average from offers with 85-100% condition.
ragfairIgnoreAttachments - by default true. When set to false - accounts for every single attachment on the item when calculating flea market price. If you changed this option - clear mod cache at SP TARKOV/user/mods/Nightingale-brokertrader-[version]. More about it at "Found in raid item attachments, weapons etc." section in "Details".
ragfairIgnorePlayerLevel - by default false. When set to true - ignores flea level restriction set in the server, when comparing trader/flea prices.
ragfairIgnoreFoundInRaid - by default false. When set to true - ignores item's found in raid status, when comparing trader/flea prices.
tradersIgnoreUnlockedStatus - default value false. Determines whether Broker will ignore traders "Unlocked" status (e.g. how Jaeger is initially locked). Can be useful if you have a mod that dynamically locks/unlocks traders, e.g. Path To Tarkov.
useNotifications - default value true. Determines whether notifications will be displayed, set to false if you want to disable them.
notificationsLongerDuration - default value false. Setting to true makes notifications display 2-3 seconds longer.
useCache - by default false. When set to true - creates a cache of collected flea prices. Might save you a second or two when booting up the server. If you installed any mods that affect Flea Market prices after launching the server with my mod at least once, and you have caching enabled - clear the mod cache.
useClientPlugin - default value true. Should always be true. Using the mod with this setting being false is not directly supported. If you are having issues with the client plugin set this value to false.
Disabling the client plugin disables all client-side features and introduces inconsistencies, e.g. the price displayed on the UI is not consistent with the actual profit you'll get. Also flea tax calculation(and maybe some others) will be slightly inaccurate.
You can also try to remove the BrokerTraderPlugin.dll and set this value to false, but if even that doesn't work, that might mean that the server side of the mod is not compatible with your SPT-AKI version.
useItemBaseClassServiceFix - default value false. An optional(and also kind of temporary) fix which should be used if you get spammed with "Item not found in item base cache" warnings.