Developer Diary: In-Depth – Trade System

Hello everyone! As we prepare for the first EA release in a few months, I will be writing some extensive diaries and focusing on specific systems that are already in the game, so you have a better idea of exactly how they work. The first system that I am going to explore in detail is trade. We wrote a trade primer several months ago, so this is going to build on that and focus on more detail, including using internal error logs to help readers understand how the system is thinking when trades are considered!

First, a short reminder of how the trade system works, macro-scale. There are 3 types of trade ‘hubs’: Empire, Province, and Secondary. Trade can only happen within these spheres of influence (SOI) that they generate- if a planet does not have at least a secondary hub, it can only receive goods, not create profit-generating trades of its own. If a system is not within any SOI, it can not receive any trades at all, just emergency goods shipments sent by a special Project from the Empire (at great cost, both materially and politically) Province spheres of influence are much larger than Secondary spheres, but any number of Secondary hubs can be built (one per system limit). The more merchants there are in a hub, and the more skilled they are, the more influence a hub can have. It is possible, though not likely that a planet with only a Secondary hub, but with many skilled merchants, can generate an SOI almost a large as a Province hub with fewer and less-skilled merchants. Contiguous SOIs create a Trade Group, from which any trade can take place as long as a system is within them. Empire Hubs can trade with any hub regardless of distance; Province Hubs can trade with any other Province Hub regardless of distance. You will be able to initiate Projects that increase a hub’s SOI permanently (this represents creating fueling stations in deep space, more docks, transfer stations between outlying systems, staff, etc.) Fleets are generated by Merchants that are at these hubs, and usually it takes 15 Merchants to create a trade fleet. While a trade fleet is active, these Merchants are not available for other trades.

So now that the areas where trade can occur are established, let’s talk about how they are generated. Basically, trade happens in these steps:

  1. A viceroy of a planet determines what the needs of their planet are. This depends heavily on the current production of the planet, what the Focus of the planet is, and their Humanity, Intelligence, and Caution. Humanity determines how likely they are to take care of their people as opposed to their projects, and make sure that things like Food and Energy are well-taken care of. Intelligence lets the viceroy make better decisions about what is most beneficial for the planet, and Caution influences how much of a planet’s total budget for trade they are willing to use (Viceroys with low Caution will blow the budget out early in the year, while more Cautious Viceroys will ensure that there is a reserve throughout the year). Here’s an example of a planet determining their needs through an internal error log – note: you do not see this log as a player but we use it for balance and to make sure all the systems are working as they should!
TRADE ANALYSIS THREAD FOR PLANET ISCANDRANIA OF THE CIVILIZATION CELESTIAL EMPIRE
VICEROY HUMANITY: 25 INTELLIGENCE: 57 CAUTION: 87
Viceroy Hiraniamalie Guerin on planet Iscandrania is calculating Importances….
Food Importance: 0.0
Energy Importance: 0.0
Basic Importance: 24.5
Heavy Importance: 0.0
Rare Importance: 0.0
Total Import Budget for this month is calculated at 20.5 based on a GPP of $52.0 less trade expenses this year of $0.0 and a percentage dedicated to trade of 45 %.
Viceroy allocates $0.0 MCs towards food imports this month.
Viceroy allocates $0.0 MCs towards energy imports this month.
Viceroy allocates $11.8 MCs towards basic imports this month.
Viceroy allocates $0.0 MCs towards heavy imports this month.
Viceroy allocates $0.0 MCs towards rare imports this month.
After allocations, there is 8.7 remaining this month to use for adjusting import bids, or if not used, to return to the yearly import budget.
With a monthly shortfall of 0.4, 0.2 food units are requested from the viceroy this month.
With a monthly shortfall of 0.2, 0.2 energy units are requested from the viceroy this month.
With a monthly shortfall of 19.3, 44.1 basic units are requested from the viceroy this month.
With a monthly shortfall of -7.1, 0.0 heavy units are requested from the viceroy this month.
With a monthly shortfall of 5.8, 13.2 rare units are requested from the viceroy this month.
New Trade Request generated! Taking export budget into account, Iscandrania requests 13.33 units of Basic at a max price per unit of 0.9.
No trade generated for rare – adjusted unit need was zero.
No trade generated for heavy – adjusted unit need was zero.
TRADE ANALYSIS COMPLETED FOR Iscandrania…

So let’s see what happened here. First, the viceroy determined the importance of each trade good for that month, up to a 100 point scale (100 is critical; 0 means no need ACCORDING TO THE VICEROY!)  In this case, since the viceroy has a low Empathy, they are not prioritizing food and energy, even though there are small shortfalls in those areas. They are prioritizing basic materials (the materials from which everything in the game is built from and maintained) and requesting 44.1 basic units to build a surplus IF POSSIBLE. Note that even though there is a shortfall with rare units, the viceroy is not prioritizing them, either because there is a decent surplus or because they do not forsee a need to use rare materials due to the Focus on the planet, their plans, etc.

