Author Topic: SMACX Thinker Mod  (Read 146649 times)

0 Members and 11 Guests are viewing this topic.

Offline JoGr223

Re: SMACX Thinker Mod
« Reply #765 on: January 14, 2022, 09:38:34 PM »
Quote
; Adjust how often the AIs should build new crawlers relative to the base count.
; Example: 100 = one crawler per base on average.
crawler_priority=100

how to have 5crawlers/base ? 500 ?


Quote
; Set AI cost factors for nutrient/mineral production for each difficulty level respectively.
; All other difficulty level modifiers remain unaffected by this setting.
; Example: 10 = 100% of human cost, 7 = 70% of human cost. Minimum value: 1.
cost_factor=12,11,10,9,8,7

so at 7 they get equivalent of +30% growth and industry ? but not as a matter of real +3 ind and growth ? so for example AI free drones on transcend on planned wealth will get +4 ind and with this bonus it means they get effective +70% industry cost cut ?

and with growth at dem/planned they still get +30%growth, but not pop boom as its not real +3growth ?

Quote
; Amount of minerals a base can produce before experiencing eco damage. This limit is also
; increased by one after each fungal pop or after building Tree Farms and similar facilities.
clean_minerals=16

each tree farm faction has gives +1 or only on city level ? so if i get 5 tree farms do i get +5 ?

Quote
; This replaces the default Monsoon Jungle landmark with multiple dispersed jungles on the map.
modified_landmarks=1
would be nice if u introduce param how many mini jungles should be created; now its like 3-5, id like to set it to 7

Quote
; Scale expansion_limit automatically to match the amount of bases by the human player.
expansion_autoscale=1
how this works ? that AI will build more bases than human but not many more ?; and in =0 would just ICS till limit ? asking cause =1 AI still makes more bases than human
« Last Edit: January 14, 2022, 10:16:12 PM by JoGr223 »

Re: SMACX Thinker Mod
« Reply #766 on: January 17, 2022, 01:45:31 PM »
Quote
; Set AI cost factors for nutrient/mineral production for each difficulty level respectively.
; All other difficulty level modifiers remain unaffected by this setting.
; Example: 10 = 100% of human cost, 7 = 70% of human cost. Minimum value: 1.
cost_factor=12,11,10,9,8,7

so at 7 they get equivalent of +30% growth and industry ? but not as a matter of real +3 ind and growth ? so for example AI free drones on transcend on planned wealth will get +4 ind and with this bonus it means they get effective +70% industry cost cut ?

and with growth at dem/planned they still get +30%growth, but not pop boom as its not real +3growth ?


These values are *initial* cost of growth and production. Meaning at 0 INDUSTRY their growth and production boxes are 7 bricks. Meaning they populate food and production boxes 30% faster. Now INDUSTRY effect is a multiplier on top of initial values. In your example with +4 INDUSTRY they get their box widths 40% narrower, not 4 bricks narrower! Which equates to: 7 bricks wide * 60% = 4.2 bricks wide. I don't remember rounding rules.

Offline JoGr223

Re: SMACX Thinker Mod
« Reply #767 on: January 23, 2022, 06:13:32 PM »
topic: AI can't fight even when they are "on paper" strongest faction and initiate war

copy/paste from chat:
just played a game on dry map yesterday with hive, it was farily good , AIs were getting ahead of me with SPs
i played hive
was getting interesting as AIs gradually were breaking pacts with me
then strongest AI, morgan made sudden attack with like a 3-4 units in single turn
all good, but it sucks big time attacking :/
at this point i had 51 formers, while morgan 25, bug he overall was much stronger, bigger pop, 7 techs ahead + more crawlers
so I had only minimal army, like 2x 4-1-2 situated in the region
so it started all good, he even killed my probe + bought my city which meant i instantly lost like 6 formers (close to probed base)
i was excited i can lose this time :D
but of course I just switch 90% bases to 4-1-2
roll him over in the next 8 years, when he lost 8+ bases
and its gg for him
and at this point i even researched air power having like 8 boreholes

so AI was pretty good up until starting war with me
they should realize that war = total war for exhaustion
and not just "lets pick some fight here and there with few units" :D

attaching: 2171 - before war, morgan made sudden attack probably in 2172 ( but i see even in 2171 if u just move unit close to his base, but within my boarder he will attack too)
2179 - morgan lost war, his demise is just a matter of few more turns

game settings:
pirates AI replaced with my sea  faction: https://alphacentauri2.info/index.php?topic=21759.0 - they sucked despite huge boosts; I just added them to see if they will be good on land map since this map was 25% water

thinker.ini changes:
Quote
base_spacing=3

;base_nearby_limit=3

