Saturday, August 12, 2023

In which we open up the books

It was recently suggested that I write up more details on my trade system. Since I spent a chunk of the last week writing up my procedures for handling travel it seemed like a natural next step. I'm going to skip all of the world building that went into the base of the system although another polite request might get a thousand words on that as well.

So the world exists. Raw materials exist. In places. Limited by biome, rainfall, manpower, altitude and a few other geographical factors. The OTHER thing that exists is my spreadsheet(s.) Before we begin I need to credit my inspiration, Alexis Smolensk. I return to his material daily for guidance and inspiration. A dozen other writers provided insight, ideas and inspiration: for h in hexes , Red Ragged Fiend and others you'll find over there in Appendix N.

Just realized I have NO idea where to start. So I'll send you back to Alexis's. That's a rough starting point for the travel stuff. We then use THAT table to calculate how far each and every shipping point is from “Our Town.” Divide the amount of something that's produced “far away” from the distance and you get a number reflecting how much of any given item is available here. He uses the example of elephants from Burma to Norway. That's 300 units of travel. His math further determines that 144.55 of the beasts are available in Norway. That's the number of elephants moving through this town of 2,500 in a year. Or COULD be, if anybody wanted to ship pachyderms through Norway.

All of that is pretty much a straight adaptation of Alexis' with a few corners cut. I then do the same thing with “Storefronts.” Manufacturers. Trade people. People who convert raw materials into stuff … and the people who convert that stuff into other stuff, etc., until it ends up in the PC's backpack. Short version: Cow to stockyard to butcher to tanner to leather worker to armorer to Ranger as leather armor. Or sheep to shearer to spinner to weaver to tailor to Druid as that sweater to weather this winter's long journey. By using the same formulas for Storefronts as for Raw Materials I can generate another decent number to calculate finished goods reflecting the rarity and difficulty of the labor which goes into it.

The question that was bugging me was what are the caravans hauling into and out of a given place. Here's what I'm testing. Spreadsheet. Column 1: all raw materials. Column 2: Amount of each resource in “Our Town.” This represents what is produced locally AND can be shipped in. Column 3: amount of resource produced locally. Anything with more than .25 units produced is considered for export. (This may change in future iterations as it's a work in progress.) Column 4 is Column 2 less column 3 (total available less locally produced.) Another way to phrase it is amount available for importation. If it qualifies for export I won't import it and if there's less than .25 units for importation it's rare enough that it rarely gets here. I take what's LEFT and look for what's most available, by type. I consider the three most prevalent types of timber. Our current location imports maple (used for handles), chestnut (utensils, tools and furniture), linden (furniture), and yew (sometimes art but in this case, bows.) We export iron ore but have to import clay, salt and construction stone (hence why most homes are wood.) Livestock? We export hogs, ponies (!), freshwater fish, and chickens. We import sheep (for wool) and saltwater fish (salted of course.) Carrots and turnips come in as well. Using the same system I can tell you the woods are full of moose and elk, along with fox for a good trapper.

But it was at this step that I hit a wall. Shelby and I discussed this almost a year ago when considering rarity and availability. I'm omitting a lot of the reasoning that went into the following tweaks. In short, in order for later stage production to occur the inputs must exist. Let's make a pair of cowhide shoes. In our current location there are plenty of cows. A butcher (or tanner) needs to separate the hide. The tanner tans it (turning it into finished leather.) It can then go to a leather worker or a cobbler. Cobbler turns it into shoes and we're done. But without a tanner, there's a problem. Why would a cobbler exist in a village with hides, but no tanner? Potential solutions: a) make existence of a cobbler dependent on existence of a tanner. b) allow for “fractional tanning” via cottage industry in small locales . c) admit this is a bridge to far and hand wave it away. Hate C. Increasing number of tanners lowers cost of their labor. Decreasing number of cobblers increases the cost of shoes. Much of our math so far is based on “support population.” But perhaps rather than just looking at how much population it takes to support one tradesman we should (also) be looking at how many lower level tradesmen it takes to support a later stage. A little back of the envelope math indicates that (roughly) one tanner can support eight cobblers. So I rewrote the formula. Calculate tanners. Calculate cobblers. If “cobblers*7” > tanners, cobblers equal tanners. If C*7<tanners the cobblers equal cobblers. CAN have tanners w/o cobblers. As I find similar occurrences I'll use a similar corrective. Not going to chase them down.

