Alien Biomes Tweaked


Tweaks the Alien Biomes mod, making optional some of its non-optional changes to vanilla gameplay. This is not the mod itself with changes, but rather a "mod of a mod". Can optionally be used with other mods that make similar changes that need undoing.

Tweaks
1 year, 8 months ago
1.1
3.17K
Environment

g [implemented] Fix for overwriting absoption values?

1 year, 9 months ago

Does it fix most critical flaw of alien biomes mod?

1 year, 9 months ago

Hi, it currently only has exactly what is mentioned on the info page. I only included those things I was aware of (without digging). If you know of something else, please give me some details so I know what I'm looking for.

1 year, 9 months ago

data-final-fixes.lua:

for _, tile in pairs(data.raw.tile) do
if tile.name == "water" or tile.name == "deepwater" or tile.name == "water-shallow" or tile.name == "water-mud" then
tile.pollution_absorption_per_second=0.0000075
elseif string.find(tile.name, "grass") or string.find(tile.name, "frozen") then
tile.pollution_absorption_per_second= math.min(tile.pollution_absorption_per_second or 0.0000075, 0.0000075)
elseif string.find(tile.name, "dirt") then
tile.pollution_absorption_per_second= math.min(tile.pollution_absorption_per_second or 0.000005, 0.000005)
else
tile.pollution_absorption_per_second= math.min(tile.pollution_absorption_per_second or 0.0000025, 0.0000025)
end
end

1 year, 9 months ago

Mod owner changes not only properties for tiles alien biomes adds to game (it's ok), but also for ALL others (including special tiles with high absorption ratio introduced by mods Angels, Warmonger, Krastorio2) replacing their values with 0.0000025.

1 year, 9 months ago
(updated 1 year, 9 months ago)

Hmm, that's gonna be hard to deal with. Due to the nature of modding for this game and the fact that this mod is not a copy of Alien Biomes with altered code, I can't actually stop Alien Biomes from running that section of code. Now, if necessary, I have no problems with digging into vanilla and pulling its values for tiles to hard code back in, but other mods are a different story due their sheer number and the fact that more can be created later.

The best option here is to (if no one has already) file a bug report with Alien Biomes. This is even more so wrong of them to do than the other changes I tweaked back.

If they're ignoring the report, or simply refusing to change it, then that means that each individual mod author who's mods are affected need to add Alien Biomes as an optional mod and then include their own data-final-fixes.lua file to revert the changes to their tiles. If they are unaware of the changes themselves, then a compatibility report may need to be given to them.

Otherwise, this would require someone to be willing to maintain a compatibility mod indefinitely to fix, seems there may be other mods than those reported affected, and new mods may come on the scene in the future. I'm just not sure if this is something I want to do at this time. :/

I'll look at this some more, anyway, but don't hold your breath for a fix to mod added tiles (sorry).

1 year, 9 months ago
(updated 1 year, 9 months ago)

yes, I also think that the only universal solution is to gather values in data step and fix them back in final fixes stage after alien biomes. But that's kinda stupid way. For myself I decided to uninstall all mods from Earendel - best solution I think, because there are other mods globally corrupting game like AAI Industry (corrupting most recipes in game), AAI vehicles (unexpectedly removing player's structures near nests - what a surprise property for a vehicles automation mod) and I don't want to expect some other surprises.

The best option here is to (if no one has already) file a bug report with Alien Biomes. This is even more so wrong of them to do than the other changes I tweaked back.

Yes, Angels mod developers (or fans) reported that issue to mod maintenance team, but Earendel team ignored it and blocked reporters in their discord (standard toxic behavior there).
Frankly speaking If not those Angel's mod team disclaimer I wouldn't notice it myself, because I witnessed a huge difference between https://wiki.factorio.com/Pollution#Chunks and my game experience (pollution is not absorbed by chunk for dozens of minutes if there are no nests or at least several trees there), but was thinking all this time it was a bug in Factorio - I couldn't even imagine that someone can write code in such a manner... Only recently tried a new playthrough without Alien Biomes (just to verify how clear game is much faster and less UPS consuming) and noticed, that it's absolutely different Factorio gameplay experience concerning pollution absorption.

1 year, 9 months ago

Released v0.0.2 giving my best attempt at this. I also attempted to tweak Alien Biomes' added tiles to match their vanilla equivalents. Note that any mods that add their tiles in data-updates.lua but load after this mod (or in data-final-fixes.lua and load before Alien Biomes) I won't be able to catch and fix.

1 year, 9 months ago

:-)
Krastorio2 and Warmonger add tiles in data.lua . For Angel's - I don't know. If it's new tiles then they should be in data.lua normally.

