A Solution for stack issue
-
@rogercooper The problem is mods are unfortunately almost never played no matter how improved they are people who like upkeep will already prefer upkeep version of any maps and I don't think it is easy to change people's opinions about upkeep.
I agree if rushing Russia is the only viable Axis strategy then there is a problem. I'am not sure if I would prefer stack limit over upkeep.
NWO and WaW seems already solved the issue by making defense way too strong in this case Axis has no luxury rushing Russia and weakley defend all other areas.
-
Any approach to limit stacking changes the game and it's balance. The "maxBuiltPerPlayer" option seems to be handled OK by the AI.
Once the custom limits have been implemented, unitAttachment options are displayed in the unit tooltips. For other options (ex: playerAttachment) it's possible to add hardcoded text by creating a tooltips.properties file:
tooltip.unit.armour.Russians.append=Unseen<br/>Prefers SettlementsWith regard to upkeep, the PU cost has to be integer, how do you handle it for infantry (Cost 3) ?
With the basic option, the cost doesn't depend on stack size, it's just a per unit cost per turn. On an existing map, you would likely have to provide a PU bonus to offset the extra cost when this option is added.<option name="createsResourcesList" value="-1:PUs"/>EDIT: It was suggested by Schulz to multiply PUs
<property name="Multiply PUs" value="10" min="1" max="10" editable="false"/>- You would need to manually change starting PUs and costs of units in xml and give a small PU bonus to each player every turn (Either through Resource Modifier at game load or with a trigger in xml).
-
@butterw said
With regard to upkeep, the PU cost has to be integer, how do you handle it for infantry (Cost 3) ?Keeping it simple all combat units should cost 1 or more ie. -1:PUs
Transports and Personalities should have no upkeep cost.Upkeep also makes you think twice about producing. As delaying producing units saves you PU.
Im my own Settlers games
https://forums.triplea-game.org/topic/2399/settlers-age-of-tribes-official-thread
https://forums.triplea-game.org/topic/2467/settlers-fallen-empire-official-threadI have produced too many units that the Upkeep was so much that I could not buy any more units, to me this is as it should be. You cannot turtle and build massive defensive stacks.
-
@butterw Unfortunately TripleA does not recognize fractional numbers therefore multiplying everything by 10 then keeping unit cost/upkeep ratio between 5%-10% seems the only viable option as far as I researched.
Keeping upkeeps below 5% does barely prevent stack issues and higher upkeeps might force players not to spend all remaining moneys for tactical issues which AI cannot handle that plus it can be seen as unneeded complexity.
5%-10% upkeep just do really fine. But even it would break balance of exising maps of course.
Stack limit is unrealistic feature because supply is nothing to do with front lengt. Really it would be awkward to see if nations could place more troops to Lybian-Egyptian border than for example German-French border just because German-French border is shorter. I've never heard something like a nation couldn't reinforce an area more inensively because of short frontline.
-
@butterw Territory values should be multiplied by 10 too along with starting incomes, unit costs and repair costs.
Unit production capacities in contrast will be 1/10 of the territory values. For example 20 Pu value territory can only able to produce 2 units per round not 20. After that no additinal feature is really needed.
Multiplying everything by 10 have also another benefits like you cannot buy 1 unit if its cost is fractional like 3.5 but with that its possible because it will be represented by 35 Pu cost.
Also it becomes possible to value territories and upkeeps with better variety.
-
@butterw I have been experimenting with upkeep on existing maps. I add bonus income equal to total starting income divided by 2, and then split the bonus between the Axis & Allies. I don't charge upkeep for infrastructure or transports. I charge 2 for 2-hit units.
This seems to work well. The bonus income makes it harder to knock out Russia. It only takes few minutes to modify the map (unlike multiplying the production values). I have the file for World War II v4 below. This will soon be added to downloadable files.
-
@rogercooper
It's an interesting variant. I let the AI play against itself with your mod:- Russia was lost in round 7 and the Axis won in Round 8.
- The Russian Player was reduced to a single territory + a submarine in round 5.
- With flat upkeep it's better to buy better more expensive units: such as armour and fighters (because there are less ressources the stacks are smaller.
- But the AI doesn't understand the upkeep rule and still buys infantry.
- Bombers are overpowered IMO because of increased strategic bombing Raid impact (upkeep should be 2).
If the Russian player buys 8 infantry in round 1 and does nothing, round 2 income is 24+16-40=0.
-
@All
maybe the costs for low units like infantry, artillery..
can be reduced to 0 by a trick:- upkeep will charge 1 IPC for each unit
- but a trigger function will recharge 1 IPC for each defined unit.
Yet, to do so, the trigger needs a count function to sum all the defined units of player, e.g. all infantry.
Is this possible?
-
@numetalfan
createsResourcesList (the upkeep) is set individually for each unitType. -
no contratiction to my idea:
<attachment name="unitAttachment" attachTo="infantry" javaClass="games.strategy.triplea.attachments.UnitAttachment" type="unitType">
<option name="movement" value="1"/>
<option name="attack" value="1"/>
<option name="defense" value="2"/>
<option name="transportCost" value="2"/>
<option name="artillerySupportable" value="true"/>
<option name="isInfantry" value="true"/>
<option name="isAirTransportable" value="true"/>
<option name="createsResourcesList" value="-1:PUs"/>
</attachment>would be the way to charge
a trigger to recharge something like
<attachment name="conditionrechargeRussianInf" attachTo="Russians" javaClass="games.strategy.triplea.attachments.RulesAttachment" type="player">
..
count..map..infantry
..
</attachment><attachment name="triggerAttachmentRechargeRussianInfantry" attachTo="Russians" javaClass="TriggerAttachment" type="player">
<option name="trigger" value="condition"/>
<option name="when" value="conditionrechargeRussianInf"/>recharge..1PC..
</attachment>
--
if this works ( no idea for the condition and the trigger) there will be a way to not have upkeep for Infantry, but all other units will have upkeep - that was my idea
-
@numetalfan you could try having the first trigger fire after nonCombatMove and then another one with "+1 PUs" fire before Place.
Idk, be worth a try maybe
You'd have to switch them back and forth every turn
-
Does anybody know how to incorporate fractional numbers into the engine?
-
@butterw said in A Solution for stack issue:
@rogercooper
It's an interesting variant. I let the AI play against itself with your mod:- Russia was lost in round 7 and the Axis won in Round 8.
- The Russian Player was reduced to a single territory + a submarine in round 5.
- With flat upkeep it's better to buy better more expensive units: such as armour and fighters (because there are less ressources the stacks are smaller.
- But the AI doesn't understand the upkeep rule and still buys infantry.
- Bombers are overpowered IMO because of increased strategic bombing Raid impact (upkeep should be 2).
If the Russian player buys 8 infantry in round 1 and does nothing, round 2 income is 24+16-40=0.
The effectiveness of strategic bombing is somewhat reduced by lower production levels, so the players don't need to repair everything. The flat upkeep costs bias things a bit towards the more expensive units, but an all armor strategy is generally less effective.
I am bit confused by Numetalfan's request. If you don't want to have upkeep for infantry, then you don't need to have negative resource generation for infantry. There is no need to mess with triggers.
-
Hi, I think I misunderstood a post here.
I thought that if you start to integrate upkeep, you have to do this for every unit in the unit list.
But it seems this is not the right way. Upkeep is optional for any unit you want.
In this case of course there is no need for a trigger.
siply make no upkeep e.g. for infantry!yet this has to be calculated well, there is a high risk to mess up for the Axis.
The game balance of most WWI or WWII scenarios is based on the fact that the Axis have a lot more units from the beginning and they move first.
However, the Allies have more space, more logistic (fleet, transporters) and of course, more income.
so even with a very simple upkeep setup like armour,cruiser,figther 1 IPC upkeep each and Bomber, Carrier, Battleship 2 IPC upkeep each, in a AA41 scenario the Japanese will have after round 1 with NOs maybe 30 IPC income and about 20 IPC upkeep, due to it's large fleet and airforce.
That makes no sense.
Maybe there should be a solution that upkeep starts from Round 4 via trigger which would tell us a story that all country had some savings of oil, fuel, ressources etc. for the first 3 rounds but then it starts to "hurt". After 3 rounds the Allies should also have build up their fleet and airforce and the Axis will have conquered a lot, so they have more income to compensate upkeep.
Still unclear if this will then help avoiding big stacks, when infantry has no upkeep.
-
- If needed you can also create a specific RussianInfantry unit (with specific cost, upkeep, etc.). I don't know that there is a way to count units in triggers (national objectives is focused on counting territories).
- Infantry should probably have an upkeep cost, but 1 PU per turn seems too much.
Being able to use a fractionnal value would be best solution
ex: "createsResourcesList" value="-1:10:PUs" - Upkeep cost in the range 5-25% would be reasonable.
- Disbanding unwanted units should be an option (allowing to recoup part of the PUs, ex: 2PUs per unit)
With regard to stacking, I think there are 2 different issues:
- defensively stacking mainly infantry in a capital
- building an invincible defensive/offensive stack (centered around armour, fighters and bombers) which can then be moved accross the map.
-
@butterw You can count units with triggers but you can only use that set thresholds. Checkout the "stack tax" in Greyhawk Wars for interesting example.
I don't see the engine being changed to accommodate fractional costs. You could achieve the same effect by changing territory values and production costs. Changing the engine to use TUV in events would be easier,
Disbanding units through the engine is actually fairly tricky without a creating an entire step focused on it.
If you are using a basically 1 IPC upkeep with the boardgame scenarios, you need to increase income or the Germans will be unable to build (and vulnerable to a British attack).
-
Rebalancing will be needed in any case whatever the upkeep rates would be.
The only way to prevent both mega stacks and rebalance requirements is having able to set up max TUV limit.
Max TUV limit feature even have potential to be better alternative than upkeep since it wouldn't require multiplying everything by 10 or assigning questionable upkeep rates.
Also underdogs would have better chance to turn the tide of games.
-
I would be in favor of the x10 PU approach.
You would not have to update any map artwork. It would just be understood that a territory labelled '4' provides 40 newPU** (but the notes could mention this for new folk)
Having the ability to adjust pricing for EVERYTHING by the equivalent of 0.1PU has several useful outcomes:
-
The upkeep feature now becomes manageable. One can charge a few newPUs rather than a full PU (or 10 newPU)
-
Unit-specific upkeep: Want Tigers to be expensive to maintain? Then make their upkeep 5 newPU rather than 3 like all of the other armor units, etc
-
Special units can be priced with much better granularity. Maybe Me262s should cost 105 newPUs instead of 100 newPUs like the other fighters!
-
No more odd costs like '2 units for 7 PU' that you see on some maps. They are simply priced at 35 newPUs each.
No one is forcing any mapmaker to implement this. All of the legacy maps can stay 'as is'.
- No new coding to write, support, or bug-fix, other than perhaps build limits if mapmakers want to avoid large-scale map tweaks.
** Note that 'newPU' is a term that I am only using here in this thread. The game, of course, would simply use 'PU' to describe the revalued currency!
-
-
@tinfoil666
It's either x1 but with a High PU map, or the same map with multiplyPu x10 or x2.
The issue with x10 is that it makes mental calculations just a little bit harder:
5.5*2=11Pu vs 55Pu Armour. How much do 3 units cost ?
It's probably ends up being OK because the produce panel handles the calculations. -
@butterw In the original 1981 edition of the game, all the territory values were multiples of 10, as were the unit costs. I have no idea why, perhaps there was a upkeep rule that did not make into the final version. In the published version, all units were limited to the counter mix.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login