Merging Chests

by Atria

Enables merging of multiple chests into one entity. Supports merging of arbitrary number of chests (configurable in mod settings). Version 5.0.0 introduced potentially breaking changes for old saves. If your have chests larger than 42 don't update to 5.0.0.

Content
a month ago
0.13 - 1.1
98.8K
Storage

g Game starting time

3 years ago

This mod dramatically increasing game starting time after data-update stage.
I'm playing with a lot of other mods and when i enabling this one my starting time increased from ~30sec to 70+sec.

3 years ago

Without:

0.462 Loading mod core 0.0.0 (data.lua)
0.533 Loading mod base 0.18.27 (data.lua)
0.739 Loading mod WideChestsUnlimited 1.0.0 (data.lua)
0.842 Loading mod WireShortcuts 0.4.3 (data.lua)
0.945 Loading mod 5dim_core 0.18.1 (data.lua)
1.048 Loading mod aai-signal-transmission 0.3.7 (data.lua)
1.152 Loading mod aai-zones 0.5.1 (data.lua)
1.257 Loading mod alien-biomes 0.5.5 (data.lua)
1.611 Loading mod angelsaddons-crawlertrain 0.1.2 (data.lua)
1.848 Loading mod angelsaddons-smeltingtrain 0.3.5 (data.lua)
2.038 Loading mod apm_lib 0.19.50 (data.lua)
2.234 Loading mod apm_resource_pack 0.19.2 (data.lua)
2.419 Loading mod bobinserters 0.18.3 (data.lua)
2.601 Loading mod boblibrary 0.18.9 (data.lua)
2.782 Loading mod Bottleneck 0.11.3 (data.lua)
2.960 Loading mod Construction_Drones 0.6.1 (data.lua)
3.139 Loading mod creative-mod 1.4.1 (data.lua)
3.328 Loading mod deadlock-beltboxes-loaders 2.3.5 (data.lua)
3.509 Loading mod DeadlockResearchNotifications 1.0.1 (data.lua)
3.689 Loading mod Flow Control 3.0.6 (data.lua)
3.919 Loading mod FluidMustFlow 1.2.8 (data.lua)
4.112 Loading mod HandyHands 1.8.1 (data.lua)
4.299 Loading mod heat_glow 0.18.1 (data.lua)
4.483 Loading mod helmod 0.10.22 (data.lua)
4.672 Loading mod integratedCircuitry 0.18.1 (data.lua)
4.864 Loading mod Inventory Sensor 1.8.3 (data.lua)
5.051 Loading mod nicefill 0.1.17 (data.lua)
5.237 Loading mod nixie-tubes 0.18.3 (data.lua)
5.424 Loading mod OpteraLib 0.2.1 (data.lua)
5.610 Loading mod pushbutton 0.18.2 (data.lua)
5.797 Loading mod RaiLuaLib 0.2.8 (data.lua)
6.021 Loading mod RealisticReactors 2.18.14 (data.lua)
6.243 Loading mod robot_attrition 0.4.2 (data.lua)
6.438 Loading mod StoneWaterWell 1.18.4 (data.lua)
6.635 Loading mod TimeTools 1.18.37 (data.lua)
6.831 Loading mod VoidChestPlus 2.3.3 (data.lua)
7.025 Loading mod 5dim_automatization 0.18.1 (data.lua)
7.222 Loading mod 5dim_equipment 0.18.1 (data.lua)
7.418 Loading mod apm_nuclear 0.19.50 (data.lua)
7.626 Loading mod bobores 0.18.3 (data.lua)
7.867 Loading mod bobtech 0.18.3 (data.lua)
8.082 Loading mod apm_recycling 0.19.50 (data.lua)
8.301 Loading mod bobplates 0.18.8 (data.lua)
8.535 Loading mod space-exploration 0.2.18 (data.lua)
8.820 Loading mod bobelectronics 0.18.1 (data.lua)
9.060 Loading mod boblogistics 0.18.9 (data.lua)
9.321 Loading mod bobmining 0.18.1 (data.lua)
9.570 Loading mod bobpower 0.18.6 (data.lua)
9.836 Loading mod bobrevamp 0.18.5 (data.lua)
10.088 Loading mod space-exploration-loves-bob 0.18.0 (data.lua)
10.364 Loading mod angelsrefining 0.11.10 (data.lua)
10.669 Loading mod PickerAtheneum 1.2.1 (data.lua)
10.940 Loading mod angelsaddons-oresilos 0.6.0 (data.lua)
11.205 Loading mod angelsaddons-warehouses 0.5.0 (data.lua)
11.469 Loading mod angelspetrochem 0.9.8 (data.lua)
11.754 Loading mod PickerDollies 1.1.1 (data.lua)
12.030 Loading mod PickerInventoryTools 1.1.6 (data.lua)
12.309 Loading mod angelsaddons-pressuretanks 0.5.0 (data.lua)
12.582 Loading mod angelssmelting 0.6.6 (data.lua)
12.876 Loading mod cargo-ships 0.0.54 (data.lua)
13.175 Loading mod angelsbioprocessing 0.7.8 (data.lua)
13.473 Loading mod angelsindustries 0.4.0 (data.lua)
13.784 Loading mod space-exploration-bridge-mod 0.2.6 (data.lua)
14.078 Loading mod base 0.18.27 (data-updates.lua)
14.385 Loading mod alien-biomes 0.5.5 (data-updates.lua)
14.683 Loading mod angelsaddons-crawlertrain 0.1.2 (data-updates.lua)
14.995 Loading mod angelsaddons-smeltingtrain 0.3.5 (data-updates.lua)
15.307 Loading mod apm_lib 0.19.50 (data-updates.lua)
15.639 Loading mod bobinserters 0.18.3 (data-updates.lua)
15.955 Loading mod deadlock-beltboxes-loaders 2.3.5 (data-updates.lua)
16.262 Loading mod RealisticReactors 2.18.14 (data-updates.lua)
16.564 Loading mod apm_nuclear 0.19.50 (data-updates.lua)
16.887 Loading mod bobores 0.18.3 (data-updates.lua)
17.191 Loading mod bobtech 0.18.3 (data-updates.lua)
17.543 Loading mod apm_recycling 0.19.50 (data-updates.lua)
17.854 Loading mod bobplates 0.18.8 (data-updates.lua)
18.161 Loading mod space-exploration 0.2.18 (data-updates.lua)
18.468 Loading mod bobelectronics 0.18.1 (data-updates.lua)
18.775 Loading mod boblogistics 0.18.9 (data-updates.lua)
19.133 Loading mod bobmining 0.18.1 (data-updates.lua)
19.438 Loading mod bobpower 0.18.6 (data-updates.lua)
19.745 Loading mod bobrevamp 0.18.5 (data-updates.lua)
20.050 Loading mod angelsrefining 0.11.10 (data-updates.lua)
20.363 Loading mod deadlock-integrations 2.1.2 (data-updates.lua)
20.649 Loading mod angelsaddons-oresilos 0.6.0 (data-updates.lua)
20.936 Loading mod angelsaddons-warehouses 0.5.0 (data-updates.lua)
21.270 Loading mod angelspetrochem 0.9.8 (data-updates.lua)
21.572 Loading mod angelsaddons-pressuretanks 0.5.0 (data-updates.lua)
21.860 Loading mod angelssmelting 0.6.6 (data-updates.lua)
22.170 Loading mod angelsbioprocessing 0.7.8 (data-updates.lua)
22.472 Loading mod angelsindustries 0.4.0 (data-updates.lua)
22.913 Loading mod WireShortcuts 0.4.3 (data-final-fixes.lua)
23.206 Loading mod 5dim_core 0.18.1 (data-final-fixes.lua)
23.526 Loading mod alien-biomes 0.5.5 (data-final-fixes.lua)
23.837 Loading mod angelsaddons-smeltingtrain 0.3.5 (data-final-fixes.lua)
24.128 Loading mod apm_lib 0.19.50 (data-final-fixes.lua)
24.417 Loading mod boblibrary 0.18.9 (data-final-fixes.lua)
24.717 Loading mod Construction_Drones 0.6.1 (data-final-fixes.lua)
25.010 Loading mod creative-mod 1.4.1 (data-final-fixes.lua)
25.316 Loading mod deadlock-beltboxes-loaders 2.3.5 (data-final-fixes.lua)
25.662 Loading mod HandyHands 1.8.1 (data-final-fixes.lua)
25.952 Loading mod integratedCircuitry 0.18.1 (data-final-fixes.lua)
26.244 Loading mod nixie-tubes 0.18.3 (data-final-fixes.lua)
26.538 Loading mod RealisticReactors 2.18.14 (data-final-fixes.lua)
26.830 Loading mod robot_attrition 0.4.2 (data-final-fixes.lua)
27.119 Loading mod apm_nuclear 0.19.50 (data-final-fixes.lua)
27.525 Loading mod bobtech 0.18.3 (data-final-fixes.lua)
27.837 Loading mod apm_recycling 0.19.50 (data-final-fixes.lua)
28.138 Loading mod bobplates 0.18.8 (data-final-fixes.lua)
28.435 Loading mod space-exploration 0.2.18 (data-final-fixes.lua)
28.775 Loading mod bobelectronics 0.18.1 (data-final-fixes.lua)
29.140 Loading mod space-exploration-bobores-core 1.18.1 (data-final-fixes.lua)
29.434 Loading mod angelsrefining 0.11.10 (data-final-fixes.lua)
29.750 Loading mod deadlock-integrations 2.1.2 (data-final-fixes.lua)
30.052 Loading mod PickerAtheneum 1.2.1 (data-final-fixes.lua)
30.356 Loading mod angelspetrochem 0.9.8 (data-final-fixes.lua)
30.669 Loading mod PickerInventoryTools 1.1.6 (data-final-fixes.lua)
30.971 Loading mod angelssmelting 0.6.6 (data-final-fixes.lua)
31.282 Loading mod Bob_Power_Fix 0.17.4 (data-final-fixes.lua)
31.577 Loading mod cargo-ships 0.0.54 (data-final-fixes.lua)
31.878 Loading mod deadlock-stacking-crating-bobs 0.8.1 (data-final-fixes.lua)
32.204 Loading mod angelsindustries 0.4.0 (data-final-fixes.lua)
32.829 Loading mod space-exploration-bridge-mod 0.2.6 (data-final-fixes.lua)
33.133 Loading mod space-exploration-postprocess 0.2.4 (data-final-fixes.lua)