1 year, 9 months ago

Normally yes, but if everything did what they "normally" should, we wouldn't have this issue with Alien Biomes. :P

1 year, 9 months ago

Can i have an explanation for non-coders what the problem is?
Im not surprised that a mod by the guy has hidden bollox in it.

1 year, 9 months ago
(updated 1 year, 9 months ago)

Sure!

So tiles have a property to them called pollution_absorption_per_second. As the name suggests, this controls how quickly they absorb pollution. Now Alien Biomes, for whatever reason, is setting these to values different from vanilla. This does not appear to be documented anywhere that I can see from a quick look, and of course affects game balance. It does appear as though pollution_absorption_per_second was introduced with 0.17 to replace the old property of "ageing", so it's possible that the devs adjusted the values some over time and Alien Biomes simply didn't keep up, but I can't find anything in the game's release notes on that, either, and other people attempting to report these values are apparently being chased off, so....

Anyway, the real issue here is the last bit of the IF statement garrotte posted:

else
    tile.pollution_absorption_per_second= math.min(tile.pollution_absorption_per_second or 0.0000025, 0.0000025)
end

This is a "catch all". Handles all tiles not already explicitly handled in the previous sections. It's making it so that any tile being handled here can, at most, have a pollution_absorption_per_second of 0.0000025. Mod added tiles, which obviously have a good chance of being named in a way that can land them here, may have purposely been given higher values which are now going to be overwritten.

1 year, 9 months ago

So i kind of did understand it correctly.
I assume 0.000lol25 isnt just some coder slang and is really just basically zero absorption.

1 year, 9 months ago
(updated 1 year, 9 months ago)

Yeah, it's just a small value. All tiles are relatively small. I believe the highest value in vanilla is 3 times that (grass at 0.0000075; water is 2 times at 0.000005). Some mods, though, like Warmonger, add additional tiles with a purposely higher absorption modifier: 0.0001 and 0.0002 for their two. This is a difference of 40 and 80 times.

1 year, 9 months ago

Thats less bad than i expected.
If thats the absorption per tick per tile then that low numbers does look more resonable.
I expected this to have reduced by a factor of 20k or something.

1 year, 9 months ago

About 80% factorio fans play with peaceful biters - they don't care. But for some fans of intense fights with biters it's a huge pain when game works not like it should just because they added mod with beautiful nature decorations (didn't expect gameplay change and didn't check that mod for such a surprise). So instead of consuming 12 pollution units per minute soil takes only insignificant amounts of pollution during time period and nearby biters homes have to eat that pollution sending waves of angry natives to check player defenses (and there are special mods where biters also do other unpleasant things when they are angry).

1 year, 9 months ago
(updated 1 year, 9 months ago)

Thats less bad than i expected.
If thats the absorption per tick per tile then that low numbers does look more resonable.
I expected this to have reduced by a factor of 20k or something.

It does add up. Each chunk is 32x32=1024 tiles (and pollution is processed on the chunk level). So for Warmonger, a chunk that is completely covered by their creep will absorb between 41k and 82k times less than it should (depending on which creep is covering it).

1 year, 9 months ago

80% really? That removes all of the pressure and alot of the challenge.
I never thought about this but had you asked me i would have guessed that biterless players are an insignificant
percentile minority.

But that could explain why me and my brother had troube with Warptorio Mp
or why my BNW rampent tries turn out not quite as expected.

1 year, 9 months ago

when game works not like it should just because they added mod with beautiful nature decorations (didn't expect gameplay change and didn't check that mod for such a surprise).

This reminds me, when I was looking into Alien Biomes' change log for any information on the tile pollution modifiers, I found one about increasing tree pollution absorption by 50%. Now, with a check of the live in-game values, it looks like they only did their own added trees and not vanilla, but this still puts their trees to a level that doesn't conform with the rest of the game (and isn't something you'd expect from that mod). I'm going to add a correction for this, too. If they had varied the tree absorption rates some (some above some below vanilla), that'd be one thing, but they did an across the board +50% over vanilla.

(As for that 80% figure, unless you got it from the devs, I wouldn't trust it. No one else except for them (and even then maybe not even them) could possibly know the true numbers.)

1 year, 9 months ago

(As for that 80% figure, unless you got it from the devs, I wouldn't trust it. No one else except for them (and even then maybe not even them) could possibly know the true numbers.)

It is mentioned by devs in a few forum threads. But that is true only for entire 3+ mln mass, including those who come&go, and based on feedback (it contains very little info about warfare part of the game). No one knows statistics for true fans - for those players with 1+ year factorio experience, who tried different mods, tried different playstyles.

New response