[Mod] Pipeworks [git] [pipeworks]

User avatar
acidzebra
Member
Posts: 75
Joined: Sun Sep 10, 2017 09:11

Re: [Mod] Pipeworks [git] [pipeworks]

by acidzebra » Post

auouymous wrote:
Sun May 10, 2020 12:58
Click the green checkbox (you want it to be red) on the white side to prevent items from exiting the sorter via white.
the point is, it's not intended expected behavior. It should not bounce given the rules that are configured.
Last edited by acidzebra on Sun May 10, 2020 16:31, edited 1 time in total.

neoh4x0r
Member
Posts: 82
Joined: Wed Aug 29, 2018 20:16
GitHub: neoh4x0r

Re: [Mod] Pipeworks [git] [pipeworks]

by neoh4x0r » Post

Linuxdirk wrote:
Sun May 10, 2020 12:38
What is the issue behind items bouncing off filter segments the first time but passing through the second time if only one of the exits is configured? And is there a way to fix it? (I know I can work around this by placing one-way tubes right before the filters, but that can’t be the solution, right?)

Image

Video link: https://imgur.com/tRYvADJ

Imagine dozens of more filters after the first filter. The items will bounce back to the one-way tube intersection on every filter when they’re supposed to go to the last filter.
You should turn off any sorting exits that are you not using.
In your case, the only things that should be active are blue (exit to chest) and black (continue to next).

This is just the way it works....

Code: Select all

The reason that sand bounces is because sand is not explicitly set on the black-side.

I believe the way that pipeworks does sorting is the calculation (to decide which exit to take) only occurs
once each time an item enters the sorter.

The first time it goes back out the white-side since it already knew about that (and it updated for the next pass).
The second time it goes out the black-side, since it entered the white-side twice.

In other words, the path-finding logic only updates on each iteration using information previous learned (sort of like machine learning).

User avatar
Linuxdirk
Member
Posts: 3216
Joined: Wed Sep 17, 2014 11:21
In-game: Linuxdirk
Location: Germany
Contact:

Re: [Mod] Pipeworks [git] [pipeworks]

by Linuxdirk » Post

acidzebra wrote:
Sun May 10, 2020 13:25
the point is, it's not intended behavior. It should not bounce given the rules that are configured.
Yeah, that’s why I’m confused. It just is just not intuitive. It seems like the items randomly check another direction to go to even if there are no other pipes connected and go back when there is none.
neoh4x0r wrote:
Sun May 10, 2020 15:55
You should turn off any sorting exits that are you not using.
In your case, the only things that should be active are blue (exit to chest) and black (continue to next).
Tested and confirmed. I can work with this even if it feels weird to configure not connected exits. Thanks for the hint.

User avatar
Walker
Member
Posts: 1802
Joined: Tue Oct 03, 2017 09:22
In-game: Walker
Contact:

Re: [Mod] Pipeworks [git] [pipeworks]

by Walker » Post

server crash ( my German-Creative-server )

Code: Select all

2020-07-25 22:17:18: ERROR[Main]: ServerError: AsyncErr: environment_Step: Runtime error from mod 'pipeworks' in callback environment_Step(): /media/sda3/Minetest/server3/.minetest/mods/drops/init.lua:96: attempt to index local 'dropper' (a nil value)
2020-07-25 22:17:18: ERROR[Main]: stack traceback:
2020-07-25 22:17:18: ERROR[Main]: 	/media/sda3/Minetest/server3/.minetest/mods/drops/init.lua:96: in function 'item_drop'
2020-07-25 22:17:18: ERROR[Main]: 	...st/worlds/Creative/worldmods/pipeworks/routing_tubes.lua:26: in function 'insert_object'
2020-07-25 22:17:18: ERROR[Main]: 	...t/worlds/Creative/worldmods/pipeworks/item_transport.lua:328: in function 'on_step'
2020-07-25 22:17:18: ERROR[Main]: 	...netest/worlds/Creative/worldmods/pipeworks/luaentity.lua:364: in function 'move_entities_globalstep_part2'
2020-07-25 22:17:18: ERROR[Main]: 	...netest/worlds/Creative/worldmods/pipeworks/luaentity.lua:377: in function <...netest/worlds/Creative/worldmods/pipeworks/luaentity.lua:372>
2020-07-25 22:17:18: ERROR[Main]: 	...etest530/bin/../share/minetest/builtin/game/register.lua:429: in function <...etest530/bin/../share/minetest/builtin/game/register.lua:413>
2020-07-25 22:17:18: ERROR[Main]: stack traceback:
my server crashes by every try to start