Second, with the importances of the trade goods determined, the viceroy then proposes up to 3 trade proposals that are ‘broadcast’ throughout their SOI. In this example, the viceroy has allocated $11.8 BC (billion crowns) of their yearly trade budget, and because of their high Caution and reasonably high Intelligence has kept a reserve. They are asking for 13.33 units of basic materials and is willing to pay up to .9 BC per unit. Keep in mind that a ‘unit’ on this planetary scale is several thousand tons of materials (or several million kW of energy supplies, including oil, fissiles, battery power stored, etc.) Since even though there is a need for rare and heavy, the viceroy determined that the much greater need was for Basic. they did not allocate any money from the planet trade budget to buy anything but Basic.

OK! So each planet goes through that calculation, and from there a galaxy-wide list of trade proposals are generated!

2. Now, it’s time for the trade hubs to ‘go shopping’ as such. They start to look through the trade proposals that are within their SOI and make 2 passes: first, to see if they have enough goods to actually fill the trade request, taking into account the importance of that good for their own planet, and the amount of their stockpile they are willing to part with (influenced by Gluttony and Caution traits). Here’s what that looks like for the empire trade hub, New Terra. Since it’s the imperial hub, it can reach most all planets, so it’s a long list for the viceroy to consider.

I have highlighted the planet example listed above. Iscandrania, so that you can follow the trade flow through one specific example:

Looking within NEO-SIRIUS TRADE GROUP….
Checking civtradehub: New Terra.
Viceroy trade tendency for hub New Terra is 65; caution is 11
Checking on valid trades for planet Iscandrania….
Basic material request found for Iscandrania! Checking stockpiles to see if it can be considered…
Basic materials requested: 13.3 units. Basic materials allocated for export on New Terra: 1,981(includes 17 % allocated from stockpiles)
Trade request has been accepted and is now under review: 13 Basic units of basic for 0.9 MCs requested from New Terra to Iscandrania.
Checking on valid trades for planet Dreamland….
Energy request found for Dreamland! Checking stockpiles to see if it can be considered…
Energy requested: 0.9 units. Energy allocated for export on New Terra: 5,772(includes 29 % allocated from stockpiles)
Trade request has been accepted and is now under review: 1 Energy units of energy for 0.8 MCs requested from New Terra to Dreamland.
Heavy material request found for Dreamland! Checking stockpiles to see if it can be considered…
Heavy materials requested: 0.1 units. Heavy materials allocated for export on New Terra: 4,328(includes 87 % allocated from stockpiles)
Trade request has been accepted and is now under review: 0 Heavy units of heavy for 1.9 MCs requested from New Terra to Dreamland.
Checking on valid trades for planet Falacer….
Basic material request found for Falacer! Checking stockpiles to see if it can be considered…
Basic materials requested: 0.9 units. Basic materials allocated for export on New Terra: 1,981(includes 17 % allocated from stockpiles)
Trade request has been accepted and is now under review: 1 Basic units of basic for 2.9 MCs requested from New Terra to Falacer.
Heavy material request found for Falacer! Checking stockpiles to see if it can be considered…
Heavy materials requested: 0.7 units. Heavy materials allocated for export on New Terra: 4,328(includes 87 % allocated from stockpiles)
Trade request has been accepted and is now under review: 1 Heavy units of heavy for 1.9 MCs requested from New Terra to Falacer.
Rare material request found for Falacer! Checking stockpiles to see if it can be considered…
Rare materials requested: 0.1 units. Rare materials allocated for export on New Terra: 233(includes 23 % allocated from stockpiles)
Trade request has been accepted and is now under review: 0 Rare units of rare for 3.9 MCs requested from New Terra to Falacer.
Checking on valid trades for planet New Jove….
There are no active trade proposals on New Jove.
Checking on valid trades for planet Huanxiang….
Energy request found for Huanxiang! Checking stockpiles to see if it can be considered…
Energy requested: 5.9 units. Energy allocated for export on New Terra: 5,772(includes 29 % allocated from stockpiles)
Trade request has been accepted and is now under review: 6 Energy units of energy for 0.8 MCs requested from New Terra to Huanxiang.
Basic material request found for Huanxiang! Checking stockpiles to see if it can be considered…
Basic materials requested: 2.2 units. Basic materials allocated for export on New Terra: 1,981(includes 17 % allocated from stockpiles)
Trade request has been accepted and is now under review: 2 Basic units of basic for 2.3 MCs requested from New Terra to Huanxiang.
Checking on valid trades for planet Wuxiaci….
Rare material request found for Wuxiaci! Checking stockpiles to see if it can be considered…
Rare materials requested: 0.4 units. Rare materials allocated for export on New Terra: 233(includes 23 % allocated from stockpiles)
Trade request has been accepted and is now under review: 0 Rare units of rare for 3.9 MCs requested from New Terra to Wuxiaci.
Checking on valid trades for planet Verdancy….
Basic material request found for Verdancy! Checking stockpiles to see if it can be considered…
Basic materials requested: 0.1 units. Basic materials allocated for export on New Terra: 1,981(includes 17 % allocated from stockpiles)
Trade request has been accepted and is now under review: 0 Basic units of basic for 2.4 MCs requested from New Terra to Verdancy.
Heavy material request found for Verdancy! Checking stockpiles to see if it can be considered…
Heavy materials requested: 0.1 units. Heavy materials allocated for export on New Terra: 4,328(includes 87 % allocated from stockpiles)
Trade request has been accepted and is now under review: 0 Heavy units of heavy for 1.2 MCs requested from New Terra to Verdancy.
Checking on valid trades for planet Adawia….
There are no active trade proposals on Adawia.
Checking on valid trades for planet New Ceres….
There are no active trade proposals on New Ceres.
Checking on valid trades for planet Orcus….
Basic material request found for Orcus! Checking stockpiles to see if it can be considered…
Basic materials requested: 3.2 units. Basic materials allocated for export on New Terra: 1,981(includes 17 % allocated from stockpiles)
Trade request has been accepted and is now under review: 3 Basic units of basic for 2.0 MCs requested from New Terra to Orcus.
Heavy material request found for Orcus! Checking stockpiles to see if it can be considered…
Heavy materials requested: 1.4 units. Heavy materials allocated for export on New Terra: 4,328(includes 87 % allocated from stockpiles)
Trade request has been accepted and is now under review: 1 Heavy units of heavy for 1.7 MCs requested from New Terra to Orcus.
Checking on valid trades for planet Conlong….
Basic material request found for Conlong! Checking stockpiles to see if it can be considered…
Basic materials requested: 0.7 units. Basic materials allocated for export on New Terra: 1,981(includes 17 % allocated from stockpiles)
Trade request has been accepted and is now under review: 1 Basic units of basic for 2.3 MCs requested from New Terra to Conlong.
Heavy material request found for Conlong! Checking stockpiles to see if it can be considered…
Heavy materials requested: 0.4 units. Heavy materials allocated for export on New Terra: 4,328(includes 87 % allocated from stockpiles)
Trade request has been accepted and is now under review: 0 Heavy units of heavy for 1.3 MCs requested from New Terra to Conlong.

