Better Air Filtering

by JoeyDP

An overhaul of the air filtering mod by Schorty. Includes complex air filtering steps to remove pollution.

Content
2 years ago
0.17 - 1.1
9.65K
Environment

b [Resolved] crash forever in game save

4 years ago

Something happened and my game save file is corrupt upon starting, same issue seen on factorio foum where furnace appears to be corrupted.

Factorio crashed. Generating symbolized stacktrace, please wait ...
Raw stacktrace: 0xb43908, 0xd2e2ad, 0x9fd4c9, 0xa1366f, 0xc516c4, 0xc51812, 0xc518b1, 0x7b3a96, 0xb7b48c, 0xbc947d, 0xd1fa36, 0xd204bc, 0xe890f3, 0xf61394, 0x19eca8f, 0x8427, 0
25.002 Info RemoteCommandProcessor.cpp:238: New RCON connection from IP ADDR:({127.0.0.1:40930})
27.793 Warning Logger.cpp:518: Symbols.size() == 23, usedSize == 16

0 0x0000000000d2e2ad in std::__uniq_ptr_impl<LoggerFileWriteStream, std::default_delete<LoggerFileWriteStream> >::_M_ptr() const at /usr/include/c++/8/bits/unique_ptr.h:150

1 0x00000000009fd4c9 in std::unique_ptr<LoggerFileWriteStream, std::default_delete<LoggerFileWriteStream> >::get() const at /usr/include/c++/8/bits/unique_ptr.h:343

2 0x0000000000a1366f in std::unique_ptr<LoggerFileWriteStream, std::default_delete<LoggerFileWriteStream> >::operator->() const at /usr/include/c++/8/bits/unique_ptr.h:337

3 0x0000000000c516c4 in Logger::flush() at /tmp/factorio-build-ANYHxJ/src/Util/Logger.cpp:558

4 0x0000000000c51812 in Logger::logStacktrace(StackTraceInfo*) at /tmp/factorio-build-ANYHxJ/src/Util/Logger.cpp:544

5 0x0000000000c518b1 in Logging::flush() at /tmp/factorio-build-ANYHxJ/src/Util/Logging.cpp:69

6 0x00000000007b3a96 in Logging::logAndAbortOrThrow(char const*, unsigned int, LogLevel, std::string const&) at /tmp/factorio-build-ANYHxJ/src/Util/Logging.cpp:103

7 0x0000000000b7b48c in Logging::logAndAbortOrThrow(char const, unsigned int, LogLevel, char const, ...) at /tmp/factorio-build-ANYHxJ/src/Util/Logging.cpp:93

8 0x0000000000bc947d in FluidBoxManager::save(MapSerialiser&) const at /tmp/factorio-build-ANYHxJ/src/Fluid/FluidBoxManager.cpp:522 (discriminator 1)

9 0x0000000000d1fa36 in CraftingMachine::save(MapSerialiser&) const at /tmp/factorio-build-ANYHxJ/src/Entity/CraftingMachine.cpp:527

10 0x0000000000d204bc in Furnace::save(MapSerialiser&) const at /tmp/factorio-build-ANYHxJ/src/Entity/Furnace.cpp:602

11 0x0000000000e890f3 in EntityUsageBitMask::operator|=(int) at /tmp/factorio-build-ANYHxJ/src/Entity/EntityUsageBitMask.hpp:43

12 0x0000000000f61394 in Entity::setSaved() at /tmp/factorio-build-ANYHxJ/src/Entity/Entity.hpp:440

13 0x00000000019eca8f in Chunk::saveNonRecursive(Entity*, MapSerialiser&) at /tmp/factorio-build-ANYHxJ/src/Surface/Chunk.cpp:383

14 0x0000000000008427 in Chunk::save(MapSerialiser&, ChunkPosition const&) const at /tmp/factorio-build-ANYHxJ/src/Surface/Chunk.cpp:121

15 (nil) in Surface::save(MapSerialiser&, unsigned int, unsigned int, ProgressObserver) at /tmp/factorio-build-ANYHxJ/src/Surface/Surface.cpp:857 (discriminator 3)

16 (nil) in Map::save(MapSerialiser&, ProgressObserver*) const at /tmp/factorio-build-ANYHxJ/src/Map/Map.cpp:1419

17 0x2b70342e3678303d in Scenario::saveMap(SaveType, PackageWriter&, TargetSerialiser&, ProgressObserver*, bool&) at /tmp/factorio-build-ANYHxJ/src/Scenario/Scenario.cpp:1001

18 0x656c656975672c34 in Scenario::saveAs(Filesystem::Path const&, std::string const&, Filesystem::Path const&, ProgressObserver*, SaveType) at /tmp/factorio-build-ANYHxJ/src/Scenario/Scenario.cpp:888

19 0x303d6469746e656d in ParallelScenarioSaver::doSave(ParallelScenarioSaver*) at /tmp/factorio-build-ANYHxJ/src/Scenario/ParallelScenarioSaver.cpp:99

20 0x2b703639642e3478 in execute_native_thread_routine at tmpPPucW.fake.c:?

21 0x67616d7b2c7d3231 in ?? at ??:0

22 0x33323038223d6369 in ?? at ??:0

Stack trace logging done
32.636 Warning Logger.cpp:518: Symbols.size() == 18, usedSize == 15
32.636 Error FluidBoxManager.cpp:517: fluidBox->isInFluidManager() was not true
Logger::writeStacktrace skipped.
32.636 Error CrashHandler.cpp:189: Map tick at moment of crash: 26316077
32.636 Error Util.cpp:97: Unexpected error occurred. If you're running the latest version of the game you can help us solve the problem by posting the contents of the log file on the Factorio forums.
Please also include the save file(s), any mods you may be using, and any steps you know of to reproduce the crash.
32.636 Uploading log file
32.646 Info SystemUtil.cpp:539: Started /home/kash/clusterio/factorio/bin/x64/factorio; trampoline PID: 4069

4 years ago

i had to save the file locally and enter it - saving the game in single player also resulted in the same crash, i was only able to resolve the issue by removing the mod and saving the map with all entities removed.

4 years ago

This appears to be caused by a bug in the main game that has been brought to light by this mod using specific mechanics that don't normally occur together. I've been trying to reproduce it locally without any luck so far. Version 2.2 of the mod did make some changes that were suggested on the forum. Fingers crossed!

4 years ago

@JoeyDP before I go back and test this one, something I'm needing is a large scaled version of these air filters with appropriate cost increases because I am playing a gigabase with Schall's Scaled Machines, and they produce WICKED amount of pollution. Could you look into the Scaled Machines and determine if you can make a +1/+2/+3 version of your filters that are physically larger, consume more electricity, pollution, and thus filters?

4 years ago

I looked at the code of Shall's Scaled Machines, and there appears to be no trivial way to simply "whitelist" air filter machines to be eligible for overtier versions. This optional dependency is closer to their side in my opinion, so if Schallfalke wants to implement this, they have my blessing.

4 years ago

i meant for you to implement your own scaled machine, or do you need their library functions to make it work?

4 years ago

i meant for you to implement your own scaled machine, or do you need their library functions to make it work?

I made a mod for the base Factorio game, for which the implemented tiers suffice.

4 years ago

even in base factorio it is possible to require more than 5,000 entities for a megabase to remove adequate pollution. well, that is a shame, I hoped you could help. I will have to fork the mod.

4 years ago

also, your future features list a new production chain to use water dissolved pollution filtration, which kinda indicates you don't think the existing tiers suffice or you just want complexity for the sake of it.

New response