1. [BUG] If a faction's cumulative PROBE value is greater than 3 (SE morale, covert ops center) it is possible to "mind control" their bases when they should be immune. If the University uses SE Knowledge putting PROBE value down to -4, it would act as if it were 0 erroneously increasing "mind control" costs. After patch, PROBE values greater than 3 will always be immune to regular probes and values less than -2 will be treated as if they were -2.
2. [CRASH] It is possible usually on larger maps that scrambling air interceptors would cause the game to crash. Even when the game didn't crash incorrect altitude values were being used in checks. Both of these have been fixed.
7. [BUG] Fixed a check that was ending the turn for certain air units (choppers/missiles/grav) when entering a base which had no adjacent enemy units. There is still a check which will end the unit's turn if when entering a base it has less then one turn remaining unless an enemy is adjacent to base.
10. [CRASH] When moving units near or at the poles, it is possible for y coord to exceed the map bounds and crash the game. Patch adds handling to prevent y coord from going over min/max.
15. [BUG][SMAX] Enhanced probes (Algorithmic Enhancement) are now able to mind control bases/units normally immune due to high SE morale as stated in SMAX manual. For units it's purely the morale SE value so >=3 acts as if it were 2 (cost doubled). For bases, the value is calculated from morale SE and any base facility modifiers (Covert Ops: +2, Genejack: -1). If final value is >=3, it acts as if it were 2.
18. [BUG][SMAX] Enhanced probes don't receive a penalty to survival probability when target faction has built Hunter-Seeker Algorithm. Instead, the success probability is erroneously given the penalty for a second time after it has already been displayed in UI. This could cause diminished success rate when it should have been higher. Patch corrects check so survival rather than success probability is modified.
20. [MISC] Disabled cpu check which serves no purpose other than preventing the game from starting on newer cpu's. Patch enables ForceOldVoxelAlgorithm=1 in code by default and suppresses annoying warning.
21. [BUG][SMAX] Sealurk units now do not get a penalty when moving onto Sea Fungus like Isle of Deep.
27. [BUG][SMAX] Fixed bug when AI successfully completes probe action of freeing a captured faction leader (FREEWILLY/FREEWHO) where it would reset a non-captured faction. The problem was that AI would always try to free the very first faction (usually PC) regardless of whether they were elminated or not. Fix now obtains all potential faction leaders to free and randomly picks one.
34. [BUG] Fixed logic in PB code to prevent ODP/Flechette defenses being called a 2nd time (with a chance for defenses to fail) even after PB had already been shot down. Each faction has one chance to defend against incoming missile based on closest base or unit to PB blast. However, there is secondary check to give the tile owner a chance to defend against PB even if they have no units or bases in this space. This check didn't take into account whether or not PB had already been shot down.
36. [BUG] Fixed a bug that would display NERVEGAS message even when attack on base failed -> checking attacker health
37. [MOD] Add ability to set reactor (1-4) for #UNITS in alpha/x.txt (ex. "Colony Pod,..., 00000000000000000000000000,4" -> gives Colony Pods Singularity Engine). To do so, just add comma after Abil with value of reactor you want for unit. If no value is set, it defaults to "1" like original code. For SMAX only, there are two exceptions for Battle Ogre MK2 and Battle Ogre MK3 where default isn't "1" but "2" and "3" respectively. The Ogre default can still be overriden if you set a different reactor value in alpha/x.txt.
38. [BUG] Allowing colony pods to be added to bases with fungus on tile ; allowing sea/land pods to be added to existing sea/land bases ignoring building restriction
43. [BUG] Abandoning a base after building a colony pod no longer skips the base production of the next base. This was caused by the upkeep function using incorrect base values after the abandoned base was destroyed. Fixed so acts like #STARVE.
51. [BUG] Additional check to initial tile when build aquifer rather that tiles around it
Scient did good work on their patch and their fixes aren't controversial. I don't really see why you don't just use their latest patch or Yitzi's as your starting point. Maybe that's been covered in another thread.
OMG, then what will Yang look like!
Scient did good work on their patch and their fixes aren't controversial. I don't really see why you don't just use their latest patch or Yitzi's as your starting point. Maybe that's been covered in another thread.
Well, occasionally somebody has requested "include some patches" without going to specifics. The issue is just binary patching is not very maintainable and the behaviour is not configurable. Particularly Yitzi's patch diverges from vanilla game behaviour on multiple aspects. Maybe it would be easier to look at this if you could describe the features that people want from those other patch versions?
The only way these fixes could hurt maintainability are if they 1) confuse your reverse engineering tools too much; 2) break the boundaries of functions you want to hijack (unlikely). Including these fixes is likely to improve maintainability by removing bugs from the code base and so reducing bug reports etc.
Scient and others on the bugfixing team did good work over many years on SMACX. It seems pretty daft to me not to build on that work.
Why not load your code as a dll and only modify the stuff you want to? We can hack the .exe to load a common loader dll that will then load all mod dlls in the directory (perhaps identified in a text file?).
That's roughly how PRACX works and would allow us to make these binary changes more easily composable and means you don't need to include anyone else's work in your project if you don't want to. It also means you don't need to distribute the updated terran binaries, just your dll, the loader dll and a script to patch terran.exe to use the loader.
> Why you didn't choose Ytzi's patch as a base for your work ?
It's just hard to see what those important bugfixes might be in Yitzi's patch.
It's just hard to see what those important bugfixes might be in Yitzi's patch.
Yeah, I've heard about that project. Not sure if he ever published any source code or described the algorithms in detail. It's closed source anyway?Yeah, it's closed source. The game is property of Slitherine/Matrix Games, they just allowed one volunteer developer exclusive access to codebase. Probably, sources won't make SMACers any good anyway, completely another game, much simpler withal. But AI intricacies were discussed on that forum in pretty hefty detail, including antagonism between ruthless "play-to-win" and honorable "role-playing" AI designs, which is relevant for SMAC. Most surprising pitfall for that AI developer was the amount of ire some players poured down on (non-cheating!) AI when they started to lose badly to said AI.
Sometimes I've been considering redoing the faction placement algorithm, but not sure if there's any simple solution.Standard faction placement algorithm is truly horrible, if you aren't up for a rush challenge. In my games it routinely places 3-4 factions in the vicinity of each other on large random map. I've heard a tell-tale that if you start a game, then save map, then start a new game from that map, then faction placement suddenly becomes sane. Didn't checked it myself, though.
> Gaians got Weather Paradigm and spiked no less than half of Monsoon Jungle tiles with condensers. I thought adjacent condensers are forbidden, not sure about that? This led to max size bases where half pop are doctors. When I took one of these, it had 2-digit eco-damage despite meager minerals.
Well, one could check this example (http://www.realmsbeyond.net/forums/showthread.php?tid=8755&page=6) of good old ICS. Probably the former code should be tweaked to prefer more forests on jungle tiles. Happiness management is a continuing problem because of various reasons. At this point I'm considering making some kind of NODRONE ability an optional boost.
> All AIs do heavy foresting, even Antimind, who previously relied mostly on fungus. The algorithm doesn't consider faction's fungus production?
Currently it tries to do its best to get rid of fungus. It would need some kind of a way to decide when using fungus is beneficial by considering the current techs and faction bonuses. This could be useful to implement but usually it's only relevant in the end game. What kind of stats does this Antimind faction have?
The Antimind is a classic NetworkNode faction:
TECH, Ecology, SOCIAL, ++++PLANET, SOCIAL, ---INDUSTRY, SOCIAL, --GROWTH, FUNGNUTRIENT, 2, FUNGENERGY, 2, IMMUNITY, PLANET, FREEABIL, 18, TERRAFORM, 0, MINDCONTROL, 0, FANATIC, 0, WORMPOLICE, 0, PSI, 50, POPULATION, -2, TECHSHARE, 3, ALIEN, 0
Economics, Green, PLANET,
Economics, Free Market, nil,
Well, that is certainly an unusual faction. In nearly all possible ways, it plays different from the normal human factions for which this AI is tuned. Getting it to play this faction as well would require pretty extensive changes to the code.
Do you know what kind of units the AI normally uses to capture natives? It appears you're saying the AI might normally have some different units that are more often used to capture/fight the native life.
And which version of kyrub's patches are you referring to here?
But I believe first worms are captured by basic scouts and sentinels on exploration duty, and then those first worms trigger something like chain reaction, capturing more while driving towards bases or exploring. Of course, if you employ natives in a war against AI, it will soon field empath scout rovers and trance scouts, but I guess that wasn't the point of your question?
I checked SP movies from the save - without Thinker Mod they're played.
Other new option is "load_expansion" which can be disabled to turn off any expansion related features. Note that the tech tree will not adjust the dependencies without modding, so any techs or items depending on expansion-only techs will be unavailable, including some victory conditions.
I think it's impossible to code AI to successfully counter them, I'm not even sure a human player can successfully counter these, short of initiating nuclear holocaust.This! One surgical planet buster at enemy HQ is all you need. Even before Orbital Spaceflight AIs could at least try to stop the offender with force. Particularly in that game I wrote last comment about, Mimi had resources of 3 factions at her disposal, and Yang those of 2. If they stopped their squabble and turned attention on greedy merchants sitting in 7 bases on medium island, in 20 turns all will be over for me.
Question to all: are AIs always so indifferent to player's attempt at economic victory? I didn't tried it in ages, so don't remember. Not a single hostile action in those 20 turns, despite being obstinate to seething.
Also noticed change in game behavior, could be bug: in kyrub's Unity pods inside base radius were skewed toward favorable pops - almost never worms, mostly monolith/resource bonus, oftentimes together with unit/tech/comm frequency. Now all 3 pods near HQ produced worms.
Doesn't repeat, must have been one-off bad luck.Also noticed change in game behavior, could be bug: in kyrub's Unity pods inside base radius were skewed toward favorable pops - almost never worms, mostly monolith/resource bonus, oftentimes together with unit/tech/comm frequency. Now all 3 pods near HQ produced worms.
Hmm, was that an one time occurrence or does it keep repeating for you? This might be related to the faction placement patch but I'm not sure. Often the pods seem to produce goodies next to the HQ in my tests.
I believe pods can produce anything. It is just at the beginning they are more favorable probabilities that's how I understand it.Doesn't repeat, must have been one-off bad luck.Also noticed change in game behavior, could be bug: in kyrub's Unity pods inside base radius were skewed toward favorable pops - almost never worms, mostly monolith/resource bonus, oftentimes together with unit/tech/comm frequency. Now all 3 pods near HQ produced worms.
Hmm, was that an one time occurrence or does it keep repeating for you? This might be related to the faction placement patch but I'm not sure. Often the pods seem to produce goodies next to the HQ in my tests.
They somehow do not go over the shore border. Land factions do not go to water ever. Aquatic ones do not go to land at all and instead infest complete ocean. I am the only one who cross the body of the water to found bases on inhabitant islands or in water. Ocean is completely empty when there is no aquatic factions - not a single sea base.Can't support this on both accounts. In my playtest all factions happily switched to seabases when they ran out of unoccupied land, albeit shrinking due to sea level rising. Also seen a few colony pods moved by boats to claim empty islands.
This may be. My testing is not exhaustive. I'll keep looking.They somehow do not go over the shore border. Land factions do not go to water ever. Aquatic ones do not go to land at all and instead infest complete ocean. I am the only one who cross the body of the water to found bases on inhabitant islands or in water. Ocean is completely empty when there is no aquatic factions - not a single sea base.Can't support this on both accounts. In my playtest all factions happily switched to seabases when they ran out of unoccupied land, albeit shrinking due to sea level rising. Also seen a few colony pods moved by boats to claim empty islands.
I call it mod base as anyone can drop alphax.txt changes on top of it to finalize the experience the way they like.
In vanilla game I noticed two things about AI expanding bases. 1) They easily go from land to water and vice versa for aquatic factions. In other words, shore doesn't stop their expansion a bit. 2) AI expands like crazy at the very beginning. Then when they reach somewhat 20-30 bases they suddenly slow down tremendously to the point when huge land areas right next to their territory stayed unoccupied for the rest of the game.
If you're talking about unmodded game there, it sounds quite unlike the performance I've seen. Often there's been instances where factions stagnate on 5 bases or something, so 20-30 would be a pretty good result for an AI.I meant it as a max limit which they almost never cross. Sometimes they could stagnate below that for sure.
* Disable healing completely or modify healing rates under different circumstances (territory, base, bunker, corresponding morale facility).
* Modify unit cost calculation formula. I am not talking about specific changes now - just a generic possibility.
* Modify how weapon picture is assigned to a weapon. Currently it is assigned by the weapon attack rate. Could it be done by the weapon name? This is to be able to change weapon attack rate without losing corresponding picture. This change is pretty minor and optional.
You can build like 10 needlejects capable of knocking out enemy base defenders and just bomb-heal-repeat conquer them without casualties.So can them. AIs even before ThinkerMod were capable of amassing needlejets and destroying every former, colony pod and crawler in range, then switching to base defenders.
For AI it is even worse as it doesn't know about indestructible army tactics and doesn't use it. Humans do and that's why they beat it every time.Sorry, I don't catch. AI builds units with highest available attack, and it uses healing, doesn't it? But probably we should talk about this in your thread, not here.
Sure if you like I can copy your response and continue there.You can build like 10 needlejects capable of knocking out enemy base defenders and just bomb-heal-repeat conquer them without casualties.So can them. AIs even before ThinkerMod were capable of amassing needlejets and destroying every former, colony pod and crawler in range, then switching to base defenders.For AI it is even worse as it doesn't know about indestructible army tactics and doesn't use it. Humans do and that's why they beat it every time.Sorry, I don't catch. AI builds units with highest available attack, and it uses healing, doesn't it? But probably we should talk about this in your thread, not here.
If anyone has ideas how to get the SP movies working again, could be also useful to know.
> However, I see that AI equip their custom units with Singularity one!!!
There was a bug in the old code where it didn't check properly for disabled techs. It is fixed in the most recent version but it can't undesign already designed units in an old save. It should work properly on newly started games of course.
So this file is basically a verbatim copy of movlist.txt if expansion is enabled? If I were to keep this feature, I think the game should read those modded values from ac_mod folder just like the other modified files if expansion is disabled. Does not feel useful to distribute a copy of a standard file with the patch. I'm not sure if some other files might have to be put into that folder too, currently the list is: alphax.txt, helpx.txt, conceptsx.txt, tutor.txt, labels.txt
The text files in scient's patch are generally better than the ones that come with the game. If I were you I'd just expand scient's installer (code available) and add thinker to it. If you really don't want to use movlistx.txt either make a copy on first run or just change the binary to use movlist.txt?Hmm, yeah. Basically there are two behaviours one could choose from:
- Should the AI build armored crawlers in mass? After fusion reactors armor becomes so cheap I'm tempted to have them build crawlers with armor installed.Sure, why not. Armored probe teams already added me worries.
- Is the colony pod production rate good enough now or should it be changed? Maybe the difficulty level should affect the desired AI expansion rate?It's good that AI always has several CPs idly rolling back and forth through his lands (and mine if allied), thus they near instantly claim any released land. I'd say, rate is at least enough, perhaps even slightly excessive.
Still it would be nice to have a couple of more features related to either social engineering or diplomacy. I've been looking at those areas and the reversing database does not cover them very well, so any progress is not that quick.Maybe, start with a couple of small bugfixes to get grasp of the matter? Like, fix annoying multiple late game hate-messages in a row, or exploit of provoking AI into vendetta with troops removal demand?
I think generally, the AI is really passive in attacking the native life, so having this feature will be important for the AIs to handle abundant native life.So true! Single spore launcher can stiffle an entire AI faction in the start.
Also I'm not sure if the normal AI ever attacks with a hasty penalty.I've seen that.
Before his disappearance, Yitzi was talking about ways to scale back infiltration. Rather liked the thought of being able to remove infiltration by sending a probe team into an enemy base, perhaps with a low chance of success. Other ideas include a Planetary Council measure to vote on removing all infiltration or using one of the extra secret projects slots for the same effect. No idea how practical these measures might be, except that Yitzi said the first one was doable. Concern with infiltration mainly applies to multiplayer but that's my preference anyway.
Be back with more observations on Yitzi features later. Glad to have you here!
they're using the probability mass function for the binomial for each round, except they subtract one from each operand in the combination, I don't know why they do that.
> By the way, did you see this mod? It seems to working on the same AI performance enhancement thing. Just FYI.
Yeah, but he made that using only binary patching. It's pretty hard to compare changes without source code. By developing Thinker using C++ we're basically unlimited in what kind of new algorithms the AI could use. Now that I also implemented the method where the patches can be applied dynamically at startup, it's pretty rare to even have to change the actual game binary.
Are you referring to this formula below? It's somewhat similar to what Thinker calculates now but "firepower" doesn't have the same meaning in this game as far as I know. There's only one value derived from A/D strength/modifiers that is used to scale the random numbers and determine winners in combat. I wouldn't make any assumptions the page is applicable to SMAC.(click to show/hide)
they're using the probability mass function for the binomial for each round, except they subtract one from each operand in the combination, I don't know why they do that.
Because all possible chain of events should end up with loser to take the hit. So you put this last hit aside and everything else is a complete permutation.
For example, ah = 2, dh = 2. The probability the attacker winning the combat is p (last blow to defender) + sum of other combinations: 0 or 1 times attacker loses and 1 time defender loses.
> Then at some point they start attacking my units without game telling me that they are doing sneak attack.
Looks like I can't replicate this bug at all. Did this happen even on the same turn? There's a Gaian laser squad a couple of tiles away, and I did notice one thing. If you station one impact infantry both next to the Cyborg base and the laser squad, it may seem the squad is attacking, even though it is the recon rover *inside* the base that actually counter attacked there. Visually on the map it might look really similar, but the laser squad should not attack in this case.
Are you using the default WorldBuilder btw? It looks like there's quite a lot of small islands. I didn't mention it in the thread yet, but the modded WorldBuilder can be seen in Details.md (https://github.com/induktio/thinker/blob/master/Details.md). Not that it affects this issue though.
Speaking about bugs there is a minor one. Saving and loading production queue. Annoys me a little by adding more mouse-clicks but harmless overall.
50. [EXPLOIT] Using the right click "Save current list to template" and "Load template into list" features of base queue can be used to bypass retooling completely. Fixed so these queue template features only save and load the actual queue and not affect the item currently in production.
Speaking of worm wars, I didn't see any AI in the latest version switching from FM to Green, even on the brink of collapse under worm waves.
When assaulting neighbor see if they have strong psi defense. If not - build worms, otherwise not.
When assaulting neighbor see if they have strong psi defense. If not - build worms, otherwise not.
Not correct. Successful use of mindworms on offense is usually a combined arms operation, not a monolithic attack. There's a stage during city siege at which you throw mindworms, because now you're fighting units that aren't strong enough to stand up to them. If something has Psi defenses, you just have to weaken those units first in some other way. This is no different from ECM defenses, or AAA defenses. Combined arms is the way you take all these buffs down.
You might not want to build mindworms for offensive assault, if you yourself have pathetically weak mindworms. Like your PLANET rating is negative and you don't have Biology Labs etc. to level up what you produce.
Even still, weak mindworms are a good bush scouting and defense option. The stock AI likes to sneak across big fields of fungus, and this is complete disaster for them if you bring a couple mindworms to intervene. Having the mindworms be terribly strong is not all that important here, because likely to survive and level up, just getting fed all these human sacrifices. A better AI would both plan to utilize these death traps as home defense, and also would be wiser about blundering into them.
I'm sure people could write better AI all day if they had a clear foundation to work from. My point is that these AI problems are difficult, not simply reduced to cranking this setting up or down as a pass filter. I'm sure Induktio knows that already and is allocating his efforts accordingly.
Defensive units, is more about cranking a pass filter up or down, as you suggest. There's not as much tactics to defense, as you're just trying to withstand a siege that might be a complete ambush, no preparation on your part. "Stack with cheap Trance units" is a good countermeasure to a mindworm spawning faction, or a mindworm apocalypse.
Well, come on! I didn't mean to give specific tactical advice. Just to find out if this is possible or plausible at all. So read my "build worms" as "build more worms than usual", etc.
It turned out that AI does not attack well with native nor it defends well against them by mean of building cheap units with trance/song.Yeah, so currently the AI has no logic for adapting the production to counter any specific enemy units. It just builds a little bit of everything. At least in the unmodded game I feel the worms are a little too weak, so the AI does not put much emphasis in producing them. Generally they need to have at least some kind of a faction/tech psi bonus before the worms are even considered for production. One good thing with the worms is that they don't need support when sitting in fungus, but this logic would also have to be coded in the movement AI. The prototype picker puts some extra value on trance/empath units, but this bonus is not adapted to the current game situation. Sometimes it might be pretty irrelevant, sometimes really useful.
Did you pay attention to it in your mod? This alone would give AI great advantage if it can assess current situation and shift toward building normal or native attackers/defenders. I.e. when enemy sends waves of worms - build more cheap trance/song units, otherwise not. When assaulting neighbor see if they have strong psi defense. If not - build worms, otherwise not.
Would creating predefined units with these abilities help AI?
Speaking of worm wars, I didn't see any AI in the latest version switching from FM to Green, even on the brink of collapse under worm waves.Does the stock AI actually understand when its losing many units to psi attacks and try to increase the planet rating because of that? Not sure really. Anyway, the SE selection will get some further tweaks when I'll get back to it. Defining the conditions for when to increase the planet rating because of the psi attacks might be a little tricky though. It's just generally these strategies are a little bit rock-paper-scissors, so you can't go all in rock because then it would be vulnerable to paper and so on.
Otherwise the results might be a little hit and miss.
Does the stock AI actually understand when its losing many units to psi attacks and try to increase the planet rating because of that? Not sure really.In stock AI I noticed only one pattern of "military situation - SE choice" kind, and fairly detrimental to him: after losing a base to mind-control, AI would often switch to Fundie, clear over-reaction in most cases. IMHO, this calls for a more generalized approach: in time of peace, choose SE maximizing growth, economy, research, etc; in time of war (and this means real danger, not some empty vendetta from a faction half a globe away), maximize morale, support, planet, etc. Mixed character of most choices makes this a little difficult, so basically "many enemy units in my territory - switch out of Demo/FM/Wealth and into PS or Fundie/Green/Power".
The problem here is that AI does not use it massively while human does.In my games on Thinker difficulty, AI definitely builds tons of probe teams (albeit without Algorithmic Enhancement, but with armor, Hypnotic Trance, Comm Jammer). Though he uses them not so smartly, they are a force to be reckoned with; a couple of defensive probes in border bases aren't sufficient.
The problem here is that AI does not use it massively while human does.In my games on Thinker difficulty, AI definitely builds tons of probe teams (albeit without Algorithmic Enhancement, but with armor, Hypnotic Trance, Comm Jammer). Though he uses them not so smartly, they are a force to be reckoned with; a couple of defensive probes in border bases aren't sufficient.
Having said that, changes to probe system are begging. This is evidenced by frequency with which those proposals arise.
Elite probe destroys defensive facilities (perimeter, tachyon) with 75% success rate. As they are so cheap destroying enemy defensive facilities in front of your army becomes a very effective strategy. The problem here is that AI does not use it massively while human does. It essentially renders AI defensive facilities useless against human player.
As your mod targets AI improvement do you consider modding this aspect of the game? If yes, there could be multiple ways to do it starting with those I pull from the top of my head in this post.
http://alphacentauri2.info/index.php?topic=21129.msg117489#msg117489 (http://alphacentauri2.info/index.php?topic=21129.msg117489#msg117489)
Wow. Never mind. I just uninstalled and reinstalled a fresh original version from GOG. It has the same bug!
Induktio,I haven't seen the AI design any Soporific units. There's a long, complicated function in the game binary that chooses which prototypes to create. I have not directly modded it, instead Thinker creates independently a couple of additional prototypes (probe teams etc) which are then usually chosen for production.
Did you see anywhere if AI is able to build units with Soporific Gas Pods at all? In general, are there settings for AI prescribing what unit types to build (chassis, weapon, armor, abilities) and in what proportion?
Wow. Never mind. I just uninstalled and reinstalled a fresh original version from GOG. It has the same bug!So are you saying this bug is present in the unmodified game (GOG version) as well?
Elite probe destroys defensive facilities (perimeter, tachyon) with 75% success rate. As they are so cheap destroying enemy defensive facilities in front of your army becomes a very effective strategy. The problem here is that AI does not use it massively while human does. It essentially renders AI defensive facilities useless against human player.
As your mod targets AI improvement do you consider modding this aspect of the game? If yes, there could be multiple ways to do it starting with those I pull from the top of my head in this post.
http://alphacentauri2.info/index.php?topic=21129.msg117489#msg117489 (http://alphacentauri2.info/index.php?topic=21129.msg117489#msg117489)
Well, it can be said probe teams are a little overpowered against AI, but then again, lots of other units can also be used to overwhelm the AI defenses because it doesn't allocate the defenders that well. I'd say modding those probe action success rates is not really priority, although disallowing certain probe actions in addition to just mind control might make sense if the target has +3 PROBE. If we went on changing those probabilities, then the mind control costs could need tweaking as well. They can also be a really easy way to capture some bases.
52. [BUG] Fixed an issue where diplomacy dialog could be incorrectly displayed due to faction id value being set incorrectly. This is best exhibited where Progenitors switch into "Human" dialog syntax.
It's hard to say which features would be the best to implement here given the benefit/time ratios.IMHO, it would serve AI's best interests to tighten up diplomacy. I.e., fight well-known exploits, and teach AIs to better choose their friends and enemies. Though don't know how about benefit/time ratio for these.
Other topic is also the possibility of implementing new modding features.Is it possible for predefined units to not grant prototypes?
IMHO, it would serve AI's best interests to tighten up diplomacy. I.e., fight well-known exploits, and teach AIs to better choose their friends and enemies. Though don't know how about benefit/time ratio for these.Diplomacy could be a topic of interest.. I have done some research on it but the code seems a little complicated to modify. It would need some more insight to figure out what all the variables actually do there. But there seems to be much potential for improvement.
Is it possible for predefined units to not grant prototypes?
I’d just be happy at this point if the AI knew how to automate gravship formers correctly. But I am sure I am in the minority there :)Hmm, interesting. Just think of it, this mod doesn't even grant any artificial production bonuses on top of the default cost ratios in the difficulty levels, unless they are explicitly activated from the config. If we compare this to let's say Civ 3, my main aim was to make Transcend level feel like, maybe not quite, but close to Deity in Civ 3. Maybe we can declare "achievement unlocked" in that aspect.
On a different note, I can no longer find a solution for “get every single Secret Project” with Thinker like I can with the base AI. My old primary strategy (Zak builder and pacifist) is no longer good enough to win, even on Librarian.
Probably there is some way of disallowing prototypes that have not been researched, so is this a feature that is considered generally important?
Gravship formers are certainly a possibility, I've already thought about implementing them, but they feel a little like some late-game esoteric feature.
I don't know where your .exe is at with late game AI terraforming. For a stock .exe it's a non-issue. The AI is never going to beat a competent player on Transcend. The human player will get ahead, the AI is always going to be somewhat behind. Caveat: the interim periods when I didn't know how to play my own mod yet. But that passes. Anyways, I terraform every single square by hand. Gravships would never be useful to me. Too late game, I've already done everything needed by then.
The main problem with gravship formers automation is that the AI thinks they can only alter land when in fact they can alter both land and sea squares. I’ve been surprised at how poorly they are automated versus other key units I have added such as needlejet colony pods. Still, there aren’t many games that even see gravships so it’s not much of a priority.
In the original game they added lots of complex mechanics which the AI was not designed to handle very well.
Also, I don't think I would go on increasing prototype costs by such a large margin or even at all. It's probably going to make the game harder for the AIs because it's not well equipped to strategize around those limitations unlike a human player.
Yeah, gravship formers would need some moderate restructuring of the movement code because they can modify both types of squares. So I have to consider that.
It's important to note here that the player's formers still use the default code when they are automated. They could be adjusted pretty easily to use Thinker's code instead, but the problem is that then they should obey the "automation preferences" selected by the user. Do you think we should have them use the new former code instead if the preferences are just followed? Probably it would be a good change.
I know that that means the player automated units will now be stronger, which flies in the face of what Thinker is about,
As for the optimal strategy, good luck with that. ;b; Humans weren't able to calculate optimal strategy for Go either despite thinking for a couple of millenia.
Anyway, sea crawlers are not currently implemented. So whether behaviour they were doing is the result of the standard movement code which probably means the AI doesn't understand how to use them.
I think, overall, having player's formers use the same code than the AI ones would make the game feel more consistent, since then the two types of formers wouldn't operate in a vastly different way.
AI sea terraforming is not incompetent. It just overemphasizes minerals instead of energy. It will even raise the ocean floor if you have the tech to do so and allow it to happen.We were talking about crawlers there, not formers. Sea crawlers are not implemented at all, and gravship crawlers poorly.
In principle it's a perfectly reasonable and obvious thing to do. In practice, you may have a transitional period where you invent new bugs and misbehaviors. Then someone might wish for that "dumb" original code. Especially irritating in other games, is anything that gets a Former gratuitously killed. Like moving the units right into the path of oncoming enemies, or failing to stop work and retreat.True, though there are rare situations where you don’t want the formers to retreat...to buy you that last turn on a new defensive unit for an exposed colony, for example.
Not being able to use enemy magtubes also makes sense from simulationist pow.
Being able to use enemy infrastructure and potentially strike any city connected to tube network deep into enemy territory is not realistic.
Unit in transport is vulnerable and not combat ready, you can't just uninterrupted carry your army on a train up to enemy gates even now.
Significant boost:
Needlejet Colony Pod (or any Aero Pod)
Probe Foil
My testing said the stock AI would build them but not use them. Do you have different results from that? Or are you testing Thinker Mod's AI.I was talking about Thinker, but I'll admit my testing on this one wasn't as good as it should be. I was going off the computer's ability to successfully automate the unit and find a good base square, and how they're handled when they're the only colony in Scenarios. I'll try an actual game scenario and see.
If you provide this as a predefined unit, the stock AI will go after sea bases with these. It's bad enough that I often refrain from building sea bases early on, since they're likely to get mind controlled before I can do anything to protect them. However I can't see how this significantly boosts the AI in any way. Rather, it annoys me. I'm ok with that because I think it's fair, I've abused the AI with my own foil probe teams for years.Oh yes, these annoy the crap out of me too. I've lost at least one Thinker game as Zak due to getting hit by a fleet of these. From Deirdre of all people. But they do strengthen the AI, which is a big part of the goal here!
; Flags =
; 000000000001 = Allowed for Land units
; 000000000010 = Allowed for Sea units
; 000000000100 = Allowed for Air units
; 000000001000 = Allowed for Combat units
; 000000010000 = Allowed for Terraformer units
; 000000100000 = Allowed for Noncombat units (non-terraformer)
; 000001000000 = Not allowed for probe teams
; 000010000000 = Not allowed for psi units
;
Hypnotic Trance, 1, CentEmp, Trance, 000011111111, +50% defense vs. Psi
probe teams should not have Trance capability |
armor determines probe team combat |
Cyborgs that do not believe in Cybernetic |
Future Society, Cybernetic, GROWTH
I have: Future Society, Cybernetic, RESEARCH
I have no idea if that would make any difference, but that there is a difference, is worth mentioning.Gaians who are not Green |
Economics, Green, PLANET
So I was quite surprised to see the AI make an armored hovertank probe team unit with Trance capability. I checked my design changelog and indeed, I did eliminate this, it wasn't some mistake in the flags I set. In my alphax.txt the flags are:
Another possibility is Thinker is exposing a bug that was already in the game's code. But the stock AI has never designed a hovertank probe team unit, so I've never observed it before.
Adding a Fusion reactor into the mix might be relevant as well. I know that Scient's patch allows a reactor type to be specified for a predefined unit. I don't do that in my mod, nor do I use Scient's patch. My point is the Scient patch may have changed the flag behavior somehow.
The importance to my current game, is Morgan is dominating with all those nice thermal boreholes. I'm dead last, and he's sending these Trance hovertank probe teams at me. Fortunately I built the Hunter-Seeker Algorithm, just barely before he and others were going to. But if it weren't for that, I'd have a real problem. Mindworms are my armored probe team antidote, since they aren't affected by probes and regular armor doesn't matter to them. I do allow probe teams to have 3-Res armor, for lack of any way to prevent it, and I think that's all the anti-mindworm buff a probe team should have. I don't want invincible probe teams in my mod.
In my mod, as in the stock game, the compulsion of the Cybernetic Consciousness is to choose Cybernetic Future Society. Nevertheless, I check on my ally in my current Thinker test game, and I see they've chosen Thought Control! I've never seen that happen before.
My compulsion line in cyborg.txt is a little different from the stock game. Instead of:Code: [Select]Future Society, Cybernetic, GROWTH
I have:Code: [Select]Future Society, Cybernetic, RESEARCH
I have no idea if that would make any difference, but that there is a difference, is worth mentioning.
Thinker calls Smacx's native propose_proto function to create those prototypes, but the problem with those abilities looks like this function does not do any checks if the rules allow the ability for the unit.
New social_ai decides what society models they will run and the old code has been replaced. They are not allowed to select social opposition models, but currently the social preference category does not get any specific priority either.
I could maybe increase that priority but I'd rather avoid situations where the AI's always choose one model regardless of other considerations. Now it has some situational awereness, where if the AI has enemy factions closeby, it will prioritize POLICE, MORALE, and PROBE more, among other effects.
Lots and lots of playtesting to balance these. Don't really want the factions or the techs to be genericized, with some kind of "one true borehole" path through the game. It makes TOTAL SENSE for Morgan and is TOTAL ANATHEMA for Deirdre.
Some of the factions, they retain a secondary compulsion, i.e. ECONOMY for Morgan, PLANET for Deirdre. Other factions, in my mod they don't have a secondary compulsion. It's a limiter, it straitjackets their choices in the social engineering table. I made a lucky find, that setting this to Nil, gives the stock AI more choices. And that the stock AI will actually make those choices!
Economics, Green, PLANET
Economics, Free Market, nil
And often in the stock game there are situations where playing strictly according to a factions narrative, e.g. using only their prioritized social settings, results in inferior play.
Sea level rise wasn't really relevant when the AI had such poor production etc.
Like if one AI is planet friendly, should it stop borehole building altogether?
How is it going to deal with the disadvantage in production vs the other factions then?
It probably means the rules parser ignores these two values and they have no actual effect on the AIs.
You can't anticipate every balance issue that arises with mods. Yes, you can focus on the stock factions and alphax.txt rules. Please don't. Not in ways that mess up what other modders are doing in their mods. There's a difference between being compatible and having an interface boundary with other mods, and thinking you personally are supposed to solve every problem yourself, with Thinker mod as some kind of standalone ultra-competent game experience.
QuoteSea level rise wasn't really relevant when the AI had such poor production etc.
Actually it is still not relevant. I have proven in the other thread, that the game is cheating on AI eco-damage. 3X difference compared to a human playing the same faction! There's a reason I've never adopted the play style you've implemented for the AIs. I'd get slaughtered by mindworms doing that. The whole world would end in a dripping wet mindworm apocalypse.
I hope you decide to make it relevant, i.e. make the AI play by the same eco-damage rules as a human player.
As a player, it's perfectly possible to run 50 mineral production from boreholes with zero eco damage. This just requires some timing with the first fungal pops and then rushing lots of tree farms or similar clean mineral boosting facilities.
If we were to go on increasing AI eco damage, then the increased fungal pops would also act to lower the eco damage because the clean mineral cap increases faster.
The increased number of fungal pops would also cause sea level rise even sooner.
It's always possible to change librarian level cost factor to 7 and see how the equal eco damage would change things when the cost factor is similar to transcend level. I just doubt it makes that much of a difference here.
I'm not worried about that. I want the AI to suffer the consequences of the eco-damage it does. So that it isn't so easy for it to make 40 minerals cities and invade me like I'm standing still. I may get some flooding, they may get giant mindworm stacks that completely wipe out their cities, no matter how big they are. Have you played through that sort of thing? Did it because of illegal chemical weapons a couple of times, it wasn't pretty.
I suppose that part of the formula works as intended, e.g. limits certain exploitative strategies.
It doesn't make sense to say eco damage gives some huge advantage to the AIs since human player can easily exploit it.
What maybe could be done here, is have some kind of a config option to have the AI adjust the extent it uses heavy terraforming improvements, like boreholes and condensers. It could even adjust it according to the faction definition, but I'm not sure yet how that might be implemented.
and one of the terms in the final eco damage number is "3 - PLANET", and not "PLANET + 3".
Improvements = ((2*WorkedImprovements + 1*UnworkedImprovement + 8*Boreholes + 6*EchelonMirrros + 4*Condensors + Seabase - Forests) / (8 * (1 + TreeFarm) * (1 - HybridForest))
Btw, one of the lines on that revised eco damage should be like this:
In general, the problem of an AI being written that simply kicks the player's ass, and thereby isn't any fun to play against, is a known game design problem.
Most of the time we're mainly dealing with scripted routines, not some computationally heavy machine learning stuff.
Interestingly I created a separate, simpler pathfinding routine for Thinker which seems to perform its role very efficiently.
> GC3 may have attempted to do some computationally heavy, threaded, machine learning stuff.
It would be good to have a source for this kind of claim.
Mostly it should deal with fine-tuning the existing behaviour though.
What does Thinker do to the faction placement algorithm?
This colony pod argument is something I will mostly disagree with. Grabbing territory doesn't do much by itself unless it's populated by bases. Closely packed based can be defended more easily anyway. Each turn a colony pod spends on movement is a turn of missed productivity from a future base.
Makes it eco-suicide to spam more than one borehole per base. This would interfere with Thinker's current functioning.
Right before he left, Yitzi talked about the need for huge armies of formers bogging down gameplay. His proposed solution was to make all formers cost mineral an extra mineral upkeep regardless of clean reactors or support value but at the same time to reduce the time needed for terraforming in the alphax file.
The formula has a wide range of variables but I think it does make sense to add "if enemy units inside borders" factor there.
It's just currently it builds too few units. When its adjusted to build more, the units should be mostly offensive in nature.
Closely packed based can be defended more easily anyway.
With current strategy I can easily corner thinker faction on my contient on a small piece of land and grab 2x more land myself.
Prevent war with diplomacy until I'm ready and after buildup 2x more land mean 2x more support minerals, easy future war.
or monolith tile early will offset 2 turns spent getting there.
but after buildup 2x more land equals 2x more resources and 2x more really good tiles that are crucial in early game.
It build tons of scout patrols early, at some point all scouts were gone and it had tons of plasma sentinels and it didn't lost scouts in war since it was only me and them on the continent.
You're too much concentrated on how well it does isolated buildup, too little how its behaviour interact with other factions and human player.
Grabbing territory deny it to other factions, player controlled one specifically. For a player it's essential to have more land to work with than AIs to counter their cheat bonuses.
Fast horizontal expansion is pretty much the key in this game, at least if one looks at this speed run (http://www.dos486.com/alpha/university/).
If there is no consensus, maybe we could have at least thinker.ini setting that would keep AI bases 3 tiles away.+1. Or make it faction-dependent to add variety. If I remember right, vanilla Miriam preferred very wide spreading. I too have no stamina to play on huge maps and mostly use standard, and there colony pod wars become a minigame in itself.
I know you didn't change anything, but this time all bases were spread 3 tiles apart ( no base within borders of another base ).
If it looked like this in my previous game I wouldn't complain at all. Maybe I had weird map geography previously, will see after more games.
Idea regarding upgrading units: Just automatically disband all units, that are inside base and have both attack and defense values half, or less of maximum available.
First impressions:
Level of military buildup probably would be suitable in late 2100s, for an early game it seems a bit too crippling.
Positive is it would be really hard to conquer it early. I'll continue with this game to see if AI will recover from a slower start.
+1. Or make it faction-dependent to add variety. If I remember right, vanilla Miriam preferred very wide spreading.
Early game is quite tricky to manage especially if the faction has support problems.
Well well, now we have a new develop build (version 20190314) available from the downloads (https://github.com/induktio/thinker).
1, 2 ; Numerator/Denominator for frequency of global warming (1,2 would be "half" normal warming).
I notice it contains an alphax.txt. None of your previous development versions did, nor did your 0.8 release version. Was this intentional? I sure hope not, because that makes it de facto incompatible with any mods that change alphax.txt. That really should be left alone as the text modder's territory / interface / boundary.
This is the 1st time you've decided to reach into alphax.txt. When you do that, you risk stepping on other people's lawns.Since when it's *your* lawn?
I'm nearing 1 year of psychological effort put into my mod, and 6 months of full time work countable hours on it.You've spent a year changing values in configuration files and playing the game, in your own words fiddling. If you think you've learned anything substantial about game development, you are delusional.
I respect your work enough to test it for now. I don't do that sort of thing forever. I can't make a living playing games of SMAC indefinitely, not even for my own modding let alone yours.Just play the game if you enjoy it and eventually provide feedback, or don't play if it feels like an unpaid job.
Time that should be spent on a new, better game than SMAC.Good luck.
Since when it's *your* lawn?
Just include alternative version of your file meant for thinker if it'll ever be required,
which is not the case currently and probably won't be.
Induktio already agreed to make changes to values from txt files optional if possible, during ai focus debacle.
You've spent a year changing values in configuration files and playing the game, in your own words fiddling. If you think you've learned anything substantial about game development, you are delusional.
For what you've made, 6 months of full time work is insane, you'll never produce a game.
Just play the game if you enjoy it and eventually provide feedback, or don't play if it feels like an unpaid job.
It's Induktio who is doing us a favor here, not the other way around.
Those formulas are correct, yes. (Would you end up reimplementing them, rather than calling the existing hurry function for the AIs?)
There's also the question of whether to partial-rush the item, just enough to complete it with the base's mineral production this turn.
Two nutrient resources shouldn't be hidden under faction placement. User should be aware of it and it should be a separate opt in setting imo. Maybe take 0,1,2 values as a number of nutrients.
To not bloat config with new variable,
With the starting bonuses I think it should be a nutrient+forest because then the forest can start spreading and improve the area even more.
colony pod pathing |
I play with tech stagnation, dense rainfall, low erosive forces.
In my previous games in 2170s most bases worked only improved terrain and half of the factions started to deploy crawlers and build boreholes.
With vanilla weights + tech_balance=1 in 2160s half of the factions didn't start to terraform at all, no boreholes in development, no crawlers, but Deidre is an industrial powerhouse obviously.
I had it well though out, so there was a bit of variance between factions, but I forgot the exact changes, but it was roughly something like this:
Centauri Ecology, 4, 4, 5, 6,
Biogenetics, 4, 5, 4, 4,
Industrial Base, 4, 3, 5, 3,
Information Networks, 3, 5, 3, 3,
Planetary Networks, 3, 5, 4, 3,
Social Psych, 2, 3, 5, 4,
Applied Physics, 5, 3, 2, 3,
Nonlinear Mathematics, 6, 4, 3, 4,
Ethical Calculus, 3, 4, 5, 5,
Industrial Economics, 3, 3, 5, 4,
Industrial Automation, 4, 4, 6, 5,
Gene Splicing, 3, 4, 6, 5,
Environmental Economics, 3, 3, 6, 5,
Ecological Engineering, 4, 4, 6, 5,
It gets them complete economy and basic defenses with 4-2 units. From there I left them to play with vanilla weights.
Tech valuation function is just pretty complex and the result is really far from a simple dot product the weights would imply.
Faction_placement works in a way that the bonuses will appear in squares that previously contained supply pods.
Actually when we will add forests to the mix, it makes also sense from the storyline point of view because forests can be popped from supply pods.
int base_tile_score(int x1, int y1, int range, int triad) {
const int priority[][2] = {
{TERRA_RIVER, 0}, // was 2, river doesn't matter much and few river tiles scew the result
{TERRA_RIVER_SRC, 0}, // was 2, river doesn't matter much and few river tiles scew the result
{TERRA_FUNGUS, 0},
// changed from -2, negative values from few arid/moist fungus tiles shouldn't outweight too easily good terrain with few rainy, or resource tiles
// I deal with the fungus with other changes later
{TERRA_FARM, 1}, // was 2, reduce impact of terraforming from nearby base
{TERRA_FOREST, 1}, // was 2, reduce impact of terraforming from nearby base
{TERRA_MONOLITH, 6}, // was 4, but do not add rainy/rolling bonus later
};
MAP* sq = mapsq(x1, y1);
int score = (!is_ocean(sq) && sq->items & TERRA_RIVER ? 2 : 0); // comparable with energy bonus, wich I'd value much less than nutrient/minerals
int land = 0;
if (sq->landmarks && !(sq->landmarks & (LM_DUNES | LM_SARGASSO | LM_UNITY | LM_RUINS))) // with my changes monolith provide a lot of weight and fungus doesn't have negative impact, so do not add magnetism to ruins
score += (sq->landmarks & LM_JUNGLE ? 24 : 12); // one flat bonus for a landmark, 3 : 2 for each tile caused monsoon to outweight excellent land from 20 tiles away and medicore land from 40 tiles away
range *= (triad == TRIAD_LAND ? 3 : 1);
// could be changed to 2 : 1, to increase search area, if colony pod was capable of refusing to settle on below 13 score terrain until it reach its destination.
// Basically before you build base when 3 tiles away from previous one, check base_tile_score() for current location, if it's less than 13, continue moving toward better destination
// If it reach destination tile without deploying on the way, build base there.
// with these two adjustments it should be capable of crossing few tiles of arid plateu/east slope/great dunes to reach oasis/landmark on the other side,
// eventually these gaps of terrible terrain would be settled anyway, after all good spots were used
for (int i=0; i<20; i++) {
int x2 = wrap(x1 + offset_tbl[i][0]);
int y2 = y1 + offset_tbl[i][1];
sq = mapsq(x2, y2);
if (sq) {
int items = sq->items;
score += (tx_bonus_at(x2, y2) ? 6 : 0);
score -= (tx_bonus_at(x2, y2) == RES_ENERGY ? 4 : 0); // value energy much less
if (!is_ocean(sq)) {
if (!(items & TERRA_MONOLITH)){
if (sq->level & TILE_RAINY && sq->rocks & TILE_ROLLING) // rainy and rolling is very valuable for a new base
score += (items & TERRA_FUNGUS ? 1 : 4); // fungus has to be removed
else if (sq->level & TILE_RAINY)
score += (items & TERRA_FUNGUS ? 0 : 2); // fungus has to be removed
else if (sq->level & TILE_MOIST && sq->rocks & TILE_ROLLING)
score += (items & TERRA_FUNGUS ? 0 : 2); // fungus has to be removed
}
else if ( sq->items & TERRA_FUNGUS ) score -= 2; // Monolith on fungus - ruins most likely, so reduce weight of monolith cluster
}
if (i < 8) {
if (triad == TRIAD_SEA && !is_ocean(sq)
&& nearby_tiles(x2, y2, LAND_ONLY, 20) >= 20 && ++land < 4)
score += (sq->owner < 1 ? 20 : 5);
if (is_ocean_shelf(sq) && !(items & TERRA_FUNGUS)) //fungus has to be removed
score += (triad == TRIAD_SEA ? 3 : 2);
}
for (const int* p : priority) if (items & p[0]) score += p[1];
}
}
return score - range + random(6) + min(0, pm_safety[x1][y1]);
}
I think one guaranteed monolith for ai would the be best,From a human player's standpoint, it's definitely less disruptive to the narrative than a magically appearing forest. Yes aside from the Ruins, Monoliths don't just appear on the map without a player popping a pod. But story-wise a Monolith is not something that a player "does". The player didn't bring a Monolith here, the player simply discovers that it is here. Whereas, humans bring trees with them. And robot mining equipment. And robot farmers. And robot solar collectors.
If some player wanted to help ai with an early development even more, there is always free former option.
The forest would appear in place of unity pod, near the place human crashlanded, it's obvious they spilled the seeds, when crshing.
You also complain about gamism in a game where harverstable forest can pop to existence in a year.
This kind of tradeoff is exactly what GNS Theory (https://en.wikipedia.org/wiki/GNS_theory) is about. What you might think is a perfectly ok thing to do as a Gamist, to drop forests on the map because the minerals are highly desirable for a starting city, is damn irritating to either a Narrativist or a Simulationist.
I think, I've figured out how your colony pod placement works...
It just use the original code, but before it moves you check if there is a base within 2tiles radius, if not and a base can be built, you do it instead of moving.
swiss cheese
The Weather Paradigm driven Datatechs have been going nuts with Boreholes for a long time.
I'm kind of inclined to keep this an AI-only feature by default, since the human player will have those pods to pop anyway.
That's why a monolith may not be nearly as useful because it doesn't lift the nutrient production cap on a tile.
That's some advanced level terraforming right there. Just look at how nicely the pop-maxed bases are placed in rows and so on.
Roze's quantum supply crawlers
even quantum crawlers cost roughly 50 minerals
Regarding colony pod placement, I've actually red through thinker source and it seems that all necessary functions are already disassembled, below I propose changes to the code that should:
...
And again get rid of 2 tiles bases spread on jungle. Instead of using extra nutrients, to rapidly settle jungle and surrounding area ai gets clustered bases with too much food and too little production.
It might also just attempt to connect them to the network nodes.
I've been thinking about implementing project rushing but it might result in run away AIs accelerating even faster,
and maybe it is also annoying for the players to see the projects snatched away with little warning.
Inspired by this project, I've returned to learning C++ and will try to implement few ideas I have, sometime next month.
If you are going to put this project on hold, or abandon it, it would be great if you could make your hooks to the exe Scient's way before you let it go.
So even unexperienced coders could continue to develop it and hopefully be able to port thinker to new opensmax releases without touching the exe.
I don't consider this project abandoned or anywhere close to itOoh, a great weight off my mind. You are a real knight of progress, good sir!
Especially because there seems to be some negative feedback, I want to express my opinion. This mod is awesome! The AI is so much better!Well yeah, I think we can call mission accomplished on that one. Though it can be seen that most of the criticism comes from one source, so there's that. Beyond a certain point one just can't be bothered anymore.
My game was a normal world size on Thinker level. 70% land and average everything. I played a "balanced" Consciousness (no techsteal, -2 growth instead of -1, +1 research instead of +2).I assume you were using the new worldbuilder settings then. Do you think they made a significant impact on the gameplay overall? The AI is pretty adept now at economy building, so it can be much harder to acquire governorship and so forth. During development the economy building was the main focus in AI improvement, since I figured it was the obstacle that would have crippled AI challenge unless fixed somehow.
Using Thinker mod and PRACX mods together. No crashes experienced and secret project videos play.
Usually I crush the ai and their empires are quite sad. Pleasantly, the AI produced empires that had MORE bases than me and even MORE pop than me, EVEN AFTER I POP BOOMED!
Of course it wasn't perfect competition. I was able to get Airpower/MMI before the AI and they can't really stop me now. Morgan never really got off the ground, and Yang is lagging far behind even though he has sizable territory (small pop in bases - never boomed). The AI also isn't ruthless at acquiring secret projects so it's totally possible to get all the ones you want. I understand there's a pro and con there so it's not really a negative. But it does contribute greatly to my advantage that I can get all the good early secret projects.On standard map sizes and below, almost always some faction seems to stagnate because of a lack of space, but probably it isn't a big issue if most of the time the factions develop pretty fast. I would call it an issue if it happened on huge maps instead.
Hello there, nice to have more players.
> 2. The AI doesn't really take advantage of its industrial output to pursue Secret Projects.
Not sure what you mean by that. Are you saying AI should rush secret projects or prioritize it more in the build queue? But if you got the project only one turn before the AIs, at least they put some effort into it? Here's a summary how the project queue works:
1, 2 ; Numerator/Denominator for frequency of global warming (1,2 would be "half" normal warming).
The formula used to compute the energy lost by a base to inefficiency is:
Inefficiency = (Energy × Distance ÷ (64 - (4 - Efficiency) × 8 ))
Where:
Energy = amount of energy produced by base this turn
Distance = distance from Headquarters base (16 if no HQ)
Efficiency = social engineering efficiency (+2 if Children’s Crèche)
If denominator reaches zero, all energy is lost to inefficiency.
Source: http://alphacentauri2.info/wiki/Inefficiency_(Advanced) (http://alphacentauri2.info/wiki/Inefficiency_(Advanced)) but the F1 Help in-game says the same thing.
I notice the guide also states that "The Social Priority line specifies the social choice a faction will oppose and be unable to select in social. This has no effect for a human using the faction." This seems incorrect, it should refer to "Social Opposition line" and the opposition category value should also affect human factions equally.
Social Priority
The Social Priority line specifies the social choice a faction will support (be more friendly towards factions that use it, less towards factions that use other models), and the social effect the AI will prefer to increase. This only affects AI playing a faction, not humans using the faction. It takes the form Social Category, Social Model, Social Effect. Example:
...
Social Opposition
The Social Opposition line specifies the social choice a faction will oppose and be unable to select in social. This also affects human factions. It takes the form Social Category, Social Model, nil.
One of the newer features implemented in v0.9 was that if the AI loses bases to conquest, it triggers an extra priority to build more combat units. Some people observed previously the AI built too little defense so that thing was upgraded. Speaking of that, it seems Hive is really going nuts with that rover building, way over 30 impact+ rovers in some of the later saves. Though it would certainly build more needlejets instead if it just had the tech.
> I noticed that the AI's expanded relatively quickly until they reached 22 bases, then they paused.
That one is actually a self-imposed limit, the AI just stops building pods whenever it reaches the map size specific limit. It isn't even related to any lack of production lol. Maybe I should sometimes run a testing game with this limit removed and see what happens. Maybe this limit could even be configuration option.
You seem to have a pretty detailed understanding on how the map layout might affect tech trading. I'm not certain on how the AI-to-AI tech trading works, since diplomacy code is still largely unreversed. But I could imagine something like this could be happening here.
> Also, I don't know whether you have control of this or not, but the AI's should build more cheap infantry units(!)
Those Peacekeepers have way less infantry than they should have, not sure even if those fungal towers can explain all of that. It seems like some kind of an anomaly. Generally the AI also needs to avoid building too much unneeded defensive untis that eat up support, that was also a major problem with the vanilla AI.
Don't worry about it. They paused when they reached approx. 22 bases. Then they resumed settling new bases. Santiago (for example) expanded from 18 bases in 2225 to 28 bases in 2250 and 30 bases in 2261. At "Librarian" difficulty. Presumably it would be worse under Thinker or Transcend.
The AI's do get techs faster than research alone would account for - I keep detailed enough stats that that much is clear. So they are getting techs from somewhere else too. The Hive and Believers didn't have probe teams, so that wasn't a source for them in this game. So - probably they're trading some? Not nearly as many as they could.
I've been paying more attention since then, and certainly the AI will talk to you without units meeting. Units meeting is one trigger for AI's to talk, there are others, and units meeting doesn't always trigger the AI to talk.
Actually that limit is the same for every difficulty level, it's only scaled for the map size. Whenever the AI reaches the maximum base limit, it simply stops building pods in all bases. Currently the upper limit is equal to min(40, MapSquareRoot/2) so that means it caps at 40 bases on huge maps. Usually it will stop expansion sooner if there's no unclaimed territory near its bases or it becomes involved in vendettas. Do you think this variable should be scaled for difficulty level too?
So starting early terraforming is indeed the best choice for ai and the way the ai and tech advancements works, if they don't get formers stright away, they will get them with a huge delay and got crippled. Gaians performance in thinker is all proof you need.
If you do anything with tech rate, I think it should just work like all the later Civ games, the cost of each tech is fixed depending on where it is on the tree. Something like 20 labs for first-level techs, times 1.5N for a tech of level N, would add up to roughly (and of course you could calculate it exactly) the current total cost for the entire tree but scale up more smoothly throughout the game. This would also reduce the impact of beelining restriction lifting, since the level 4 and 5 techs would be more expensive compared to filling in more early techs.
That's a major change and not at all something you'd put into an AI-only mod, but if you've decided to take on broader scope, that's one of the most fundamental improvements from SMAC to all the later Civs.
> Does this version also have the option of setting the amount of AI bases? Or is this planned for a later update?
That change was already committed over a week ago, it's in the newest config file.
Please try to remember that there are a lot of Narrativists playing SMAC. Narrative is the reason that people are still playing and talking about this game 20 years later. When I post on /r/4Xgaming that GOG is having another $1.49 sale, it gets 93 upvotes. That's the highest number of upvotes for any discussion subject right now, and it's the highest number of upvotes of the past three months. That pattern has been generally true in the past as well, for that 13.5k subscriber forum. SMAC in its own weird way is badass like that, or at least $1.49 SMAC is...pretty much this! SMAC/X is not only a pure logical challenge for me, but also an opportunity to role-play a leader in a ideological conflict in an amazingly evocative futuristic setting. So my question is: Do the patch upgrade the AI while also respecting the planet and factions original personalities? I mean, will Morgan still pursue the more economic enabling techs, or Deirdre pursue environmentalist ones, etc? Or will Deirdre build thermal boreholes left and right and Morgan become a warmonger just because it's more "efficient" from a pure gameplay standpoint?
Been playing a multiplayer game with the mod enabled. Could probably attach screenshots or files if need arises.
And could you please tell, do you plan to include V2.1 of the Scient's patch?
I found the updated tech_cost function either worse than the original or of negligible impact. Granted I was playing as the Consciousness, so I eventually reached +6 research (and Free Market), but as soon as I switched to market I was getting a new technology close to every turn (I transcended in 2266, though I probably could have been elected to Supreme Leader 30 turns earlier), eventually multiple per turn. I suspect the way it's set up actually accelerated my rate of tech acquisition at the beginning of the game, leading to me rapidly running away with things while the AI sat there wondering what was happening.
Here's a screenshot to illustrate the situation (https://imgur.com/a/8Fmq4CS). This is the 62nd tech I'm researching, so per the original tech_cost formula (http://alphacentauri2.info/index.php?topic=3505.0) the base cost should be 20*20*58=2320, if I read that correctly. This is multiplied by something for world size adjustment (sqrt((50*100) / (40*80)) = 1.25?), then presumably 0.4 for +6 research, and 2320*0.4 = 928. So the base cost should be 928*(worldsize adjustment >1) for this tech.
1) I cycled through a few map generations with different settings just to test out your Worldbuilder update, and I'll probably reset it back to the original version. I imagine it does a great job of balancing faction starting locations, but it creates a world that looks too similar all over for my taste: large squarish blocks of land bolted on to other large squarish blocks of land. Archipelagos, peninsulas, isthmuses... these features help break up the monotony and make Planet feel like a planet, even if perhaps balance suffers for it.
I could have increased the costs even further but I avoided it so far, because then it would balloon the high-end tech costs on huge maps to very large proportions. How much do you think the Threshold of Transcendence tech should cost on standard maps for example?
I think it's probably worth investigating the total tech tree cost created by the original formula in the early (tiers 1-4?), mid (5-9?), and late game. In the early game, overall tech tree cost should be about the same as before, but with stronger differentiation between the tiers to discourage beelining for key techs. In the mid game, overall tech cost could inflate a bit to account for geometric inflation caused by lab facilities + free market + uncapped energy terraforming + social engineering.Well, I agree with the basic premise here. Increasing the tech costs significantly from levels 4-5 onward is also a design goal here since many powerful items become available by then. But it does also matter how much the most advanced techs should cost since the tech tiers should form some kind of an intuitive continuum. Probably the highest-tier tech costs should be bumped beyond 10k even on standard maps anyway.
I don't know how easy it is to do, but it might be worth simulating an AI University/Consciousness playing through the game with and without Thinker, trying to match the pace of tech acquisition in the base game (original tech costs, bad AI) to the pace in Thinker (revised costs, good AI).This one is really easy to do because you can run Thinker/non-Thinker AIs side-by-side with the factions_enabled setting. It does not affect tech costs though, to do that one would need to compile a slightly modified version of Thinker. I'm not providing an update with the new tech cost values just yet, but the consensus here seems to be that they should be increased.
I didn't quite get what PvtHudson was asking here. Do you want to see a table on how the tech costs change with the number of researched techs? It's possible to run some simulations with it by spawning the factions on a random standard map, then continuously marking one tech more researched and calling the original tech_rate function to see how the costs change. But there's probably some factors that are not taken into account in that test (number of turns elapsed etc).I'd like not to see, but to have an ability to change costs returned by standard algorithm. So as each cost returned by standard algorithm is multiplied in game by the result of some_func(number_of_techs_known, some_coefficient_taken_from_ini), and the some_coefficient_taken_from_ini governed the curvature of some_func. This will allow to experiment with different speeds of tech cost rise.
I'd like not to see, but to have an ability to change costs returned by standard algorithm. So as each cost returned by standard algorithm is multiplied in game by the result of some_func(number_of_techs_known, some_coefficient_taken_from_ini), and the some_coefficient_taken_from_ini governed the curvature of some_func. This will allow to experiment with different speeds of tech cost rise.
* LevelI'm not so sure the tech cost shall be based on level of the tech in question. Of course, this spawns issues with beelining. But it seems SMAC creators were much more concerned with preventing tech runaways. And it mostly works, except they hadn't envisioned the level of energy runaway players could accomplish.
> Blunt question. Did you manage to encourage AI to equip units with Soporific Gas Pods?
I haven't changed anything in that regard. Design_units planner will only create a couple of custom units which will not have that capability.
No worries. I won't include this logic into your mod if you don't like to. It this case I'll ask permission to fork your mod and add these changes on top of it. Or maybe I will be able to patch the original executable that your mod uses. Then there won't be need for forking. Don't know yet.
Maybe I shouldn't, but I'll try to answer for him.
It's supposed to remove the cheese of gaining an advantage, by avoiding to trade techs, in order to keep the cost of essential tech you are beelining toward low.
Also an annoynce of picking some currently unnecessary tech from a pod.
The other goal was to make late game techs cost rise much faster to keep up with the development speed of competent player/ improved AI and prolong the late game, without changing the pace of early game research much. It's the first time Induct0 dabbed into changing gameplay mechanics, since he improved AI enough for it to become even more noticeable problem, than in vanilla game. It's also the first attempt, you can play with the source and try to find a better balance.
I agree that this feature is not in a satysfying state and I agree with your complaints about it's current state.
I thought you could be the right person to make it work, this is why I mentioned it in the other thread.
* Factions with positive Planet rating will build less boreholes than the average
AI factions?
Do you count current PLANET rating = innate + SE? If so, does it mean when faction chooses specific SM to increase their PLANET rating it actually program itself to build less boreholes?
I've been playing a game on Transcend as the Morganites, and have been enjoying the challenge of the other AI's actually developing past me (with one exception). I got lucky starting out with a large continent to myself, with a nearby Manifold that allowed me to capture enough mindworms to survive. I've had to avoid Free-Market because I can't risk the wrath of the nearby Gaians who have taken much of my coastline, so I may have to stay Green this run.
The one AI that has done very poorly this game was the Free Drones. They started on their own small island, but have stopped settling it after two cities (it could hold 4), and haven't set foot on another continent or even made any sea-settlements.
Frontier, None,
Police State, DocLoy, ++SUPPORT, ++POLICE, --TALENT
Democratic, EthCalc, ++EFFIC, ++GROWTH, --SUPPORT
Fundamentalist, Brain, ++PROBE, +MORALE, +INDUSTRY, --RESEARCH
Simple, None,
Free Market, IndEcon, ++ECONOMY, ----POLICE, --PLANET, -INDUSTRY
Planned, PlaNets, ++GROWTH, +INDUSTRY, --ECONOMY
Green, CentEmp, ++EFFIC, ++PLANET, --GROWTH, +TALENT
Survival, None,
Power, MilAlg, ++SUPPORT, ++MORALE, -INDUSTRY, +TALENT
Knowledge, Cyber, +EFFIC, ++RESEARCH, --PROBE, -POLICE
Wealth, AdapEco, +ECONOMY, +INDUSTRY, --MORALE, -PLANET
None, None,
Cybernetic, DigSent, ++EFFIC, ++RESEARCH, +PLANET, ---POLICE
Eudaimonic, Eudaim, ++ECONOMY, ++GROWTH, +SUPPORT, ---MORALE
Thought Control, WillPow, ++POLICE, ++INDUSTRY, +MORALE, ---SUPPORT
Switching production in mid-course carries a 50% retooling penalty for all but the first 10 minerals. 4 minerals would be lost.as opposed to the previous message that had the error:
Switching production between Mission Year 2211 carries a 50% retooling penalty for all but the first 10 minerals. 4 minerals would be lost.
Switching production between monopolistic grasping carries a 50% retooling penalty for all but the first 10 minerals. 4 minerals would be lost.The message seems to be trying to access memory that holds data which was never properly set. Maybe it was somehow displaying the message for switching away from a Secret Project, but since no such project existed it read from old memory.
There's one significant thing that needs to be decided though. Tnevolin has also been implementing lots of stuff in his The Will to Power fork (https://github.com/tnevolin/thinker-doer). Back then we decided the project could be forked because my focus was mainly AI improvement instead of the more balanced game mechanics tnevolin has been doing. I also didn't have that much time to evaluate what new stuff could be incorporated in this mod.
Without them, the game becomes much more about raw growth/colonization speed. And good luck trying to match 6 other Thinker factions with 30% discounts in the early land grabbing phase.
* New option: eco_damage_fix should increase AI eco damage to the same level than player bases
However, that eco damage change should NOT have significant effects to the game balance. It may just increase the frequency of sea level rises. Tell me if you notice differences.
> I think this might actually be a net buff for the AI, since the +30% multipliers it gets on Transcend let it far outproduce, and outtech, human players.
This is an important point that I've been thinking about. There are many mods out there that claim to "balance" gameplay by delaying crawlers/boreholes/pop booming and so forth. But the thing is, the AI doesn't micromanage these elements together as efficiently as a human could. The AI doesn't understand the value of stacking all these bonuses in one base to create super science cities, for example.
So in the end it might produce a benefit for the human player to have these tools available that can be combined in a powerful way. Without them, the game becomes much more about raw growth/colonization speed. And good luck trying to match 6 other Thinker factions with 30% discounts in the early land grabbing phase. :D
Yea I had been thinking about this. I would say it's about more than just modding so the AI is more competitive. With the base tech tree, there was really one optimal way to play. Rush right to Condensor, Borehole, Crawler. And ICS. 75% of the tech tree just wasn't relevant due to overcosted abilities, overcosted facilities, overcosted armor, etc. Many SE picks weren't viable, air units very undercosted. And so on. It got a bit stale for me as it's more or less the same strategy every single game.It seems to me that everyone agrees that the base game was broken, but nobody agrees on how to fix it. :D
However:
A stronger AI is more fun to play against. I do sort of crave for that. It does a lot of silly things unmodded. At 30% Transcend would be pretty much impossible. Wouldn't be the end of the world IMO. Taking Master of Magic as an example the best players don't expect to win most games on the highest difficulty.
Oh, by the way. It's been brought to my attention that nerve stapling drones has basically no consequences in the very early game. I wonder if it would be a good idea to teach the AI to nerve staple when it doesn't have any commlinks with other factions and/or commerce income coming in?I believe it was said somewhere that you can only nerve staple a base 3 times total. That is a good idea to abuse it early.
Personality: Aggressive, Explore, Conquer
^TECH: {Biogenetics}
^-2 ECONOMY: {Excess wealth viewed as sinful}
^+2 PLANET: {Practises responsible stewardship of their holy land}
^+1 mineral, +1 energy in fungus: {Taught to live off the land}
^+15% offensive combat: {Religious fervour}
^Mind Worms act as double police: {Native wildlife viewed as angels}
^{May not use Wealth values.}
That's definitely overpowered; I didn't consider the interaction between psi bonuses from +PLANET and general +attack bonuses. With the Manifold Nexus, her units already had an effective +45% advantage over mine. Add in my faction's inherent -1 PLANET and the 3:2 odds for psi attackers... even if I had every base staffed by Trance units with decent morale, I'm not sure I'd have been able to stand up to that.AI is cruel :D its funny how in AC AI just declares war on first sight. Later civ games became so friendly.Aye, I'm finding that cranking out bases as fast as possible is essential to standing up to the AI in this mod. I used to be averse to having bases near each other, so it's been a bit of a change for me.
Looking at that your screenshot you could have placed 10 more bases around and it wouldn't be ICS ^^. One of the great strengths of Thinker AI is that it does not go strolling around but places bases close to each other. And it generally fills tons of available space.
AI has some base breakpoints - 20ish bases? Then they build more? I've read this somewhere - i see AI place lots of bases and then stop - its a bit weird as they sometimes leave half the continent empty even when there are good settle spots. They often spam a lot of sea bases.
One thing that might hurt them badly is a loss of base. Induktio changed AI to spam military units if it loses the base ?! I think. Looks to me that they go all-out war mode for very long and stop colonizing.
Seems to me that raising defense that much would lead to massive amounts of artillery being the best strategy. Especially with healing slowed down.
Always provide the save game if you're reporting bugs. An exception to this is if something is trivially repeatable, no matter which save game you load.
On a side note, next develop build will have an important fix contributed by Scient: satellite attack bug will be fixed when smac_only mode is activated!
That's what I'm thinking too. Fungal pops cause only a temporary stepback because each of them raises the clean mineral limit. It is actually best to trigger first fungal pop ASAP so then all the subsequent tree farms will raise the clean mineral limit. Some people don't actually understand this mechanic.
This actually happened in one of the test games where one AI (guess which one?) ROFLstomped the others and was producing thousands of credits each turn.I bet it was the Gaians. They always seem to become a superpower in Thinker; probably because they begin the game with a terraforming advantage, and have strong bonuses for early-game exploration and mid-game empire management.
Were you previously using the default value 1/2 ? It might be convenient to adjust this also for the new release.
I might adjust the base placement a little bit for sea bases, it emphasizes coastal locations maybe too much to be optimal. But I've been also busy trying to develop better methodology to reverse some of the bigger functions in the binary. There's some serious challenges.
I might adjust the base placement a little bit for sea bases, it emphasizes coastal locations maybe too much to be optimal. But I've been also busy trying to develop better methodology to reverse some of the bigger functions in the binary. There's some serious challenges.
As another poster observed earlier in the thread, the AI performs at its best in the rover era of technology. After jets and missiles become available, it builds them but doesn't use them as effectively. And as for any kind of combined arms tactics... forget it.
Amusingly, despite all this, nobody researched Advanced Spaceflight (D8) throughout the whole game, so Planet was just left to cook by itself.
Same here. My "solution" has been to disable copters, increase missile range and decrease its price, and decrease needlejet range. Copters are just too powerful and I'm too tempted to wreck the AI with them when given the chance. Missiles are nice because the AI does seem to build them and they will end up killing units when they hit. Needlejets are also extremely powerful so I took away my ability to do long range strikes deep into AI territory with them. Plus the AI can't stray too far from its own bases.I don't disagree - jets, copters, and missiles are all nerfed in the mod I use*. But I'm somewhat averse to changing stuff in the game just to make the AI work better. One of the things I like most about Thinker is that it makes the AI perform so much better regardless of whatever alphax.txt one happens to be running.
I justify it by telling myself that the factions on Planet don't want to repeat the early days of Earth flight with primitive instruments and line of sight weapons. If they want close air support, a needlejet works well. For long range strikes, they would use an unmanned missile not a B-17 style needlejet.
Interesting. I wonder if that's been a problem in my games, too...It could just be luck. As the modders tell us, the AI's tech selection is totally random. ;)
Necessitates higher penalties on the SEs/factions that get it as a +
One unit of Research could be nerfed to only provide 5% bonus or similar.This might help a bit to nerf player - but AI won't really get better.
I'd say a good starting point here would be to have the AI just build magtubes on straight-line distances between cities.
But I would not make the AI just build magtubes nearly everywhere like it builds the roads. So it would need some kind of planning mechanism to only build them where they tactically support unit movement.
Also I've been thinking of another way of balancing the tech costs and it would be a really simple change. Right now SE Research effect feels overpowered when the player can stack bonuses up to 50% which makes research go at double speed. One unit of Research could be nerfed to only provide 5% bonus or similar. Also factions with research penalties would not be anymore so massively disadvantaged.
Will the diplomacy improvements cover the AI being smarter about Supreme Leader elections? I think Lal called one election as soon as he could and he was only a few votes off from winning outright, like single digits short. I was his pact sister. Maybe he thought I'd vote for him? He then waited much longer than 10 years to try again.Being the Governor only means you can call the Council every 10 years on different proposals. You still have to wait the full 20 years to bring up a specific proposal again.
How much did the sea level rises affect the size of the continents, e.g. how much of them got submerged and on which timeframe? Did you notice any other significant changes in AI behaviour?
Being the Governor only means you can call the Council every 10 years on different proposals. You still have to wait the full 20 years to bring up a specific proposal again.
I think of these votes as being kind of like warning shots: the AI has this big of a population, if you don't do something about it they're going to win the game outright. Of course, as was so aptly demonstrated in my last game, that something is usually to invade the offending AI to steal their votes...
Update: So far I've had three sea rise events on 2/5 settings and abundant life:
2249: 66m
2263: 266m
2278: 266m
This is entirely AI-driven. I'm playing the Gaians and have almost no eco-damage and no advanced terraforming improvements. Lal and Zak have both chosen Green economics but I'm not sure if they need the efficiency (their empires are not very large). Morgan is on Simple for some reason. Yang, who sticks to Planned, did indeed start on his own continent. I saved the game at the start so it will be easier to compare initial coastlines with final. I know at least Zakharov has Advanced Spaceflight but he has not proposed a solar shade. It's not because of sunspots.
Lal seems to be getting his eco damage under control thanks to inducing vicious fungal pops and by building The Pholus Mutagen (damn him!). I am seeing trance units everywhere (which are really annoying for my worm-based army!).
By the way, AAA foils/cruisers are effective against me because I typically defend myself from sea invasions with needlejets. Is that your doing? :)
I don't remember if ecodamage sea raise is limited to some height or is it never stops when started. Does abundant life affect ecodamage? Don't remember this either.
All AI tweaking is Induktio's doing from Thinker mod that is included in this one.
I always found the amount of sea level rise a bit ridiculous so I turned it off in my own mod. All ice on earth melting is only about 80m of sea level rise.
I'd argue that extreme pollution might actually lower sea levels as the oceans start to boil over, more water vapor in the air. Also would make the planet drier. But supposedly that takes a huge amount of pollution, 10x or so of all Earth's fossil fuels. And Chiron doesn't have any natural fossil fuels at all. Although all those synthetic ones could be theoretically worse somehow.
It might be useful to set the global warming modifier to 1/3 or something. It's probably not excessive given how quickly these thresholds are being met.
A new develop build 20200526 is now available from downloads (https://github.com/induktio/thinker). Here are the changes:
* Road building algorithm has been completely rewritten to build more natural looking road networks.
* AI will now build magtubes after the tech is acquired.
* Draw visual marker around the population label of HQ bases to identify them more easily.
* New option: auto_relocate_hq will automatically move lost HQs to another suitable base.
* Fix revised_tech_cost formula to calculate SE research effect similarly to vanilla game.
* Reduce overall sea level rise frequency to 1/3.
* Add Trance Scout Patrol and Police Garrison predefined units.
....
> This should work no matter how I mod alphax.txt on scients patch correct? Might give it a try once I get all the kinks out of my tech tree rebuild
What do you actually mean here? Nothing here should be incompatible with alphax.txt editing.
* Road building algorithm has been completely rewritten to build more natural looking road networks.
60
190
380
660
1060
1610
2340
3280
4460
5910
7660
9740
12180
15010
18260
Adding 20% more to human lab cost is kind of the same as just giving the AI even more labs discount? To me that's a bit odd since human never had to pay 20% nutrients more or minerals more.
One suggestion: Is it possible to improve AI specialist usage? Activating them instead of using quite useless tiles. For example AI tend to work useless 1-0-0, 0-1-0 tiles or similar when it could use quite good specialists. Its notable on ocean bases - ocean producing only 1 food - there's no even point growing.. base is gonna starve. Also notable in heavy fungus maps.
(https://i.imgur.com/fbGjC3c.png)
How about those adjacent boreholes :P
I'm not sure if you're trolling here. When was the last time unmodified Thinker built boreholes next to each other? When does it ignore tech requirements?
has_terra(faction, FORMER_FOREST, sea)
Ok I had modded for plant forest to take tech: Ecology (Centauri Ecology). Formers take Indust (Industrial Base) to make. The AI can plant forests before getting the tech Ecology. This should apply to all basic improvements - Farm, Solar, Mine, Sensor, Road. As well the automated terraforming functions circumvent technology requirements for human players.
Frontier, None,
Police State, DocLoy, ++SUPPORT, ++POLICE, --TALENT
Democratic, EthCalc, ++EFFIC, ++GROWTH, --SUPPORT
Fundamentalist, Brain, ++PROBE, +MORALE, +INDUSTRY, --RESEARCH
Simple, None,
Free Market, IndEcon, ++ECONOMY, ----POLICE, --PLANET, -INDUSTRY
Planned, PlaNets, ++GROWTH, +INDUSTRY, --ECONOMY
Green, CentEmp, ++EFFIC, ++PLANET, --GROWTH, +TALENT
SE preference: Free Market
^+2 ECONOMY: {Free flow of capital}
^+2 SUPPORT: {Just-in-time supply chains}
^-1 MORALE: {Privatized military}
^-2 INDUSTRY: {Excessive contractor bloat}
^Immunity to negative POLICE: {Morally righteous}
^Extra DRONE for every four citizens: {Deregulation and austerity}
^50% hurry costs: {Angel investors}
^{May not use Power values.}
Unsurprisingly, it's a lot easier to coerce AIs into surrendering when they don't have a zillion sea bases to fall back on after conquering them on land.
Annoyingly, once I had forced Gold to surrender, I wasn't able to get my pact partners to call off the vendetta against him, claiming they had "accepted payment for his destruction". Thus, I had to repeatedly expel their units from my territory to keep them from wrecking my new vassal... which stopped working when the sunspots occurred.
Yeah, Thinker always decides where to build the new bases. Even though I reduced the tendency to build the sea bases on coastal squares, it's still kinda prevalent. Or did you have something else in mind?
Yeah, Thinker always decides where to build the new bases. Even though I reduced the tendency to build the sea bases on coastal squares, it's still kinda prevalent. Or did you have something else in mind?
Yeah adjusting that is a planned feature for the diplomacy mod if I'll ever get around to implementing it. I think in general it would help the AIs a lot if they could delay the aggression for the first, say, 100 turns and concentrate on infrastructure building instead.
One of the reasons Gaians tend to be so strong in this mod is that they concentrate first on getting the economy boosting techs and building infrastructure while often neglecting Conquer techs in the beginning. If they survive the first 100 turns in relative isolation, soon the massive edge in economic development will show and they will tend to overtake the other factions.
; ROBUST = Halves the intensity of minus effects in the named
; social area ("ROBUST, EFFIC" halves minus efficiency
; effects in social model).
; IMMUNITY = Immunity from minus effects in the named social
; area. ("IMMUNITY, ENERGY" prevents minus energy
; effects in social model).
> I have corrected the reassignment condition in WTP.
So how did you correct, e.g. which commits deal with that issue? Do you think you can create a pull request out of those changes?
Also, I would like to ask for advice regarding customized map generation. I like to play with 30-50% ocean and my problem is, I am tired with playing weak erosion maps and having to terraform-level all those rocks. If I change erosion to strong I get only about 30% land instead of the promised 50-70%. Is there a way to change that, perhaps by editing the alphax.txt?
Thank you for the mod! :)
Currently this project is on a kind of a hiatus but we'll see later when I'll get back to it.Cool!
Rather than go mad trying to figure out the world builder settings, I would just change the level terrain job to take 1 turn and play on the settings that work for you.Yes, that would solve that particular problem. But there are other problems with mountainous maps. They usually consist of large areas of rainy tiles and large areas of arid ones. Flat terrain is more even.
Yes, that would solve that particular problem. But there are other problems with mountainous maps. They usually consist of large areas of rainy tiles and large areas of arid ones. Flat terrain is more even.
Lower the hill and peak values in alphax until you're satisfied.
When playing multiplayer some time ago (before your mod), my group noticed that transports and isles of the deep have a very high chance of fishing alien artifacts out of sea pods. Irritating little bug.
Alrighty, I decided to get back with this development. There's a couple of things that could be added in or fixed from the previous release.
> I think there is a bug with free formers. Progenitors and Planet Cult don't get them.
This is probably caused by the fact they spawn a couple of turns late. Free units only get assigned on turn 1 in this implementation.
> Got a feature request idea while poking around the morale function: Any chance you can expose these turn thresholds for native lifecycle increases in thinker.ini?
> my group noticed that transports and isles of the deep have a very high chance of fishing alien artifacts out of sea pods. Irritating little bug.
Do you know if anything has been implemented about these on WTP?
> I am using the thinker mod v2.0 with PRACX v1.11 and can't automate the base governors.
Don't remember any bug reports about these. Are there any differences to the vanilla binary here?
It could be possible it's related to some fix in Scient's patch. Generally Thinker should just skip player-owned bases and not affect their behaviour. You could just try using build queues as a workaround in the meantime.Hi Induktio,
Hell yeah, going to have to play again.Definitely! Especially since Induktio released V2.2 three days ago!
Hell yeah, going to have to play again.
AI garrisoning priorities are rewritten to move defending units to bases that are the most threatened.
Combat ships will now engage other targets with artillery much more often instead of always defaulting to normal direct attack.
All artillery units will use new targeting logic to place them in more useful positions and prioritize threats more accurately.
New option: clean_minerals sets the amount of minerals a base can produce before experiencing eco damage.
Fix engine bug where selecting bombardment on an empty square sometimes resulted in the attacking unit being destroyed.
Fix very rare issue where a faction might get eliminated even when they had active colony pods.
Those changes listed are already part of the develop build. Nothing ambigious about it.
It's interesting to think about how Thinker plays the game for the most part without making any distinction if the opposing faction is human or AI. Currently none of the movement code makes any decisions based on that. So it doesn't garrison human borders more or make any distinction in that when choosing attack targets.
You can also take a peak at WTP code regarding threat and military spending, a more naunced solution than simple rule I came up with above can be derived from it.
Did you actually get the popup that says a faction has been eliminated? Otherwise they might have a colony pod alive somewhere that prevents faction removal. Might need to look at the save.
That happens by design if fungus is more productive than forest tiles. What resource penalty are you referring to here?
Oh. ZIP I can upload. In fact all of my releases are ZIPs. I just thought maybe you have some magical way to reference GitHub so I don't need to upload **every** release! 😁I'll go have a look.
Actually, never mind. I see that it accepts file OR URL. So I just pointed to my release page.
Can you correct the name of my download and remove parentheses from title? I didn't notice you have a base game field already.
It has to be noted, the last update mainly changed the unit movement. I didn't make many changes to production choices with some exceptions. V2.3 increased the priority given to faster land/sea units because I noticed the AI built way too few rovers in some test cases. AI should also build foil probe teams earlier and more often. That should help with scouting because one play tester reported, in the earlier versions, the AI took really long time to make contact with other factions.
Speaking of test games, I think the AI should now be an adequate opponent on Veteran's map. Combined land/sea operations are very hard for the AI but I think Thinker is getting there. It might be very interesting to setup some kind of a multiplayer style "always war" scenario on that map. In test games it took Thinker about 230 turns to completely conquer vanilla AI on the other side of the map, so there we have it. Tactically the AI might still make many errors that cost numerous units though.
Oh. ZIP I can upload. In fact all of my releases are ZIPs. I just thought maybe you have some magical way to reference GitHub so I don't need to upload **every** release! 😁I'll go have a look.
Actually, never mind. I see that it accepts file OR URL. So I just pointed to my release page.
Can you correct the name of my download and remove parentheses from title? I didn't notice you have a base game field already.
But yeah, no; I never even been to GitHub, and I'm no tech wiz.
> The AI is building Cruiser Probe Teams in landlocked cities.
That's really strange. Is there any chance the land altitude around the base was changed after building that unit?
Bonus content: this might be a good soundtrack (https://www.youtube.com/watch?v=-dwmf-wx8VQ) for this mod. :)
> Also, I notice that even with collateral_damage on 0, one successful attack kills a full 10 stack of forced pop mindworms.
That behaviour also applies to probe team stacks. When one unit loses, the whole stack is destroyed. It's surely one of the weak spots for the AI because it tends to stack so many units in one square. I've been thinking of changing that for balance reasons.
Rocky, do a clean install first when you face unresolvable problems. Download the game from GOG and apply mod on top of it.
debug("colony_move %d %d -> %d %d | %d %d | %d\n", veh->x, veh->y, tx, ty, faction, id, tscore);
adjust_value(pm_former, tx, ty, 1, 1);
if (!sq || y < 3 || y >= *map_axis_y-3 || (~sq->landmarks & LM_JUNGLE && [b]pm_former[x][y] > 0[/b]))
return false;
int mineral_cost(int faction, int prod) {
if (prod >= 0) {
return Units[prod].cost * cost_factor(faction, 1, -1);
} else {
return Facility[-prod].cost * cost_factor(faction, 1, -1);
}
/*
Calculates mineral cost for given faction, production item, and possibly base.
If base is not negative then its cost modifying facilities are taken into account: Skunkworks and Brood Pits.
*/
int mineral_cost(int baseId, int itemId)
{
BASE *base = &(tx_bases[baseId]);
return (itemId >= 0 ? tx_veh_cost(itemId, baseId, 0) : tx_facility[-itemId].cost) * tx_cost_factor(base->faction_id, 1, -1);
}
; Remove AQUATIC faction bonus minerals from sea mining platforms.
By the way, try not to paste code that is from obsolete version of Thinker. Variable naming in source code is subject to any changes at any time. It's not part of the user interface, so to say.
> I would suggest to revert to my type of fix which doesn't introduce any brand new logic but hijack the existing psi combat logic instead.
Can you be more specific here, which patch locations are strictly necessary to make your implementation work? I recall you had a lot more binary patching that involved writing new code segments on the binary, not just changing a couple of pointers. I would try to avoid that kind of patching because in the future some functions might get totally rewritten. Patching new code segments is just the worst option for maintainability.
Did you find any other bugs than those mentioned? If so, the healing could possibly be fixed from repair_phase function. That's one of the functions that could be rewritten in source code format. For example, see mod_bonus_at/mod_goody_at. In that case we can have both the original results or new features based on the config flags applied.
> Does it limit number of computer player bases? If so, 25 seems like a small number for normal map.
New version will have expansion_autoscale feature for this reason. It's already part of the pushed changes.
> In my latest code check patch_ignore_reactor_power_in_combat_processing() function. Currently it patches 2 byte jumps in 4 places. Seems to be a minimal change possible. Don't remember if it was bigger than that before.
Yeah I have not had the time to look through all of those changes. Almost thought it required something more complicated than that. That's certainly a really simple implementation and could be imported. However, how do the odds look like in the confirmation dialog? Do they reflect the real odds as it is calculated by the vanilla formula? Are there any other side effects with this patch?
> Beside of being a pretty strange way to do that it is absolutely contrary to your mod purpose. Is it not?
Hmm. I don't think on the default settings it cripples the AI at all. If you set expansion_factor way below 100 then the AI expansion would become very limited but that is not case by default.
This could be better coordinated if you offered some kind of code to merge and then we could review the changes but you have not done so. There's still many ways that the coding style in WTP could be improved. I wouldn't want to merge redundant looking code if there's no clear reason for doing it. Just look at the code in smac-cpu-fix compared to the actual changes that were required to implement it in Thinker to get an idea of how much less code it was.
Actually I'm going to flat out say I don't recommend you to work on AI production planning if you don't want to merge the changes. That's one of the areas that is really core functionality of Thinker and I might implement some changes there anyway. Not really decided though. It's maybe best to open dissussions on github if you have changes in mind for some areas of this AI functionality.
1) Check before building +50% facility, if building it would shoot Eco Damage above this treshold.
2) Sell +50% facility if Eco Damage is above 25%, or 15% late game.
3) Check if any of the 10 biggest bases is above the treshold before building a mining satellite.
4) Late game build Hybrid Forests and Centauri Preserves when available.
5) Keep at least one Super Former, or two Formers + 1 SF, or 2 F for each 5% of Eco damage.
6) Check if forces in a base are suffcient to deal with an estimated popup spawn size, if not move nearby forces there, or sell 50% facility.
Version 2.5 is out now, some new GUI improvements this time.
Other thing that could be implemented as an option is to eliminate most of the prototyping costs. Maybe only keep significant costs for planet buster prototypes because they're like a secret project, but for other units, I don't see how it adds much to the game. We already have steep cost increases with revised_tech_cost so you can't just rush to some particular weapon techs before developing the economy a little bit. Maybe you can test those kind of changes with WTP first because it mods the other mechanics so much also..
It's a separate topic but it ties to the same idea which is implementing complex mechanics that require micromanagement around some specific penalties. Prototyping cost is not broken but it's not terribly important for the game either.
The default value that was intended for it was just 50%. At those levels it doesn't matter much if the AI builds Skunkworks or not, but anywhere way over 100% it becomes an artificial handicap unless someone specifically codes the AI to work around those limitations. People can just make the prototyping cost really high in alphax.txt for whatever balance reasons but what ends up happening it handicaps the AI production choices. And there's many more of these kind of mechanics.
They do not reduce the mineral count factoring into damage but only the portion that is above threshold actually causing the damage. Therefore, they will never reduce existing damage to zero. Same way PLANET and other factors work.
Goodfacs and Clean mineral facilities are different sets, the former provide clean minerals, the latter reduce ecodamage when it occurs.
(terraforming ecodamage - terraforming ecodamage reduction + industry ecodamage - clean minerals) / (1 + Goodfacs)
In this form CP/TP reduce the actual ecodamage resulting from both terraforming and industry. That is not what they say in their description: "Reduces effect of industry on Planet's ecology".(terraforming ecodamage - terraforming ecodamage reduction + industry ecodamage / (1 + Goodfacs) - clean minerals)
In this form CP/TP reduce only the effect of industry on planet ecology. Exactly as it stated in their description and as it is designed by separation of responsibilities between terraforming and industry reduction facilities.
; In vanilla game mechanics, eco damage on AI bases is notably reduced from player levels.
; This patch increases AI eco damage to the same level than what the player bases have.
; In addition, constructing Tree Farms and similar facilities always increases the clean
; minerals limit even before the first fungal pop.
eco_damage_fix=1
So I propose, red outlines for bases that are most likely going to riot next turn if nothing is changed, or are rioting currently.
There's something I'm wondering about the new AI military setting. In Thinker.ini it states that 100 is the default value. If I wanted a more peaceful builder game would setting it to 50 be a good value? Does it mean the AI will field an army about half their regular size? What would happen if I set it to 25 or 0? Would the AI still build defensive units?
To play efficiently and prevent all obviously predictable riots, you have to check each base every turn, there is no thinking involved, it's just annoying busy work.
Project has been on a hiatus for a while, let's see...Probably, this turned out to be false alarm. Apparently, it's just coincidence that Morgan stopped (for a long time now) to infiltrate probe teams through his northern and north-western borders once I blocked it with border guard ZoCs.
> Probe team movement code in the last version seems to respect enemy ZoC, while probe teams should be exempted from this restriction.
Can you clarify this a little bit? Maybe some examples of movement paths that the AI doesn't take that it should use.
Also note that currently the AI doesn't use probes to mind control units, only bases. I have not yet investigated how to patch that functionality for the new AI.
I noticed also that Satori does not have headquarters in that savegame. Did you play this game with auto_relocate_hq enabled?No.
And what do you mean by Civ:BE vibe???From playing Civ:BE I remember depressing feeling of first tier techs indicating tens of turns to reach. Fortunately, this is ameliorated (in Civ:BE) by research found in pods.
In earlier version we had a special discount factor for the first 10 techs but it was removed even though it somewhat approximates vanilla behaviour. It's better not to have mechanics that promote tech beelining or similar minmaxing techniques.Too bad this wasn't made into an option for those who prefer vanilla early game behavior.
> Tried eco_damage_fix=1, no one global warming in two games even with 1, 1 numerator/denominator for frequency in alphax.txtI'm afraid some bug is hiding here. Do fungal pops with eco_damage_fix=1 contribute to global warming? Because I certainly seen many of them in AI lands, which means they weren't prevented by Tree Farms built earlier. Nonetheless, fix of indeed strange eco-facilities behavior could only be applauded.
Just remember that vanilla gives AI bases a big reduction in eco damage. Also, eco_damage_fix removes a stupid mechanic where players have to wait for the first fungal pop before tree farms reduce eco damage. :)
These two things produce somewhat opposite results but it's possible that, on the aggregate, the new tree farm mechanic outweighs the increased base eco damage being generated by the AI bases.
PRACX is not required for anything actually, but if you want those extra GUI features that are not yet merged in Thinker then you need to install it separately after you've unzipped Thinker files to the game folder.Without the installed Praxc, the window mode does not work. A window that can be laid and move the mouse.
> I'm afraid some bug is hiding here. Do fungal pops with eco_damage_fix=1 contribute to global warming?Thanks for reminding the mechanic. The bug exactly as asked: could it be that eco_damage_fix=1 implementation erroneously missed the part "each fungal pop increases global warming counter"? Because in all my (though, not many) recent playthroughs I witness multiple fungal pops in AIs territory (plus 5-10 mine), but absolutely no warming (nor with 1/1, nor even 2/1 frequency ratio). I'll try to take more notice.
... Not sure what kind of possible bug you are alluding to here.
> From playing Civ:BE I remember depressing feeling of first tier techs indicating tens of turns to reach. Fortunately, this is ameliorated (in Civ:BE) by research found in pods.It would be quite desirable. IMHO, not "slightly", but at least 2-3x.
Maybe tech costs for tier 1 and (tier 2 partially) should be slightly decreased?
Maybe tech costs for tier 1 and (tier 2 partially) should be slightly decreased?Let me explain my view on this. IMHO, elimination of one day existed discount for the first 10 techs was a mistake. As I understand, this was done to disable the last remaining possibility for beelining. But I fail to see the reason why beelining is bad, and isn't just another decision-making area to master. Beelining is already discouraged by tier-dependent costs, and not benefiting from diplomatic discount. Some wiggle space for the player could be left. Previously, Thinker Mod tried to teach AI to use overpowered techniques that humans [ab]use to win, rather than simply taking those techniques away from player (which widely practice bvanevery in his AI Growth mod and this, IMHO, is a dead-end road). Curiously enough, Thinker Mod even had implemented tech_balance=1 setting specifically for the right beelining. Not mentioning the original goal to not deviate too much from vanilla rules. That is why I think tech discount should be returned as an option, with or without some reduction of tier 1 and 2 tech costs.
> So far, on standard random map got 0-1 GW event with 3/1 ratio, and Noah's experience with 10/1 ratio.Yes, you read right, numerator is 3 or 10, and denominator 1.
Which one is numerator/denominator here? Are they in the right order?
Here's a fun idea: should this mod be added an option for randomly expiring infiltration for other factions? How many would use it?On one hand, I find detailed infiltration info very handy at increasing situational awareness and decreasing WtF moments by allowing to see what's going on in the game at large. Comparing to other games, it's a good feature, heightens player's QoL by enforcing his perception as being in control. On the other hand, player becomes lazy.
It's clearly somewhat of a game balance problem that infiltration is permanent and shows very detailed information. This might be changed. It seems PTW has a similar feature but I very much doubt Thinker would be using the same implementation.
1) infiltration indeed does expire, but not randomly, rather according to Probe ratings of infiltrator/infiltrated;
Network Node feature sounds like it requires a bunch of GUI patching which is one reason I'm not going to attempt it for now.Not necessarily, just silently turn an attempt to steal tech into steal energy. But I agree, not the most urgent feature. By the way, will AI try to mind control enemy units as it used to do sometime ago?
typedef int(__cdecl *Fprobe)(int veh_id1, int base_id, int veh_id2, int flag);
Fprobe probe = (Fprobe)0x59F120;
probe(veh_id1, -1, veh_id2, ?); // Capture some unit
^+2 ECONOMY: {Free flow of capital}
^+2 SUPPORT: {Just-in-time supply chains}
^-1 MORALE: {Privatized military}
^-2 INDUSTRY: {Excessive contractor bloat}
^Immunity to negative POLICE: {Morally righteous}
^Extra DRONE for every four citizens: {Deregulation and austerity}
^50% hurry costs: {Angel investors}
^{May not use Power values.}
; 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
; 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
; 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
; This replaces the default Monsoon Jungle landmark with multiple dispersed jungles on the map.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
modified_landmarks=1
; Scale expansion_limit automatically to match the amount of bases by the human player.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
expansion_autoscale=1
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 ?
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
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.
topic: AI can't fight even when they are "on paper" strongest faction and initiate war
> 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.
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.
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".
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.
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?
> Fossil Field Ridge
Yeah that is an oversight, it should not be there because it's also disabled by the default world builder. Instead of Fossil Field Ridge the current version disabled Manifold Nexus and Unity Wreckage from smac-in-smacx.
I thought Manifold Nexus would be expansion content because the description references progenitor stuff, but now that I checked, vanilla SMAC binary seems to also spawn Manifold Nexus on the map for some reason. It's the latest official patch provided by GOG, so maybe it was added to vanilla in the patches? I'm not sure now. Seems a little odd. Hard to say if it should remain in smac-in-smacx mod.
> topic: AI can't fight even when they are "on paper" strongest faction and initiate war
..
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.
combat rules in SMAC are fundamentally broken
With the original ruleset it's impossible to make AI capable of defending against the player, just do the math
with vanilla rules either ai will be always defenseless, or player will be if you teach it to attack first with mass assault properly
With the original ruleset it's impossible to make AI capable of defending against the player, just do the math:
The combat rules in SMAC are fundamentally broken, no amount of AI improvements will change it, so there is no point in both playing and developping combat ai without addressing it:
1) Edit armor values in alphax.txt to change att/def ratio from 2:1, to around 3:2.
2) No instant healing with command center, only 20% per turn.
3) Disable collateral damage from loosing a unit in a stack.
Quotewith vanilla rules either ai will be always defenseless, or player will be if you teach it to attack first with mass assault properly
this is not logical statement - if AI is taught to fight properly then it makes it more equal in fighting to humans -> more fun challenge for humans; so it doesn't make human player defenseless; other factors like cheating by AI by having growth/ind/tech-speed bonuses then come into factor, but are adjusted with difficulty levels
Ruleset need to be adjusted to make war not a single prevalent strategy
I understand you are quite aware of both Thinker and WTP mods. Not to specifically advertise WTP one but everything you mentioned is implemented there for this exact purpose that you explained: to make defense viable. I'd like to clarify whether you advocate porting these changes to Thinker or just highlighting general vanilla war imbalances?
Ruleset need to be adjusted to make war not a single prevalent strategy
do you mean prevalent as "most commonly deployed by AI" or as "the most effective strategy to win by human/AI" ? if the former then simply you can modify in each faction settings flags ai-fight to -1 and ai-power to 0 and everyone should behave like angel ? :)
if you think it's single best strategy to be warmonger then I don't agree, actually more likely the opposite is true: peaceful play is the most optimal for winning.
...
Alpha Centauri Bear
question: do you think if 2 players of same skill play multiplayer (let's say experts) and they play same faction on mirrored map, so no random factors interfere and let's say it's pure 1/1, no AIs in game (again to eliminate random factors) - then do you think the one of them who will plan a war and attack first (aka warmonger player) will win the game ?
consequently the other player (peaceful defender) will lose ? note that in such scenario I assume peaceful defender can switch to total war once he is attacked and then proceed with total war for exhaustion - he is still considered peaceful player as he didn't start the war, so the war is "justice war" for him and he can righteously kill his opponent as he cant trust him anymore to switch to transcendence mode win (so this is diplomatic assumption for this scenario)
let's assume its standard, round map and they start both on the equator maximum distance away from each other
also please specify what would be the optimal moment of attack ? estimated year and with what kind of war technology (eg 4-1-2 or 14-1-12 or nukes or drops ?)
if u wanna answer "largely depends on faction played" then let's assume lal vs lal for brevity :) also would be interesting if u specify any other "war plan" eg how many attacker army, maybe army composition (how many different kind of units) etc
since this is Thinker thread assume Thinker 3.0 mod (it has a few rebalances)
I don't understand why people rank factions. Their differences are exceptionally minor comparing to other random factors. The one who lands on jungle wins. They are not only minor they are sanely balanced. You can play pretty much any tactics with any faction barred some exception like Yang should use PS and Miriam should mostly attack. Other than that it is pretty minor factor.
Chess. A completely deterministic game with an absolute ideal initial balance of power and perfectly symmetric position. Following your logic with such balance of power and lack of randomness two armies should destroy each other resulting in draw most of the time. Yet quite often people win and lose. Why is that? You will be surprised but, if you think about it, the answer is attack over defense prevalence!
Then the answer to your question is peaceful faction wins taken they are of same production power (an important condition). Your previous computation is absolutely irrefutably mathematically correct as I stated in my previous post. There is no argument about that and we can close this discussion.
> 1) in 1v1 scenario whoever starts war usually is at disadvantage; let's say we play peace morgan1 vs warmonger morgan2; this is because if peaceful opponent will play optimally he will make sure not to be surprised
Ah, but this reasoning relies on gaining and having accurate infiltration info. In this respect the vanilla game is very unbalanced and unrealistic. In some other games the intel reports are incomplete or randomized to account for fog of war. I nerfed infiltation with counter_espionage option but maybe it could do more. Especially having exact unit composition/base production info seems a little too powerful.
you lost me here :) maybe cause I have some foundations in science methodology from years ago, which I barely remember, but which lead me to completely different conclusions; and also experience as player so i have very clear views on faction ranking (eg morgan wins vs yang ~90% of times)
you seem not to understand the need of constructing this kind of isolated experiments where randomness is controlled (minimized/eliminated)
another point - minor difference translates to major win/lose difference ; same as in sports - if one runner for 1000m distance is better just 2%, he will have seconds/miliseconds better times, but he will win 95% of time
the more you isolate randomness the less games you need to play to say which faction is really better
saying that factions differences are minor is quite bold statement, I will say mildly it's the strongest thing u said that alters my perception of your views on SMAC :)
mirrored map is when you have same, equal starting positions, completely symmetrical map, like for example in starcraft pro games
1) Simplified ideal theoretical scenario one:
Everything is connected with magtubes, the armies consist of equal number of units with att/def 2:1
In preparation for an assault aggressor neglecting development adds 20% to his units count, all cheap armorless assault units.
> 1) Edit armor values in alphax.txt to change att/def ratio from 2:1, to around 3:2.
Maybe? Also another consideration: probe stacks have implicit 100% collateral damage. It might be a good idea to provide a new config parameter for that.
> Let me reiterate it. The game is designed to last somewhere 300-400 turns.
But if you play using anywhere close to the optimal strategy, you should be transcending by 200 turns. So beyond that is not very relevant given the current game mechanics.
> I don't understand why people rank factions. Their differences are exceptionally minor comparing to other random factors.
Have to disagree here. Let's assume large map size and believers/morgan for example. There's no way believers could keep up on the early tech race if these factions start far away from each other. Maybe AI doesn't push all the advantages to the maximum but even then the differences are clearly seen.
although I think WtP went a bit too far with homeland security bonus
Why assume anything? They are, of course, different and suitable for certain conditions. That is how they are designed. Like if Morgan is separated from Miriam for the first half of the game he can gain economical power and then jump over ocean with all modern weaponry. Whereas if they are NOT separated Miriam steamroll him with the swarm of believers.
Let's take your statement (morgan wins yang ~90% of times) as an example.
First of all we need to clarify conditions. Do you mean AI vs AI or two humans? Are they only factions in the game or all 7 present? What do you consider win? Is it complete extermination of other or their relative power compared at some point in time? In both cases do you consider draw if they did not kill each other or if they relative power is not too different?
Keep in mind that these two comparison methods are drastically different. Extermination may favor believers but total power may favor morgan, for example. I don't know - just speculating here.
The question is, based on your assumption, do we need to make Miriam stronger to balance her faction? And the answer from multiple people on multiple forums is NO! Most people think she is strong enough already. Why is that I wonder?
note I speak about vanilla smac/x and/or Thinker AI boost
Why assume anything? They are, of course, different and suitable for certain conditions. That is how they are designed. Like if Morgan is separated from Miriam for the first half of the game he can gain economical power and then jump over ocean with all modern weaponry. Whereas if they are NOT separated Miriam steamroll him with the swarm of believers.Let's take your statement (morgan wins yang ~90% of times) as an example.
First of all we need to clarify conditions. Do you mean AI vs AI or two humans? Are they only factions in the game or all 7 present? What do you consider win? Is it complete extermination of other or their relative power compared at some point in time? In both cases do you consider draw if they did not kill each other or if they relative power is not too different?
Keep in mind that these two comparison methods are drastically different. Extermination may favor believers but total power may favor morgan, for example. I don't know - just speculating here.
Uhh... So which one it is? Try to decide.
The question is, based on your assumption, do we need to make Miriam stronger to balance her faction? And the answer from multiple people on multiple forums is NO! Most people think she is strong enough already. Why is that I wonder?
Thinker *does* provide one boost for Believers (and any faction with negative intrinsic research value). The 10 turn delay before they start accumulating labs has been removed. It removes some of that pretty serious start disadvantage vs. research factions. And I think Believers are really situational with the start conditions, e.g. 7-player SP game plays very differently compared to 1-vs-1 MP game.
To me it seems you are clinging on this 100% infiltration mechanic because your strategy seems to be relying on itand to me the way you implemented it is just as lazy of a nerf as the original "infiltration is permanent" :P
because your strategydo you actually think there is anyone's strategy or "any strategy" that is not relying on infiltration ?
These are from completely different context. I don't even understand why you want to compare them.
First is from faction bonuses discussion when author mention that Morgan is stronger than Miriam on large map when they are separated. I confirmed that this could be true but this does not equate in "Morgan > Miriam" for rest of the conditions. That is why I don't see a point in considering isolated conditions.
Second one is discussing specific conditions for statistical experiment. They are needed so we can actually have this experiment in foreseeable future and agree on outcome. This probably won't help deciding whether one faction is generally stronger but it may support further conversation on specific details.
I don't understand why people rank factions. Their differences are exceptionally minor comparing to other random factors. The one who lands on jungle wins. They are not only minor they are sanely balanced. You can play pretty much any tactics with any faction barred some exception like Yang should use PS and Miriam should mostly attack. Other than that it is pretty minor factor.
Yes. People keep modifying faction bonuses based on author perception of their fairness. You do this, I do this, and every other modder. The fact that I drawing everybody's attention to is that these modifications are not uniform across the community. There is not even common agreement which faction need to be boosted/nerfed least about specific value of their bonuses. For example, many people think that 10 turn of no research for Believers is not that impactful and that they are perfectly capable of catching up pretty soon. They have very good reasoning behind that confirming it with their previous games, etc. Obviously, neither side can prove this to other as majority of arguments are subjective. However, the mere fact that there is no common community agreement shows that SMAC factions are more or less balanced. Whereas most community agree, for example, that Cyborgs and aliens SMAX factions are overpowered to the extent they are banned from multiplayer and that tells me something.
do you actually think there is anyone's strategy or "any strategy" that is not relying on infiltration ?
if everyone plays no infiltration game, then it's just boring, you dont know whats happening around the world; its like you had no news and journalists, games feel much more "lonely" :)
even if we don't know exactly what the optimal strategy is in this game, theoretically it is still thereyou might not know it but I know it v.well :) its basically play FM faction and go FM->wealth->crawlers->PTS->ICS->race for top early eco SPs (HGP,WP,PEG,AV)->restrictions->boreholes->air->kill all with air
Air force is OP mostly because of att/def ratio that in all circumstances necessites to maximise the amount of engagements where you are the attacker on a tactical level. Once you buff defense a bit and take away collateral, Air force becomes mobile allowing an easy mass strike within range, but economically suboptimal compared to slow land forces in terms of damage it can practically inflict compared to its mineral cost.wrong, u can buff ur armour 3x or so, air is still op: i'll obliterate in few rounds every terraformed square you have in vicinity with the cheapest planes; and say goodbye to nearby formers and crawlers; also i'll use these cheapest planes on the same square where my land units are, so that my land units are immune (cause ur land units cant attack fields that are occupied by both enemy land and air units)
even if we don't know exactly what the optimal strategy is in this game, theoretically it is still thereyou might not know it but I know it v.well :) its basically play FM faction and go FM->wealth->crawlers->PTS->ICS->race for top early eco SPs (HGP,WP,PEG,AV)->restrictions->boreholes->air->kill all with air
this is vs AI which is weak opponent
even if we don't know exactly what the optimal strategy is in this game, theoretically it is still thereyou might not know it but I know it v.well :)
I find this snarkiness really uncalled for.
Furthermore I'm not sure if you understand the definitions I was using there. You can't assume any weak opponent with Nash equilibrium strategy because it by definition assumes only the strongest possible opponent and plays accordingly. When exploiting specifically weak opponents, it opens one's own play to counter-exploitation, and this diverges from Nash equilibrium. Something similar would be mentioned near the end of the vimeo talk I pasted.
You can't assume any weak opponent with Nash equilibrium strategyobviously I don't; my post is not in anyway referring to what you said about Nash
My main point would be that even if we don't know exactly what the optimal strategy is in this game, theoretically it is still there, e.g. there's at least some Nash equilibrium optimal strategy. As an analogue, we can look into how other finite, zero-sum, two-player, imperfect information games like poker have been solved.
On another note, I have to also mention this talk by Sid Meier (https://youtu.be/bY7aRJE-oOY?t=1100) where he explains how they designed the combat system in Civilization to adapt to player expectations. It's quite hilarious to listen to since he explains how players tend to perceive "big strength number vs. small number" battles as something where they're always supposed to win. It seems obvious some similar kind of reasoning was also used in the design of Alpha Centauri combat system.
note this is not optimal proposition of rebalance, but quickest one for myself to implement; just things that need to be nerfed
more optimal especially in the air aspect is like:
move needler tech 3 levels up and copter 4-5lvls on tech tree, while hovertanks 3 levels down so they appear before air + move air superiority ability to earlier tech than air tech + then needler/copter chassis cost only ~1,5-2x
Air force is OP mostly because of att/def ratio that in all circumstances necessites to maximise the amount of engagements where you are the attacker on a tactical level. Once you buff defense a bit and take away collateral, Air force becomes mobile allowing an easy mass strike within range, but economically suboptimal compared to slow land forces in terms of damage it can practically inflict compared to its mineral cost.wrong, u can buff ur armour 3x or so, air is still op: i'll obliterate in few rounds every terraformed square you have in vicinity with the cheapest planes; and say goodbye to nearby formers and crawlers; also i'll use these cheapest planes on the same square where my land units are, so that my land units are immune (cause ur land units cant attack fields that are occupied by both enemy land and air units)
You mean all enchancements within flying range ? Anyway with buffed defence and no collateral land force could not only flood territory and destroy enchancements, but also occupy the tiles permanently, if they wouldn't be capable of taking over the bases, while air superiority uints would make a short work of your defensive wall of suspended in the air jets.
You've just nailed down solution to the puzzle called unbalanced vanilla SMAC combat and don't want to consider possibility of something different.
I don't want to step on vigorous debate, but y'all try to show each other some respect, okay?
* Another consideration: should the new map generator include some toggle to select if the map should have polar caps? Now they are always added, but in vanilla map generator it varies, maybe randomly.
My main point would be that even if we don't know exactly what the optimal strategy is in this game, theoretically it is still there, e.g. there's at least some Nash equilibrium optimal strategy. As an analogue, we can look into how other finite, zero-sum, two-player, imperfect information games like poker have been solved.
* Another consideration: should the new map generator include some toggle to select if the map should have polar caps? Now they are always added, but in vanilla map generator it varies, maybe randomly.
I think that'd be nice. It feels cheap that I can often continent-hop around the icecap if I don't restrain myself. No landmass on the canonical map touches the map edges, but the map generator seems to connect to them quite a bit.
> running an AI benchmark on symmetrical map...that wasnt a problem, especially given morgan's xenopathy roads :)
> morgan made a very wise use of weather paradigm
Yeah it's a nice map for this. However, the middle island might interfere with some AI pathfinding because all the islands are connected there. It might be a good idea to just remove the fungused middle part. That way it breaks up the land mass into smaller chunks.
> regarding satellites, they still dont prioritize them enough, but they build quite some this time; eg morgan 13/0/13; univ 0/7, rest just a few; somehow no nessus?i was checking if morgan build satellites, when he got tech he already had CBA IIRC and started with single orbital transmitter, then build another few turns later; later sky hydros here and there one; maybe 10+ years later he began building a few per turn; and that is at around 50 bases when he started his satellites; strangely he didn't build sky hydros at all at first
How long did they have the various techs available? Were they also simultaneously at war with each other?
Probably each of these shortcuts will have to be manually coded and patched in the mod. There's no shortcuts for this (pun intended, hehe). What kind of functions are we talking about here?
Technically it should be possible to run AI-vs-AI tests even if you don't have any active units and are not watching some AI faction directly. You can maybe eliminate the player faction but still keep the game active? It's also much faster to run through the turns when fog of war obscures the AI units.
Also, about this WTP fix for the "force-ending turn while a needlejet in flight has moves left" bug:
So essentially that patch jumps over small piece of code in turn_upkeep that would have increased terraforming_turns variable for some unit and then immediately ended the function. Do you know what was the original purpose for this code or is it something entirely redundant? Does this fix have any side effects? The actual terraforming production calculation should be done in action_terraform function.
I added shortcuts that open the queue from the base screen
I added shortcuts that open the queue from the base screen
Is it by binary modification? Can you share it?
Definitely I agree that simplifying the ruleset or fixing really unbalanced mechanics should take the priority over crafting some specific AI workarounds for each of the special cases. In some parts I've already done this. It is necessary considering the high time usage in this project also. We're now pretty close to the edge of feasibility when implementing something just by patching the game engine without source code.
It's an AutoHotkey (https://www.autohotkey.com/) script so you'd need to install that, too.
1) Att/Def ratio I'd achieve by changing only weapons stats:
1) Sensor array bonus could be removed from the base defense, it would keep base assault odds at close to vanilla level, while robbing human player of an advantage provided by destroying sensors in preparation for a base assault. Lets say that local base population provides intel about enemy positions, so the advantage provided by sensor array intel is already included in the intrinsic base defense/ perimeter defense.
2) I'd consider an optional adjustable base defense bonus that also optionally could apply only to a base defending against human controlled unit. This setting would provide a game balance option for multiplayer, or an extra optional AI cheat for a singleplayer challenge without crippling AI. I'd set it at 25% to replace sensor array bonus removed from the base defense in the previous step. It would be meant to eventually be applied to AI too, once it'd be tought to not commit to a base assault until it gathers enough units, to be able to finish damaged defenders with a second strike in the same turn and not waste units on unfinished base assault.
1) Vanilla unit cost formula practically forces you into specialized att, or def units like in the Civ series.
2) While getting rid of reactor hit points was crucial, cutting unit cost in half still provides three moments of an extreme advantage, so I'd add an option for reactor to reduce cost by 25% instead of 50%. It'd also be a quality of life change, since it'd increase the reactor 4 units cost over 3 times, there is no depth gained by moving around in late game 30 units instead of 10, the latter only mean less busy work, less AI turn processing time and less likely running into unit limit on large maps.
There is already an alternative cost formula in WtP, but while it works better than vanilla, it's also completely different, while for thinker some slight adjustements to the original formula that wouldn't invalidate players prior experience completely would be more suitable.
Ingenious cool stuff! Although I agree that it may be difficult to port between computers and even people as everyone may have their own automation preferences.
> If you want to add penalty for human attack/defense why not just add flat bonus everywhere? Not specifically for base attack only.
I want a balance where attacker have an advantage on flat and 1:1 on rough terrain outside of a base and disadvantage on a base assault.
It'd be best to make perimeter and tachyon modifiers to adjustable with a float number, not only a choice between 50% and 100%.
No new modifier would be introduced, while eventual AI cheat is not something player in this particullar situation should be noticing, or have to consider for decision making.
Did you know that the mod copies items from Template 1 to all new bases? It's mentioned in Details.md. Might be helpful here.
Did you know that the mod copies items from Template 1 to all new bases? It's mentioned in Details.md. Might be helpful here.
Just wanted to pop in and say that it's really cool these mods are still being actively worked on, amazing stuff with all sorts of small but essential improvements to the game!
Maybe one day I'll actually try playing against the AI again :V
You mentioned elsewhere that the RPGCodex PBEM group plays WTP but most "Thinker/WTP" changes turned off. So what was the rationale for using WTP if most of the changes are turned off? What kind of changes were disabled then? Also do many players consider it important to slow down movement on magtubes since you mentioned this is enabled? Or also apply PLANET bonus for defense? :)Like I said there, the option for extra formers and colony pods at the start is actually a pretty big deal. It allows doing an accelerated start to power through the boring early game where not much happens, and helps to ameliorate the effects of getting a lousy start in the desert or wherever, ensuring players get a more equal opportunity to succeed.
Like I said there, the option for extra formers and colony pods at the start is actually a pretty big deal. It allows doing an accelerated start to power through the boring early game where not much happens, and helps to ameliorate the effects of getting a lousy start in the desert or wherever, ensuring players get a more equal opportunity to succeed.
It fixes the exploits connectedwith fiddling with the Industry rating. That's a big one.
; Mineral contribution from artifacts, disbanded units, hurrying will be adjusted to current INDUSTRY rating.
fix_mineral_contribution=1
Magtubes are certainly OP at the late stages of the game and a very long time ago I considered a nerf on them, but it was not implemented as it was not that important considering the other priorities. Now I'm just wondering if this WTP's implementation causes side effects elsewhere in the game as it requires multiplying Rules->mov_rate_along_roads variable with the tube_movement_rate_multiplier config option. It's a global alphax rules variable and used by the vanilla game.
It also requires patching hex_cost function but that by itself should not be anything unusual. But at least changing the rules variable would make the game state inconsistent if a save is reloaded mid-turn, but that setting is not intended to be changed mid-game anyway.
I am changing this rule variable at game launch time. There is a function that actually reads them from alphax.txt. So I substitute it on the fly as if it had different value in config file. Should not disrupt any save/load.
It fixes the exploits connectedwith fiddling with the Industry rating. That's a big one.Quote; Mineral contribution from artifacts, disbanded units, hurrying will be adjusted to current INDUSTRY rating.
fix_mineral_contribution=1
I'm assuming you mean the above? That one also seems to require a bunch of binary blob patching. I've been trying to avoid including it too much as it tends to be not very maintainable, but have to think about it.
Maybe it does but keep in mind there are tons of other factors at play. They may just declare war on someone on the opposite side of the globe merely for not sharing their ideology disregarding everything else.
flavor = waste. It is disbalance by definition. You can have more or less of it. As far as I saw other opinions, people prefer flavor to cold blooded killer AI who can't be bargained with, can't be reasoned with, doesn't feel pity or remorse or fear, and absolutely will not stop ... EVER, until you are dead!!!!!
Can you explain how your patch actually works to fix the stockpile bug then? It's not obvious by looking at the code that the fix is a correct one. It doesn't seem to account for the effect by PEG that increases stockpile returns by 25% for example.
Depending on the return value supplied by base_production, base_ecology might or might not get run by base_upkeep function which calls both of them. So if a non-stockpile item is produced by a base on one turn, does it "correctly" prevent the accumulation of stockpile energy credits from queue at the same turn but otherwise keep the stockpile energy feature intact?
; Select if the planet should randomly spawn spore launchers and other expansion-only units.
; Factions can still build some of these units if they are not disabled from alphax.txt.
; Does not affect any starting units defined for the faction, e.g. Progenitors.
spawn_spore_launchers=1
spawn_sealurks=1
spawn_fungal_towers=1
spawn_battle_ogres=1
> I intercept base_ecology just to insert computation in the same branch where faction energy reserves get updated. And it is only one branch. So if base_ecology doesn't run faction credits won't be updated too.
But they will be updated in some way because WTP's patch updates energy credits at two different points. Presumably all the other vanilla game logic works like before. Why is this the correct fix for the stockpile energy bug? How was it tested that this patch updates energy credits correctly with or without stockpile in the queue? Or was it tested at all?
My main point was not even about PGE bonus that was unaccounted for, rather the whole logic behind this patch because the way it works looks odd. I have not investigated yet what would be the best way to fix that bug, but I would presume the most logical way would be to just prevent the accumulation of stockpile energy if the base has already produced something on that turn.
> What does it mean by "randomly spawn" with regards to the battle ogre? If I disable that option, does that mean they just won't pop from Unity pods?
Yes.
Hi, I am trying out this mod after not playing for a few years. Thanks for all your effort on this!
When I load the mod through the launcher shortcut, it seems random whether it works or not. I have SMAC mode enabled, and half the time it loads Alien Crossfire and half the time the original splash screen. Any ideas?
Hi, I am trying out this mod after not playing for a few years. Thanks for all your effort on this!You're probably using Windows 10 or newer? There's some kind of incompatibility issue caused by these newer Windows versions, unfortunately I have not yet diagnosed it.
When I load the mod through the launcher shortcut, it seems random whether it works or not. I have SMAC mode enabled, and half the time it loads Alien Crossfire and half the time the original splash screen. Any ideas?
Hi, I am trying out this mod after not playing for a few years. Thanks for all your effort on this!You're probably using Windows 10 or newer? There's some kind of incompatibility issue caused by these newer Windows versions, unfortunately I have not yet diagnosed it.
When I load the mod through the launcher shortcut, it seems random whether it works or not. I have SMAC mode enabled, and half the time it loads Alien Crossfire and half the time the original splash screen. Any ideas?
As a workaround you can use terranx_mod.exe from older releases and combine it with newer thinker.dll (and other txt files), so you should be able to start the mod without problems. For now terranx_mod.exe is still compatible with newer thinker.dll versions.
Then some people say the AI doesn't build enough defenders or military units. So go figure. It's currently tuned to emphasize unit production more heavily. If they have many active wars, it's almost unavoidable. You can adjust this by choosing conquer_priority=50 or similar.
Regarding supply crawlers.
Not everyone's cup of tea. I tried to disable them, but they still seem to be available. How do I do that? I tried commenting out the module and preset unit in smac_mod\alphax.txt which is what I play, but they're still in the game.
Supply Crawler, Infantry, Supply, Scout, 10, 0, 0, Disable, -1, 00000000000000000000000000
Some techs say they allow supply crawlers to haul multiple resource types, yet I couldn't figure out how to make use of that ability?
Good to know it can be fixed in that way. That's very useful. Did you find any way to make it start in the native desktop resolution (e.g. DirectDraw=0 in vanilla)?
Didn't see it immediatly. Also what a weird design choice.
Calculates tech cost.
cost grow accelerated from the beginning then linear.
a1 = 20 // constant (first tech cost)
b1 =-20 // linear coefficient
c1 = 40 // quadratic coefficient
b2 = 600 * <map size> // linear slope
x0 = (b2 - b1) / (2 * c1) // break point
a2 = a1 + b1 * x0 + c1 * x0 ^ 2 - b2 * x0 // linear intercept
x = (<level> - 1)
correction = (number of tech discovered by anybody / total tech count) / (turn / 350)
cost = [S + (x < x0 ? C * x ^ 3 : A + B * x)] * scale * correction