expansion_autoscale=0

expansion_limit=65

crawler_priority=300

simple_cost_factor=1

counter_espionage=0

territory_border_fix=0

world_sea_levels=25,45,70

crater=0
volcano=0
jungle=0
uranium=0
sargasso=0
ruins=0
dunes=0
fresh=0
mesa=0
canyon=0
geothermal=0
ridge=0
borehole=0
nexus=0
unity=0
fossil=0

nutrient_bonus=2

spawn_battle_ogres=0

Offline Induktio

Re: SMACX Thinker Mod
« Reply #768 on: January 23, 2022, 08:23:32 PM »
> topic: AI can't fight even when they are "on paper" strongest faction and initiate war

Considering the type of games you're going for, it might be more suitable to play multiplayer. Those goals and small maps are more suited for it. Dry maps are generally worse for AI performance too. If you want more challenge, try also using blind research, otherwise with the default tech tree it might be too easy to rush some techs.

Generally the AIs might not have the time to build up during the first 80 turns if the game settings are unfavourable for them. You can try changing conquer_priority=150 or something so the AI will build more units. Sane values for that setting are somewhere in the range 50..250.

The AI already has some priorities which cause it to increase combat unit production if it loses bases, but it's probably not going to help much on smallest map sizes. About the changes I can envision here, maybe it would be a good idea to add needlejet/chopper techs to the prioritized list in tech_balance.

These values are *initial* cost of growth and production. Meaning at 0 INDUSTRY their growth and production boxes are 7 bricks. Meaning they populate food and production boxes 30% faster. Now INDUSTRY effect is a multiplier on top of initial values. In your example with +4 INDUSTRY they get their box widths 40% narrower, not 4 bricks narrower! Which equates to: 7 bricks wide * 60% = 4.2 bricks wide. I don't remember rounding rules.

The simplified version of this calculation is reversed in mod_cost_factor function. It should be otherwise the same than in vanilla game but it just removes the extra AI boost whenever the player faction is ranked #1.
« Last Edit: January 23, 2022, 08:44:27 PM by Induktio »

Re: SMACX Thinker Mod
« Reply #769 on: January 24, 2022, 03:55:17 AM »
topic: AI can't fight even when they are "on paper" strongest faction and initiate war

Both Morgan and Hive have pretty small number of attacker units for that faction size. Obviously, neither is prepared for war. In such cases the one who immediately switch to war economy wins. Usually that is human who does and AI is notoriously inflexible in that.

I added some war economy adjustments in WTP. Would be interesting to compare if WTP AI faction can produce more units during war.

Offline Induktio

Re: SMACX Thinker Mod
« Reply #770 on: January 24, 2022, 07:38:55 AM »
> I added some war economy adjustments in WTP. Would be interesting to compare if WTP AI faction can produce more units during war.

What kind of changes specifically? Otherwise it's not going to be useful comparison unless you can isolate the production changes from the rest of the WTP code. There's too much uncontrolled variables in the test.

If the AI produces more units, there's also one indirect downside that must be considered. When AIs fight each other they are of equal skill level which makes the conflicts take a really long time. If they dedicate 100% of their resources for each war, they will neglect economy building and other factions will gain an advantage there. It would become more easy to just play AIs off against each other and watch them stagnate. Maybe it could be made such that it does this only when fighting player factions, but I'm not sure if that would become immersion breaking.

Offline dino

Re: SMACX Thinker Mod
« Reply #771 on: January 24, 2022, 10:38:38 AM »
I'll be boring, but I'm going to reiterate what I was already proposing.

It's unfeasible to make AI capable of predicting in advance when and where they'll need an army, or when they can afford a pure builder game.
So we have to change the current dynamic of an economy buildup followed by a military buildup, into a game of standing armies instead.

Outside of an early game ( around the first 30-50 turns depending on map size ), whenever a faction has a neigbour within feasible invasion range, it should always dedicate at least 50% of their economy to military production, unit upgrades and upkeep +/- depending on ai_fight value. If they get involved in war, or are planning an attack increase it to 75%, if they are loosing a war against stronger enemy go 100% war effort.

To prevent human player from getting ahead economically by playing a pure builder game, make AI relentlessly aggressive toward any neighbour that doesn't have a standing army of comparable strenght.

To prevent AI stalemates, you should teach AIs involved in war to agressively pursue geographically feasible alliances and make them really open to accepting an opportunity of backstabbing a neighbour that is already involved in war and seriously commit to the joint war effort. If their alliance has a clear upper hand over their enemy, go 100% war effort to finish the war as quickly as possible, otherwise stay at 50-75% to not stall their own economies completely, while they are stalling the enemy economy.