Hooray! Since New Terra has a s*itload of Basic in stockpile, they have put the proposal in their ‘shopping cart’, so to speak. This only means that they are willing to part with the resources. At this point, no analysis has been done regarding profitability, or whether they want to trade with that viceroy (their Houses are enemies, they personally hate each other, etc). That comes next.

3. So we have a list of possible trade partners. (By the way, a trade can be picked up by multiple parties). Now we need to look at profitability. This is a complex equation that simplifies into ‘the farther away trade partners are, the more energy and ships are required, meaning that the convoy will need to haul either less goods at a very high price (special delivery) or more goods at a lower price (shipping in bulk). Each viceroy has a ‘cutoff’ amount beyond which they will not consider a trade – it is not profitable enough for them! This is very heavily influenced by their Humanity and Gluttony. Let’s take a look:

Now determining trade profitability for the Celestial Empire.
Viceroy Gluttony: -15 Trade Aptitude: 0 Humanity: 41
Trade hub New Terra’s viceroy will not consider trades with less than $1.1 MCs per trade.
Viceroy is considering trade with Iscandrania for Basic. The current profit per unit based on prices and energy needed for the trip is 0.6 MCs, with total profit of 7.8.
…. After careful consideration, this trade is provisionally accepted, pending sufficient fleet availability! Final cost of trade, including fuel and shipping: $25.1. Total expected profit: $7.8.
Viceroy is considering trade with Dreamland for Energy. The current profit per unit based on prices and energy needed for the trip is 0.5 MCs, with total profit of 0.4.
…. After careful consideration, this trade is denied! Not enough profit to make the trip.
Viceroy is considering trade with Dreamland for Heavy. The current profit per unit based on prices and energy needed for the trip is 1.2 MCs, with total profit of 0.2.
…. After careful consideration, this trade is denied! Not enough profit to make the trip.
Viceroy is considering trade with Falacer for Basic. The current profit per unit based on prices and energy needed for the trip is 2.2 MCs, with total profit of 2.1.
…. After careful consideration, this trade is provisionally accepted, pending sufficient fleet availability! Final cost of trade, including fuel and shipping: $3.7. Total expected profit: $2.1.
Viceroy is considering trade with Falacer for Heavy. The current profit per unit based on prices and energy needed for the trip is 0.8 MCs, with total profit of 0.6.
…. After careful consideration, this trade is denied! Not enough profit to make the trip.
Viceroy is considering trade with Falacer for Rare. The current profit per unit based on prices and energy needed for the trip is 2.2 MCs, with total profit of 0.3.
…. After careful consideration, this trade is denied! Not enough profit to make the trip.
Viceroy is considering trade with Huanxiang for Energy. The current profit per unit based on prices and energy needed for the trip is 0.1 MCs, with total profit of 0.6.
…. After careful consideration, this trade is denied! Not enough profit to make the trip.
Viceroy is considering trade with Huanxiang for Basic. The current profit per unit based on prices and energy needed for the trip is 1.6 MCs, with total profit of 3.4.
…. After careful consideration, this trade is provisionally accepted, pending sufficient fleet availability! Final cost of trade, including fuel and shipping: $7.3. Total expected profit: $3.4.
Viceroy is considering trade with Wuxiaci for Rare. The current profit per unit based on prices and energy needed for the trip is 1.6 MCs, with total profit of 0.6.
…. After careful consideration, this trade is denied! Not enough profit to make the trip.
Viceroy is considering trade with Verdancy for Basic. The current profit per unit based on prices and energy needed for the trip is 1.0 MCs, with total profit of 0.1.
…. After careful consideration, this trade is denied! Not enough profit to make the trip.
Viceroy is considering trade with Verdancy for Heavy. The current profit per unit based on prices and energy needed for the trip is 0.0 MCs, with total profit of 0.0.
…. After careful consideration, this trade is denied! Not enough profit to make the trip.
Viceroy is considering trade with Orcus for Basic. The current profit per unit based on prices and energy needed for the trip is 0.9 MCs, with total profit of 2.9.
…. After careful consideration, this trade is provisionally accepted, pending sufficient fleet availability! Final cost of trade, including fuel and shipping: $10.2. Total expected profit: $2.9.
Viceroy is considering trade with Orcus for Heavy. The current profit per unit based on prices and energy needed for the trip is 0.3 MCs, with total profit of 0.4.
…. After careful consideration, this trade is denied! Not enough profit to make the trip.
Viceroy is considering trade with Conlong for Basic. The current profit per unit based on prices and energy needed for the trip is 1.2 MCs, with total profit of 0.8.
…. After careful consideration, this trade is denied! Not enough profit to make the trip.
Viceroy is considering trade with Conlong for Heavy. The current profit per unit based on prices and energy needed for the trip is 0.0 MCs, with total profit of 0.0.
…. After careful consideration, this trade is denied! Not enough profit to make the trip.