3 years ago
(updated 3 years ago)

And with:

0.504 Loading mod core 0.0.0 (data.lua)
0.576 Loading mod base 0.18.27 (data.lua)
0.785 Loading mod WideChestsUnlimited 1.0.0 (data.lua)
0.890 Loading mod WireShortcuts 0.4.3 (data.lua)
0.992 Loading mod 5dim_core 0.18.1 (data.lua)
1.099 Loading mod aai-signal-transmission 0.3.7 (data.lua)
1.206 Loading mod aai-zones 0.5.1 (data.lua)
1.313 Loading mod alien-biomes 0.5.5 (data.lua)
1.668 Loading mod angelsaddons-crawlertrain 0.1.2 (data.lua)
1.859 Loading mod angelsaddons-smeltingtrain 0.3.5 (data.lua)
2.090 Loading mod apm_lib 0.19.50 (data.lua)
2.289 Loading mod apm_resource_pack 0.19.2 (data.lua)
2.476 Loading mod bobinserters 0.18.3 (data.lua)
2.662 Loading mod boblibrary 0.18.9 (data.lua)
2.847 Loading mod Bottleneck 0.11.3 (data.lua)
3.026 Loading mod Construction_Drones 0.6.1 (data.lua)
3.211 Loading mod creative-mod 1.4.1 (data.lua)
3.404 Loading mod deadlock-beltboxes-loaders 2.3.5 (data.lua)
3.588 Loading mod DeadlockResearchNotifications 1.0.1 (data.lua)
3.773 Loading mod Flow Control 3.0.6 (data.lua)
3.961 Loading mod FluidMustFlow 1.2.8 (data.lua)
4.166 Loading mod HandyHands 1.8.1 (data.lua)
4.358 Loading mod heat_glow 0.18.1 (data.lua)
4.569 Loading mod helmod 0.10.22 (data.lua)
4.770 Loading mod integratedCircuitry 0.18.1 (data.lua)
4.984 Loading mod Inventory Sensor 1.8.3 (data.lua)
5.190 Loading mod nicefill 0.1.17 (data.lua)
5.385 Loading mod nixie-tubes 0.18.3 (data.lua)
5.587 Loading mod OpteraLib 0.2.1 (data.lua)
5.802 Loading mod pushbutton 0.18.2 (data.lua)
6.008 Loading mod RaiLuaLib 0.2.8 (data.lua)
6.224 Loading mod RealisticReactors 2.18.14 (data.lua)
6.459 Loading mod robot_attrition 0.4.2 (data.lua)
6.678 Loading mod StoneWaterWell 1.18.4 (data.lua)
6.882 Loading mod TimeTools 1.18.37 (data.lua)
7.083 Loading mod VoidChestPlus 2.3.3 (data.lua)
7.283 Loading mod 5dim_automatization 0.18.1 (data.lua)
7.485 Loading mod 5dim_equipment 0.18.1 (data.lua)
7.686 Loading mod apm_nuclear 0.19.50 (data.lua)
7.903 Loading mod bobores 0.18.3 (data.lua)
8.133 Loading mod bobtech 0.18.3 (data.lua)
8.359 Loading mod apm_recycling 0.19.50 (data.lua)
8.586 Loading mod bobplates 0.18.8 (data.lua)
8.828 Loading mod space-exploration 0.2.18 (data.lua)
9.153 Loading mod bobelectronics 0.18.1 (data.lua)
9.397 Loading mod boblogistics 0.18.9 (data.lua)
9.674 Loading mod bobmining 0.18.1 (data.lua)
9.950 Loading mod bobpower 0.18.6 (data.lua)
10.222 Loading mod bobrevamp 0.18.5 (data.lua)
10.489 Loading mod space-exploration-loves-bob 0.18.0 (data.lua)
10.766 Loading mod angelsrefining 0.11.10 (data.lua)
11.063 Loading mod PickerAtheneum 1.2.1 (data.lua)
11.359 Loading mod angelsaddons-oresilos 0.6.0 (data.lua)
11.636 Loading mod angelsaddons-warehouses 0.5.0 (data.lua)
11.919 Loading mod angelspetrochem 0.9.8 (data.lua)
12.213 Loading mod PickerDollies 1.1.1 (data.lua)
12.497 Loading mod PickerInventoryTools 1.1.6 (data.lua)
12.806 Loading mod angelsaddons-pressuretanks 0.5.0 (data.lua)
13.093 Loading mod angelssmelting 0.6.6 (data.lua)
13.392 Loading mod cargo-ships 0.0.54 (data.lua)
13.698 Loading mod angelsbioprocessing 0.7.8 (data.lua)
14.019 Loading mod angelsindustries 0.4.0 (data.lua)
14.349 Loading mod space-exploration-bridge-mod 0.2.6 (data.lua)
14.658 Loading mod base 0.18.27 (data-updates.lua)
14.996 Loading mod alien-biomes 0.5.5 (data-updates.lua)
15.315 Loading mod angelsaddons-crawlertrain 0.1.2 (data-updates.lua)
15.638 Loading mod angelsaddons-smeltingtrain 0.3.5 (data-updates.lua)
15.970 Loading mod apm_lib 0.19.50 (data-updates.lua)
16.278 Loading mod bobinserters 0.18.3 (data-updates.lua)
16.586 Loading mod deadlock-beltboxes-loaders 2.3.5 (data-updates.lua)
16.904 Loading mod RealisticReactors 2.18.14 (data-updates.lua)
17.217 Loading mod apm_nuclear 0.19.50 (data-updates.lua)
17.530 Loading mod bobores 0.18.3 (data-updates.lua)
17.838 Loading mod bobtech 0.18.3 (data-updates.lua)
18.144 Loading mod apm_recycling 0.19.50 (data-updates.lua)
18.457 Loading mod bobplates 0.18.8 (data-updates.lua)
18.769 Loading mod space-exploration 0.2.18 (data-updates.lua)
19.079 Loading mod bobelectronics 0.18.1 (data-updates.lua)
19.401 Loading mod boblogistics 0.18.9 (data-updates.lua)
19.713 Loading mod bobmining 0.18.1 (data-updates.lua)
20.016 Loading mod bobpower 0.18.6 (data-updates.lua)
20.325 Loading mod bobrevamp 0.18.5 (data-updates.lua)
20.637 Loading mod angelsrefining 0.11.10 (data-updates.lua)
20.948 Loading mod deadlock-integrations 2.1.2 (data-updates.lua)
21.242 Loading mod WideChests 3.0.7 (data-updates.lua)
23.178 Loading mod angelsaddons-oresilos 0.6.0 (data-updates.lua)
24.439 Loading mod angelsaddons-warehouses 0.5.0 (data-updates.lua)
25.601 Loading mod angelspetrochem 0.9.8 (data-updates.lua)
26.801 Loading mod angelsaddons-pressuretanks 0.5.0 (data-updates.lua)
27.974 Loading mod angelssmelting 0.6.6 (data-updates.lua)
29.154 Loading mod angelsbioprocessing 0.7.8 (data-updates.lua)
30.358 Loading mod angelsindustries 0.4.0 (data-updates.lua)
31.650 Loading mod WireShortcuts 0.4.3 (data-final-fixes.lua)
32.803 Loading mod 5dim_core 0.18.1 (data-final-fixes.lua)
33.948 Loading mod alien-biomes 0.5.5 (data-final-fixes.lua)
35.151 Loading mod angelsaddons-smeltingtrain 0.3.5 (data-final-fixes.lua)
36.323 Loading mod apm_lib 0.19.50 (data-final-fixes.lua)
37.512 Loading mod boblibrary 0.18.9 (data-final-fixes.lua)
38.676 Loading mod Construction_Drones 0.6.1 (data-final-fixes.lua)
39.817 Loading mod creative-mod 1.4.1 (data-final-fixes.lua)
40.973 Loading mod deadlock-beltboxes-loaders 2.3.5 (data-final-fixes.lua)
42.109 Loading mod HandyHands 1.8.1 (data-final-fixes.lua)
43.248 Loading mod integratedCircuitry 0.18.1 (data-final-fixes.lua)
44.401 Loading mod nixie-tubes 0.18.3 (data-final-fixes.lua)
45.564 Loading mod RealisticReactors 2.18.14 (data-final-fixes.lua)
46.701 Loading mod robot_attrition 0.4.2 (data-final-fixes.lua)
47.846 Loading mod apm_nuclear 0.19.50 (data-final-fixes.lua)
49.074 Loading mod bobtech 0.18.3 (data-final-fixes.lua)
50.215 Loading mod apm_recycling 0.19.50 (data-final-fixes.lua)
51.408 Loading mod bobplates 0.18.8 (data-final-fixes.lua)
52.546 Loading mod space-exploration 0.2.18 (data-final-fixes.lua)
53.677 Loading mod bobelectronics 0.18.1 (data-final-fixes.lua)
54.882 Loading mod space-exploration-bobores-core 1.18.1 (data-final-fixes.lua)
56.068 Loading mod angelsrefining 0.11.10 (data-final-fixes.lua)
57.231 Loading mod deadlock-integrations 2.1.2 (data-final-fixes.lua)
58.400 Loading mod PickerAtheneum 1.2.1 (data-final-fixes.lua)
59.544 Loading mod WideChests 3.0.7 (data-final-fixes.lua)
60.709 Loading mod angelspetrochem 0.9.8 (data-final-fixes.lua)
61.886 Loading mod PickerInventoryTools 1.1.6 (data-final-fixes.lua)
63.040 Loading mod angelssmelting 0.6.6 (data-final-fixes.lua)
64.191 Loading mod Bob_Power_Fix 0.17.4 (data-final-fixes.lua)
65.336 Loading mod cargo-ships 0.0.54 (data-final-fixes.lua)
66.483 Loading mod deadlock-stacking-crating-bobs 0.8.1 (data-final-fixes.lua)
67.642 Loading mod angelsindustries 0.4.0 (data-final-fixes.lua)
69.050 Loading mod space-exploration-bridge-mod 0.2.6 (data-final-fixes.lua)
70.202 Loading mod space-exploration-postprocess 0.2.4 (data-final-fixes.lua)

3 years ago

Can't be helped, when some mod creates some prototype, it affects loading time of mods/stages loaded after it.

3 years ago
(updated 3 years ago)

Yes, but even mods such as bob, angel or SE do not affect so much on boot time.

3 years ago

It depends on your mod setting. By default the mod creates around 1600 new prototypes. Some of them are quite big.

I'd suggest lowering the chest size limits as much as possible (mainly the maximum chest area limit).

3 years ago
(updated 3 years ago)

In my case "MergingChests.CreateTrashdumpEntity" creates over 3k new prototypes with 42(limit) shadow layers each.
As resoult: before mod loaded i have 1238472 records in data.row; after: 7226101 records

3 years ago

Yes, the entity sprites are created by combining one sprite for each tile a chest will cover. So large chests will have MANY sprite layers. How did you get these numbers? Does the game have them accessable somewhere or did you modify something to print them out?

3 years ago
(updated 3 years ago)

By modify your data-updates:

log("STAGE 0")
cnt = 0
iter = function(A)
if type(A) == 'table' then
for k,v in pairs(A) do iter(v) end
else cnt = cnt +1 end
end

iter(data.raw); log("STAGE 1 "..cnt); cnt = 0

require("init")
iter(data.raw); log("STAGE 2 "..cnt); cnt = 0

require("prototypes.entity")
iter(data.raw); log("STAGE 3 "..cnt); cnt = 0

require("prototypes.groups")
iter(data.raw); log("STAGE 4 "..cnt); cnt = 0

require("prototypes.item")
iter(data.raw); log("STAGE 5 "..cnt); cnt = 0

require("prototypes.shortcuts")
iter(data.raw); log("STAGE 6 "..cnt)

And as some sort of temporal solution you can set "Whitelist" to [Nx1 1xN] by default to prevent generating trash entities for warehouse and skip CreateTrashdumpEntity and CreateWarehouseEntity routines.
After such changes mod generating "only" 70k entities instead of 6 mil.

3 years ago

Oh I though you mean there were 6 milion new entities. Yes, this mod generates a lot of records in data.raw table, but I will not make "Nx1 1xN" default whitelist, because it would disable the functionality of this mod to create area chests.

3 years ago

You definitely need to rewrite this functionality, cuz creating such amount of entities with a lot of copied parts is insane. Eventually not only boot time is affected, but and game performance too (especially on low-end pc).

3 years ago

The mod on default settings create around 1600 new entities. And every entity has equal amount of sprite layers as amount of tiles it covers. Until the game supports the 9-segmented tiled entities, this needs to be done by layers. This could be optimised when using larger sprites instead of 1x1 sprites but this only treats the symptoms, not solving the problem.

2 years ago

I just installed this mod from scratch and experienced this game starting lag again.
I usually go to settings and decrease max. chest area to something like 100.
You could decrease the max. chest area default from 1600 to something smaller. The whole 40x40 chest is quite big and I can imagine, that not many users use that big of a chest. Esp. when you only have a default max. of 1000 stacks inventory, no matter how big it is.

1 year, 5 months ago

I personally always enable prototype caching since it helps other large mods load a lot quicker anyway

Press ctrl+alt while open settings.

open additional settings

enable: cache-prototype-data, cache-sprite-atlas

New response