ENDLESS™ Space 2 is turn-based 4X space-strategy that launches players into the space colonization age of different civilizations within the ENDLESS™ Universe. Your Vision. Their Future.
I just started a game with the mode yesterday. I noticed that the dust breakdown now has a negative component due to inflation. That was kinda tough to parry right away. Is that something that came with the mod?
This is a solid Balance Mod actually, I am glad to see some of my ideas have made it in and that there's a robust dialogue here.
I agree that the AI constraints are frustrating and while I understand the bind the developers are in, I would reiterate the notion that a bit more flexibility in that area would go some way to alleviating the limitations. Mods have shown that it can be done without breaking single player.
I am also astonished to find that people only just discovered the empire modifiers on the later singularities; I've been stacking those for aeons. It's clear then that with additional slots the individual effects have to be reduced.
I am also astonished to find that people only just discovered the empire modifiers on the later singularities; I've been stacking those for aeons. It's clear then that with additional slots the individual effects have to be reduced.
I would chalk this up to the fact that the "on empire" effects are not visible in the tech tree. Atleast when I did a testing game, they were not visible to me. Only when I activated the singularity and moved my mouse over the effect in the singularity UI on the top left, did I see the effects. I'm also not a Riftborn player so it seems like I missed the changes in the patchnotes.
But then again, we didn't exactly have a big discussion about balance like this in a long time (or ever?). And maybe those who like to play Riftborn rather kept their mouth shut and enjoy huge bonuses in multiplayer for their personal gain.
For singleplayer the AI isn't a challenge anyway, so a change like this is rather inconsequential.
I just hope that since we have discovered a huge issue like these Riftborn empire bonuses, or the often-mentioned and completely unbalanced juggernaut modules for factions like Riftborn or Cravers finally get adressed.
Even if most of us play singleplayer and enjoy their favourite faction being changed for the better, in the end when we want to try something else, or play multiplayer, these huge imbalances are be a big issue. I already provided proof. Just do yourself a favour and watch the end of Koxsos youtube recording again, where he had no chance against the Riftborn and looked astonished at the empire graphs.
Getting some improvements for your faction which are well thought out like the recent changes to Lumeris, Horatio, UE and so on are appreciated. But if issues get not adressed, players will start having less fun because the game is no longer challenging vs the AI. Its simply not fun to win every fleet battle with those juggernaut modules, or be ahead in science in every game because of singularities, even ahead of science specialized factions. (This situation arises whenever you get access to developement grants by the way, which should have been nerfed long ago.)
In the past we have had issues like these before. Think of "infallible authority" or whatever the Vodyani hero skill was called. Or think of stacking infinity shields on Craver carriers. These issues are comparable to what we havenow. They make a faction so good that it simply becomes opressive. Regardless of how much you like your faction and want it to be competitive and win over others, you have to realize that some things are simply bad for the game and must be changed.
It just seems like the inflation is diverging as I wrote here and many others have reported on this thread. AFAIK there is no such mechanism interlinking dust inflation with market transactions. But it is so true that ignoring dust production and relying on resource sales works so well.
There would be several ways to interpret this situation
A) Floor Price System on Resource Market: If I remember right, there is floor price of 40% of base value (inflated value) on resource market. So, resource suppliers are guaranteed to get decent amount of dust for selling some resources, even useless or unpopular ones.
B) Absence of Proper Ways to Consume Surplus Luxuries: If there is no problem on the market price, then the gap between the actual value of luxuries and selling cost should be narrowed down by increasing the actual value of luxuries. I'm a bit worried as it might give too much bonuses to large empires, but this could be a way to adjust some problems ES2 is facing.
C) Overproduction of Luxuries: If you want to keep price high enough, you need to keep the supply low. There is overproduction of resources which have no demand from the others. Even the producer themselves do not want those specific resources. IMO, base production of luxuries should be decreased drastically and mining building or specializations should be more cost-consuming.
Wooh, so I experimented with this "high inflation one turn, low inflation the other" and wow... So on turn 150 I was able to buy heroes for 200 dust and such... I literally bought everything on the market one turn, sold everything the other. Also, upgrading trade companies was super cheap too during the right turns... I had 90 trade ships in all 3 of my trade companies in a matter of a few turns after I realized how to exploit this mechanic...
All in all, I have no idea how to tweak this to work right, just wanted to share an ignorant player's experience with you.
Inflation is based on the total dust per turn of all empires last turn (any single transactions of dust e.g. market have no effect)
There are two things creating this issue with inflation oscillation:
Primarily it’s that only the previous turn’s dust/turn is used, if the game was to use an average of the last 10 turns (possibly with a higher weighting on the more recent) then the oscillation would likely be marginal or happen slowly over many turns but unlike before the oscillations magnitude would decrease each turn instead of increase.
The other issue is the minimum price of market resources is 40% of their base price * inflation (This is personally my (& others) biggest single issue with the games economic system by far)
This is what allows for a ton of dust to be made and for the whole purpose of these inflation changes (to make pacifism hurt militarists) to be completely sidestepped & thus be ineffective.
Primarily it’s that only the previous turn’s dust/turn is used, if the game was to use an average of the last 10 turns (possibly with a higher weighting on the more recent) then the oscillation would likely be marginal or happen slowly over many turns but unlike before the oscillations magnitude would decrease each turn instead of increase.
I'm bit skeptical on the idea of using smoothing methods. I made a simple estimation in a same way I did on this comment and concluded that exponential smoothing won't fix the problem completely. It will clearly increase the safe limit of global upkeep from 500*(Number of Empires) to 500*(Number of Empires)*(2-p)/p where p is smoothing factor, but the inflation will diverge(=oscillate) eventually. Using an average of the last 10 turns might be different but I think that's just a middle ground between current system(uses the last turn's data, oscillating) and exponential smoothing(uses all the data collected, also oscillating). I have to admit that I'm not 100% certain on this matter as I used quite a lot of simplifications and never tested it on real gameplay, but trust me I've tried lots of things to simulate the inflation and control the oscillation only to conclude that using expected inflation is the most plausible option.
CyRob wrote:
The other issue is the minimum price of market resources is 40% of their base price * inflation (This is personally my (& others) biggest single issue with the games economic system by far)
This is what allows for a ton of dust to be made and for the whole purpose of these inflation changes (to make pacifism hurt militarists) to be completely sidestepped & thus be ineffective.
Everything should just have a minimum value of 1.
I totally agree on this. After the oscillation of the market price is stabilized, the minimum price system should be abolished. It rewards large empires way too much.
This is inflation of 300 turns under very simplified condition (Revenue Growth = static growth of 5%/turn, Upkeep/Revenue Ratio = 0.2). Although I'm yet to look into your sheet thoroughly (it's monday morning here :/ ) , I think we're doing quite same thing. Can't understand why things gone so different :(
Well, I used a bunch of mostly random numbers to create the dust income/upkeep costs which certainly would be one major difference. (notice how mine go below x1.00 inflation, that's poor numbers fueling the graph)
How did you model the 10avg? I ended up doing it by calculating the inflation as normal for that turn but then averaging the result with the inflation with the previous 9 turns (if there were not 9 previous turns then It just 1 for each missing turn) since the average was done with equal weighting would not expect such a result as yours as averaging should continually dampen oscillations.
e.g. avg of {0.25, 7, 0.25, 7.5, 0.25, 8, 0.25, 8.5, 0.25, 9} = 4.125
next turn: avg of {7, 0.25, 7.5, 0.25, 8, 0.25, 8.5, 0.25, 9, 4.125} = 4.512
Not the best example as it does not add the new one for that turn via the original way but I think it somewhat shows that averaging should make inflation tend towards the point where it oscillates least.
I think you overlooked the fact that modified inflation affects itself.
The goal of smoothing in this matter is to stabilize the dust inflation which is affecting market costs and fleet upkeep, also stabilizing the oscillation in inflated fleet upkeep. So, modified inflation should affect the fleet upkeep and it will affect the next turn's inflation. Therefore, there is no 'normal' inflation which is independent from the modified inflation.
Inflation(N turn)=MAX(1+($(Revenue)-AVERAGE(Inflation data from N-10 to N-1 turn)*$(Upkeep))/5000,0.25)
This is the fraction of the table I used to make graph above. The oscillation has started even before the inflation exceeded the reciprocal number of U/R ratio (5), and as soon as the inflation exceeded that, the inflation became 0.25(minimum floor value) and massive oscillation started. Once the inflation or upkeep crosses the threshold, It becomes really fragile. A tiny swing is all it needs to make oscillation. A ten times smaller swing is still swing.
+
Randomizing the upkeep or revenue will hurt the stability more.
(y axis is logarithmic scale)
The graph above is same calculation with a small impulse( U/R ratio changes from 0.2 to 0.15, fleet upkeep reduced). As you can see, they are all oscillating as they got impulse on 200 turn. Actually, my assumption(static revenue growth & fixed U/R ratio) is really ideal condition. If there were random noise, it would have collapsed faster.
I was able to build burrows multiple times on multiple planets for a while even though it was an unique improvement. After a while, it stopped showing up in the build queue. By the time I was unable to keep building it, I had 2 ash and desert planets with 14 population slots each. I was also playing with a few other mods.
Edit: After a few more turns, it let me build the improvement a few more times before marking the ones in construction invalid.
When I first looked at your graph it did not make sense as the 10avg is reaching the same peaks as the vanilla which given how averages work should not happen, for it to reach the same peak, especially after a few turns at the minimum the value for that turn would need to be far beyond that peak the pull the average up for every 1 it moves up from the last turn the sum of the averages parts would need to increase by 10.
Also, I noticed that the numbers on your table for 10avg are the raw inflation, not the avg(10).
You have also calculated it different from me. I did not have two different inflation columns, there was a single inflation column which both worked out the standard inflation and then averaged it out with the past 9 turns.
I have managed to get minor oscillations with 10avg but they have been about 2 magnitudes smaller than the g2g version produces, and also require crazy high pre-inflation upkeep costs (levels I’ve not seen in a game ever) I can't even put them on the same charts due to the massive difference between results
To make there graphs Dust increased by 100 a turn with the increase increasing by 5 a turn.
Upkeep increased by 50 a turn with the increase increasing by 2.5 a turn.
Which lead to a dust/turn of 5,331,300 & an upkeep of 2,649,750 (pre-inflation) both of which don't happen in-game.
While I don’t think average10 is perfect it’s magnitudes better than the current system and if it breaks then it’s most likely a different bug that allowed crazy rates of upkeep or income.
When I first looked at your graph it did not make sense as the 10avg is reaching the same peaks as the vanilla which given how averages work should not happen, for it to reach the same peak, especially after a few turns at the minimum the value for that turn would need to be far beyond that peak the pull the average up for every 1 it moves up from the last turn the sum of the averages parts would need to increase by 10.
Also, I noticed that the numbers on your table for 10avg are the raw inflation, not the avg(10).
You have also calculated it different from me. I did not have two different inflation columns, there was a single inflation column which both worked out the standard inflation and then averaged it out with the past 9 turns.
(y axis is logarithmic scale, exponential smoothing factor = 0.5)
(y axis is logarithmic scale, exponential smoothing factor = 0.05)
I didn't noticed that calculating&clamping is different from clamping&calculating. The graphs above were captured after switching the order of calculation & clamping. It's way better at controlling the oscillation.
+I written about the converging range of inflation for each smoothing method, to show that the oscillation in the inflation is inevitable as long as the recurrence relationship exists.
G2G
This becomes
Supposing the revenue & fleet upkeeps are independent from dust inflation, (2) can be seen as recurrence formula below.
This means that if the sum of the fleet upkeep exceeds 1/k=500*(Number of Empires), will diverge and this In will diverge too.
Exponential Smoothing
This becomes
Again, supposing the revenue & fleet upkeeps are independent from dust inflation, (6) can be seen as recurrence formula below.
It is obvious that and supposing that , In will converge to .
In contrast, supposing that , the series will diverge and the converge condition can be written like below
※ In case of p=1, it’s not referring to historical values so threshold just becomes 1/k=500*N.
Comparison between Exponential Smoothing and 10-turn Average
Older data
n-10
n-9
n-8
n-7
n-6
n-5
n-4
n-3
n-2
n-1
p=0.5
0.0010
0.0010
0.0020
0.0039
0.0078
0.0156
0.0313
0.0625
0.1250
0.2500
0.5000
p=0.2
0.1074
0.0268
0.0336
0.0419
0.0524
0.0655
0.0819
0.1024
0.1280
0.1600
0.2000
p=0.1
0.3487
0.0387
0.0430
0.0478
0.0531
0.0590
0.0656
0.0729
0.0810
0.0900
0.1000
p=0.01
0.9044
0.0091
0.0092
0.0093
0.0094
0.0095
0.0096
0.0097
0.0098
0.0099
0.0100
10 avg
0.8001
0.0111
0.0111
0.0111
0.0111
0.0111
0.0111
0.0111
0.0111
0.0110
0.1000
Seeing this table, I think it is safe to say that exponential smoothing has much stronger smoothing effect on low smoothing factor p. Therefore, 10-turn average method should be less capable at stabilizing the diverging oscillation than exponential smoothing, which has a finite threshold(). That’s my conclusion.
+The reason I constantly bring those maths and argue that smoothings are imperfect is I have the other solution which does not need extra memories to save inflation history, nor does the receptance of dust inflation get hurt while completely eliminating the oscillation. It's using for inflation. As I shown above several times, it's the value inflation will converge if the upkeep is under control.(I think we can call this 'Expected Inflation') Why can ES2 use that formula? The inflation value will be really similar with G2G mod's one except the fact that this one never oscillates, while others suffer from some oscillation & decrease in inflation receptance.
You went all out with the mathematical formulae, it all looks far more complicated than it is once you read it. I do like the Expected Inflation formula, it’s simple and works better than the others.
The main issue (as with all of them) is that it requires hard code changes to implement, but in the case of this formula the necessary hard code changes do not have to disrupt vanilla. It could be done by having the hard code be changed so the DustGlobalProduction is the global gross dust and then also having a new variable of DustGlobalUpkeep. In the vanilla XMLs all that needs to be done is subtract DustGlobalUpkeep from DustGlobalProduction a line before it’s used and then it will act as it did before. Then in the G2G mod the XMLs can be changed to implement the Expected Inflation formula.
Forgive me if I'm misunderstanding something, but the issue is caused by inflation being determined by by net dust production, which means that at high fleet upkeeps, it starts oscillating because you make terrible dust income at high inflation due to the upkeep being affected by by dust inflation, which then plummets inflation, so then you make tons of dust relative to that previous turn, and back and forth forever, yeah?
So why not just base the inflation on Dust income before upkeep? Wouldn't that solve the issue?
Your right on the cause of the oscillation but removing upkeep's effect on inflation (which requires hard code edits like all the other suggestions made & affects vanilla) could lead to scenarios where everyone goes bankrupt for having a fleet as upkeep can make them have negative dust a turn but with upkeep not being factored in the game will act as if everyone is producing a positive amount of dust and it will likely increase inflation.
While the upkeep being affected by inflation change was meant to give power to pacifists over militarists this I expect would be a bit too much.
Would that not be dependent on how inflation scales with income, and be a gradual process that militarists could see happening over the turns as pacifists skyrocket their income, and try to attack before that can reach the point where it ruins them?
It just seems like thats mostly an issue of balancing the exact numbers. And, as you said, its meant to enable pacifist players to attack militarists in an economic fashion; would driving them into negative dust income for having a lot of fleets not be the eventual goal for them?
prokolyo
Apprentice
New to the game/franchise, bear with me :) Also, coming from MOO and you'll prob hear lots of comparison... again, bear with me :)
prokolyo
Apprentice
4 400g2g ptsReport comment
Why do you report prokolyo?
Are you sure you want to block prokolyo ?
BlockCancelAre you sure you want to unblock prokolyo ?
UnblockCancelAitarus
Heretic VIP
Smooth and deliberate
Aitarus
Heretic VIP
34 900g2g ptsReport comment
Why do you report Aitarus?
Are you sure you want to block Aitarus ?
BlockCancelAre you sure you want to unblock Aitarus ?
UnblockCancelsheredynplayer
Fanatic Fixer
sheredynplayer
Fanatic Fixer
11 300g2g ptsReport comment
Why do you report sheredynplayer?
Are you sure you want to block sheredynplayer ?
BlockCancelAre you sure you want to unblock sheredynplayer ?
UnblockCancelDragar
Scout
Dragar
Scout
22 400g2g ptsReport comment
Why do you report Dragar?
Are you sure you want to block Dragar ?
BlockCancelAre you sure you want to unblock Dragar ?
UnblockCancelPARAdoxiBLE
Digital Newcomer
One just can't leave a bad idea alone
PARAdoxiBLE
Digital Newcomer
41 300g2g ptsReport comment
Why do you report PARAdoxiBLE?
Are you sure you want to block PARAdoxiBLE ?
BlockCancelAre you sure you want to unblock PARAdoxiBLE ?
UnblockCancelDragar
Scout
Dragar
Scout
22 400g2g ptsReport comment
Why do you report Dragar?
Are you sure you want to block Dragar ?
BlockCancelAre you sure you want to unblock Dragar ?
UnblockCanceltwimpix
Red Five
twimpix
Red Five
36 500g2g ptsReport comment
Why do you report twimpix?
Are you sure you want to block twimpix ?
BlockCancelAre you sure you want to unblock twimpix ?
UnblockCancelVIPCyRob
Sentient Precursor Database in Disguise
I know a little about modding...
VIPCyRob
Sentient Precursor Database in Disguise
92 800g2g ptsReport comment
Why do you report CyRob?
Are you sure you want to block CyRob ?
BlockCancelAre you sure you want to unblock CyRob ?
UnblockCancelPARAdoxiBLE
Digital Newcomer
One just can't leave a bad idea alone
PARAdoxiBLE
Digital Newcomer
41 300g2g ptsReport comment
Why do you report PARAdoxiBLE?
Are you sure you want to block PARAdoxiBLE ?
BlockCancelAre you sure you want to unblock PARAdoxiBLE ?
UnblockCancelVIPCyRob
Sentient Precursor Database in Disguise
I know a little about modding...
VIPCyRob
Sentient Precursor Database in Disguise
92 800g2g ptsReport comment
Why do you report CyRob?
Are you sure you want to block CyRob ?
BlockCancelAre you sure you want to unblock CyRob ?
UnblockCancelPARAdoxiBLE
Digital Newcomer
One just can't leave a bad idea alone
PARAdoxiBLE
Digital Newcomer
41 300g2g ptsReport comment
Why do you report PARAdoxiBLE?
Are you sure you want to block PARAdoxiBLE ?
BlockCancelAre you sure you want to unblock PARAdoxiBLE ?
UnblockCancelVIPCyRob
Sentient Precursor Database in Disguise
I know a little about modding...
VIPCyRob
Sentient Precursor Database in Disguise
92 800g2g ptsReport comment
Why do you report CyRob?
Are you sure you want to block CyRob ?
BlockCancelAre you sure you want to unblock CyRob ?
UnblockCancelPARAdoxiBLE
Digital Newcomer
One just can't leave a bad idea alone
PARAdoxiBLE
Digital Newcomer
41 300g2g ptsReport comment
Why do you report PARAdoxiBLE?
Are you sure you want to block PARAdoxiBLE ?
BlockCancelAre you sure you want to unblock PARAdoxiBLE ?
UnblockCancelAlan123
Eyeless Tempest
Alan123
Eyeless Tempest
19 600g2g ptsReport comment
Why do you report Alan123?
Are you sure you want to block Alan123 ?
BlockCancelAre you sure you want to unblock Alan123 ?
UnblockCancelVIPCyRob
Sentient Precursor Database in Disguise
I know a little about modding...
VIPCyRob
Sentient Precursor Database in Disguise
92 800g2g ptsReport comment
Why do you report CyRob?
Are you sure you want to block CyRob ?
BlockCancelAre you sure you want to unblock CyRob ?
UnblockCancelPARAdoxiBLE
Digital Newcomer
One just can't leave a bad idea alone
PARAdoxiBLE
Digital Newcomer
41 300g2g ptsReport comment
Why do you report PARAdoxiBLE?
Are you sure you want to block PARAdoxiBLE ?
BlockCancelAre you sure you want to unblock PARAdoxiBLE ?
UnblockCancelVIPCyRob
Sentient Precursor Database in Disguise
I know a little about modding...
VIPCyRob
Sentient Precursor Database in Disguise
92 800g2g ptsReport comment
Why do you report CyRob?
Are you sure you want to block CyRob ?
BlockCancelAre you sure you want to unblock CyRob ?
UnblockCancelRolepgeek
Enthusiast in Disguise
Sincerely, Role P. Geek
Rolepgeek
Enthusiast in Disguise
24 600g2g ptsReport comment
Why do you report Rolepgeek?
Are you sure you want to block Rolepgeek ?
BlockCancelAre you sure you want to unblock Rolepgeek ?
UnblockCancelVIPCyRob
Sentient Precursor Database in Disguise
I know a little about modding...
VIPCyRob
Sentient Precursor Database in Disguise
92 800g2g ptsReport comment
Why do you report CyRob?
Are you sure you want to block CyRob ?
BlockCancelAre you sure you want to unblock CyRob ?
UnblockCancelRolepgeek
Enthusiast in Disguise
Sincerely, Role P. Geek
Rolepgeek
Enthusiast in Disguise
24 600g2g ptsReport comment
Why do you report Rolepgeek?
Are you sure you want to block Rolepgeek ?
BlockCancelAre you sure you want to unblock Rolepgeek ?
UnblockCancel