« Last Edit: January 24, 2022, 11:17:46 AM by dino »

Offline JoGr223

Re: SMACX Thinker Mod
« Reply #772 on: January 24, 2022, 11:04:44 AM »
I was observing different faction AIs and noticed hive can go tens of years with negative income - despite this they still build a ton of facilities; how is this possible ? it seems like some critical bug, as I'd expect their whole infrastructure should get demolished due to eco problems so that they can only keep what they can afford

eg attached game - hive is the strongest yet they have -154 income and dont seem to lose any facilities

Offline Induktio

Re: SMACX Thinker Mod
« Reply #773 on: January 24, 2022, 11:35:40 AM »
> I was observing different faction AIs and noticed hive can go tens of years with negative income - despite this they still build a ton of facilities; how is this possible ?

What we have here is probably the previously undocumented AI maintenance bonus on transcend. It's not mentioned by vanilla documentation but I've added it on Details.md previously. AI pays only 1/3 maintenance on transcend and 2/3 on thinker. The values you see on economy screen are not(?) corrected for the bonus (and they couldn't be easily since it would require using fractions). So that's the way it is.

> So we have to change the current dynamic of an economy buildup followed by a military buildup, into a game of standing armies instead.

What you're describing in the post is not far from how it's implemented currently, but it doesn't use those fixed percentages for it. For example in most cases war with adjacent neighbors should result in the vast majority of production being used for combat units. It might be that the calibration is off on smaller map sizes. I haven't run additional testing on them in a while. I think I recall another player already commenting it built quite a lot of units, maybe too much, in their game.

> To prevent human player from getting ahead economically by playing a pure builder game, make AI relentlessly aggressive toward any neighbour that doesn't have a standing army of comparable strenght.

Note these diplomacy behaviours are still handled by the vanilla AI. To change them would probably require some rewrites of wants_to_attack, enemy_diplomacy and maybe other functions. And then more testing. So not sure when that would happen if it's going to happen.

Offline dino

Re: SMACX Thinker Mod
« Reply #774 on: January 24, 2022, 11:51:24 AM »
I wasn't advocating for fixed percentages, they were there to just give idea what imo should be the aim.

I didn't play the latest version yet, but the issue was not that they didn't build enough units when involved into drawn out war, in fact we should make it sure they won't go 100% war economy, unless they are on the brink of destruction/victory, to not stall their economic growth.

The issue was that when they happened to not get involved in war, they could build wast empires that remained practically undefended, free for the taking by a human player.
Solution imo is to maintain a significant standing army regardless of circumstances and force the human player to do the same, by attacking him if he is undefended.

In practical terms:

1) Either upgrade, or disband in a base obsolete useless units.
2) Maintaining an army consuming around 50% of mineral production is imo a minimum to withstand a surprise attack by a human player. If they are alone on their main continent they could go by with around 30%, since planes and ship transports make invasion force cost double.
3) Attack easy targets that try to play a pure builder game.
4) Do not go over 70% war economy, unless on the brink of destruction, or victory, to not stall growth during prolonged conflicts.
« Last Edit: January 24, 2022, 12:19:13 PM by dino »

Offline Induktio

Re: SMACX Thinker Mod
« Reply #775 on: January 24, 2022, 12:13:16 PM »
> The issue was that when they happened to not get involved in war, they could build wast empires that remained practically undefended, free for the taking by a human player.

So I'm wondering if this is just speculation or have you actually encountered this stuff in an actual game with any recent version. It's not the same than some really old versions which maybe had the issue. They also have some priorities which increase military unit production after expansion phase so it should not ever be the case that defense buildup is neglected entirely. Maybe they could use more tuning, but again, it should not be overdone or else economy suffers. It's quite hard to come up with robust rules for all situations. But I agree they should have a standing army. Config file has conquer_priority value for additional tuning.

Offline dino

Re: SMACX Thinker Mod
« Reply #776 on: January 24, 2022, 12:30:06 PM »
It's based mostly on JoGr223's description of his game, when he could build up army from zero and conquer 8 bases in 8 turns.

Probably if they had bigger army but let it idle, they wouldn't be competitive economically, so it can't be done in isolation, it has to be coupled with agressive pursuit of weak targets, forcing everyone into at least a "cold war".

Re: SMACX Thinker Mod
« Reply #777 on: January 24, 2022, 03:59:26 PM »
> I added some war economy adjustments in WTP. Would be interesting to compare if WTP AI faction can produce more units during war.

What kind of changes specifically? Otherwise it's not going to be useful comparison unless you can isolate the production changes from the rest of the WTP code. There's too much uncontrolled variables in the test.

