Page 18 of 28

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Mon Feb 16, 2015 18:47
by mtmodder148
Yeah I have the latest new_flow_logic branch. I definitely waited longer than that. Sure I'll give you a couple to show the flashing on and off.

Edit: Here is the folder for the screenshots. I waited like three or four minutes and the end of the pipeline kept turning off and on every second. I wonder if this is because I have a lot of spigots hooked up to it.

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Mon Feb 16, 2015 20:17
by mtmodder148
Okay that's the issue, having too many spigots on one pipeline. Is this by design?

Edit: The limit seems to be three. If it is by design it makes sense to me, but adding another pump to the pipe line should increase the pressure and increase the spigot limit imo.

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Tue Feb 17, 2015 00:21
by VanessaE
Actually, it's just that a setup like that strains the available pressure from the pump because all of those spigots are actively draining the pipes down. It works a lot like real pipes, in that there's only just so much pressure the pump can force into the feed at one end since water doesn't exactly compress and a pipe doesn't expand :-) and as each spigot drains its portion of the pipeline, each one further down the line has less available pressure than the one before it.

For an example circuit like that, you could add another pump next to the first and you might be able to get a couple more spigots operational, but you're limited by how much pressure you can put through that main feed pipe. The better idea would be to feed that circuit from the middle instead of the end, then you'd probably be able to get one pump to service about 6 or 7 spigots in total (3-4 on each side of the junction).

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Tue Feb 17, 2015 01:36
by mtmodder148
Okay, I originally set it up that way to see how spigots would turn on before the next one. So more pumps definitely equal more pressure. Awesome! This branch may be a bit slower but it's more realistic and goes well with technic's attempt at realism.

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Tue Feb 17, 2015 01:52
by VanessaE
Yep. More pumps equals more total available pressure, which means more outputs can be fed (up to a maximum amount of course), especially if you spread the pumps around a bit.

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Sat Feb 28, 2015 16:36
by Rundi88
I've found a really great usage of the Pipeworksmod.
A Mall with a "returnable bottle machine". You put all your items in the machine and the pipeworks sorting the items in the right chests. So you had a Sand Store, a streets store, a garden store,...

The Overview:
Image

The Base Floor:
Image

The "returnable bottle machine":
Image

