This post has been de-listed
It is no longer included in search results and normal feeds (front page, hot posts, subreddit posts, etc). It remains visible only via the author's post history.
This post is not an announcement in the sense of "it will be online tomorrow", but rather an outline of what our plan is and what changes will be made over the coming weeks. I know it sounds weird, complicated and very different initially, but let it sink in a bit.
Current issues
When asking people what the main issue with the current system is, most of them will reply it's too grindy or too expensive in comparison to what it gives. While I kind of agree with that, after further evaluation I believe that it's not a cost issue, but a structural one. Instead of being able to constantly progress through the techtree you have to save up constantly and from time to time make very big investments.
Additionally even after making them a lot harder to break (which was just a temporary fix), factories are still way too vulnerable. While attacking an enemies infrastructure in the form of factories should be viable, it shouldn't be possible to set them back to square one which was often the case, especially for newfriendish nations.
The plan
We will change factories, so their effectiveness (meaning the input:output ratio of a recipe) depends on how often the recipe was used before. When initially building a factory, all of it's recipes will only be slightly better than vanilla, but as the recipe is used, it will improve quickly. While you will get a lot of improvement very quick initially, it will take more and more uses for the recipe to get better, which is meant to provide incentive for established nations to stick to their factories for longer periods of time by rewarding for doing so.
Recipe scaling
The scaling is divided up into 10 tiers. Each tier has a minimum (starting ratio) and a maximum ratio, where the maximum ratio of a tier is the minimum ratio of the next tier. Within each tier, the ratio scales linear with the amount of uses. How to reach different tiers in a recipe will be explained further down this post, just try to understand the concept for now.
Here's an example of how this scaling could look like for an ore smelting recipe:
Tier | Uses | Initial output ratio |
---|---|---|
1 | 0 | 1,05 |
2 | 5 | 1,1 |
3 | 20 | 1,15 |
4 | 50 | 1,2 |
5 | 100 | 1,25 |
6 | 240 | 1,3 |
7 | 400 | 1,35 |
8 | 600 | 1,4 |
9 | 800 | 1,45 |
10 | 1000 | 1,5 |
For example if you have used your recipe 100 times and the recipe is at rank 5, your output ratio will be 1,25. If it is used 100 times and only at rank 2, the ratio will be 1,15, because that's the maximum possible ratio for rank 2.
Or if you had used the recipe 75 times and the recipe was at rank 3, then your output ratio would 1,225 due to the linear scaling within tier 3. Here is a spreadsheeted version in case anyone wants it.
Aside from this being a bit weird initially, because it's very different to the FactoryMod you are used to, you might notice two things: First of all that the difficulty of this heavily depends on the batch size of the recipe and second that 1000 runs is a shit ton. To bring things in line here, the batch size of recipes will be adjusted so reaching 1000 runs is roughly the same difficulty for all recipes. Obviously reaching a perfect or even a good balance between recipes in that regard is very difficult and will require a lot of guesstimating, but I hope that we can get it roughly right after a few corrections. The goal is that a decently sized nation can achieve a tier 10 recipe within a year of "normal" usage.
Another obvious question that all this talk about "output ratio" brings up is how this is actually applied to recipes. Let's take a diamond smelting recipe as example to explain it and assume it's base recipe is 16 diamond ore for 16 diamonds. If we now have a ratio of for example 1.20 on our recipe, that means the output of the recipe should be 19.2 diamonds. Obviously we can't give out 0.2 diamonds, so here the recipe would be guaranteed to output 19 diamonds and have 20 % chance to output an additional diamond. Same thing is applied to any floating point outputs, the next smaller integer is your guaranteed output and the remaining fraction is the percentage chance for an additional output.
I am aware that adding randomness is not ideal here and even more different from how things used to be, but I believe that it's the best solution. While rounding would be possible, it would defeat the point of the changes for some recipes, because an actual output change would only occur rarely.
Upgrading recipes
So how do you get from one tier to another? Initially when making a factory, it will have no actual production recipes, it will only have "discovery recipes", which allow you to unlock a recipe at tier 1 for this factory. You may chose not to discover certain recipes at all for a factory if you dont need it, you only have to pay for what you actually use. The cost for this discovery recipes will be the material the recipe uses or something equivalent to it, for example discovering the diamond smelting recipe would cost 1-2 diamonds to unlock it with 0 uses at tier 1, which means an output ratio of 1.05 in the list above. At this point the only way for you to improve the recipe will be to actually use it up to the next tiers minimum use count, for tier 2 that's 5 uses. Once you have used the recipe 5 times, your output ratio will have increase to 1.1 and while you may further use the recipe and it's runcount will increase, it's ratio wont get better than 1,1 until you upgrade the recipe to tier 2. Just like the initial discovery recipe, this cost will be paid in the output material or an equivalent. While the current factory upgrade costs were mostly decided by throwing darts at a calculator, the cost for those recipes will be calculated directly from the improvement the tier will give you, which means as long as you continue to use the factory, it's always worth to upgrade a factory. While the cost for a full tier 10 recipe will be as high or possibly even higher than the current setup cost for some factories, the first few tiers and everything up to the current rate will be A LOT cheaper.
Additional recipe runs made while a recipe is not upgraded, so for example anything past 5 runs while the factory is still at tier 1, will not be lost, they will count and their effect on the ratio will be applied once the recipe is upgraded.
But what about factory setup costs?
Obviously this system makes setup costs in the form of "normal" materials completly obsolete, so they will be removed. While initially allowing factories to be upgraded for free was being considered, I decided against it, because letting new (and maybe a few old) friends build all factories right away only to let them realize a few weeks later that they can't keep up with repair for all of those would be very bad. The current system already offers us a solution for this problem, we will replace the upgrade cost for production factories with essences. The point of this system isn't to have nations save up for months to build that precious ore smelter, but instead have an entry cost that scales with the repair cost. It won't be overly expensive and a joke compared to the currently needed time investment for some factories, but it will at least solve the issue described above.
What happens to recipes when upgrading a factory?
You might have noticed that the run count for recipes is reset whenever you upgrade a factory right now, this will be fixed obviously. Additionally factories will no longer use all of their recipes when being upgraded, instead they will inherit all recipes their predecessor had, but not those that the predecessor already inherited. To understand this better, take a look at this spreadsheet. Let's say you have a basic contraption and upgrade it to a Stone Smelter. Your stone smelter will have all recipes the current stone smelter has and all the basic contraption recipes. If you now upgrade this Stone Smelter to an Ore Smelter though, it will lose the recipes, which the the Stone Smelter only inherited, so for example baking bread or burning char coal. Your ore smelter will still be able to smelt stone or glass (use stone smelter recipes) though.
This introduces a few issues though, because some of the current factories would be completly useless. For example the gem extractor could both smelt iron and diamond, so why bother making an ore forge. While moving the iron smelting recipe would solve this issue, it would create move it too deep into the tech tree and be kind of a bad solution. I'm leaning towards making it so recipes can't be upgraded past rank 5 unless the factory has no further upgrades and hasn't inherited the recipe, but open to other suggestions for how to solve this.
Physically breaking factories
The changes described here make it even more important to protect your factories and not lose all of them, just because a raider got into your factory room over night. Because of this, we will revert the change, which made factories completly break when all of its blocks were broken. Having your factory completly broken should still have a punishment though, so instead a factory will now drop half of what was invested in upgrading recipes for it (normal factory upgrading cost is not included here). All of it's recipes will be reset to tier 1, but the runcount will be kept, so you can upgrade it back to it's original ratio right away, but need to reinvest the cost for those upgrades.
Pylons? XP factories? Compactor?
The changes described here are meant mainly for all the production recipes, which serve the same purpose as a crafting recipe. While changes to some of those specific tech tree factories are needed and will be made, no scaling will be applied to them for now. This also means they will keep their setup cost. Overall XP is in a decent spot right now imo, definitely best out of our "custom tech trees". A few thoughts on each "special" factory and possible plans for it:
Pylons:
Increasing the output the way it's being done for other recipes isn't really feasible for this one, as it's batch size also heavily depends on other factors. Additionally established nations with multiple pylons already have more than enough advantage compared to a new nation entering the market, there is no need to make this even worse. Additionally the value of individual pylons would increase too much to the point where destroying a single pylon would justify a complete all out war, because of it's value, which can't be easily replaced. I could see adding a very light improvement or some minor advantage for long running pylons at some point, but definitely nothing like the scaling above. Additionally pylons will still break permanently when all of their blocks are broken, due to their special role.
XP factories:
It's a similar issue here, a rank 10 xp cauldron of the last xp production tier is just too fucking op compared to a newfriends wood cauldron (I know it's not named like that anymore, but I hope you get my point). This is very relevant here and not so much for the "normal" production recipes, because of how important XP is in the economy and for players in general. Something we could do with xp factories though is reducing the upgrade costs for the higher tiers and instead requiring a certain amount of uses to unlock the next tier. For example we could make it so that you have to use any tier 1 recipe 15 times to be able upgrade your transmuter to tier 2.
Enchanting factories:
The setup cost for some factories seems a bit high here, aside from that it's okayish right now. My preferred approach here would be to break up the 2-3 tiered path we have right now and instead allow discovering upgrading recipes for higher level enchantments once the lower level ones have been used enough. Example with completly made up numbers: You unlock enchanting helmets with Prot 2 once you have made 5 Prot 1 helmets. Those changes aren't really decided though and would come after all the other stuff listed above.
Compactors:
While the whole scaling thing doesn't apply to them at all, they still deserve a short mention, because their current state isn't very good and needs improvements as well. The dedicated (de-)compactor seems like a waste of resources, even though it's a lot faster. Compactors need to be made cheaper and the way they are tiered needs to be reworked. Additionally it might be a good idea to not use essence for their repair. Any ideas would be welcome for how compactors could be tiered/work.
Reinforcements:
No scaling for those for now, same justification as the xp factory. Recipe cost wise we already went down a lot, more might be needed, but I'm not entirely sure right now. Hunting as a concept doesn't really seem to be working out the way it was intended, mostly due to lack of decent spawning configs and because EE is pretty shitty for custom spawning and originally wasn't meant for more than a few gimmick mobs during 2.0 EOTW. Reinforcement cost, hunting as a concept and how a lack of SkilUp plays into this deserves it's own post though, I wont go into this here.
Other stuff
While I'm on it I might as well leave a few more thoughts here on things that I dont like right now or want to change:
Pylon finder compass
This one is super expensive right now, because once you have it, there is no need to make any more, as it has infinite uses. I want to eventually make it a lot cheaper, but give it a limited amount of uses.
GUI
I got a lot of feedback on the FactoryMod GUI and believe that it can be improved a lot. It might need quite a few changes behind the covers, because the FactoryMod GUI was the first one I made and I since then I learned a lot about how to best use those GUIs from a coding POV and the FactoryMod one seems a bit like a static relic now, but that's solvable.
Auto selecting recipe
Based on an idea from ShadedJon, I'll add something that allows setting a factory to "autodetect" mode, which means when being activated the factory will run whatever recipes it can run, it'll pick the recipes itself. Just put in your mining loot, start it up once and have the factory do everything else on it's own.
A bit of help would be nice
You can probably already guess that the amount of work required for those changes is huge. The actual coding part is rather small and most of that is already done, over 95 % of the actual work lies in editing configs and recipe specific decision making. To get this done before the end of all time, I would appreciate if I could find a few config slaves helping hands and minds to figure out and finalize all those recipes.
TL;DR
We are changing a lot of stuff, go read the whole post you lazy shit.
Subreddit
Post Details
- Posted
- 8 years ago
- Reddit URL
- View post on reddit.com
- External URL
- reddit.com/r/Civcraft/co...