Smart Enemy AI Enhancement


Smarter biter AI with adaptive resistance, breach reinforcement, scheduled raids, wall regen, and overhaul-mod compatibility.

Overhaul
a day ago
2.0
522
Combat

b Error for modded Uranium Slug ammo

2 days ago

Currently still trying to find which mod has it but here is the error message

Failed to load mods: smart-enemy-ai/data/validate.lua:56: [smart-enemy-ai] would break player turret: uranium-shotgun-pellet (player ammo shotgun-shell) has projectile-block layer
stack traceback:
[C]: in function 'error'
smart-enemy-ai/data/validate.lua:56: in main chunk
[C]: in function 'require'
smart-enemy-ai/data-final-fixes.lua:16: in main chunk

2 days ago

After a 'clean' reload of mods error stopped occuring

2 days ago

Think I found the mod that triggers this is the Fulgoran Enemies mod

2 days ago

Good catch. Fulgoran Enemies adds Space-Age biter variants on Fulgoro, and several of them are styled as ranged "energy" attackers; one or more of those reuses a vanilla player projectile prototype (here uranium-shotgun-pellet) in their attack chain instead of defining their own.

I implemented a clone-and-rewire fix that is mod-agnostic so it'll handle any other mod that does the same trick (the log line will name the projectile so we can see it).

2 days ago

Error still occurs with Fulgoran Enemies mod. There might be an additional thing because i do have a shield mod as well

2 days ago

So found a weird interaction if both Fulgoran Enemies and Combat Tweaks and Additions is on it shows the error however if only one of them is active at a time it works ok

2 days ago

Have you tried the newest Version?

a day ago

Yes this was on 8.5.3 and to also check it also happens in older versions

Ok i have to look deeper. Combat Tweaks and Additions and Smart work together?

a day ago

Yes tried that configuration and Smart Ai works with one or the other but not both, both(without Smart) also work fine together

smart-enemy-ai + mod A alone (the one with the enemy that fires uranium-shotgun-pellet): the projectile prototype uranium-shotgun-pellet doesn't exist (combat-tweaks would have added it, but it's not loaded). Our scan walks the enemy attack, calls patch_existing_projectile("uranium-shotgun-pellet"), hits if not p then return end at line 75 of prototype-scan.lua, and bails silently. No layer added, validate sees nothing — clean load.

smart-enemy-ai + mod B alone (combat-tweaks-improvements): the player projectile + player ammo exist, but no enemy references the projectile. Our scan walks every data.raw.unit/turret with subgroup="enemies", finds zero references to uranium-shotgun-pellet, never patches it. Validate finds the player ammo, looks at the projectile, sees no smart-enemy-ai layer — clean load.

Could you give me a full mod list? Somehow player ammo uranium-shotgun-pellet is given to enemies from Fulgoran Enemies. Because of Wallblock that blocks enemy projectiles but lets player projectile pass a projectiule that is player and enemy at the same time crashes the game.

Or post me a current.log when this crash happens

a day ago

Having both mods on works with 8.5.5. It might be because of the Enemy Mod Harmonizer since from what i understand it makes a 'unified' readable mask for projectiles, have not tried to disable that instead of Fulgoran Enemies and Combat Tweaks though.

I rewrote the whole blocking mechanism and now only register enemy projectiles. Now i doesnt matter if a player and an enemy use the same projectile.

This thread has been locked.