more infos:
pipeworks version: git
minetest version: 5.3.0

wanderer
New member
Posts: 3
Joined: Thu Aug 27, 2020 17:37

Re: [Mod] Pipeworks [git] [pipeworks]

by wanderer » Post

I am getting the following error when using pipeworks in Hades Revisited 0.4.6 game. The game crashes within a second of using it with the following error:
AsyncErr: ServerThread::run Lua: Runtime error from mod 'pipeworks' in callback luaentity_Activate(): Invalid position (expected table got nil).
stack traceback:
[C]: in function 'set_velocity'
.../games/hades_revisited/mods/pipeworks/item_transport.lua:376: in function <.../games/hades_revisited/mods/pipeworks/item_transport.lua:364>
Now my game is unplayable :(
Is there any way to rectify or circumvent the error? I tried clearing all the pipeworks related blocks (by repeatedly using the 1 second window before crash), but the game still crashes with the error.
Also, I tried to come into the game as a new player, but the moment I approached the site, it crashed again.

User avatar
VanessaE
Moderator
Posts: 4655
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaE
Location: Western NC
Contact:

Re: [Mod] Pipeworks [git] [pipeworks]

by VanessaE » Post

I wouldn't know what the issue actually is as I have no idea what "Hades" is. My mods are meant for use under Minetest engine 5.2.0 or thereabouts, or newer, with minetest_game from a comparable point in time.
You might like some of my stuff: Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (64-512px)

User avatar
Linuxdirk
Member
Posts: 3216
Joined: Wed Sep 17, 2014 11:21
In-game: Linuxdirk
Location: Germany
Contact:

Re: [Mod] Pipeworks [git] [pipeworks]

by Linuxdirk » Post

wanderer wrote:
Fri Sep 11, 2020 21:56
I am getting the following error when using pipeworks in Hades Revisited 0.4.6 game.
This mod only works properly with Minetest Game.

neoh4x0r
Member
Posts: 82
Joined: Wed Aug 29, 2018 20:16
GitHub: neoh4x0r

Re: [Mod] Pipeworks [git] [pipeworks]

by neoh4x0r » Post

wanderer wrote:
Fri Sep 11, 2020 21:56
I am getting the following error when using pipeworks in Hades Revisited 0.4.6 game. The game crashes within a second of using it with the following error:
AsyncErr: ServerThread::run Lua: Runtime error from mod 'pipeworks' in callback luaentity_Activate(): Invalid position (expected table got nil).
stack traceback:
[C]: in function 'set_velocity'
.../games/hades_revisited/mods/pipeworks/item_transport.lua:376: in function <.../games/hades_revisited/mods/pipeworks/item_transport.lua:364>
Now my game is unplayable :(
Is there any way to rectify or circumvent the error? I tried clearing all the pipeworks related blocks (by repeatedly using the 1 second window before crash), but the game still crashes with the error.
Also, I tried to come into the game as a new player, but the moment I approached the site, it crashed again.
VanessaE wrote:
Fri Sep 11, 2020 22:02
I wouldn't know what the issue actually is as I have no idea what "Hades" is.
Perhaps it is this game Hades Revisited [0.4.6] (for Minetest 5.3.0), made by Wuzzy: viewtopic.php?t=19121

and maybe this post provides an explanation for that, viewtopic.php?p=377263#p377263
Wuzzy wrote: Version 0.4.6 released!

This version fixes crashes when you drop items.

Background: Hades Revisited used custom item entities(dropped items) that include special feature such as “magnetic items” but the code for it was antiquated and buggy. The solution was to delete it all and just revert (mostly) to the default Minetest behavior (punch item to get it).
The way how items behave is not an important aspect anyway, so this is not a big loss.
Another problem was with the trashcan which aggressively tried to overwrite behavior of dropped items. This is also gone now.

Thanks, Emerald, for letting me know!
@wanderer are you using v0.4.6 (of Hades Revisted).
You might want to ask Wuzzy about it as they seem to have heavily modified the code, code which pipeworks expects to 'not be modified'.

Also, it's not clear what version of pipework is included in Hades Revisited, nor if it has been 'modified'.

PS: According to the contentdb: https://content.minetest.net/packages/W ... revisited/
Hades Revisited is an early test version (and subject to drastic changes).
Also, it is under the 'Work in Progress' mods category.


You may just want to use minetest_game, as it is pretty stable (not a test version or subject to drastic changes).
And pipeworks was built around it.

HighPopes
Member
Posts: 48
Joined: Tue Sep 22, 2020 01:38
GitHub: HighPopes

Re: [Mod] Pipeworks [git] [pipeworks]

by HighPopes » Post

Any chance of a drop item pipe? Just drops the item on the ground or shoots it. It'd be useful for builtin and factory mod.

User avatar
VanessaE
Moderator
Posts: 4655
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaE
Location: Western NC
Contact:

Re: [Mod] Pipeworks [git] [pipeworks]

by VanessaE » Post

I believe there's already a node for that.
You might like some of my stuff: Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (64-512px)

HighPopes
Member
Posts: 48
Joined: Tue Sep 22, 2020 01:38
GitHub: HighPopes

Re: [Mod] Pipeworks [git] [pipeworks]

by HighPopes » Post

I found it. The one way tube shoots items out. Sorry.

User avatar
PiJeyEe
Member
Posts: 16
Joined: Wed Nov 04, 2020 03:58
GitHub: PiJeyEe
IRC: PiJeyEe
In-game: Pathreen

Re: [Mod] Pipeworks [git] [pipeworks]

by PiJeyEe » Post

Hi Im sorry, im new and still noob at this coding and trying to learn. I am having an error in field get_translator, I dont get whats the problem. My version was 0.4.17

User avatar
BuckarooBanzay
Member
Posts: 435
Joined: Tue Apr 24, 2018 05:58
GitHub: BuckarooBanzay
IRC: BuckarooBanzai
In-game: BuckarooBanzai

Re: [Mod] Pipeworks [git] [pipeworks]

by BuckarooBanzay » Post

PiJeyEe wrote:
Sun Nov 22, 2020 05:48
Hi Im sorry, im new and still noob at this coding and trying to learn. I am having an error in field get_translator, I dont get whats the problem. My version was 0.4.17
pipeworks only supports minetest 5.2+
See: https://gitlab.com/VanessaE/pipeworks/- ... od.conf#L5
¯\_(ツ)_/¯ Not active here anymore, contact me on the minetest discord, irc, lemmy or github (for programming issues)

User avatar
PiJeyEe
Member
Posts: 16
Joined: Wed Nov 04, 2020 03:58
GitHub: PiJeyEe
IRC: PiJeyEe
In-game: Pathreen

Re: [Mod] Pipeworks [git] [pipeworks]

by PiJeyEe » Post

BuckarooBanzay wrote:
Sun Nov 22, 2020 10:05
PiJeyEe wrote:
Sun Nov 22, 2020 05:48
Hi Im sorry, im new and still noob at this coding and trying to learn. I am having an error in field get_translator, I dont get whats the problem. My version was 0.4.17
pipeworks only supports minetest 5.2+
See: https://gitlab.com/VanessaE/pipeworks/- ... od.conf#L5
Thank you, I found a way already and it works.

mase
Member
Posts: 91
Joined: Tue Feb 21, 2017 20:16
In-game: mase

Re: [Mod] Pipeworks [git] [pipeworks]

by mase » Post

Where can I find a small description about the digiline messages for the filter injector and the sorting tube? The wiki does not include them.

mase
Member
Posts: 91
Joined: Tue Feb 21, 2017 20:16
In-game: mase

Re: [Mod] Pipeworks [git] [pipeworks]

by mase » Post

I figured out, how to get items via the injector. But now I have an other question:
Is it somehow possible just to ask the digiline injector if there is a specific item in the chest behind, and maybe even the amount of that item?

auouymous
Member
Posts: 195
Joined: Sun Dec 07, 2014 09:39
GitHub: auouymous
IRC: air
In-game: auouymous

Re: [Mod] Pipeworks [git] [pipeworks]

by auouymous » Post

@mase You would need a digiline chest and ask it what it contains.

User avatar
captenfalkonion
Member
Posts: 41
Joined: Thu Jun 08, 2017 17:06
In-game: captefalkonion
Location: Germany

Re: [Mod] Pipeworks [git] [pipeworks]

by captenfalkonion » Post

In minetest 0.4-stable the mod interacts with the technic mod now in the 5.3 version not. I tried to build an auto stone/gravel/sandgenerator but i cant connect the Pipes from the Nodebreaker with the lv grinder. Im Using the Dreambuilder mod. Is the technic mod not compatible with pipeworks anymore?

User avatar
VanessaE
Moderator
Posts: 4655
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaE
Location: Western NC
Contact:

Re: [Mod] Pipeworks [git] [pipeworks]

by VanessaE » Post

Pipes were never used for this. You need to use tubes.

LV grinders may have been able to connect to a tube at one time, but they don't now. That's a Technic mod thing, probably a change the Technic devs made for gameplay sake.

However, MV grinders will connect just fine.

Also Dreambuilder is a game, not a mod.
You might like some of my stuff: Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (64-512px)

User avatar
captenfalkonion
Member
Posts: 41
Joined: Thu Jun 08, 2017 17:06
In-game: captefalkonion
Location: Germany

Re: [Mod] Pipeworks [git] [pipeworks]

by captenfalkonion » Post

Ok thanks for help

User avatar
T6C
Member
Posts: 119
Joined: Thu May 07, 2020 17:11
In-game: T6C

Re: [Mod] Pipeworks [git] [pipeworks]

by T6C » Post

I'm setting up an automated smelting facility based on the proof-of-concept in the screenshot below. Basically, ores and cobblestone come in from my mine, and wood comes in from my orchard. The wood is injected as fuel into the furnace, and everything else goes in to be smelted. The first pipe after each injector is a detecting pipe to keep the injector going if there are still things in its respective chest. Here, I have a few problems I haven't been able to figure out (yet).
  1. How do I handle overflow? That is, if an injector tries to put something into the furnace or a chest that is full, it currently just tosses it on the ground (where it can timeout and be lost). Is there a way to just make the injector stop if the destination has no available space? I've tried vacuum tubes that dump the items back into the source chests, but then the pipe network starts getting complicated fast.
  2. Is there a way to run pipes along adjacent nodes without them connecting? Currently, I have to make sure there's a one node space between each tube, and this ends up taking a lot of space when dealing with more than a few setups like in my screenshot.
  3. Is there a way to have an injector pull out the end product from a furnace as soon as it becomes available? Imagine you have six different ores that came in, but only a dozen of each. The furnace will quickly smelt these, but there's only room for four of them in the furnace output. Since the injector pulls items out of the furnace faster than the furnace can smelt them, the injector doesn't stay on, and stops, even with a detecting pipe.
Image
Attachments
Screenshot 2021-04-04 16.24.15.png
Screenshot 2021-04-04 16.24.15.png (853.2 KiB) Viewed 2636 times

User avatar
VanessaE
Moderator
Posts: 4655
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaE
Location: Western NC
Contact:

Re: [Mod] Pipeworks [git] [pipeworks]

by VanessaE » Post

1. There aren't many ways to deal with overflow, really. One way is simply more chests connected to the injector's outlet. Another is a trash can connected to the tube that's connected immediately adjacent to the node that's overflowing. Items being rejected by that node will end up in the trash. Or, put more furnaces and such, so that there's enough processing capacity to handle the incoming load

Either that or adjust the timing of whatever's triggering the injector to feed the furnace so that it's slightly slower than the output of that furnace.

Try this: insert a plain tube between the signal tube on the far right (just above your hand) and the injector that's feeding it, to cut that injector off from the signal the tube's generating.
Run some insulated mesecon wires from the signal tube to the injector on the left that's feeding the furnace. Put a blinky plant next to the injector on the right.

The blinky plant will continuously trigger the injector to take from the furnace if it can. The signal tube will detect if an item actually leaves, and the mesecons wires will feed that signal back to the injector on the left to trigger it to give the furnace another item.

As in real life, you have to have something in mind to DO with the materials your apparatus is receiving to begin with - store them, process them and ship them off, rate-limit the incoming materials, or discard them.

Consider using a LuaController to manage your apparatus.

2. Use "one-way" tubes. They run strictly straight and can be placed side-by-side without interconnecting.

3. Put a mesecons blinky plant or other timing source next to/connected to the injector. If there's nothing to pull out, it'll do nothing, but it won't stop trying. See above also.

Also bear in mind that a signal tube adjacent to, or connected to either the inlet or the outlet of an injector will also serve as a trigger for that injector, since it'll pick up the tube's signal.
You might like some of my stuff: Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (64-512px)

User avatar
Desour
Member
Posts: 1469
Joined: Thu Jun 19, 2014 19:49
GitHub: Desour
IRC: Desour
In-game: DS
Location: I'm scared that if this is too exact, I will be unable to use my keyboard.

Re: [Mod] Pipeworks [git] [pipeworks]

by Desour » Post

More for 1.: You could also try using a loop:

Code: Select all

C>═╦F
║  ╠F
╚══╝
(I hope you can see that characters.)
If the item can go into the furnace, it will always go into the furnace, because the furnace has a higher priority than the tube (see pipeworks wiki for more details on priority).
If the furnaces are full, the item will go back to the chest, and can be tubed out later again, eg. with the help of a blinky plant.

More for 2.: You can also use crossing tubes, which are much cheaper than one-way tubes. They still connect to all their neighbors, but always send their items straight.
he/him; Codeberg; GitHub; ContentDB; public personal TODO list; "DS" is preferred (but often too short)

User avatar
Linuxdirk
Member
Posts: 3216
Joined: Wed Sep 17, 2014 11:21
In-game: Linuxdirk
Location: Germany
Contact:

Re: [Mod] Pipeworks [git] [pipeworks]

by Linuxdirk » Post

A few years ago I set up this:

https://imgur.com/a/zyReP

It handles overflow pretty well.

User avatar
T6C
Member
Posts: 119
Joined: Thu May 07, 2020 17:11
In-game: T6C

Re: [Mod] Pipeworks [git] [pipeworks]

by T6C » Post

@VanessaE, @DS-minetest, @Linuxdirk
Thanks, all. :) I came up with a solution before reading your comments, but I think it uses elements of everyone's suggestions.

I removed all the detecting tubes, and put a blinky plant above the output of the furnace injector. Then, I connected that blinky plant to all three injectors (furnace, fuel, and ores). Each time the blinky plant blinks, fuel and ores are put into the furnace, and anything in the furnace's completed slots is removed. This ensures a steady flow through the system as long as there are materials available.

To fix the overflow issue, I ran loops of one-way tube (needed one-way to prevent them connecting to other tubes) from just before the furnace to the fuel and ore chests respectively. Just in-case something goes awry, I also added a separate tube which terminates over each production line with a vacuum tube to catch anything that falls out of broken tubes. That then puts what it vacuums back into the inventory chests, which are then sorted into the various fuel and ores chests of each production line. I watched it work for a while, and it seems to work a treat.

It looks far more complicated than it really is, but I think a big part of that is I designed it to be as compact as possible. Each automated line now takes up a space of 2x3x7 nodes.

Post Reply

Who is online

Users browsing this forum: No registered users and 13 guests