Comments (13)
This was a feature request from BillyS, received as forum PM :)
Re: Tubelib suggestion
Sent: Fri Aug 17, 2018 15:52
by BillyS
I have another feature to request, when you've got time ...
Could you make the highperf distributor (and the normal one, if it doesnt already) send items on a blank open output if the one specified doesn't work? For example, if I have a distributor that outputs cobble on "blue" and everything else on "green", could you make it so that if it couldn't output cobble on "blue" it would output it on "green"?Thanks,
BillyS
I changed it accordingly...
But I see your point.
The distributor should take the unfiltered channel only in the case, if there is only one filtered channel and this channel is blocked.
from techpack.
Oh, that's interesting. I swear that when I first noticed this behaviour and showed him, he insisted it had always been that way ... Perhaps I'm remembering wrong.
I'm not sure the distributor only redirecting "filtered" items to an unfiltered channel in the case of a single filtered channel is correct. To me the correct behaviour should be, that a filtered item should be output on an unfiltered channel in exactly the case that all possible outputs that filter on that item are blocked.
I'm find it tricky to word this clearly, maybe an example will help. If there are two active outputs that filter on stone, and one that is active but unfiltered, stone should always be output on one of the filtered channels, unless both of those channels are blocked. When both of those channels are blocked, it should be output on the unfiltered channel.
I've never looked at this part of the techpack code, but if it is still unclear, maybe I could cook up a PR with what I consider to be the expected behaviour.
from techpack.
Again, your proposal make more sense, even if I uploaded the changes already as v2.03.02
from techpack.
Thank you for your work :) I will play around with this update.
from techpack.
Using the latest update, I tested the following setup:
- "Regular" distributor.
- 2 filtered outputs, filtering only on stone
- 1 unfiltered output
- One of the stone outputs was blocked, the other was available.
No stone was output on the unfiltered output, which is expected. Half of the stone was output on the open, filtered output, which is expected. However, half of the stone disappeared entirely, which was not expected.
The HighPerf distributor seems to function as expected, though I will do some more testing.
from techpack.
Right, I missed to check the number of outputs, should be fixed now.
from techpack.
Things seem to be working as I would expect them now, though I might do some further testing.
Probably unrelated, but I've also just noticed that unfiltered items are output four-at-a-time from a regular distributor, vs. the 1-at-a-time output for filtered items. I'm not sure whether or not this is intended, but it isn't a change in behaviour from the most recent update. I see this same behaviour on Blocky Survival.
from techpack.
Oh, I see now that the 4-at-a-time thing is probably intended, and related to the fact that putting a single item into a filter slot multiple times results in multiple items being output at once. I remember that not always being the case, but it has been a long time since I tested that.
So things seem to be working correctly, as far as I can tell.
from techpack.
The distributor code is ugly and unfortunately different for both distributor types.
I am open for pull requests :)
from techpack.
Sounds good. I'll go over it and see what I can do. This might take a while though.
from techpack.
As an update, over the last week I've become the major party responsible for resolving bugs on BlS and upgrading mods, so I've had little time to work on this. That might change in the future, but I don't know when.
from techpack.
I'm having a similar (if not the same) issue, on BlS, with techpack c2a9d6f:
My setup is: One highperf distributor with three outputs enabled (I use the other one as an input):
- filtered on cobblestone
- filtered on cobblestone
- unfiltered
In the case both filtered outputs get blocked, I expect the cobblestone to go the the unfiltered output, but nothing happen, the distributor state is "standby" and nothing move (until one of the filtered output gets unblocked), but anyway, nothing goes to the unfiltered output, never.
The idea behind this setup is to have a row of highperf distributors, each distributor is distributing to two gravel sieves, and forward the excess to the next distributor.
from techpack.
Should be fixed now. Please respond if not.
from techpack.
Related Issues (20)
- TechPack on 5.4.1 Server Doesn't Display Recipe for Gravel Sieve, An Overlooked Modding Error? HOT 5
- feature/enhancement request: make harvester.MAX_HEIGHT configurable in the in-game UI (like radius) HOT 1
- Papyrus is always considered as oven fuel HOT 4
- Add to mod somthing like OpenComputers HOT 2
- I found this in my Logs HOT 1
- HP pusher back texture is rotated 180 twice resulting in the texture being reverse HOT 1
- minetest 5.4.1 and minetest 5.6.0-dev not works HOT 1
- TNT causes issues with functional blocks HOT 1
- Can't get tubelib to put fuel into lwcomponents forcefield generator HOT 3
- Request: Tubelib compatibility with elepower HOT 1
- Request: tubelib comparability with lwcomponents HOT 1
- SmartLine State Collector doesn't have "running" state
- deprecation warning
- Smartline state collecter constantly says blocked HOT 10
- World won't load now HOT 5
- Feature request: Configurable sieves
- New Feature: Pushing Detector HOT 17
- Items can be injected into tubes from the side HOT 1
- Defective warehouses call `after_dig_node` which does not exist HOT 1
- `filter` is nil on highperf distributors for some reason HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from techpack.