So what does this mean? First of all, the viceroy of New Terra has a negative Gluttony score, meaning that they are not very greedy, and aren’t looking for a huge profit margin. They have a 0 trade aptitude, meaning that they have no special skills in trade that will increase profit per trade (or decrease it), and they have a decently high Humanity, meaning that they will be more likely to accept lower-profit trades, especially on food and energy. So in Iscandrania’s case, they will be making enough from the trip even though it is a longer-based trip to make it worth the expense of merchants, fleets, and energy (remember that it costs the sending hub Energy to create a fleet, and the longer the trip, the more energy it costs – and energy ain’t free) So they have accepted the trade request, will be charging a total of $25.1 BC to ship 13 units of Basic. This will generate a profit of $7.8 BCs after paying for the energy for the trip, as well as the cost of the basic supplies themselves. Note that the viceroy likes some trades, but not others, so it’s worth going through the trades that were denied to see their ‘thinking’. Almost there! Now since there are enough fleets for the Imperial trade hub to send all this stuff, this example is done, but if there’s not enough fleets for all the accepted trades, there is one final step.

4. So let’s say there’s 5 trades that the viceroy likes, but they only have 3 available trade fleets! Bummer! So now hard choices have to be made. Generally, the most profitable trades will win out, but sometimes a high Empathy viceroy will green-light a trade for food or energy at less profit.

So that’s trade in a nutshell! This system still needs to be balanced a lot along with the general economic model, but hopefully it will answer some questions about how trade works. If you have other questions, please ask in a comment and I’d be happy to answer them! I will also post a video soon with this information in video form, for a more visual representation. Thanks for your time!

-Steve

0 Comments

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.