Vintage Story Mod DB · Vintage Story mod
C&N Trader
C&N TRADER Custom traders with a living, supply-and-demand economy for Vintage Story C&N Trader adds configurable trader NPCs with dynamic prices: buying raises a price, selling lowers it, and prices slowly return to their base. Build traders in an in-game a
Quick answer
Which C&N Trader release matches 1.16.5?
C&N Trader 1.0.3 targets 1.16.5. It must be installed on the client. Installation on the dedicated server is optional. No extra mods listed for this file.
Where it goes
Is C&N Trader required on the client, server, or both?
It must be installed on the client. Installation on the dedicated server is optional.
This release supports both sides, but the source does not require it on the server.
What else does C&N Trader 1.0.3 need?
1.0.3 on 1.16.5. Every mod below is checked against that same setup.
This file does not list any required mods. Do not add a library just because a different file uses it.
This file does not list any required or optional mods.
Before you install it
Add C&N Trader without breaking your instance.
Built for C&N Trader 1.0.3 on 1.16.5. Pick another file and the loader, install side or required mods may change.
- 01
Stick to this file
Use 1.0.3. It targets 1.16.5; another release may have different loader, side or dependency requirements.
- 02
Bring the mods it needs
This file does not list any required mods. Do not add a library just because a different file uses it.
- 03
Put it on the correct side
It must be installed on the client. Installation on the dedicated server is optional.
- 04
Pick the file you checked
Use the “Get this file” button beside 1.0.3. It opens that exact file at the source.
About this project
What does C&N Trader add?
C&N TRADER
Custom traders with a living, supply-and-demand economy for Vintage Story
C&N Trader adds configurable trader NPCs with dynamic prices: buying raises a price, selling lowers it, and prices slowly return to their base. Build traders in an in-game admin panel (no JSON editing), save them as presets, and spawn them with a command.
Living Economy
Every buy/sell entry has its own pricing strategy that decides how the price reacts to trades and to the passage of time. Prices are always clamped between a configurable floor and ceiling (min × base … max × base).
= None
Fixed price. Trades and time never move it - a classic static shop.
L Linear
Each traded batch moves the price by a fixed fraction of the base price, and the price drifts straight back toward base at a set rate per day.
E Elastic
Multiplicative: each batch scales the current price by (1 ± k), so swings are proportional to the price and recovery toward base is a smooth exponential.
S Stock
The price follows the remaining stock. Full stock sits at base; scarcity drives a sell price up toward the ceiling, while a glut drives a buyback price down toward the floor.
T Step
A staircase: every N units traded, the price jumps by a fixed percentage in that direction, then steps back toward base over time.
Settings cascade: each item inherits from the preset default, which inherits from the global config - you only override what you need.
Price trend at a glance: in the trade window each offer whose price has drifted from its base shows a colored arrow and percentage (▲ green = a good deal for you, ▼ red = a bad one), so players can spot bargains and gluts without doing the maths.
Restock over time: stock isn’t just reshuffled - each entry slowly refills toward its ceiling at a per-item rate (restock quantity every restock hourDelay hours), so a sold-out item recovers gradually instead of snapping back full.
Shared quotas (goods groups): tag several entries with the same goods group and one goods group max and they draw from a single shared stock pool - handy for “this trader only has 20 tools total, in any mix”.
Presets & Personalities
- Reusable presets: a whole trader — display name, starting money, buy list, sell list and all supply/demand defaults - saved to a file and spawnable by name.
- Buy & sell lists: per-item price (average + variance), stock (average + variance), stack size, restock timing and per-item pricing strategy.
- Personalities: pick a haggling personality per trader, or let it roll at random on spawn.
- Periodic refresh: traders reshuffle their stock and money on a configurable interval.
Currency
A configurable currency table maps items to monetary value, so traders price and pay out in the money items you define — and it resyncs to every connected player when the config is reloaded.
- Works standalone: out of the box the currency is a single value-1 coin (
game:gear-rusty), so the mod needs no economy dependency. Swap in your own coin set (e.g. copper/silver/gold tiers) in the config. - Named currency profiles: define several coin sets and let each trader trade in a different one - pick a profile from a dropdown in the preset editor (or set
currencyProfilein a tradelist). Traders with no profile use the global table, so old setups are unaffected. - Attribute-aware coins: the same item can count as different values depending on its stack attributes, so one “coin” item can carry several denominations.
- Real change: overpayments are paid back in the largest denominations that fit, and the trader stores its takings in the profile’s base coin.
Setting up currency
Step 1 - define the coins in-game (no file editing). Open the admin panel (Ctrl + Shift + V) and go to the Currency tab. Pick the default profile (the global money) or create a named one, then add coin rows - each is an item code, a value and optional attributes - and hit Save. It’s written to the config and synced to every player instantly. Always include a value-1 coin.
Step 2 - assign a currency to a trader. On the Presets tab, edit a preset and pick a profile from the Currency dropdown (it lists default plus every profile you made). default means the global CURRENCIES table, so traders left on it are unchanged.
Prefer files? Everything above is just the config at ModConfig/cantrader.json. The global money set is CURRENCIES - each entry is a coin item Code and its unit Value:
"CURRENCIES": [
{ "Value": 10000, "Code": "canmarket:cangearpayment-gold" },
{ "Value": 100, "Code": "canmarket:cangearpayment-silver" },
{ "Value": 1, "Code": "canmarket:cangearpayment-copper" }
]
Always include a Value: 1 coin — the trader stores its takings in it and needs it to make exact change.
Per-trader currencies are named sets under CURRENCY_PROFILES; each is a coin list just like CURRENCIES. The name is what appears in the preset’s Currency dropdown:
"CURRENCY_PROFILES": {
"shells": [
{ "Value": 20, "Code": "game:seashell-pink" },
{ "Value": 1, "Code": "game:seashell-white" }
]
}
Attribute-aware coins: add Attributes to make one item count at several values by its stack attributes (compared as text, most-specific first):
{ "Value": 50, "Code": "game:gear-rusty", "Attributes": { "quality": "5" } },
{ "Value": 1, "Code": "game:gear-rusty" }
After hand-editing the file, run /ven reload to re-read the config and resync every player — no restart needed. (Saving from the Currency tab does this for you.) A coin whose item code doesn’t exist is skipped with a log warning.
Admin Tools
Open the admin panel with Ctrl + Shift + V or the .vengui command (needs the controlserver privilege). It has three tabs: a Monitor of every loaded trader (teleport to / remove, place a preset where you look), the preset editor, and a Currency editor for the coin tables.
- In-game preset editor: a full GUI panel to build and tune traders, item lists and supply/demand behaviour — add items straight from your hand, no config files to hand-edit.
- Live monitor: a sortable list of all loaded traders with their position, preset, current money and one-click teleport / removal, refreshed automatically.
- Strategy badges: the item list shows a compact colored tag (= / L / E / S / T, or a dim · for inherited) so you can read a trader's whole pricing setup at a glance.
- Commands (require the
controlserverprivilege):/ven new— spawn a trader at your position/ven place <preset>— spawn a named preset where you look/ven del— remove the trader you are looking at/ven info//ven listall— inspect loaded traders/ven sh— reshuffle a trader's stock/ven presets— list available presets/ven reload— reload config from disk and resync to players
In-Game Guide
Open the handbook (H) and look under Guides for “C&N Trader: Supply & Demand Pricing” — an in-game explanation of every strategy, the inheritance layers and how to read the item list.
Configuration
Global defaults live in an editable JSON config at ModConfig/cantrader.json. Key fields:
ENABLE_SUPPLY_DEMAND— master switch for living prices & restock.SD_DEFAULT_STRATEGYandSD_DEFAULT_PER_PURCHASE/_PER_DAY/_MIN_FACTOR/_MAX_FACTOR/_UNITS_PER_STEP/_STEP_PCT— the bottom of the inheritance chain, used whenever an item and its preset both leave a setting blank.CURRENCIESandCURRENCY_PROFILES— the coin tables described above.WRITE_LOG/LOG_FILE_PATH/LOG_FILE_BUYING_PATH— optional file logging of every trade (one line per player/item:player#item#count#unixtime), flushed on a timer for later analysis.
Presets are stored separately in ModConfig/CANTrader/presets (one file per preset), and hand-editable vanilla-style trade lists in ModConfig/CANTrader/tradelists — both seeded on first launch, so shipped defaults stay untouched. Run /ven reload to re-read the config, presets and currency tables from disk and resync to players without a restart.
Project description from Vintage Story Mod DB.
Pick your setup
C&N Trader releases for each Vintage Story version.
Choose the version and loader you play, then open the matching release.
1.21.1
1 loader build1.19.1
1 loader build1.18.6-rc.1
1 loader build1.18.5
1 loader build1.18.3
1 loader build1.18.2-rc.4
1 loader build1.18.2-rc.2
1 loader build1.17.11
1 loader build1.17.9
1 loader build1.17.6
1 loader build1.17.4
1 loader buildShowing the newest 12 of 13 game versions. Older files are in the list below.
Check the dependencies, then try the file in a copied instance before changing a world you care about.
Recent files
C&N Trader versions and loaders
1.0.3
vendor_v1.0.3.zip
3 Jul 2022
1.0.2
vendor_v1.0.2.zip
22 May 2022
1.0.1
vendor_v1.0.1.zip
21 May 2022
1.0.0
vendor_v1.0.0.zip
15 May 2022
Looking for an older file? The official Vintage Story Mod DB project page is in Resources.