[MOD] Deadlock's Stacking Beltboxes & Compact Loaders
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
Thank you for the reply!
It seem I will have to fix everything by hand...
It seem I will have to fix everything by hand...
There is some problem with orientating a compact loader from a blueprint. Consider the following blueprint:
It is displayed correctly within the preview window as shown above. However, upon placing the blueprint, the input/output side of the contact loader is not consistently preserved:
This occurs both within the single player and within the scenario editor. I have tested this with the base game and only this mod running with the same results.
It is displayed correctly within the preview window as shown above. However, upon placing the blueprint, the input/output side of the contact loader is not consistently preserved:
This occurs both within the single player and within the scenario editor. I have tested this with the base game and only this mod running with the same results.
Re:
It's because deadlock still doesn't check the rotation of ghosts when they are revived and adds his auto rotate logic on top of it to make the loaders face belts or inventories. So on blueprints when a ghost is revived by some mod like Bluebuild it is rotated twice and ends up facing the wrong way. Others and I have told him multiple times about the problem and I told him how to check the rotation so he doesn't double down. But the issue just gets ignored.Ickis wrote: ↑Sun Sep 13, 2020 8:23 pmThere is some problem with orientating a compact loader from a blueprint. Consider the following blueprint:
Blueprint.jpg
It is displayed correctly within the preview window as shown above. However, upon placing the blueprint, the input/output side of the contact loader is not consistently preserved:
Placement.jpg
This occurs both within the single player and within the scenario editor. I have tested this with the base game and only this mod running with the same results.
You have to turn off the options for loaders to face belts and inventories and it will work right. But then you have to rotate you place manually yourself.
- Deadlock989
- Smart Inserter
- Posts: 2529
- Joined: Fri Nov 06, 2015 7:41 pm
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
We never cared about dodgy mods like Bluebuild that historically used player manual build events to simulate construction bot behaviours (I have no idea what that mod does now but I still don't actually care). As we've said about 50 times over the last couple of years, there are hard limits on what can be done to prevent mods getting screwed over by some other random mod off the portal, given a finite and rapidly dwindling allotment of actual fucks to give. And we're not going to code in any more contingency cases for anything that isn't in the game engine itself. The correct way to work around unwanted inter-mod interactions is indeed to use the provided option in DSB to turn off snapping and let those other mods handle blueprints in their own fascinating idiom, if that's what you want.
If there are literally no other mods loaded and you're getting unexpected snapping behaviour from construction bots reviving loader "ghosts" in regular (non-editor) play then I don't know what to tell you. Historically, no-one has ever been able to give us a list of steps that can reproduce these issues reliably. It has most often turned out to be some other mod like Bluebuild or Picker Tools, and the remaining cases have always been ones where the expectations were just plain wrong. shanemadden has in the past accepted tweaks submitted on github by other people to address specific preference-based issues that we couldn't ever reliably reproduce ourselves, I don't know (or care much) if those actually helped, or if they made things worse for other corner cases.
As for the scenario editor, the core of this mod was written long before the current scenario editor was even a thing. I don't know how the snapping options work out in editor mode. If editor mode breaks it and it is actually fixable and someone wants to do that work, you can submit documented changes to the repository. Or just turn snapping off if the majority of your play is being done in the editor.
If there are literally no other mods loaded and you're getting unexpected snapping behaviour from construction bots reviving loader "ghosts" in regular (non-editor) play then I don't know what to tell you. Historically, no-one has ever been able to give us a list of steps that can reproduce these issues reliably. It has most often turned out to be some other mod like Bluebuild or Picker Tools, and the remaining cases have always been ones where the expectations were just plain wrong. shanemadden has in the past accepted tweaks submitted on github by other people to address specific preference-based issues that we couldn't ever reliably reproduce ourselves, I don't know (or care much) if those actually helped, or if they made things worse for other corner cases.
As for the scenario editor, the core of this mod was written long before the current scenario editor was even a thing. I don't know how the snapping options work out in editor mode. If editor mode breaks it and it is actually fixable and someone wants to do that work, you can submit documented changes to the repository. Or just turn snapping off if the majority of your play is being done in the editor.
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
There is nothing dodgy going on. It's using the offical way to revive ghosts. And I showed you what fields to look at to detect that entities that get revived are rotate already.Deadlock989 wrote: ↑Wed Sep 16, 2020 2:57 pmWe never cared about dodgy mods like Bluebuild that historically used player manual build events to simulate construction bot behaviours (I have no idea what that mod does now but I still don't actually care). As we've said about 50 times over the last couple of years, there are hard limits on what can be done to prevent mods getting screwed over by some other random mod off the portal, given a finite and rapidly dwindling allotment of actual fucks to give. And we're not going to code in any more contingency cases for anything that isn't in the game engine itself. The correct way to work around unwanted inter-mod interactions is indeed to use the provided option in DSB to turn off snapping and let those other mods handle blueprints in their own fascinating idiom, if that's what you want.
If there are literally no other mods loaded and you're getting unexpected snapping behaviour from construction bots reviving loader "ghosts" in regular (non-editor) play then I don't know what to tell you. Historically, no-one has ever been able to give us a list of steps that can reproduce these issues reliably. It has most often turned out to be some other mod like Bluebuild or Picker Tools, and the remaining cases have always been ones where the expectations were just plain wrong. shanemadden has in the past accepted tweaks submitted on github by other people to address specific preference-based issues that we couldn't ever reliably reproduce ourselves, I don't know (or care much) if those actually helped, or if they made things worse for other corner cases.
As for the scenario editor, the core of this mod was written long before the current scenario editor was even a thing. I don't know how the snapping options work out in editor mode. If editor mode breaks it and it is actually fixable and someone wants to do that work, you can submit documented changes to the repository. Or just turn snapping off if the majority of your play is being done in the editor.
The only dodgy thing going on is your code with the custom "don't mess with the entity build by mods" flag in the build event that some mods support for historical reasons.
As I showed you before with code and debug output a properly revived ghost will have the input/output direction set already. Go back in the thread and read again. I spelled it out for you exactly how to reproduce it, why it happens and how to fix your code so it doesn't need dodgy workarounds. Dodgy mods that create the loader instead of reviving ghost or player builds don't have a different direction from the default but revived ghosts can have it input or output because the direction is part of the data the ghost has. And that changes the rotation logic causing you to rotate the loader wrong so it suddenly faces the belt instead of the inventory opposite to what the ghost had.
- Deadlock989
- Smart Inserter
- Posts: 2529
- Joined: Fri Nov 06, 2015 7:41 pm
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
We don't care about Bluebuild and will never support it.
Some people are just a relentless sucking pit of negativity. Endless whining and not a single word of thanks in 2 years after people spent hours of their lives trying to please other people. Well, that ship has sailed now. Go make your own mod instead.
Some people are just a relentless sucking pit of negativity. Endless whining and not a single word of thanks in 2 years after people spent hours of their lives trying to please other people. Well, that ship has sailed now. Go make your own mod instead.
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
I'm sorry the truth is such a relentless sucking pit of negativity. You made such a good mod and it could be great if not for this one persistent bug. But instead of listening what the problem is you seem to prefer to badmouth other mods where people have spend just as much time of their live trying to please other people. I will make one more attempt explaining the problem and then I will go away again till the next person runs into the same problem.
Since you asked in
Turn on both snapping to inventory and snapping to belt. Then take a loader in your hand and place them over the ghosts and you get this:
The explanation why this happens is in
viewtopic.php?f=190&t=57264&p=464266&hi ... on#p464266
The example back then was from Bluebuild and back then Bluebuild would manually raise an event. Nowadays Bluebuild uses ghost.revive{raise_revive=true} and has been for a while. With that the game raises the script_raised_revive event that you don't catch. So your code never tries to rotate the revived ghost and nothing bad happens. As it should. But when manually placing loaders over ghosts the game has the loader_type set to either input or output. For input loaders the meaning of rotation changes by 180°. Which is why the input loaders all end up turned around 180°.
So what your code has to do is look at loader_type. If it is input then simply do nothing. This case only happens when a loader is placed over a ghost and everything should stay as the ghost had it. This would still snap ghosts with loader_type == output to belts or inventories, which might differ from what the ghost had, but I see no easy way to catch that. That case at least isn't a big deal and rather uncommon. The input loaders are well over 50% of all loaders in blueprints though. It's really annoying to build blueprints before you have construction bots due to this bug.
So to sum it up:
- direct placing loaders: works
- construction bots placing loaders: works
- Bluebuild: works
- manually placing loaders over ghosts: fails
- mods that still raise on_built_entity manually: fails (and it's their own fault)
Fix:
Since you asked in
here is a easily reproducible case with ONLY the stacking mod loaded and NOTHING else. Just load the savegame:Deadlock989 wrote: ↑Wed Sep 16, 2020 2:57 pmIf there are literally no other mods loaded and you're getting unexpected snapping behaviour from construction bots reviving loader "ghosts" in regular (non-editor) play then I don't know what to tell you. Historically, no-one has ever been able to give us a list of steps that can reproduce these issues reliably. It has most often turned out to be some other mod like Bluebuild or Picker Tools, and the remaining cases have always been ones where the expectations were just plain wrong. shanemadden has in the past accepted tweaks submitted on github by other people to address specific preference-based issues that we couldn't ever reliably reproduce ourselves, I don't know (or care much) if those actually helped, or if they made things worse for other corner cases.
Turn on both snapping to inventory and snapping to belt. Then take a loader in your hand and place them over the ghosts and you get this:
The explanation why this happens is in
viewtopic.php?f=190&t=57264&p=464266&hi ... on#p464266
The example back then was from Bluebuild and back then Bluebuild would manually raise an event. Nowadays Bluebuild uses ghost.revive{raise_revive=true} and has been for a while. With that the game raises the script_raised_revive event that you don't catch. So your code never tries to rotate the revived ghost and nothing bad happens. As it should. But when manually placing loaders over ghosts the game has the loader_type set to either input or output. For input loaders the meaning of rotation changes by 180°. Which is why the input loaders all end up turned around 180°.
So what your code has to do is look at loader_type. If it is input then simply do nothing. This case only happens when a loader is placed over a ghost and everything should stay as the ghost had it. This would still snap ghosts with loader_type == output to belts or inventories, which might differ from what the ghost had, but I see no easy way to catch that. That case at least isn't a big deal and rather uncommon. The input loaders are well over 50% of all loaders in blueprints though. It's really annoying to build blueprints before you have construction bots due to this bug.
So to sum it up:
- direct placing loaders: works
- construction bots placing loaders: works
- Bluebuild: works
- manually placing loaders over ghosts: fails
- mods that still raise on_built_entity manually: fails (and it's their own fault)
Fix:
Code: Select all
if built.loader_type == "input" then return end
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
If you have a working solution .. raise a PR at https://github.com/shanemadden/factorio ... es-loaders then its up to Shane to merge it.
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
I know this is off topic, but thank you so much!! I was able to use your changes above to get the Miniloader mod working, again, thank you!billbo99 wrote: ↑Wed Nov 25, 2020 12:22 amIf you have a working solution .. raise a PR at https://github.com/shanemadden/factorio ... es-loaders then its up to Shane to merge it.
-
- Burner Inserter
- Posts: 10
- Joined: Sat Jan 05, 2019 6:57 pm
- Contact:
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
First of all, thanks for this mod, something like that should be Vanilla I think.
Now I myself looked for a mod that makes belts more competitive when compared to bots but as far as i can see this is as much a buff for bots as for belts, as it effectively increases their inventory density, as opposed to trains/your own inventory (bots can carry 4 units of stacked or unstacked items with full Vanilla upgrades, for example).
Was this something intended? All in all, I think it would be a good idea to forbid bots from carrying stacked items altogether as default and add this possibility as an option in the mod menu
Now I myself looked for a mod that makes belts more competitive when compared to bots but as far as i can see this is as much a buff for bots as for belts, as it effectively increases their inventory density, as opposed to trains/your own inventory (bots can carry 4 units of stacked or unstacked items with full Vanilla upgrades, for example).
Was this something intended? All in all, I think it would be a good idea to forbid bots from carrying stacked items altogether as default and add this possibility as an option in the mod menu
- Deadlock989
- Smart Inserter
- Posts: 2529
- Joined: Fri Nov 06, 2015 7:41 pm
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
The API does not provide such a facility. I asked for a "no bots" flag on items and the request was not accepted, apparently it would add unacceptable runtime overheads to everyone else's game. I would have had it in the mod from day 1 if it existed but it doesn't.unkst4ck3r wrote: ↑Tue Dec 01, 2020 7:11 pmWas this something intended? All in all, I think it would be a good idea to forbid bots from carrying stacked items altogether as default and add this possibility as an option in the mod menu
The meatware solution to avoiding bot cheese is to use your willpower to not cheese bots.
-
- Burner Inserter
- Posts: 10
- Joined: Sat Jan 05, 2019 6:57 pm
- Contact:
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
Well that sucks.
Its a pity they seem to have given up on finding a solution on that issue when kovarex himself said that he finds bots op in some old FFF
Its a pity they seem to have given up on finding a solution on that issue when kovarex himself said that he finds bots op in some old FFF
- Deadlock989
- Smart Inserter
- Posts: 2529
- Joined: Fri Nov 06, 2015 7:41 pm
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
I thought the bots/belts debate was a bit overblown to be honest. If bots are overpowered, and I don't really believe they are, it's not because of their throughput.
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
loaders max out at 2 items per tick, 120 items/sec and inserters max out at 1 item per tick, 60/sec (from an inventory to belt/vice versa, but not from an inventory to an inventory)Deadlock989 wrote: ↑Thu Dec 03, 2020 12:18 amI thought the bots/belts debate was a bit overblown to be honest. If bots are overpowered, and I don't really believe they are, it's not because of their throughput.
this means that bots can grab more items than an inserter/loader+belt combo can ever hope to move.
- Deadlock989
- Smart Inserter
- Posts: 2529
- Joined: Fri Nov 06, 2015 7:41 pm
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
I don't know why that thieving troll is bothering to post on this thread when it knows I don't read their posts.
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
May I please request a 1.1 update so it works with the latest version of factorio?
I'm sorry i dont know how mods work well enought to submit a github thingo. If I could I would.
Thanks and many thanks for supporting the mod!
I'm sorry i dont know how mods work well enought to submit a github thingo. If I could I would.
Thanks and many thanks for supporting the mod!
- MasterBuilder
- Filter Inserter
- Posts: 353
- Joined: Sun Nov 23, 2014 1:22 am
- Contact:
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
It was update for 1.1 10 days ago. https://mods.factorio.com/mod/deadlock- ... /downloads
Give a man fire and he'll be warm for a day. Set a man on fire and he'll be warm for the rest of his life.
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
Ok so my fault. I clicked on the forum link from this one : https://mods.factorio.com/mod/deadlock-integrations and blindly just asked for the update. Ha. I didnt realize it was a differnt mod but both from the same dev. SO im not sure where the correct place to ask for the update is but is it possible to get the "Integrations" mod updated as well? cheers and again sorry for the confustion.MasterBuilder wrote: ↑Sat Dec 05, 2020 6:55 amIt was update for 1.1 10 days ago. https://mods.factorio.com/mod/deadlock- ... /downloads
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
I believe that your Deadlock-Mod Integrations addon Mod for this is no long working properly.
The Deadlock-Mod Integrations mod is broken for FactorioExtended. It will work on FactorioExtended-Plus but im not fond it if and prefer the original FactorioExtended.
It will not generate Beltboxes and Loaders when FactorioExtended is installed with Deadlock's Stacking Beltboxes & Compact Loaders and Deadlock-Mod Integrations.
I tried to see if I could sift out the issue but I could not. From what I can see, the correct name for Factorio Extended is in the Scripting... I wonder if it is because that FactorioExtended has been updated to incorporate 3 New tiers of Belts rather than just 2.. Could you check to see what is causing this to break for FactorioExtended?
Currently FactorioExtended has the following 3 new Tiers of belts instead of the 2 your mod provides:
Mk 1 Orange 67.5 items p/s
Mk 2 Green 101 items p/s
Mk 3 Purple 203 items p/s
The Deadlock-Mod Integrations mod is broken for FactorioExtended. It will work on FactorioExtended-Plus but im not fond it if and prefer the original FactorioExtended.
It will not generate Beltboxes and Loaders when FactorioExtended is installed with Deadlock's Stacking Beltboxes & Compact Loaders and Deadlock-Mod Integrations.
I tried to see if I could sift out the issue but I could not. From what I can see, the correct name for Factorio Extended is in the Scripting... I wonder if it is because that FactorioExtended has been updated to incorporate 3 New tiers of Belts rather than just 2.. Could you check to see what is causing this to break for FactorioExtended?
Currently FactorioExtended has the following 3 new Tiers of belts instead of the 2 your mod provides:
Mk 1 Orange 67.5 items p/s
Mk 2 Green 101 items p/s
Mk 3 Purple 203 items p/s
Re: [MOD] Deadlock's Stacking Beltboxes & Compact Loaders
FactorioExtended is obsolete. And neither it or FactorioExtended-Plus are maintained very well, they should be used on their own.