Note:  When calculating the cost of a manufactured item we take the cost of the raw materials divided by a labor factor and add the  cost of raw materials again (A/B)+A.  The labor factor is the cube root of the available references. 

As we approach a thousand words I'll end this lengthy (for me) post. PLEASE ask any questions. I'll gladly fill in any gaps I've left, and I've left quite a few.   

7 comments:

  1. I think something is funky with your formatting on this post.

    I like the export/import limit. So basically, if the local amount is greater than 0.25, that location does not consider any other nodes when determining the local reference amount (and hence the price relative to the total)? Or is that only the case if the amount exported is greater than the amount to be imported?

    Tying industries together has a lot of potential. How would we balance multiple industries? A tanner also supports an armorer, and any number of other leather goods we can imagine. Food for thought.

    ReplyDelete
  2. Thx. Formatting fixed (was a vestige of the word processor doc.)

    The import/export number is sheer flavor so I can accurately depict what's on incoming/outgoing caravans, plot hooks etc. Price calculation always includes everything. My thought is a node will only export something they make a lot of and regularly import things they don't have enough of but that are plentiful on the trade net. There's a crap-ton of sheep and salt: two things Our Town doesn't produce but can easily readily use. They don't produce mithril either but there's only .001 reference of it available.

    The "tying" issue might be smaller than you think. Bigger cities have plenty of everything so only a factor if under 500 or so pop. Mill, blacksmith, maybe a cart- or boat-wright. Needs wood, iron and grain. You and I differ on the multiple industry thing. I'm more inclusive than you (imho.)

    ReplyDelete
  3. I am wondering if there is a way to examine which goods are being shipped THROUGH the town (that is, not exported FROM here but needed downstream). That would paint a fuller picture of what a caravan might have.

    ReplyDelete
  4. interesting question but I don't wanna go down that rabbit hole. Each node on the trade system has imports and exports and each is affected by every other node. Per Alexis (at least my interpretation) is that the numbers aren't how much IS there but how much COULD be (his example being elephants in Norway.) You COULD look at what's coming out of each attaching node but even that wouldn't be "accurate." Perhaps your project of considering what industries could filter out what's used. That potter industry might take ALL the clay but want virtually none of the rye. But now the economist in me thinks we need to calculate the supply and demand of every item and build another system on top of this one. No thanks! I'll stick with the hand-waving abstraction.

    ReplyDelete
    Replies
    1. I'm not suggesting we need something so granular, altho it'd be cool. Just probably wouldn't justify effort at this point. I'm thinking more to determine *what* is there rather than how much.

      For instance, if we knew which places imported a good and which exported it, then we could simply look at all intermediate cities along all routes between the two sets. That would be inefficient but is a general gist.

      Delete
  5. Interesting idea. Lends itself more to your coding than to my spreadsheet. Plus your "dominant industry" approach makes it more workable. Would also bring to light the "how long does it last in transit" issue. Can the Columbus OH turnips be shipped to Cincinnati? How about Atlanta?
    Perhaps a more workable approach could be to determine what % of each item comes from which location! A simpler (!?) calculation. "75% OF Cincy's turnips come from Columbus, 20% from Indianapolis and 5% from Lexington KY." Divide the total amount a city exports to the location by the total amount imported by the location.
    This could lead to some more product-specific plot hooks. What happens when the iron ore shipments from X to Y are cut. Is there enough provided by Z to make up the difference?

    ReplyDelete
    Replies
    1. Yes. Right now I just coalesce all the values to save memory but it'd be trivial to split it back out. Even if we weren't using it for amount-based hooks (a worthy goal), I think it'd still be useful to know e.g., this caravan in city B has goods X and Y from village A bound for the capital C.

      Delete