Part 1. Organizing some of the Market Item System information into more concise chunks.
- Market Item Types
- [1] Permanent Bonus (similar to technology)
- [2] Ongoing Bonus (similar to trade routes)
- Market Item Quantity
- Not too many, but not too few
- Market Items are midgame things.
- There is a separate trade system that handles regular racial commerce (which may be nil), only the high value stuff is handled by Market Items.
- Market Items are items that represent an entire class of specialty good.
- For example, the 50 Shades of Blue is a Fiction.Erotic item.
- It represents an entire industry devoted to erotic fiction.
- 50 Shades of Blue is simply the best or most well known.
- This class represents the shift away from the granular level items and to more general systems.
- Market Item Creation
- It is similiar to a research system
- You spend resources on items that you trade with our races to get their item bonuses
- Research a particular item once (e.g., civ tech trees) vs Research a particular class of item (Star Drive)
- (either you get a list of Market items to choose from (e.g., Chainsaw Rifles or Fluffy goes to Sleep) or you choose a particular item type (e.g., research into Military.personal.weapon might give you Chainsaw Rifles)
- Some Concerns with the granularity of the Market System (i.e., we want limits on the number of items)
- Option 1: Items values decay over time or be replaced by subsequent research.
- The Every-Other-Day Show is great for the first 10 seasons, but they want something new.
- Either continue in Broadcast.news Sandwich-Report or you decide to switch over the new world of Poetry.Pastoral
- Option 2: Once you trade an item, it is gone. You can't trade it ever again.
- Option 3: Lots of other options.
Restructuring the Market Item StructureSo, I looked at the structure you provided and tried to simplify it and make it more general. Mostly it was creating a consistent grammar that let me parse items more easily, which I can then use to figure out how to generate some item lists. For example, makePhilosophy is the same type of thing as writeFiction. So I just generalized the structure.
https://docs.google.com/spreadsheets/d/1f6XQpB7UO0ZKUa54g_3YXf985OBHUM01deHu5ioZaT8/edit?usp=sharingThe Racial Sheet is only updated for the Auctians and Andors. If this wasn't going to be useful, I could save some time but not transposing them.
1. Split Import from Export and Make/WriteIn the original system you posted you had them half split, I went ahead and tried to split them all
Each Race has import preferences (would we buy it if it was offered, e.g., Acutians - "Yes, please")
Each Race has export preferences (would we sell it, if we made it, e.g., Burlusts Guns)
Each Race has a building count (in original document it was labelled make/write)
Each Race has a interest level (in the original document this was the same as building count. I didn't create this one, but it would make sense. E.g., The Peltians might not have that many ways of making Bead Wallets, but they sure do make a bunch with what they have. They also want to buy your Bead Wallets).
2. Split off Race from LeaderIf there are baseline Race Market Item preferences, then leaders can be simple differences from the typical race member. A simple weighting system (additive, multiplicative, or logged) would work here. In addition a basic template inherited by all races would set all values to 0. So that unless specified in the Racial or Leader Market Item profile, those items are ignored by that race.
Example: All the Acutian leaders love weapons. So make the weapon preference is moved to the Acutian Racial entry, and left blank in the leader entry. This reduces redundancy. Currently only item preferences and building counts are stored at the racial level, but it should be straightforward to do.
3. Combine Race + Leader values to end up with an overall Race/Leader Market item preference.4. Market Item VariantsThis is where the real part of the task lies. The rest is window dressing.
Looking at what you found for Racial Preferences it seems that each Market Item should have variants.
These variants will each have their own unique grammar frames, which will allow Pastoral Poetry and also Heroic Epics.
The variants that I came up with off hand.
Broadcast.Variants <- c("general", "news", "education", "violent", "happy")
ConsumerProduct.Variants <-c("general", "dangerous", "technological", "gadgets")
Military.Variants <- c("general", "personal.weapons", "vehicle.weapons", "personal.armor", "vehicle.armor", "personal.organic", "vehicle.organic")
Philosophy.Variants <- c("general", "dark", "trivial", "serious")
Fiction.Variants <- c("general","happy", "sad", "propaganda")
NonFiction.Variants <- c("general", "torture", "war", "applied", "basic", "organic")
Periodical.Variants <- c("general", "news", "research", "propaganda", "entertainment")
Poetry.Variants <- c("general", "positive", "romantic", "sad", "sentimental", "negative", "epic")
The general variant is used to indicate a race will deal with everything in that category (e.g., Acutians like all of the Military items). The specific weight variants are used to indicate a preference (strong, weak, avoid, whatever).
5. Variants as unique variables or fields in recordsI don't have any better ideas on how to add variants than as their own separate weight category that must be created per variant. Combining them and doing some sort of grep sounds like a nightmare. The name system could also use some cleaning, along with tense and plurality unification.
6. Races & NamesIt seems easiest to incorporate personal names into the grammar Frames based upon the race generating an item.
Example of some weights in actionSo Boarines are only interested in weapons, but they both buy and sell. They would have
Racial.Export.Military.Variant.person.weapons = 1
Racial.Import.Military.Variant.person.weapons = 1
Racial.Export.Military.Variant.vehicle.weapons = 1
Racial.Import.Military.Variant.vehicle.weapons = 1
Chak the Acutian leader doesn't believe in importing knowledge.Leader.Import.NonFiction.general = 0
Leader.Import.NonFiction.torture = 0
Leader.Import.NonFiction.war = 0
Leader.Import.NonFiction.applied = 0
Leader.Import.NonFiction.basic = 0
Leader.Import.NonFiction.organic = 0
I could also see a Leader/Racial.Overall.Nonfiction tag (I didn't specify it in the provided spreadsheet).
For example, the Thoraxian Queens aren't interested in your thoughts or sharing hers.
Racial.Overall.Nonfiction = 0
Racial.Overall.Fiction = 0
Racial.Overall.Broadcast = 0
Racial.Overall.Poetry = 0
The factors would all be combined (multiplicatively, additively, logged) to create the final AI guiding values.Racial.Overall.Nonfiction * Leader.Import.Nonfiction.general * Race.Import.Nonfiction.general
Racial.Overall.Nonfiction * Leader.Export.Nonfiction.general * Race.Export.Nonfiction.general[/list][/list]
OtherI've been consider how to weight words per characteristics of races. I think this only matters to nouns. It also may be limited to a specific subset of grammar frames. In a heavy handed approach we just assign each race a list of prefered words, e.g., Burlusts get aggressive & violent words, the water guys get fish and water words, etc. Alternatively, I looked into calculating semantic distances to words from racial keywords. The problem is that we'd still need to get the list of racially associated words. So we take aggression, war, battle, etc, calculate the distance between each word in a corpus and those words. Take the 100-500 most common nouns, and then use those. It might work.