Re: [MOD 0.16] Bulk Rail Loaders
Posted: Mon Mar 12, 2018 12:45 pm
I'm still have major problems with circuit wires when blueprinting bulk rail loaders and unloaders. They nearly always loose their wires.
Work has gotten busy lately so I haven't had a lot of time to work on Factorio modding. I've been working through the edge cases mentioned around fast-replacing rails and BRLs, and I'm getting close, but I can't promise when the next version will be available.mrvn wrote:I'm still have major problems with circuit wires when blueprinting bulk rail loaders and unloaders. They nearly always loose their wires.
The railloaders next to your character are trying to load iron & copper plate, but your config setting is set to "ore". When I changed the setting to "ore, plates", they started loading in a few seconds.hitzu wrote:I updated the game from around version 0.16.20 to the 0.16.30 with all my mods. And newly placed loaders don't work. They just don't want to load trains, either horizontal or vertical. Old loaders work fine.
The savefile (34.7MB):
Version 0.3.6 has been released with a fix for this crash issue. I'm still working on a solution for circuit connections being lost when constructing BRLs from blueprints.Hitarko wrote:Best fix for now, shoot it with c to destroy it and the rails. Uninstalling the mod will cause an issue with the rails that were below the bulk loader and unloader to be unremovable. If you haven't saved over, then reverting to a previous version should allow you to delete the ones you had placed and continue playing.
I know this isn't a fix to the actual bug but I hope this small "work around" helps.
Oh gosh, I really forgot this limitation! Sorry for bothering youTherax wrote:The railloaders next to your character are trying to load iron & copper plate, but your config setting is set to "ore". When I changed the setting to "ore, plates", they started loading in a few seconds.hitzu wrote:I updated the game from around version 0.16.20 to the 0.16.30 with all my mods. And newly placed loaders don't work. They just don't want to load trains, either horizontal or vertical. Old loaders work fine.
The savefile (34.7MB):
I'm glad its working for you. This is a prerequisite for changing BRLs to place their own rails, and it helps the current place-over-existing-rails version as well.mrvn wrote:Thanks, wire connections work much better in blueprints now.
Can you describe reproduction steps? BRL has logic for Bluebuild and Nanobots that should prevent this (cursor stack overwriting) from happening.mrvn wrote:Still have some problems with trees in the way. This just cost me 98 rails because you still overwrite the hand content with the loader/unloader.
Please do add a check that the player is actually holding loaders/unloaders so you don't destroy items.
Blueprint a bulk station with rails, loader, signals and all. Pick up rails and start placing them because otherwise the bulk loaders can't be placed. Enable bluebuilt rewritten. Run along the track as you build so the bulk loaders can be placed by bluebuild. If you do this in a wooded area you will get cases where a tree is in the way of the loader but not in the collision box for placement. So the tree doesn't get flagged for deconstruction and placing the loader fails with the items in the way error. I updated all my mods recently so whatever logic you have in there for Bluebuild isn't working. You shouldn't rely on other mods playing nice there anyway. Better check what is in the players hand before replacing it. If the hnd content isn't the item you try to put back then put it back in the players inventory instead. If that fails drop it on the ground.Therax wrote:I'm glad its working for you. This is a prerequisite for changing BRLs to place their own rails, and it helps the current place-over-existing-rails version as well.mrvn wrote:Thanks, wire connections work much better in blueprints now.
Can you describe reproduction steps? BRL has logic for Bluebuild and Nanobots that should prevent this (cursor stack overwriting) from happening.mrvn wrote:Still have some problems with trees in the way. This just cost me 98 rails because you still overwrite the hand content with the loader/unloader.
Please do add a check that the player is actually holding loaders/unloaders so you don't destroy items.
Are you running Bluebuild or Bluebuild rewritten? Bluebuild rewritten doesn't seem to have a version available for 0.16.x. If you're running a locally updated version of Bluebuild rewritten, that would explain the problem.mrvn wrote:Blueprint a bulk station with rails, loader, signals and all. Pick up rails and start placing them because otherwise the bulk loaders can't be placed. Enable bluebuilt rewritten.
Assuming you're running Mylon's original Bluebuild from the mod portal, I tested it again and still can't reproduce your issue. I see the error message pop up and the ghost for the BRL disappears. The cursor stack continues to hold rail, and I don't lose any items. The ghost disappearing is something that I would prefer didn't happen, and should be fixable.I updated all my mods recently so whatever logic you have in there for Bluebuild isn't working.
I entirely agree, but I'd still like to understand how the bug is occurring.You shouldn't rely on other mods playing nice there anyway. Better check what is in the players hand before replacing it. If the hnd content isn't the item you try to put back then put it back in the players inventory instead. If that fails drop it on the ground.
Yes, that is the idea.But hey, if BRLs will place their own rails then could the collision mask grow so placement never fails after the fact?
When a BRL is placed, it makes the rails underneath it indestructible and unminable, since there's no way to place a new rail down if one is destroyed by biters or explosions, or the player accidentally mines the wrong rail segment. This was reported earlier as a problem with grenades, in particular. Since the rails are unminable, they can't be selected for deconstruction either. Given that the usual case is that the player wants to deconstruct an entire station rather than just the BRL, when a player marks the BRL for deconstruction I mark the rails for deconstruction too.As a side node. I think I also spotted a problem with deconstructing BRLs with bots. I selected only the loader and not the rails but the rails went away too. At least I only wanted the loader gone but ended up with holes in my track.
I'm using bluebuild rewritten (ght-bluebuild) patched for 0.16 so that explains it. When I started using it I had factorio 0.15 and bluebuild didn't support 0.15. I guess it's time for me to switch back to the original bluebuild. Or update it to use the new script built event in 0.16 (and that flag nanobots sets in the entity).Therax wrote:Are you running Bluebuild or Bluebuild rewritten? Bluebuild rewritten doesn't seem to have a version available for 0.16.x. If you're running a locally updated version of Bluebuild rewritten, that would explain the problem.mrvn wrote:Blueprint a bulk station with rails, loader, signals and all. Pick up rails and start placing them because otherwise the bulk loaders can't be placed. Enable bluebuilt rewritten.Assuming you're running Mylon's original Bluebuild from the mod portal, I tested it again and still can't reproduce your issue. I see the error message pop up and the ghost for the BRL disappears. The cursor stack continues to hold rail, and I don't lose any items. The ghost disappearing is something that I would prefer didn't happen, and should be fixable.I updated all my mods recently so whatever logic you have in there for Bluebuild isn't working.I entirely agree, but I'd still like to understand how the bug is occurring.You shouldn't rely on other mods playing nice there anyway. Better check what is in the players hand before replacing it. If the hnd content isn't the item you try to put back then put it back in the players inventory instead. If that fails drop it on the ground.Yes, that is the idea.But hey, if BRLs will place their own rails then could the collision mask grow so placement never fails after the fact?When a BRL is placed, it makes the rails underneath it indestructible and unminable, since there's no way to place a new rail down if one is destroyed by biters or explosions, or the player accidentally mines the wrong rail segment. This was reported earlier as a problem with grenades, in particular. Since the rails are unminable, they can't be selected for deconstruction either. Given that the usual case is that the player wants to deconstruct an entire station rather than just the BRL, when a player marks the BRL for deconstruction I mark the rails for deconstruction too.As a side node. I think I also spotted a problem with deconstructing BRLs with bots. I selected only the loader and not the rails but the rails went away too. At least I only wanted the loader gone but ended up with holes in my track.
I could hook the event for using a deconstruction planner, rather than what I'm currently doing, which is just listening for when a BRL is marked for deconstruction. Then I could look at the selected area to determine whether the player likely intended to select the rails as well. That would probably work, but it's a bit more complex.
Does that mean I have to build them instead of rails? Or still place them over rails but they are more like train stops that simply function when attached to a rail?Therax wrote:v0.4.0 is now available. BRLs are now built as independent entities, rather than as overlays to rails. This is a major change, and is likely to expose some weird cases especially with existing blueprints. I've done my best to search for and update blueprints in your worlds, but I expect there to be hidden bugs. Enjoy!
You have to build them instead of rails, placing them over existing rails doesn't work anymore (spent a few minutes trying the old way on this new map before I found this change).mrvn wrote:Does that mean I have to build them instead of rails? Or still place them over rails but they are more like train stops that simply function when attached to a rail?Therax wrote:v0.4.0 is now available. BRLs are now built as independent entities, rather than as overlays to rails. This is a major change, and is likely to expose some weird cases especially with existing blueprints. I've done my best to search for and update blueprints in your worlds, but I expect there to be hidden bugs. Enjoy!