• Our friends from AlphaCentauri2.info are in need of technical assistance. If you have experience with the LAMP stack and some hours to spare, please help them out and post here.

[GS] Is chopping overflow overcorrected?

Boyan_Sun

Warlord
Joined
Dec 25, 2017
Messages
256
We know that chopping overflow bug has been fixed in GS, this is a great news. However we made some experiments with speed-up policies + chop overflow in GS, and found that it was not the same as previously thoughts. It was assumed as "production bonuses no longer apply to production going into overflow" or "no more bonus on overflow", but actually it's a lot more complicated.

The following is our results. If you are interested, you can also do some experiments, welcome to point out any omissions and mistakes.

Define 3 variables
- the production needed to complete the project (X)
- the chop/city-per-turn production (Y)
- the production modifier bonus (A)
So Y is the basic production part, A*Y is the bonus production part.
For example, assume we are training an archer with Agoge (+50% speed so A = 0.5), the current production panel shows 35/60, then X = 60 - 35 = 25. Now we chop and get Y = 30 production, so with +50% policy we should get bonus production A*Y = 15.
  • If X < Y, project complete, we get only Y, overflow = Y - X, The bonus part A*Y will be totally wasted.
    As the example above, if panel shows 50/60, chop 30 with Agoge, archer will complete and we get 20 prod overflow.
  • If X [Y, Y + A*Y], project complete with zero overflow, we only get X. The bonus part A*Y will be more or less wasted.
    As the example above, if panel shows 25/60, chop 30 with Agoge, archer will complete and we get 0 prod overflow.
  • If X > Y + A*Y, project incomplete, and we get full base and bonus part Y + A*Y.
    As the example above, if panel shows 10/60, chop 30 with Agoge, then archer will not complete and panel shows 55/60.
And some other tips:
  • Not only chop, city production yield per turn also follows this mechanism.
    As the example above, if panel shows 0/60 at the beginning, when your city yields >40 production, +50% policy will actually between +0%~+50%, which is less efficient; if your city yields >60 production, you don't need Agoge for an archer, which is fully waste.
  • Overflow from previous build can be speed up now, it will add to next Y, whatever chop or city production yield per turn.
    As the example above, if we get 20 prod overflow from previous chop, this turn city yields 6 prod with Agoge, then the next archer will get (20+6) as Y, in next turn panel shows 39/60. But if you immediately chop 30 again with Agoge, then the next archer will get (20+30) as Y, archer will also completed and no overflow.
Of course, this mechanism is better than that overflow = (1 + A)Y - X in RF and Vanilla, but still need a lot of calculations to avoid waste. I personally think overflow = ((1 + A)Y - X) / (1 + A) was better, which can make us not to worry about waste, no need to calculate anything, much more friendly to casual players.
 
Last edited:
I personally think overflow = ((1 + A)Y - X) / (1 + A) was better, which can made us not need to worry about waste, not need to calculate anything, more friendly to casual player.
I believe from discussions in letsplays with Ed, this was how it was intended, as You say it is better than it was. The casual player will not care at all, the formula could be better but I think there are big issues with world congress and other areas that seem more worrying. It is nice to know the problem exists, thanks for letting us know. When Ed mentioned this I suspected there may be some loss.
Hopefully you reported it on the Y2K forum with the suggestion.

To me, I am building a wonder and I use a chop to speed it up it will work fine but I may lose a bit of prod at the end. The intent was to speed up the wonder and it worked fine.

If I am chopping in slingers to maximise overflow that is different and my sympathy is not too large.
 
Last edited:
IIRC, if the next item you build is also an archer (or in general an item to which the production bonus also applies) the overflow will be fully applied to that. Maybe you have to queue the item to achieve that.
 
IIRC, if the next item you build is also an archer (or in general an item to which the production bonus also applies) the overflow will be fully applied to that. Maybe you have to queue the item to achieve that.

I wasn't testing or trying but I did chop in a 1 turn Chariot and the next one was 1 turn in my first GS game.
The next one went back to 5 turns.
Not sure what I did though. Playing to fast and uh just... playing.
 
Please break down an easy example in Plain English for us Uneducated Folk.
In short, now we're going to lose some production every time you just complete an object with some speed up bonuses (such like Japan/Nubia traits, military policies, etc). More bonus and production, more loss:cry:
IIRC, if the next item you build is also an archer (or in general an item to which the production bonus also applies) the overflow will be fully applied to that. Maybe you have to queue the item to achieve that.
That's right, it is also in the GS changing list. The production lost is only applied to the production remaining part, not the overflow part.
 
I have 40 production and only need an extra 5 but my city is making 10 per turn. Normally my unit would be produced and 5 would overflow. I believe this still works fine.(?)
If I have a 50% extra card my unit will be produced the same but I get no overflow, not even the 5 I should have... and I have not chopped.
At least that is how I understand the real problem here.
....
However... multiple chops in the same turn will get the original production created at the beginning of the turn. (Was this not already happening and experts were keeping it quiet?)