If the AI produces more units, there's also one indirect downside that must be considered. When AIs fight each other they are of equal skill level which makes the conflicts take a really long time. If they dedicate 100% of their resources for each war, they will neglect economy building and other factions will gain an advantage there. It would become more easy to just play AIs off against each other and watch them stagnate. Maybe it could be made such that it does this only when fighting player factions, but I'm not sure if that would become immersion breaking.

First, you are absolutely right it is difficult to do a scientifically exact comparison as there are tons of other differences and issues at play. I am just curious and won't take the result of this experiment as some definitive answer.

Here is the change in nutshell. At the beginning of the faction turn AI computes "threat level" from other faction combat units combined. The computation is quite complex. It accounts for diplomatic status, unit strength, unit proximity to faction bases, ability to reach it (same or different continent), current defensive power, some cross unit type effectiveness, blah-blah. Many parameters. Then it uses this value to bump military production (combat units, probes, military facilities) priority over non-military.

Re: SMACX Thinker Mod
« Reply #778 on: January 24, 2022, 04:06:47 PM »
I'll be boring, but I'm going to reiterate what I was already proposing.

It's unfeasible to make AI capable of predicting in advance when and where they'll need an army, or when they can afford a pure builder game.
So we have to change the current dynamic of an economy buildup followed by a military buildup, into a game of standing armies instead.

Outside of an early game ( around the first 30-50 turns depending on map size ), whenever a faction has a neigbour within feasible invasion range, it should always dedicate at least 50% of their economy to military production, unit upgrades and upkeep +/- depending on ai_fight value. If they get involved in war, or are planning an attack increase it to 75%, if they are loosing a war against stronger enemy go 100% war effort.

To prevent human player from getting ahead economically by playing a pure builder game, make AI relentlessly aggressive toward any neighbour that doesn't have a standing army of comparable strenght.

To prevent AI stalemates, you should teach AIs involved in war to agressively pursue geographically feasible alliances and make them really open to accepting an opportunity of backstabbing a neighbour that is already involved in war and seriously commit to the joint war effort. If their alliance has a clear upper hand over their enemy, go 100% war effort to finish the war as quickly as possible, otherwise stay at 50-75% to not stall their own economies completely, while they are stalling the enemy economy.

I approached this slightly in WTP already by accounting for distance to neighbor and their army strength in continuous way, not just 50-75-100.

The diplomacy and war choices is a serious AI work, though.

With this in mind, it is theoretically possible to make AI play like a chess pro. However, the question is whether you want it to be that strong and stomp you every time. Wouldn't you want to eventually win?

Re: SMACX Thinker Mod
« Reply #779 on: January 24, 2022, 04:12:35 PM »
It's based mostly on JoGr223's description of his game, when he could build up army from zero and conquer 8 bases in 8 turns.

Probably if they had bigger army but let it idle, they wouldn't be competitive economically, so it can't be done in isolation, it has to be coupled with agressive pursuit of weak targets, forcing everyone into at least a "cold war".

WTP should build units to match opponent forces even when there is no war. The proportion is less for treaty and even less for pact but it exists. That is why I was curious to check this mechanics at play and whether it could prevent such failure. I am sure Thinker does something similar but the testing and tuning never ends.

 

* User

Welcome, Guest. Please login or register.
Did you miss your activation email?


Login with username, password and session length

Select language:

* Community poll

SMAC v.4 SMAX v.2 (or previous versions)
-=-
24 (7%)
XP Compatibility patch
-=-
9 (2%)
Gog version for Windows
-=-
103 (32%)
Scient (unofficial) patch
-=-
40 (12%)
Kyrub's latest patch
-=-
14 (4%)
Yitzi's latest patch
-=-
89 (28%)
AC for Mac
-=-
3 (0%)
AC for Linux
-=-
6 (1%)
Gog version for Mac
-=-
10 (3%)
No patch
-=-
16 (5%)
Total Members Voted: 314
AC2 Wiki Logo
-click pic for wik-

* Random quote

He held his arm too stiffly, and so was thrown back repeatedly, until at last I seized his forearm and snapped it back against itself. His training suffered while the arm healed, of course, but I felt this was a lesson he must learn early, and well.
~Spartan Kel 'Honing the Ki'

* Select your theme

*
Templates: 5: index (default), PortaMx/Mainindex (default), PortaMx/Frames (default), Display (default), GenericControls (default).
Sub templates: 8: init, html_above, body_above, portamx_above, main, portamx_below, body_below, html_below.
Language files: 4: index+Modifications.english (default), TopicRating/.english (default), PortaMx/PortaMx.english (default), OharaYTEmbed.english (default).
Style sheets: 0: .
Files included: 47 - 1280KB. (show)
Queries used: 43.

[Show Queries]