Behind the walls:
Image

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Sun Mar 01, 2015 04:58
by VanessaE
Update: I've just merged new_flow_logic to the master branch of this mod, as it's had enough testing, so now all users will be on the new code finally. Plus someone caught a bug that was present in both branches (which I've also fixed).

Enjoy!

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Thu Mar 05, 2015 03:21
by VanessaE
People complained, so master branch has been rewound back to the point before new_flow_logic and force-pushed, and the code originally from that branch has been split back into its own branch again, returning this mod to the state it was before my last post. That branch is up-to-date against master, and can be re-merged at any time, should someone desire to do so.

A few commits unrelated to the water flow and/or pipes have been added since then. Those commits have been kept.

If people want the new_flow_logic code, please help me bug-fix it.

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Sun Mar 15, 2015 12:02
by ivalin
I think that you should not need a fountain head to spill water from the pipes . Also water source should be depleted after a while

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Sun Mar 15, 2015 21:10
by VanessaE
In the new_flow_logic branch, spigots or fountainheads (either one) are needed to drain a pipe down at the normal rate - but also a pump will slowly bleed the pressure off as well, when it's turned off.

People apparently don't like how the pressure values are propagated along the pipes. I'm not too happy with it either, but I thought it was at least less buggy than the existing code.

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Wed Apr 08, 2015 05:49
by Dopium
Is there a way to make the pipes flow any liquid? This is how i edited the flowing_logic.lua however im getting errors. I made a oil mod that i never released few years back and i want to flow the refined fuel using pipeworks.

Something along the lines of?

Code: Select all

group:" .. name..,
liquid:"...name..,?


This is what i have done but has not worked

Code: Select all

local finitewater = minetest.setting_getbool("liquid_finite")

pipeworks.check_for_liquids = function(pos)
	local coords = {
		{x=pos.x,y=pos.y-1,z=pos.z},
		{x=pos.x,y=pos.y+1,z=pos.z},
		{x=pos.x-1,y=pos.y,z=pos.z},
		{x=pos.x+1,y=pos.y,z=pos.z},
		{x=pos.x,y=pos.y,z=pos.z-1},
		{x=pos.x,y=pos.y,z=pos.z+1},	}
	for i =1,6 do
		local name = minetest.get_node(coords[i]).name
		if name and string.find(name,"water") then
			if finitewater then minetest.remove_node(coords[i]) end
			return true
		end
	end
	return false
end

pipeworks.check_for_inflows = function(pos,node)
	local coords = {
		{x=pos.x,y=pos.y-1,z=pos.z},
		{x=pos.x,y=pos.y+1,z=pos.z},
		{x=pos.x-1,y=pos.y,z=pos.z},
		{x=pos.x+1,y=pos.y,z=pos.z},
		{x=pos.x,y=pos.y,z=pos.z-1},
		{x=pos.x,y=pos.y,z=pos.z+1},	}
	local newnode = false
	local source = false
	for i =1,6 do
		if newnode then break end
		local name = minetest.get_node(coords[i]).name
		if name and (name == "pipeworks:pump_on" and pipeworks.check_for_liquids(coords[i])) or string.find(name,"_loaded") then
			if string.find(name,"_loaded") then
				source = minetest.get_meta(coords[i]):get_string("source")
				if source == minetest.pos_to_string(pos) then break end
			end
			newnode = string.gsub(node.name,"empty","loaded")
			source = {x=coords[i].x,y=coords[i].y,z=coords[i].z}
		end
	end
	if newnode then 
		minetest.add_node(pos,{name=newnode, param2 = node.param2}) 
		minetest.get_meta(pos):set_string("source",minetest.pos_to_string(source))
	end
end

pipeworks.check_sources = function(pos,node)
	local sourcepos = minetest.string_to_pos(minetest.get_meta(pos):get_string("source"))
	if not sourcepos then return end
	local source = minetest.get_node(sourcepos).name
	local newnode = false
	if source and not ((source == "pipeworks:pump_on" and pipeworks.check_for_liquids(sourcepos)) or string.find(source,"_loaded") or source == "ignore" ) then
		newnode = string.gsub(node.name,"loaded","empty")
	end

	if newnode then 
		minetest.add_node(pos,{name=newnode, param2 = node.param2}) 
		minetest.get_meta(pos):set_string("source","")
	end
end

pipeworks.spigot_check = function(pos, node)
	local belowname = minetest.get_node({x=pos.x,y=pos.y-1,z=pos.z}).name
	if belowname and (belowname == "air" or belowname == "default:water_flowing", "oil:refined_fuel_flowing"  or belowname == "default:water_source", "oil:refined_fuel_source") then 
		local spigotname = minetest.get_node(pos).name
		local fdir=node.param2
		local check = {
			{x=pos.x,y=pos.y,z=pos.z+1},
			{x=pos.x+1,y=pos.y,z=pos.z},
			{x=pos.x,y=pos.y,z=pos.z-1},
			{x=pos.x-1,y=pos.y,z=pos.z}
		}
		local near_node = minetest.get_node(check[fdir+1])
		if near_node and string.find(near_node.name, "_loaded") then
			if spigotname and spigotname == "pipeworks:spigot" then
				minetest.add_node(pos,{name = "pipeworks:spigot_pouring", param2 = fdir})
				if finitewater or belowname ~= "default:water_source", "oil:refined_fuel_source" then
					minetest.add_node({x=pos.x,y=pos.y-1,z=pos.z},{name = "default:water_source", "oil:refined_fuel_source"})
				end
			end
		else
			if spigotname == "pipeworks:spigot_pouring" then
				minetest.add_node({x=pos.x,y=pos.y,z=pos.z},{name = "pipeworks:spigot", param2 = fdir})
				if belowname == "default:water_source", "oil:refined_fuel_source" and not finitewater then
					minetest.remove_node({x=pos.x,y=pos.y-1,z=pos.z})
				end
			end
		end
	end
end

pipeworks.fountainhead_check = function(pos, node)
	local abovename = minetest.get_node({x=pos.x,y=pos.y+1,z=pos.z}).name
	if abovename and (abovename == "air" or abovename == "default:water_flowing", "oil:refined_fuel_flowing" or abovename == "default:water_source", "oil:refined_fuel_source") then 
		local fountainhead_name = minetest.get_node(pos).name
		local near_node = minetest.get_node({x=pos.x,y=pos.y-1,z=pos.z})
		if near_node and string.find(near_node.name, "_loaded") then
			if fountainhead_name and fountainhead_name == "pipeworks:fountainhead" then
				minetest.add_node(pos,{name = "pipeworks:fountainhead_pouring"})
				if finitewater or abovename ~= "default:water_source", "oil:refined_fuel_source" then
					minetest.add_node({x=pos.x,y=pos.y+1,z=pos.z},{name = "default:water_source", "oil:refined_fuel_source"})
				end
			end
		else
			if fountainhead_name == "pipeworks:fountainhead_pouring" then
				minetest.add_node({x=pos.x,y=pos.y,z=pos.z},{name = "pipeworks:fountainhead"})
				if abovename == "default:water_source", "oil:refined_fuel_source" and not finitewater then
					minetest.remove_node({x=pos.x,y=pos.y+1,z=pos.z})
				end
			end
		end
	end
end

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Wed Apr 08, 2015 17:42
by VanessaE
Right now, no there is not any way to do that. I had planned to implement this in the new_flow_logic branch. That branch works for water, but so far that is the only thing it can move around (and unsatisfactorily so according to some people). That said, that branch could be much more easily adapted by making some changes in the metadata that's passed around, and changing the symbol that appears on a pipe when it's full, accordingly.

The ironic thing here is I originally wrote pipeworks in hopes of someone using it to give a fresh, new appearance to sfan5's old oil mod, but never actually made it work with anything but water. :-)

I really need someone who has some knowledge of fluid motion to take new_flow_logic and make it work in a way that pleases everyone.

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Thu Apr 09, 2015 04:41
by Dopium
Just had a look at sfan5's oil mod and it's impressive indeed, i like pipeworks though it definitely has a place of it's own, mainly because it has potential as a light universal mod.

If a way can be worked out to transfer liquid as in group type rather then a specific node, it would open the doors for many game types. I am not complaining or anything, just really want to use pipeworks with my mod.

Going to play around with this and see what i can do, don't hold your breath though i am fairly novice. Also anyone that can help feel free to jump in :)

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Sun Apr 26, 2015 05:01
by SpaghettiToastBook
How reliable are the teleport tubes? I seem to have lost a bunch of materials from my quarry (whose tube was about 200 nodes away from the destination tube).

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Sun Apr 26, 2015 06:35
by Nore
They should be reliable, I don't understand why you lost items (maybe the output chest was full?)

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Mon Apr 27, 2015 17:44
by Don
I lost stuff many times. It was always a mistake I made and everything either ended up in a wrong chest or just floating around in the tubes

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Sun May 10, 2015 20:11
by supercutsminetest
Newb question here - I've never played minecraft, and only been on MT for about a month. I'm not sure what is obvious/default.

I have been playing with vacuum tubes ("VT"), and I haven't been able to entirely understand how it works. It is my first foray into the pipeworks.

My goal is to have a tree farm where the ground automatically picks up saplings that decay from the leaves. I wanted to use the sand vacuum tubes (not mese). My original belief was that each VT node would suck everything two nodes away. So a 3x3 area would be covered from 1 VT. I don't think I am correct in my understanding. I am experiencing this on a server, so if the answer is related to that, I'm sorry.

I tried by
Air... Air... ...Air ... Air ... Air
Air... Air... ... Air ... Air... Air
Air... Chest ... VT ... Air... Air
Air... Air... Air ... Air... Air
Air... Air... Air ... Air... Air


Based on what I read on the wiki, I would have thought replacing any (except of a solid object blocked it) of the Air (2 nodes from VT) with a dropped item would get sucked in the chest. In reality, only an item dropped on Air would get sucked in. From what I am experiencing, the object has to fall ON the tube, am I understanding vacuum incorrectly or is this phenomenon not how the vanilla mod works (possibly server modded pipeworks?)

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Sun May 10, 2015 21:41
by VanessaE
Well it SHOULD work like you thought - but note that there are two kinds of vacuum tubes. The standard one has a fixed spherical radius of about 2 nodes or thereabouts and should suck up everything within that range, while the other scans a cubical volume and is adjustable (hence its name). I *think* the adjustable one has a default radius of 1 node.

*pokes nore*

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Sun May 10, 2015 22:12
by supercutsminetest
VanessaE wrote:Well it SHOULD work like you thought - but note that there are two kinds of vacuum tubes. The standard one has a fixed spherical radius of about 2 nodes or thereabouts and should suck up everything within that range, while the other scans a cubical volume and is adjustable (hence its name). I *think* the adjustable one has a default radius of 1 node.

*pokes nore*
Thanks for the quick reply. I appreciate your contribution to MT and your mods.

Based on what I am reading, the standard vacuum tube was intended to suck up a fixed radius of ~2 nodes, however it is currently not due to MT. I will use the adjustable one then, thank you!

D: The server owner advised he may be taking out pipeworks/mesecons because he believes it causes lag/dcs. I took a screenshot, but I can't find it, of the error code he receives. I have the latest, which was errors I received when I load. I will inquire with him next time to see the error codes and post them here.

I might be wrong, but the general gist (I may be completely misunderstanding him) is that there are players that have not played in awhile, where for example an automatic cobble generator is dropping infinite blocks overflowing the chest, that causes lag/dc.

Here is my scrshot.
Image

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Mon May 11, 2015 02:44
by VanessaE
No idea why you're getting those errors, but they're not due to any error in pipeworks.

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Mon May 11, 2015 08:29
by supercutsminetest
Hmm, here is a scr of his error.

Image

Here are mods

Image

am I posting this question in wrong spot?

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Mon May 11, 2015 12:37
by supercutsminetest
Referring to https://github.com/VanessaE/pipeworks/wiki, at the furnace section, the blurb mentions that filter/injector can be used to remove crafted items from the furnace. The photo does not show a filter/injector behind a filter/injector connecting to a chest, it only shows the tube from the furnace to the chest, is this not representative of what needs to be done?

I tried removing the product (coal from cooking wood with fuel cactus) from a furnace with
... furnace ... filter/injector ... chest
specifying coal in the filter/injector, and coal is not being removed. I then tried
...furnace ... tube ... chest
like the photo, and nothing happens.

The filter/injector in the first instance was connected to mesecon connector and blinky plant, the prior part of the machine is working (adjustable vacuum...chest...filter/injector (wood)...furnace (rest of machine specified above).

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Mon May 11, 2015 19:36
by poet.nohit
The picture in the wiki is misleading. Tubes that simply run from a normal furnace to a chest will do nothing. You need a filter next to the furnace to remove items from the output slot of the furnace.

The screenshot shows that you have a filter that can send items from the chest to the furnace and a blinky plant to trigger the filter. There is no filter that is placed such that it can take items from the furnace.

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Tue May 12, 2015 01:19
by VanessaE
Sorry about that. I've corrected the image.

Re: [Mod] Pipeworks [20131128] [pipeworks]

Posted: Sun May 24, 2015 19:34
by Cryterion
Hi, just a bug report, (if is,) on the autocrafter. I'll run through a scenario to explain it.

Autocrafter is receiving buckets of water, recipe set is bucket:water/default:dirt/default:papyrus - crafting clay4 - the issue comes in when the crafted items slot become full, I.E. there is no longer a slot for the empty bucket to fit (which it places under normal conditions). I could place a filter to sort it out, but still believe the autocrafter should stop operating in that situation.