• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.
I think the tough thing right now is balancing the ECM bubble. If the enemy doesn't pierce the bubble, they just roam about uselessly. If they pierce it, they will attack.

Ultimately, I think the ECM could have been implemented better, but that ship has probably sailed. Your AI adjustments make a huge difference!

Best,

Mad
 
Hi Amechwarrior! It's a great mod, thank you.
I have some questions:
- Is it possible to use any of your AI values changes in my mod compilation for nexusmods.com ?
- My mod (it is still in development) changes visual and sensor ranges.

Code:
"BaseSpotterDistance": 330.0,
"BaseSensorDistance": 570.0,
(570 instead of 430 - because Locust now has 1.25 bonus for SpotterDistance (and some new equipment). As I know, AI can't return fire if there is no sensor contact with this buffed Locust... So 570.)

But in this case, AI units (especially snipers With AC/2 or PPC) trying to stay at BaseSensorDistance distance using sensor lock. With BaseSensorDistance=570 it leads to very rare shots from them (nearly 1 time out of 3 turns).
Is it possible to make snipers "preferred" distance smaller? Maybe lower value for "Float_PreferNoCloserThanMinDistToHostileFactorWeight" ??? I can't find proper value in JSON and need your advice.
And by the way: how new AI will work with bigger spot/sensor distance in general? Maybe some other values need to be adjusted as well?
 
Hi Amechwarrior! It's a great mod, thank you.
I have some questions:
- Is it possible to use any of your AI values changes in my mod compilation for nexusmods.com ?
- My mod (it is still in development) changes visual and sensor ranges.

Code:
"BaseSpotterDistance": 330.0,
"BaseSensorDistance": 570.0,
(570 instead of 430 - because Locust now has 1.25 bonus for SpotterDistance (and some new equipment). As I know, AI can't return fire if there is no sensor contact with this buffed Locust... So 570.)

But in this case, AI units (especially snipers With AC/2 or PPC) trying to stay at BaseSensorDistance distance using sensor lock. With BaseSensorDistance=570 it leads to very rare shots from them (nearly 1 time out of 3 turns).
Is it possible to make snipers "preferred" distance smaller? Maybe lower value for "Float_PreferNoCloserThanMinDistToHostileFactorWeight" ??? I can't find proper value in JSON and need your advice.
And by the way: how new AI will work with bigger spot/sensor distance in general? Maybe some other values need to be adjusted as well?
Yes, sure go ahead. Just toss me a line in the credits and all that.

As for the adjustments, it's been a really long time since I've tested the AI with extended sight lines. It's changed enough that I don't want to forward bad info from my older experience.

Wouldn't altering the base sensor in CombatGameConstants just make the LCT 1.25 of 570?

The AI can be made to close. If you would need to alter my mod settings, you should make a new mod that requires mine and has it listed as a dependant so it will load after and overwrite the edits you need. See my "Better AI - Perm. Evasion Add-On" mod for an example. This will save you a ton of time and effort as the game and my mod update. I haven't had to update that add-on since 1.4 or so thanks to ModTek's advanced merging function.

You could edit the sniper role back down to a more brawler like settings to get them to close and walk it back from there to get you desired distance. I'd look at
Float_PreferHigherDistanceFromClosestHostileFactorWeight
Float_PreferLOSToFewestHostileFactorWeight",

at first.

"Float_PreferLessTargetableLocationFactorWeight"
"Float_PreferStayInsideFenceNegativeLogicFactorWeight"
and related variables, also any of the buddy weight ones to start with afterwards.
 
Hmm. AI using sight distance as a decision making factor may make for an interesting problem with the Low Visibility mod, with its wide range of sight and sensor ranges depending on weather conditions.
 
Yes, sure go ahead. Just toss me a line in the credits and all that.
Of course!

Wouldn't altering the base sensor in CombatGameConstants just make the LCT 1.25 of 570
Do you mean 1.25*570 sensor distance? No, Locust has 1.0 unmodded multiplier. I am going to change lite chassis values like this:
Code:
   "SpotterDistanceMultiplier": 1.2,
    "VisibilityMultiplier": 0.75,
    "SensorRangeMultiplier": 1.05,
    "Signature": -0.6,
1.2 (lowered from 1.25) for visual range (SpotterDistance). 570 m SensorDistance already makes some troubles like early sensor contacts. 5%-10% buff is enougth.

it's been a really long time since I've tested the AI with extended sight lines.
Well, AFAIK - AI SensorRange - Signature debuff must be bigger than buffed scout SpotterDistance. Because without sensor contact (even with visual) AI mech will simply stan and do nothing. Some reports were here and there.

Float_PreferHigherDistanceFromClosestHostileFactorWeight
Well, it was 10.0 :) (I took it from "Riftskipper Rebalance Mod 0.4.2 - Modded AI" - an old 2108 mod with very defensive AI).
Possibly this is an answer - it should be 1.5.
 
Also Riftskipper has some new Variables:
Code:
    {
        /* Influence Factor Weight to control the desire to be in
           locations with stability bonus. */
        "k" : "Float_PreferLowerStabilityDamageMultiplierLocationsFactorWeight",
        "v" : {
        "type" : "Float",
        "floatVal" : 0.2
        }
    },
    {
        /* Influence Factor Weight to control the desire to be in
           locations with stability bonus WHEN SPRINTING. */
        "k" : "Float_SprintPreferLowerStabilityDamageMultiplierLocationsFactorWeight",
        "v" : {
        "type" : "Float",
        "floatVal" : 0.3
        }
    },
 
Also Riftskipper has some new Variables:
Code:
    {
        /* Influence Factor Weight to control the desire to be in
           locations with stability bonus. */
        "k" : "Float_PreferLowerStabilityDamageMultiplierLocationsFactorWeight",
        "v" : {
        "type" : "Float",
        "floatVal" : 0.2
        }
    },
    {
        /* Influence Factor Weight to control the desire to be in
           locations with stability bonus WHEN SPRINTING. */
        "k" : "Float_SprintPreferLowerStabilityDamageMultiplierLocationsFactorWeight",
        "v" : {
        "type" : "Float",
        "floatVal" : 0.3
        }
    },

Yeah, check my OP and look for the Google sheet link. It has everything, even all the unused variables like those. It also has a sheet for stock only and stock vs. my mod values. I highly recommend making a copy for yourself if you are going to start editing the AI variables. Saves a lot of time.

That thing set to 10 in your previous post, value of +/-10 is pretty high and I see why you saw anomalous actions due to that high spike. For scale, 20 is the value for "don't travel outside the map borderline" and most things are set between 0.0-1.0 with most float values in stock.

The Float_ExistingTargetDamageForOverheatAttack =90 thing, where is that from? My sheet or mod files, or yours?
 
The Float_ExistingTargetDamageForOverheatAttack =90 thing, where is that from? My sheet or mod files, or yours?
yours:
https://github.com/BattletechModders/BetterAI
for example, you can go to
BetterAI/StreamingAssets/data/behaviorVariables/global.json
and find
Code:
    {
        /* How much a location must be damaged before an overheat
           attack will be considered, as a fraction from 0.0
           (undamaged) to 1.0 (location destroyed) */
      "k": "Float_ExistingTargetDamageForOverheatAttack",
      "v": {
        "type": "Float",
        "floatVal": 90.0
      }
    },

Also:
It has everything, even all the unused variables like those.
My fault. There were 2 copies of them and Beyond Compare highlighted 2-nd as "my file orphan".
(Do you know if regular JSONMerge can add new objects (like this:
Code:
{123},
) or array elements (like
Code:
        "ToHitMovingTargetDistances": [
            20,
           
            100,
            125,
            160,
            190,
            220,
           
            450,
            480
        ],
???
I thought that I have to use AdvancedJSONMerge for this. (That's why this variable duplication appeared first.)
 
yours:
https://github.com/BattletechModders/BetterAI
for example, you can go to
BetterAI/StreamingAssets/data/behaviorVariables/global.json
and find
Code:
    {
        /* How much a location must be damaged before an overheat
           attack will be considered, as a fraction from 0.0
           (undamaged) to 1.0 (location destroyed) */
      "k": "Float_ExistingTargetDamageForOverheatAttack",
      "v": {
        "type": "Float",
        "floatVal": 90.0
      }
    },

Also:

My fault. There were 2 copies of them and Beyond Compare highlighted 2-nd as "my file orphan".
(Do you know if regular JSONMerge can add new objects (like this:
Code:
{123},
) or array elements (like
Code:
        "ToHitMovingTargetDistances": [
            20,
          
            100,
            125,
            160,
            190,
            220,
          
            450,
            480
        ],
???
I thought that I have to use AdvancedJSONMerge for this. (That's why this variable duplication appeared first.)

Thanks for catching that! I'll try to clean that up tonight and push a little update.

Yes, adv. Merges can do that, follow the guides on the ModTek Git page and look at one of the other mods I manage, cFixes for live examples of that kind of thing. We named all of our adv. Merges "MergeDef" files and they go in special merge folders. So examples should be easy to find.
 
1.6.2.2 Release for BT 1.6.2
D/L at /BattletechModders/BetterAI/releases/tag/v1.6.2.2 on GitHub

For BATTLETECH 1.6.2

Requires ModTek 0.7.2

Instructions:
For older versions - Delete old Better AI folder in BATTLETECH\Mods
Copy BetterAI-1.6.2.2 in to the BATTLETECH\Mods folder.

Some small adjustments to increase rear arc attacks, DFA in meleeonly mode and slightly less punchy base AI. Bug corrected and AI should be allowed to overheat again, stock AI heat management is much better. AI should still be overheating a few times before destruction on a normal temp. Biome but shouldn't be self destructing on Lunar maps unless it has a very high chance of destroying a location.

1.6.2.2 Changelog:

global.json
Float_ExistingTargetDamageForOverheatAttack 0.90 from 90.0 - Bug, thanks Dra9o!
Float_MeleeDamageMultiplier 2.75 from 3.0 - Slightly less punchy base AI
Float_EvasiveToHitFloor 30.0 from 40.0 - AI much better at heat control, players more evasive
Float_CenterTorsoRearArmorMultiplier 5 from 10 - slightly higher chance to attack rear
Float_PreferAttackFromBehindHostileFactorWeight 0.5 from 0.4 - slightly higher chance to attack rear

role_meleeonly.json
Float_DFADamageMultiplier 8 from 6 - slightly higher chance to DFA in meleeonly

Better AI Permanent Evasion Add On - No update of Add-On required, will work with 1.6.2.2 automatically.
 
If anyone can provide some recent feedback:

How are Escort, Base Defense and Attack/Defend working for everyone?

I've seen some AI action and getting reports confirming the AI is becoming too focused on attacking the defense objectives. I've noticed they seem harder to shake, but it hasn't cost me any missions yet. Has the AI got too focused on the objectives?
 
It's hard to tell for certain in Attack/Defend but I would agree with your assessment of "harder to shake" overall.

Not too focused though, imho, doing pretty well.
 
1.7.0.0 Release for BT 1.7.0
BETTER AI 1.7.0.0 - D/L at /BattletechModders/BetterAI/releases/tag/v1.7.0.0 on GitHub

For BATTLETECH 1.7.0

Requires ModTek 0.7.3

Instructions:
For older versions - Delete old Better AI folder in BATTLETECH\Mods
Copy BetterAI-1.7.0.0 in to the BATTLETECH\Mods folder.

Some small adjustments to increase rear arc attacks, DFA in meleeonly mode and slightly less punchy base AI. Bug corrected and AI should be allowed to overheat again, stock AI heat management is much better. AI should still be overheating a few times before destruction on a normal temp. Biome but shouldn't be self destructing on Lunar maps unless it has a very high chance of destroying a location.

1.7.0.0 Changelog:

global.json, role_activeprobe.json and role_ecmcarrier added new variables and stock adjustments to ECM field weights.

Better AI Permanent Evasion Add On - No update of Add-On required, will work with 1.7.0.0 automatically
 
Will the mod get an update for the current game version or is the better AI mod v1.7 compatible with the newest game version?
It is compatible in the sense that it will run without seriously breaking anything. I'm running it myself.

The AI seems to get tweaks with most releases, and there's no guarantee that any recent changes work well with the changes the mod makes. I haven't played without the mod enough to know which part any oddities are coming from, but certainly allowing the AI to reserve makes a big enough difference that I figure it's worth any minor problems.
 
It is compatible in the sense that it will run without seriously breaking anything. I'm running it myself.

The AI seems to get tweaks with most releases, and there's no guarantee that any recent changes work well with the changes the mod makes. I haven't played without the mod enough to know which part any oddities are coming from, but certainly allowing the AI to reserve makes a big enough difference that I figure it's worth any minor problems.

It would be very helpful if the author of the mod could give us detailled information instead of guessing if compatible or not (I doubt it due to the addition of the official mod support)
 
It would be very helpful if the author of the mod could give us detailled information instead of guessing if compatible or not (I doubt it due to the addition of the official mod support)
Well, I can definitely say with certainty that the official mod support works best with simple JSON edits... and from a technical standpoint, that's all this mod is doing. (Though it does do a lot of it.)

I have it running from the built-in loader myself.