Player Bonus Settings Revamp
-
The current AI bonus settings available are pretty limited and some work kind of strangely. I'd like to have a discussion some folks can provide thoughts/ideas on the current settings and what they would like to see in the future. These changes will be done in several phases.
Changes Implemented So Far
- https://github.com/triplea-game/triplea/pull/1750
- https://github.com/triplea-game/triplea/pull/1791
- https://github.com/triplea-game/triplea/pull/1800
- https://github.com/triplea-game/triplea/pull/1815
- https://github.com/triplea-game/triplea/pull/1824
- https://github.com/triplea-game/triplea/pull/1853
Vision
My end goal for bonus settings is something similar to HOI4 as I think its one of the better systems I've seen: https://forum.paradoxplaza.com/forum/index.php?threads/hoi4-development-diary-12th-of-august-2016-read-op-edit.962543/I'm planning to move the AI bonuses out of the settings window and into the player selection window as it makes more sense there. Then simplify them to focus on an income percentage for all resources and a flat PU bonus.
Open Questions
- Should we move bid input from the settings UI to player selection UI? This would seem to make settings screen much cleaner and allow all 'per player' properties on the player selection screen.
-
Sounds good. I'd say by far the most important would be the ability to assign the bonus on a per nation basis.
I'm not entirely sure I understand the increased placement thing. Do you mean increasing the production capacity of territories under the AI's control? Like a territory that would normally build 10 units could then produce 15 units if the AI setting was +50%?
It's hard for me to predict how that would pan out on various maps, but my gut tells me if we went that route that we'd be better off with a separate option for production bonuses, rather than having it attached to the income bonus in the same field. I can imagine production increases being problematic for the hitpoint spam, since the AI already does a pretty good job of piling up infantry haha, so I'd prefer the ability to separate those two options and control for them if possible.
Right now there are 4 AI bonuses on the standard maps...
AI bonus income flat rate
AI bonus income percentage
AI bonus attack
AI bonus defenseOf these the only one that I use on a regular basis anymore is AI bonus income percentage.
For me the Attack/Defense bonus is not particularly intuitive. Unlike the income bonuses, the attack/defense bonus is pretty vague, so I don't really know what entering a particular value in this field is going to do in game. For example if I give the AI an Attack Bonus of "1" or "2" or "10" what exactly does that mean in terms of the combat phase? Right now I have no clue, so I've basically avoided it.
Income percentage just seems more straightforward. If I'm giving the AI a leg up, at least I know what I'm dealing with haha. I think percentage is more compelling than flat rate, if only because it scales up or down depending on the how well the AI is doing generally. Though I can imagine applications for flat rate if the income bonus is a general feature for any player (including the human) instead of just for the AI. Sometimes a hard number like +5 is easier to work with than a complex percentage, if trying to find something that would work equally well on the table top.
It's certainly nice to have several options, but I think income bonuses will probably be the default way to increase AI difficulty, if only because it's very simple to understand.
I'd be pretty happy with the current Bonus Income Percentage feature, just assigned on a nation by nation basis.
-
@Black_Elk said in AI Bonus Settings Revamp:
For me the Attack/Defense bonus is not particularly intuitive. Unlike the income bonuses, the attack/defense bonus is pretty vague, so I don't really know what entering a particular value in this field is going to do in game. For example if I give the AI an Attack Bonus of "1" or "2" or "10" what exactly does that mean in terms of the combat phase? Right now I have no clue, so I've basically avoided it.
The AI bonus att/def are kinda cheap and I don't think they were ever meant to be serious and I can't see many players using them. They are very distortive, because giving a +2 att to something that has 1 power is a +200%, while it is only a +50%, if it has 4 power. It just puts the units balance off; so I don't see that as a good AI cheat, and I find it annoying. I don't even know if the bonus attack would made classic / revised transports being able to actually fire? That would be really silly.
So, I want to propose two ideas of mine, that would be kinda the same, but better:
AI bonus dicesides : it lowers the dicesides used for the AI by the same amount (opposite effect if negative)
Human malus dicesides : it increases the dicesides used for the not-AI players by the same amount (opposite effect if negative)*The ability to be negative can be skipped, as I don't think many would want to be helped against the AI.
(I dislike how this forum and github use * for bold etc., as I can't use it anymore for what it is supposed to do)
If I set it at 2 in a game using 6 dice sides, the AI only will roll on d4, instead of on d6. This would mean that, like, an AI bomber auto-hits in attack and an AI infantry has 1/4, instead of 1/6 to hit. It should apply to AA-gun rolls etc., as well (in the above example, the AI would AA hit at 1/4, instead of 1/6).
I think that if the above would be made, then both the "AI bonus attack" and "AI bonus defense" can be deprecated or deleted, from the engine.
Of course, if you set the AI bonus dicesides at 6+, then everything autohits, just like when you set at 6+ the AI bonus att+def, on a 6 dicesides map.
-
@Black_Elk said in AI Bonus Settings Revamp:
AI bonus income flat rate
AI bonus income percentageHow about having also:
Human malus income flat rate
Human malus income percentage(reduce income from not-AI players when positive)
?
(I guess it would be a very easy addition, code-wise?)
-
@Black_Elk Yeah, that is what the placement bonus would do. The thought behind it is the AI struggles on some maps to use all its bonus income so increase placement (production) capacity. You might be right that having a separate parameter for that would make it more flexible. Though I don't want to create too many AI bonus parameters as it gets confusing and many are often not used.
@Black_Elk @Cernel I'm thinking of just removing the attack/defense bonuses as I don't think they really make much sense. It would unbalance most maps pretty extremely. I really think income/production or initial bid is the best way to give the AI some bonuses that are pretty intuitive.
@Cernel My thought is to make it so you do individual bonuses per player (human and AI) and allow positive/negative values so you could either increase the AI's income or decrease the player's income to try to give the AI an advantage.
-
@redrum said in AI Bonus Settings Revamp:
@Black_Elk @Cernel I'm thinking of just removing the attack/defense bonuses as I don't think they really make much sense. It would unbalance most maps pretty extremely. I really think income/production or initial bid is the best way to give the AI some bonuses that are pretty intuitive.
I agree with removing those, tho you might want to make a topic about it, asking if there is any AI player around that will miss them. I would still suggest to substitute them both with
AI bonus dicesides : it lowers the dicesides used for the AI by the same amount
tho, if it is not too much work, as it would be like making the AI luckier, with no hard distortions. It would be like, we all have the same powers, but the AI rolls 4 sided dice and you roll 6 sided dice. -
My take on this:
• "AI Bonus Income Percentage" of some sort is all that is really needed.
• Scrap the attack/defense bonuses.
• But ... maybe it would be cool with an increased ”dice luck” thing with an increased luck when AI is throwing dice? Incread income would mostly mean more units on the board, and this could be avoided by just having luck?
• “decrease the player's income to try to give the AI an advantage” sounds like something that would mess with a player's ability to follow, calculate and make sense of his income. Why not only increase AIs income?
• I have never heard the word “malus” before, and I think some non-English/Latin speaking folks would have problems understand a phrase like “Human malus income flat rate” or “Human malus dicesides”Concerning "other resources" also being multiplied in a similar rate as PUs, this would be nice, but could also potentially make some problems.
• Like in Age of Tribes the AI would tech up more quickly, and I don’t think this is desirable.
• In Dragon War, right now the AI only gets more PUs with AI bonuses, but all units also cost wood, food and metal, and the AI does not get more of these resources, so it cant really make use of bonus income. A multiplier of everything would be nice.If other resources are used for special non-purchase purposes (and I think this could be a lot of different things, especially if Actions and Operations will one day be able to use other resources or if technology rolls could be done with special resources), then it could be problematic and the map would maybe not want the special resources to be multiplied.
Maybe a solution could be a code in the XML that stated if the resource should be multiplied the AI bonuses, like this:
<resourceList>
<resource name="PUs"/>
<resource name="Officers" MultipliedWithAIBonus="no"/>
</resourceList> -
I think the main of appeal of the tripleAI income boost here over other similar types of "cheats" often used in strategy games to make computer opponents more challenging, is that it is totally transparent. As long as the player understands what's going on I'm fine with the dice sides thing, though I probably wouldn't use it myself. I don't find the term malus particularly confusing, but I'm a classicist by training, so there's that. In any case, it shouldn't really be necessary to have a separate name/field for income penalties, if the income "bonus" is applied by nation (instead of by AI) we could just have it go negative too if desired.
For example...
100% = Normal income
125% = Normal +25% income
75% = Normal -25% income
And so forthThat way you can do all the income stuff with a single field.
Ps. Just to clarify, right now 0 = 100%, so there's no way to go lower than normal.
-
@Frostion Interesting point about other resources. I hadn't thought much about them yet but my first instinct would be to increase them at the same rate as PUs. But you do have an interesting point that sometimes they are used for special purposes and it might not make sense. Age of Tribes is an interesting case since you could argue that giving the AI bonus for tech tokens actually might be a good idea since they research randomly vs the player doing so intelligently. An XML parameter on resources is probably a good idea.
-
The system which you dont like is a 500% improvement over the olden days. In the past, you had to edit the enemy values to create balance. One idea I have is to add a "Challenge" check box. When checked, it will give all NPC factions a %bonus to their PU income equal to the percentage in which they lag behind the Highest PDU nation after turn #5. It should be set to a maximum of 200% income.
Example) In classic Axis and Allies, Russia starts with 24 PUs and Germany starts with 32 PUs. On turn #5... Russia has fallen to 12 PUs. While Germany has risen to 39 PUs. If Russia is an NPC... it will gaine a 39/12 % bonus on its income. 39/12 = 3.25 or 325% income, but since bonus income would be limited to 200%... Russia would only gain an extra 12 PUs.
This "challenge" checkbox option would help prevent runaway games vs the AI.
-
@Zim-Xero Well hopefully after I revamp it, it'll be 500% better than what we have now
Interesting idea though I think it would need to be map specific since some maps have many more small players on one side vs the other. My thought is to update the standard AI bonus settings first then consider adding some map specific options to define different difficulty levels where potentially something like you describe could be done.
-
I just submitted the first PR for changes around this: https://github.com/triplea-game/triplea/pull/1750
It primarily focuses on the following updates:
- Remove 4 old AI Bonus properties
- Add new Bonus Income Percentage for each nation (not same bonus for all AIs)
- Add bonus income during end turn phase instead of purchase phase (so you aren't multiplying saved income from the previous round)
This is just phase 1 of changes I'm planning to make for AI bonus properties. I'm also planning to have future PRs address other resources (non-PU) and look to add per map properties that can be configured.
Once its merged, play testing and feedback strongly encouraged!
-
@redrum I hope this won't be done very fast; I've still a bunch of things to say / point out. Also, I don't like it myself, but I believe the flat is popular. Might be just because of the limits of the percent, tho.
-
@Cernel Its happening right now and I've already submitted the first changes. IMO, flat isn't really that useful. I think an initial bid and percentage based is the way to go. I'd like to start there and see what people think. The idea is to make smaller iterative changes and release them out quickly to get feedback. If people don't like it then I can roll back the changes or make different updates.
One thing to realize is once you start doing individual bonuses per player rather than same bonus for all AI, it takes up a lot more UI space so its not as easy to have lots of different options.
-
@redrum Yeah I was picturing what the UI would look like for Iron War when I suggested it might be done by teams hehe. But a bonus by individual player nation would definitely allow for more nuance. Especially if it's a feature of PvP games.
As for bid logic, the AI seems to be most effective when it uses it's bid for the greatest number of the cheapest possible combat hitpoints (whether on land or the water.) It does pretty well when it spams infantry/artillery or subs/destroyers for example. Where it runs into problems is usually in purchasing stuff like defensless Transports, so might make sense to just eliminate those as an option.
Can't wait to check out the new system
-
The initial changes are live in the pre-release:
- Remove 4 old AI Bonus properties
- Add new Bonus Income Percentage for each nation (not same bonus for all AIs)
- Add bonus income during end turn phase instead of purchase phase (so you aren't multiplying saved income from the previous round)
Let me know what ya think!
-
I have not tested this yet, but going to. Is there a need to rewrite the XMLs ? Where are there examples of how this must look in the XML ?
-
@Frostion Should work with no XML changes. We will eventually remove the 4 old AI properties from game XMLs but the engine just ignores them. I'll most likely be adding some new XML fields in follow on changes.
-
Sounds good!
Is there a quick link to the latest pre-release development version? I'm kind of a moron at navigating github hehe.
-
@Black_Elk Yep the top most downloads here are the latest pre-releases: https://github.com/triplea-game/triplea/releases