A stupidly complicated crafting system idea.
"Chaotic" here refers to systems (like the weather) which are (A) deterministic and (B) small changes in initial conditions result in wildly different outcomes.
Every [material, item, ingredient, food, potion] has an underlying 16 character alphanumeric code.
> For [ingredients, materials] this records its origins.
> For [items, food, potions] this determines its [effects, abilities].
Why is it chaotic? Because two seemingly similar herbs can have wildly different effects in a potion, while two very different herbs can have the exact same effect.
Very different:
- Mandrake gathered at midnight in a cave during winter with a silver knife
- Mandrake gathered at midnight after an animal died next to it, gathered with a steel knife on a holy day
Surprisingly the same:
- Mandrake gathered at midnight in a cave during winter with a silver knife
- Purple Prickly Pear gathered during the day not during a sandstorm by a friend-of-coyotes who was poisoned at the time
Math note: Each digit can hold the values 0-9-A-Z, making this a base-36 number. Numbers overflow from ZZZ...Z back to 000...0
Example of building the alphanumeric code for a gathered ingredient:
- The 16 character code starts with all zeros: 0000000000000000.
- Each piece of information about the ingredient has a 4 character code. For instance, "harvesting tool: silver knife" is encoded as 0A77.
- There are 7 categories of information: Ingredient Type, Ingredient Variation, Location, Time, Harvester, Harvesting Tool, Additional Context.
-
First each category code is determined:
Category: Value | Code |
Ingredient Type: Prickly Pear | 5B29 |
Ingredient Variation: Purple | 0710 |
Location: Desert + Country B | DJ34 + 1100 = EK34 |
Time: Daylight + Afternoon | 0800 + 2R9S = 2Z9S |
Harvester: Friend-of-coyotes + Poisoned | S89D + 0002 = S89F |
Harvesting Tool: Hands | 111G |
Additional Context: Clear weather | 0005 |
-
These 7 codes are summed together as a series of overlapping segments.
5B29000000000000 + |
0007100000000000 + |
0000EK3400000000 + |
0000002Z9S000000 + |
00000000S89F0000 + |
0000000000111G00 + |
0000000000000005 + |
------------------ |
5B2GFK6320AG1G05 |
(Con: All these summations destroys the input data. Pro: Can support any amount of input data being fed in.)
When materials or ingredients are combined to create an item or potion, all the input codes are summed together. For additional chaos, also rotate the code one to the left before adding each ingredient to it.
The result can be broken into as many as 13 section codes:
5B2GFK6320AE1G05 would become
5B2G, B2GF, 2GFK, etc. (You can actually pull far more section codes out, for instance you could say that the 2nd, 4th, 6th, and 8th characters form a code.)
Each section of code corresponds to a possible ability or effect. Many codes correspond to "no effect". For example,
5B2G in the first section could mean "fire resistance" while
B2GF in the second section means "no effect" and
2GFK in the third section means "item is green".
Brainstorming the variations a game could support.
Location: near a lake, in a meadow, in the woods, in a cave, in a graveyard, next to flowers, where a river meets the sea, top of a mountain, in a tended garden, in a pot inside, underground
Harvester: while in perfect health, while poisoned, the first herb you gathered that day, while in a crowd, while encumbered