Skip to content

Adapter ignores GregTech covers #202

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wkalinin opened this issue Jun 5, 2016 · 12 comments
Open

Adapter ignores GregTech covers #202

wkalinin opened this issue Jun 5, 2016 · 12 comments

Comments

@wkalinin
Copy link

wkalinin commented Jun 5, 2016

I'm not sure if this is not a core OC issue, but as GT machine driver is provided by Computronics, I post it here first:
When placing an adapter near GT block (machine, cable) covered by GT covers (plates, foils), adapter still register this block as a component. This can be a pain in compact setups, because there is no way to disable specific adapter size. (Which would be great too (idea was mentioned in MightyPirates/OpenComputers#1341))

@Vexatos
Copy link
Owner

Vexatos commented Jun 5, 2016

Disabling an adapter side does sound like an interesting idea.

Unfortunately, it's not really possible to check if a cover blocks data as there are only methods to check if a covered side accepts items, fluid, EU or redstone.

@Vexatos
Copy link
Owner

Vexatos commented Jun 5, 2016

Why would you need side-specificness to compact setups? Wouldn't you merely have one component you don't need in your network if there is an adapter adjacent to it? I don't see how a single redundant component would be this bad.

@wkalinin
Copy link
Author

wkalinin commented Jun 5, 2016

Because e.g. if an adapter is for a battery buffer, then it is fairly probable that there would be a lot of power cables around, if it a central power storage. And I certainly don't need any components for these cables even if they touch the adapter. Redundant components are bad because of the components limit. Even with server component cards the limit is not that high. Currently in the component list of my server about half of the components are cables. (Yes, I like compact design)

@leagris
Copy link

leagris commented Jun 5, 2016

One solution to this (I don't mean it be easy to implement), would be to get interfaces as multi-part panes using AppliedEnergistics2 as a model. Keep current interfaces as single-block for convenience and backward compatibility but add option to convert these to interface panes to stick on computer cables.
Panel interface should only show component on its side.
Fit compact designs by interfacing multiple sides of a same computer cable block.

@Vexatos
Copy link
Owner

Vexatos commented Jun 6, 2016

@wkalinin The obvious solution would be not to place the Adapter next to the cables. If you really are using all sides of the battery buffer in such a way that there are always cables nearby, you might instead want to re-think your design with OpenComputers in mind. That's not about compactness. Adapters cannot be set to check only specific sides and Computronics can do nothing about that, while the GregTech side doesn't provide any method to check whether a cover should block data transmission, otherwise I would have already implemented that.

@leagris This is not something that would belong into Computronics.

@wkalinin
Copy link
Author

wkalinin commented Jun 6, 2016

Unfortunately, it's not really possible to check if a cover blocks data as there are only methods to check if a covered side accepts items, fluid, EU or redstone.

The obvious solution would be to look if the cover blocks everything (which is the default), and only if it does not block something, then register a component.

@Vexatos
Copy link
Owner

Vexatos commented Jun 6, 2016

But why would blocking items, fluids or redstone impact data flow in any way? It simply makes no sense.

@leagris
Copy link

leagris commented Jun 6, 2016

On 06/06/2016 15:46, Vexatos wrote:

But why would blocking items, fluids or redstone impact data flow in any
way? It simply makes no sense.

Redstone is Data. So if covered side is blocking Redstone, maybe that
interface should not be reading the machine behind.

Gregtech as multiple kind of covers.

  • Simple cover of one material, block everything. Think of a blind metal
    plate on a device.
  • Purposed cover (pump, conveyor, sensor...) these may let pass only any
    of: Items, Fluids, Energy, Redstone

Would be fair: If you cannot read/transmit redstone through a side, you
should not read data from the block.
Considered as dumb block.

@Vexatos
Copy link
Owner

Vexatos commented Jun 6, 2016

I probably could do that. I'll look into it.

@Vexatos
Copy link
Owner

Vexatos commented Dec 17, 2016

As of OpenComputers 1.6.1, you can wrench an adapter's side to turn it off; that might help.

@repo-alt
Copy link

Yes, of course, thank you.

@leagris
Copy link

leagris commented Dec 18, 2016

Just awesome. It also save on collecting unused data.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants