[MOD] Deadlock's Stacking Beltboxes & Compact Loaders

Topics and discussion about specific mods
shanemadden
Fast Inserter
Fast Inserter
Posts: 128
Joined: Thu Feb 08, 2018 8:25 am
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by shanemadden »

GrumpyJoe wrote: Sat Mar 23, 2019 3:25 pm Meh, thats a quick edit....
Ok... so, DLstack is making stacks from base game items, which would be iron plate, copper plate etc.
crisdecs pYstack makes everything stack that pY added, like aluminium plates and the intermediate stuff in rawOres. And stacks to 100stacks or 500 plates. I dont know which ones "responsibility" it would be to look into base game items in modded games, but the whole thing is getting even more confusing and unconvenient. I think we will just use loaders for warehouses and live with early slow loading of trains ^^

Anyway, thanks for the mod, i love it when people get their ideas to work and improve this game
Which mods names show in yellow when you mouse over the iron and copper plates? That's the mod changing the stack size. I just added a fix for the changes that Bob's Plates makes to the base item stack sizes in a version in the last couple days, so make sure you're running current if it's Bob's. If it's something else, it should be a pretty easy fix.
User avatar
Deadlock989
Smart Inserter
Smart Inserter
Posts: 2529
Joined: Fri Nov 06, 2015 7:41 pm

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by Deadlock989 »

reapersms wrote: Sat Mar 23, 2019 5:33 pm Sounds like an ordering issue. The base stacking mod is probably creating the stack item for plates before pymods change the stack size.

An optional dependency on py for the base would probably work best. Otherwise maybe a pass in final fixes that rechecks and fixes stack sizes for the deadlock items..
The base mod isn't supposed to have dependencies on all these big overhaul mods. It's the third party mod which adds in the Py items which should have a dependency on Py and then set up its stuff in data-final-fixes. If a third party mod has altered vanilla items then you can tell it to re-stack them and it will update the vanilla item with any changes.
shanemadden
Fast Inserter
Fast Inserter
Posts: 128
Joined: Thu Feb 08, 2018 8:25 am
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by shanemadden »

Yeah - as I put it on that Bob's Plates bug report thread and bears repeating here:
keeping the code simple this time around requires a 'you break it, you bought it' philosophy in the data phase.
GrumpyJoe
Filter Inserter
Filter Inserter
Posts: 491
Joined: Fri Apr 06, 2018 7:10 pm
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by GrumpyJoe »

shanemadden wrote: Sat Mar 23, 2019 5:57 pm

Which mods names show in yellow when you mouse over the iron and copper plates? That's the mod changing the stack size. I just added a fix for the changes that Bob's Plates makes to the base item stack sizes in a version in the last couple days, so make sure you're running current if it's Bob's. If it's something else, it should be a pretty easy fix.
cant load the game until tomorrow, but we dont have more than full py and a bit QoL stuff.
Inserters is the only bobs mod, doesn´t even require his lib

i doubt LTN, warehouse and bulk railloaders mess with stack sizes
shanemadden
Fast Inserter
Fast Inserter
Posts: 128
Joined: Thu Feb 08, 2018 8:25 am
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by shanemadden »

Version 2.1.0 has been released with all new graphics thanks to Deadlock, as well as an additional option to allow disabling the display of the recipe on beltboxes in alt mode - post with any issues!

GrumpyJoe, feel free to upload an example save and I can sync to your mod set and see what's doing what.
Omarflyjoemacky
Fast Inserter
Fast Inserter
Posts: 104
Joined: Tue Nov 15, 2016 10:56 pm
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by Omarflyjoemacky »

Read the mod page comments on the new graphics. :( Totally understand the shift to the new style, sounds like it took a lot of work.
"And then Bender ran."
mrvn
Smart Inserter
Smart Inserter
Posts: 5855
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Large arrow icons missing

Post by mrvn »

Seems like some mods start to have 128 pixel icons. After some updates I now get:

29.259 Mods to disable:Failed to load mods: File not found: __deadlock-beltboxes-loaders__/graphics/icons/arrow-d-128.png

Looking at data.raw I see:

Code: Select all

      name = "deadlock-stacks-stack-basic-circuit-board",
      icons = {
        {
          icon = "__deadlock-beltboxes-loaders__/graphics/icons/blank.png",
          icon_size = 32,
          scale = 1
        },
        {
          icon = "__bobelectronics__/graphics/icons/colour-coded/basic-circuit-board.png",
          icon_size = 128,
          scale = 0.2125,
          shift = {
            0,
            3
          }
        },
        {
          icon = "__bobelectronics__/graphics/icons/colour-coded/basic-circuit-board.png",
          icon_size = 128,
          scale = 0.2125,
          shift = {
            0,
            0
          }
        },
        {
          icon = "__bobelectronics__/graphics/icons/colour-coded/basic-circuit-board.png",
          icon_size = 128,
          scale = 0.2125,
          shift = {
            0,
            -3
          }
        },
        {
          icon = "__deadlock-beltboxes-loaders__/graphics/icons/arrow-d-128.png",
          icon_size = 128,
          scale = 0.125
        }
      },
Please add 128 pixel arrows or pick a smaller arrow icon when generating stacks.
shanemadden
Fast Inserter
Fast Inserter
Posts: 128
Joined: Thu Feb 08, 2018 8:25 am
Contact:

Re: Large arrow icons missing

Post by shanemadden »

mrvn wrote: Sat Mar 30, 2019 1:54 pm Seems like some mods start to have 128 pixel icons. After some updates I now get:

29.259 Mods to disable:Failed to load mods: File not found: __deadlock-beltboxes-loaders__/graphics/icons/arrow-d-128.png

Looking at data.raw I see:

Code: Select all

      name = "deadlock-stacks-stack-basic-circuit-board",
      icons = {
        {
          icon = "__deadlock-beltboxes-loaders__/graphics/icons/blank.png",
          icon_size = 32,
          scale = 1
        },
        {
          icon = "__bobelectronics__/graphics/icons/colour-coded/basic-circuit-board.png",
          icon_size = 128,
          scale = 0.2125,
          shift = {
            0,
            3
          }
        },
        {
          icon = "__bobelectronics__/graphics/icons/colour-coded/basic-circuit-board.png",
          icon_size = 128,
          scale = 0.2125,
          shift = {
            0,
            0
          }
        },
        {
          icon = "__bobelectronics__/graphics/icons/colour-coded/basic-circuit-board.png",
          icon_size = 128,
          scale = 0.2125,
          shift = {
            0,
            -3
          }
        },
        {
          icon = "__deadlock-beltboxes-loaders__/graphics/icons/arrow-d-128.png",
          icon_size = 128,
          scale = 0.125
        }
      },
Please add 128 pixel arrows or pick a smaller arrow icon when generating stacks.
Should be fixed in 2.1.4.
GrumpyJoe
Filter Inserter
Filter Inserter
Posts: 491
Joined: Fri Apr 06, 2018 7:10 pm
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by GrumpyJoe »

shanemadden wrote: Sat Mar 23, 2019 5:57 pm
GrumpyJoe wrote: Sat Mar 23, 2019 3:25 pm Meh, thats a quick edit....
Ok... so, DLstack is making stacks from base game items, which would be iron plate, copper plate etc.
crisdecs pYstack makes everything stack that pY added, like aluminium plates and the intermediate stuff in rawOres. And stacks to 100stacks or 500 plates. I dont know which ones "responsibility" it would be to look into base game items in modded games, but the whole thing is getting even more confusing and unconvenient. I think we will just use loaders for warehouses and live with early slow loading of trains ^^

Anyway, thanks for the mod, i love it when people get their ideas to work and improve this game
Which mods names show in yellow when you mouse over the iron and copper plates? That's the mod changing the stack size. I just added a fix for the changes that Bob's Plates makes to the base item stack sizes in a version in the last couple days, so make sure you're running current if it's Bob's. If it's something else, it should be a pretty easy fix.
kinda forgot, now we need it :D

it shows Base mod > Pyanodons Raw Ores for unstacked plates

pY stack size of plates is 500, stack size of stacked plates is 20 (100/5)
We have DeadlocksStacking4Pyanadon_0.4.8 running, complimenting deadlock-beltboxes-loaders_2.1.3, but the former doesn´t show in the tooltip of the stacks, only the "basic" DL beltbox one
stacksize.png
stacksize.png (45.21 KiB) Viewed 4154 times
User avatar
Harag
Inserter
Inserter
Posts: 20
Joined: Sun Sep 30, 2018 9:49 am
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by Harag »

Is there a better way to update vanilla items in data-final-fixes than this:

Code: Select all

for _,item in pairs(item_names) do
  local stacked_item = string.format("deadlock-stack-%s", item)
  data.raw.item[stacked_item].stack_size = math.floor(data.raw.item[item].stack_size/5)
end
I don't particularly like doing it this way.
  • I consider the item name and the stack divider to be internals of DSB
  • Icons for items and recipes don't get updated. For example, Bobs, ShinyBobs, MoreBobs and Pyanodon change the icons for the circuit boards.
kingarthur
Smart Inserter
Smart Inserter
Posts: 1463
Joined: Sun Jun 15, 2014 11:39 am
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by kingarthur »

GrumpyJoe wrote: Sun Mar 31, 2019 11:04 am
shanemadden wrote: Sat Mar 23, 2019 5:57 pm
GrumpyJoe wrote: Sat Mar 23, 2019 3:25 pm Meh, thats a quick edit....
Ok... so, DLstack is making stacks from base game items, which would be iron plate, copper plate etc.
crisdecs pYstack makes everything stack that pY added, like aluminium plates and the intermediate stuff in rawOres. And stacks to 100stacks or 500 plates. I dont know which ones "responsibility" it would be to look into base game items in modded games, but the whole thing is getting even more confusing and unconvenient. I think we will just use loaders for warehouses and live with early slow loading of trains ^^

Anyway, thanks for the mod, i love it when people get their ideas to work and improve this game
Which mods names show in yellow when you mouse over the iron and copper plates? That's the mod changing the stack size. I just added a fix for the changes that Bob's Plates makes to the base item stack sizes in a version in the last couple days, so make sure you're running current if it's Bob's. If it's something else, it should be a pretty easy fix.
kinda forgot, now we need it :D

it shows Base mod > Pyanodons Raw Ores for unstacked plates

pY stack size of plates is 500, stack size of stacked plates is 20 (100/5)
We have DeadlocksStacking4Pyanadon_0.4.8 running, complimenting deadlock-beltboxes-loaders_2.1.3, but the former doesn´t show in the tooltip of the stacks, only the "basic" DL beltbox one
stacksize.png
Ya deadlock4pyanodon doesnt update the vanilla stacks. I've messaged crisdec that it needs updated
shanemadden
Fast Inserter
Fast Inserter
Posts: 128
Joined: Thu Feb 08, 2018 8:25 am
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by shanemadden »

Harag wrote: Sun Mar 31, 2019 2:32 pm Is there a better way to update vanilla items in data-final-fixes than this:

Code: Select all

for _,item in pairs(item_names) do
  local stacked_item = string.format("deadlock-stack-%s", item)
  data.raw.item[stacked_item].stack_size = math.floor(data.raw.item[item].stack_size/5)
end
I don't particularly like doing it this way.
  • I consider the item name and the stack divider to be internals of DSB
  • Icons for items and recipes don't get updated. For example, Bobs, ShinyBobs, MoreBobs and Pyanodon change the icons for the circuit boards.
The intended 'right approach' is supposed to be to re-run the function to add the stacks for the edited items after the edits have happened - but I've actually got a misguided check that would prevent that from working, and that would cause some unintended consequences in ordering. So yeah, that's the best option for now, but that's my fault.

I'll at least fix that, and I'm also experimenting with delaying some of the calculations to make some of these updates unneeded - icon changes would still need an explicit update though (at least in the case of the vanilla ones, since they aren't auto-rendered).
mrvn
Smart Inserter
Smart Inserter
Posts: 5855
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by mrvn »

shanemadden wrote: Sun Mar 31, 2019 3:18 pm
Harag wrote: Sun Mar 31, 2019 2:32 pm Is there a better way to update vanilla items in data-final-fixes than this:

Code: Select all

for _,item in pairs(item_names) do
  local stacked_item = string.format("deadlock-stack-%s", item)
  data.raw.item[stacked_item].stack_size = math.floor(data.raw.item[item].stack_size/5)
end
I don't particularly like doing it this way.
  • I consider the item name and the stack divider to be internals of DSB
  • Icons for items and recipes don't get updated. For example, Bobs, ShinyBobs, MoreBobs and Pyanodon change the icons for the circuit boards.
The intended 'right approach' is supposed to be to re-run the function to add the stacks for the edited items after the edits have happened - but I've actually got a misguided check that would prevent that from working, and that would cause some unintended consequences in ordering. So yeah, that's the best option for now, but that's my fault.

I'll at least fix that, and I'm also experimenting with delaying some of the calculations to make some of these updates unneeded - icon changes would still need an explicit update though (at least in the case of the vanilla ones, since they aren't auto-rendered).
Wouldn't it make sense to leave the icon(s) nil if not specified when the stack is created and then in final fixes add icons that are missing?
mrvn
Smart Inserter
Smart Inserter
Posts: 5855
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Recipes with Bob+Angles with overhaul

Post by mrvn »

I'm looking at a belt, inserter, loader and beltbox factory for Bobs+Angels with overhauls active. All the recipes from Bob seem to be pretty consistent across each tire with two exception for inserter (uses iron plate instead of burner inserter) and filter inserters (uses electonic circuit board instead of circuit board).

The big exception to it all are the beltboxes and loaders:

First thing I notice is that the blue loaders are in the "crafting-with-fluid" category but don't actually need any fluid. This should be removed. Oterwise the loaders fit nicely into Bobs tires.

That leaves the belt boxes. They are completely different and I would like to get them changed. Here is my idea and reasoning that probably works for vanilla and other mods too: My reasoning is that a splitter is as complex as a belt box. So why not take the recipe for the splitter of the right tire, go through the ingredients and replace any splitter with the respective belt box and use that.

As an example this would change express-transport-belt-beltbox from:

Code: Select all

      fast-transport-belt-beltbox 1
      iron-plate 30
      iron-gear-wheel 30
      lubricant 100
to:

Code: Select all

      fast-transport-belt-beltbox 1
      advanced-circuit 5
      aluminium-plate 8
      cobalt-steel-bearing 12
      cobalt-steel-gear-wheel 14
This should also remove the "crafting-with-fluid" requirement as now none is used. The need for lubricant has moved to cobalt-steel-bearings. It's not just gone with my proposal.

In fact with my proposal the higher tire belt boxes would be more expensive to build but they would have the same ingredients as all other logistics items of the same tire.
GrumpyJoe
Filter Inserter
Filter Inserter
Posts: 491
Joined: Fri Apr 06, 2018 7:10 pm
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by GrumpyJoe »

kingarthur wrote: Sun Mar 31, 2019 3:17 pm
Ya deadlock4pyanodon doesnt update the vanilla stacks. I've messaged crisdec that it needs updated
thanks alot, i wasn´t sure where to ask as there is some cross linking forum threads going on at the mod portal and OP here ^^
User avatar
Deadlock989
Smart Inserter
Smart Inserter
Posts: 2529
Joined: Fri Nov 06, 2015 7:41 pm

Re: Recipes with Bob+Angles with overhaul

Post by Deadlock989 »

mrvn wrote: Sun Mar 31, 2019 4:06 pm I'm looking at a belt, inserter, loader and beltbox factory for Bobs+Angels with overhauls active [snip]
Just a reminder that we went to some trouble to provide a cross-mod API so that people could do these things. There is no reason that the third party Bob's add-on can't make the changes you suggest. You couldn't add third party recipes for every other mod on the portal. That's what the add-ons are for, to make DSB work with mods that overhaul the ingredient system.

Also, it would break people's factories if the recipe changed mid-game.

It shouldn't be crafting-with-fluid, fair enough, but really, the add-on should be fixing that.
mrvn
Smart Inserter
Smart Inserter
Posts: 5855
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Recipes with Bob+Angles with overhaul

Post by mrvn »

Deadlock989 wrote: Sun Mar 31, 2019 6:37 pm
mrvn wrote: Sun Mar 31, 2019 4:06 pm I'm looking at a belt, inserter, loader and beltbox factory for Bobs+Angels with overhauls active [snip]
Just a reminder that we went to some trouble to provide a cross-mod API so that people could do these things. There is no reason that the third party Bob's add-on can't make the changes you suggest. You couldn't add third party recipes for every other mod on the portal. That's what the add-ons are for, to make DSB work with mods that overhaul the ingredient system.

Also, it would break people's factories if the recipe changed mid-game.

It shouldn't be crafting-with-fluid, fair enough, but really, the add-on should be fixing that.
Well, the add-on I'm talking about is deadlock-integrations_2.0.7. Am I wrong here? Does that have it's own forum thread?
shanemadden
Fast Inserter
Fast Inserter
Posts: 128
Joined: Thu Feb 08, 2018 8:25 am
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by shanemadden »

2.1.5 drops the optional dependency on bobplates and does a late re-sync of the fuel and stack attributes that Bob's, Py's and others change.

Regarding the recipes for Bob's, the loader recipes are definitely a lot more integrated, there's a whole bunch of checks in the integration mod https://github.com/shanemadden/factorio ... ob.lua#L34 for which of Bob's materials are loaded - the beltboxes need to get the same treatment but as Deadlock mentioned, it's disruptive to change recipes for existing saves in an update.

I'm planning on doing a default-disabled opt-in option for an alternate set of loader recipes that's been suggested in a mod portal thread, can plan on doing the same for updated beltbox recipes with an eye toward making them default in a later version - but I'm not much of a Bob's player so I don't have a good feel for specific balance decisions.
User avatar
Deadlock989
Smart Inserter
Smart Inserter
Posts: 2529
Joined: Fri Nov 06, 2015 7:41 pm

Re: Recipes with Bob+Angles with overhaul

Post by Deadlock989 »

mrvn wrote: Sun Mar 31, 2019 7:29 pmWell, the add-on I'm talking about is deadlock-integrations_2.0.7. Am I wrong here? Does that have it's own forum thread?
shane can explain more about what that is and where it is going, but essentially it's a stop-gap. The aim eventually was to have the third party add-on - in this case, I'm assuming OhChirpy's add-on for Bob's - specify the belt tiers, beltbox ingredients, the lot. This is still being worked on.

But even without that being quite 100% complete, there is nothing stopping people modding the beltbox/loader recipes. Back in my day I did a simple generic "base the recipe on the underground" thing with the hope that people who play these overhaul mods would improve on it.

But speaking as someone who gave up on trying to please everybody at once with this mod and handed it to someone else, the main reason was that it got tiring to constantly run around after these big mods that continually break everything and not get a cent back the other way.

That's why I gave people the tools to do it themselves. You're welcome.
shanemadden
Fast Inserter
Fast Inserter
Posts: 128
Joined: Thu Feb 08, 2018 8:25 am
Contact:

Re: [MOD 0.17] Deadlock's Stacking Beltboxes & Compact Loaders

Post by shanemadden »

Exactly right - the support which was previously in the base DSB/DCL mods for other mods' belt tiers was moved to the integrations mod and I'm happy to continue maintaining that as-is, accepting sensible pull requests on the recipes and balance, etc, but that's in order to maintain the features that the mods had previously. I'd also be perfectly happy with moving the Bob's integration to OhChirpy's mod and making it the 'official' Bob's tie-in, if they want to take on the recipe building code.

I'm working to make sure the base mod stays slim and simple, and that the interfaces that it provides give other mods all they need to integrate, so that any trickiness needed to deal with those mods is kept out of the core.

Ultimate Belts, for instance, is now just directly integrated with the API to add beltboxes and loaders for its tiers, and the new silly stuff that I've been messing with is in a standalone mod as well https://mods.factorio.com/mod/deadlock-experiments - pretty much everything should be exposed to other mods, and if you find something you need that isn't, we'll fix it.
Post Reply

Return to “Mods”