RimWorld

RimWorld

136 ratings
Realistic Trade
3
2
   
Award
Favorite
Favorited
Unfavorite
Mod, 1.3, 1.4
File Size
Posted
Updated
1.936 MB
12 Mar, 2023 @ 5:44am
27 Mar, 2023 @ 9:13am
3 Change Notes ( view )

Subscribe to download
Realistic Trade

Description
Description:
This mod aims to improve Rimworld’s trader caravans system (make it more realistic) by using effective travel distance, weather conditions, your wealth and faction relationships to determine how often would traders arrive at your settlement and which faction will they come from.

In short - what this mod does:
- if you settle near a large number of friendly settlements, on a flat plane with lots of roads, and be rich - you will have much more traders coming
- If you settle in an faraway frozen wasteland, with no friendly neighbors and be dirt poor - you will have very little to no traders
- if you leave close enough to several settlements of a faction with which you have good relationship - most traders who will eventually visit your colony will be from this faction

Why?
In vanilla Rimworld, the only thing that affects how often will you get caravans per year (“trader caravan arrival” event) is based only on a single fixed value (either in storyteller settings or game default):
  • 5 caravans per year (for Cassandra, Phoebe and other similar storytellers, which have their own value)
  • 4 caravans per year (for Randy and other similar storytellers, which use game default value)
And you have no way to increase / decrease this set frequency. The faction of the caravan will just be random (just non-hostile).

When I first started to play Rimworld (after something like EUIV or other strategies), I thought that the distance to other neutral / ally bases would be key to my trading, and so I was surprised when none of that mattered at all and I had no way to actually influence this by my actions in-game. This frustration led to this idea that, even though we are on a futuristic and far-away Rimworld, the laws of commerce and trade are actually kinda the same as in real life :)

How it works?
The key concept is “effective trade range” - the area around your settlement that will be used for the simulation. By default it is the area in 7 days of travel from your settlement.

Then trade calculation will happen based on the following modifiers:

Amount of traders per year:
  • Amount of non-hostile settlements in effective trade range. More settlements around, the higher the chance that traders will visit you.
  • Weather conditions (time of the year). Summer is best (dry and warm), Autumn and Spring are mediocre (rains and muddy roads), Winter is worst (cold and snowy)
  • Colony wealth. The more money and goods you have, the higher chance somebody will want to trade for them with you.
Trader belonging to a specific faction:
  • Quantity of non-hostile factions settlements in effective trade range. If you live close to somebody, there is a high chance you will be trading with them most often.
  • Shortest travel times from non-hostile settlements. Closest ones will visit most often
  • Relationship value (-75 to +100) with the faction.
Calculations and weights are updated each 24 in-game hours, meaning that any changes (faction relationships, new settlements in effective range, new roads, weather conditions) would take effect roughly the next day.

How to use & adjust for yourself in Mod Settings:
You can see the actual calculation and weights assigned (both for amounts of caravans yearly and caravan faction) in dev mode console log, if you trigger Map incident > Caravan arrival:
  1. Mod would be activated with default set values (balanced around 7 days of travel “trading range”), so you can just play with it and see how it works for you.
  2. For “amount of caravans per year”, you will see your game default and mod adjusted values in the Mod Settings.
  3. All mod settings and weights can be changed in the Mod Settings. As this is my idea of how “these things should work”, and it may not be the same for everybody (or specific scenarios) - we’ve tried to make all the settings as flexible as possible.
  4. There is a “default” (restore default values) button should you need it.

Scope & Limitations:
What this mod DOES NOT change:
  1. Space ship traders are NOT affected. The mod is centered around land-base trade (i.e. where people and pack animals need to physically travel on foot, from their base to yours), and so far I have no idea how that can relate to space-travelling traders.
  2. Money of traders (how much they have) is NOT affected. Maybe in the future releases, but for now the mod is only about “how often?” and “who will it be?”.
  3. The mod does NOT change the requirement that you should have at least Knight / Dame title to trade with the Empire (Royalty). Until you have a title on at least 1 colonist - Empire will not be calculated as “eligible for trade”
  4. The mod does NOT change the default game setting that does not allow caravans from 2 different factions (who are enemies of each other) to be present on your map at the same time. So if there is already a trader caravan from faction X present on your map, no traders can arrive from factions who are enemies of faction X (even though they may have higher chance of arrival) until it leaves. It should be possible to change it, but so far I have no idea how to balance that and if there is really a need to change.