I’ll try and get some testing done but need to prepare for a tribunal. Will post examples here of what I find.
 
If I have a 50% extra card my unit will be produced the same but I get no overflow, not even the 5 I should have... and I have not chopped.
You will also get an extra 5 in this condition, but that 50% extra card is no use. "If X < Y, unit complete, we get only Y, overflow = Y - X, The speed-up part A*Y will be totally wasted. " In this case, X = 5, Y = 10, X < Y
 
Sorry, I didn't quite understand the explanation.

Could you do an example with boats? (100% policy)

Lets say a boat costs 100 and we are at 99/100 production.
A chop is 40.
City production 1 per turn.

What are the results overflowing in another boat versus in a wonder (0/600 production, no modifiers).

Then we also need to check what happens if you overflow into a different policy modifier. From boat to walls (both with 100%).
 
Sorry, I didn't quite understand the explanation.

Could you do an example with boats? (100% policy)

Lets say a boat costs 100 and we are at 99/100 production.
A chop is 40.
City production 1 per turn.

What are the results overflowing in another boat versus in a wonder (0/600 production, no modifiers).

Then we also need to check what happens if you overflow into a different policy modifier. From boat to walls (both with 100%).
99/100 boat will always apply 1st case, and will loss only 1 if your next also have 100%.
  1. Chop 40, overflow in wonder - 39 overflow, next turn (+1 from city) will become 40/600, 40 waste
  2. City production 1, overflow in wonder - 0 overflow, 0/600, 1 waste
  3. Chop 40, overflow in wall/boat (+100%) - 39 overflow, next turn (+1 from city) will become 80/80, wall complete, 1 waste
  4. City production 1, overflow in wall/boat - 0 overflow, 0/80, 1 waste
The waste will be maximum when your boat at 60/100 and chop 40. All extra 40 prod from +100% policy will be always lost, 0 overflow.
 
Last edited:
Is it so bad?
Imaging you have a 100 prod city, then if you train a boat at 100 cost or less, you will no longer get any bonus from +100% policy card.
Or more real, you have a 20 prod city, then each boat will waste you 20 prod.(40/100 => 80/100 => 100/100 no overflow)
 
I personally think overflow = ((1 + A)Y - X) / (1 + A) was better, which can make us not to worry about waste, no need to calculate anything, much more friendly to casual players.
To stay in your boat example: Having 80/100 and producing 40 (with +100% policy card) => you have 20 left as overflow, divide this by your normal production and policy card bonus (100%+100%) => 10 production left for a new unit/building?
You still have a production bonus but you don't get a huge overflow. That seems reasonable!
 
Imaging you have a 100 prod city, then if you train a boat at 100 cost or less, you will no longer get any bonus from +100% policy card.
Or more real, you have a 20 prod city, then each boat will waste you 20 prod.(40/100 => 80/100 => 100/100 no overflow)

I’m not sure you’re really wasting anything in a way, you’re just not getting a consistent benefit.

Your cities hammers are doubled the first two turns. But then on the third turn, you don’t gain anything because you only needed 20. I guess your sort of losing. 10 hammers in a way in that last turn - you only needed 10 for the boat (because those 10 are doubled to 20) and the ten left over aren’t redeployed.

I don’t know. Seems sort of realistic production gets wasted here or there, although obviously this isn’t intentional and is going to be hard to predict.
 
To stay in your boat example: Having 80/100 and producing 40 (with +100% policy card) => you have 20 left as overflow, divide this by your normal production and policy card bonus (100%+100%) => 10 production left for a new unit/building?
You still have a production bonus but you don't get a huge overflow. That seems reasonable!
But currently we actually have 0 overflow in your case, not 10. Your reasonable solution equals to my formula - overflow = ((1 + A)Y - X) / (1 + A)
 
But currently we actually have 0 overflow in your case, not 10. Your reasonable solution equals to my formula - overflow = ((1 + A)Y - X) / (1 + A)
Yes, I know. I just wanted to highlight your formula by an (your) example. Sorry, that that wasn't obvious. I agree with your oppinion and formula!
 
Yes, I know. I just wanted to highlight your formula by an (your) example. Sorry, that that wasn't obvious. I agree with your oppinion and formula!
This formula has been used for a long time, actually this is from Civ4.:goodjob:
 
Last edited:
Or more real, you have a 20 prod city, then each boat will waste you 20 prod
This is a little inaccurate, you are not really losing 20 prod, you are not making 100% each turn

20 prod city first turn is 40 so full100% used
Turn 2 is 80 so full 100% used
Turn 3 the boat finishes without needing the overflow and the overflow is not moved to the next unit. This was how Ed said it would work. The 100% card is designed to speed up what you are building now, not the next thing. The workers cut down too much lumber and some left over has been stolen rather than used on the campus.
 
Back
Top Bottom