Compatibility / Mod Conflicts:
We tried to only modify the default values (to cover compatibility with all possible storytellers), so this mod should theoretically work with any modded storytellers or other similar trading mods, unless they directly touch the game “trader caravan arrival” event (which probably will still work, but change the balance). In any case, testing / bug reports would be very welcomed.

Load order:
TBD

Notes / Planned features:
  1. Balancing. As this is a 1.0 version release and more of a concept I had (so we had limited testing, mostly to see if the system works correctly), I do not know yet how balanced it would be, especially for late-game colonies (i.e. trader spam).
  2. Adjust “world size scaling” sliders (so far they are WIP)
  3. Add modifiers to trader amount of money (based on relationship level + colony wealth, and maybe something else)
  4. Figure out the balancing needed to increase the “Effective trade range” based on your technology & buildings, in order to add a sense of progress (gradual increase in your travel range distance during the game and therefore more traders)
  5. Add modifiers (primarily to trader frequency) from Ideology (native ideos or support the VE Ideology mod)
Special / future idea - if this mod works OK and looks to be useful to the community, my original goal was actually to have the same system manage the Raiding mechanics. So, in my mind, raids must too primarily depend on geography (ease of travel), relationships and wealth. There may be a mod later that will be “Realistic Raids” :)

Translations:
n/a at the moment (English only)

Credits and thanks:
  • Raug - concept author, balance adjuster, commissioner.
  • Taranchuk - master of coding, who materialised this idea and brought it to life, with great balancing ideas.
56 Comments
Raug  [author] 12 Apr @ 9:23am 
If I would catch Taranchuk and re-comission him for an official update to 1.5 - it will be updated, but I have no idea when this may happen.

My apologies, I don't play Rimworld lately.
Гений 12 Apr @ 12:16am 
Hi mates! Really good mod (I hadn't any issues even for colony that lives literally on the road hex, looks like thouse who have trouble just have copability issues). Could you please advise if anyone tested it fo 1.5?
kitazia 9 Feb @ 4:02pm 
Have the issues mentioned below been fixed?
Somebody Something 17 Aug, 2023 @ 10:26am 
Same here, towards the end of the year I started seeing hangs of more than a second every 25 ingame minutes. Also mod options took 4 seconds to open and 8 seconds to close for some reason. Advancing the ingame date to Aprimay via devmode made these issues go away entirely, and they returned immediately on the first of Decembary.
Snowstar837 29 Jul, 2023 @ 10:24pm 
Yes, I will second the lag spikes issue, only for me, the game was freezing for 20-30s, running fine for 10, then freezing again. Dub's Performance Analyzer showed it was the storyteller tick causing the issue. Removed this mod and everything is smooth (well, smooth as can be with my # of mods).
Alyssit Goods 23 Jul, 2023 @ 1:33pm 
Took me a long time to figure it out, but this mod has been causing huge lag spikes every few in game days. It appears however this mod affects pathing for trade caravans is broken. In two in game years I've never gotten a trade. It came back as an issue with mod. After removing it, the lag spikes were gone, and I started getting trades again.
602 17 Jul, 2023 @ 7:01pm 
This mod causes huge lag spikes for me every couple of days.
Raug  [author] 31 May, 2023 @ 7:25am 
@konichiwawa - I'm sorry, was checking this a bit in a rush during work. And yes, I think living close to your good allies should be encouraged with a lot of trade, as in IRL.
yodadeathsound 30 May, 2023 @ 1:58pm 
We're two different people :) But thanks for the first notes, I like the trading aspect of this game a lot and this works really well with it. I always live close to friendlies and now I'm getting like 12-15 after disabling the other mod.
Raug  [author] 30 May, 2023 @ 9:40am 
@ProfileName - I have trading options in my modlist, and they do generally work together. But I don't think 100% without any issues (at least they conflict in caravan frequency). This mod is lightweight (i.e. its impact is reserved in max 24 in-game hours), so you can try to switch it on and off and see if it doesn't break something important for you in TradingOptions.

Regarding your first post - I think the initial caravans are hard-coded by Rimworld (I always get a lot of them too), and then this mod starts to work as intended. So if you are too poor / far away / have no allies (which is normal for a start of a colony) - you will get punished by traders being very rare.