PneumaticCraft: Repressurized

PneumaticCraft: Repressurized

50M Downloads

Collector Drone ignoring items.

duncanwebb opened this issue ยท 14 comments

commented

Minecraft Version

1.15.2

Forge Version

31.2.31

Mod Version

pneumaticcraft-repressurized-1.15.2-1.4.2-58

Describe your problem, including steps to reproduce it

Just created a Mystical Agriculture Redstone and Lapis seed the harvesting will harvest but the collector drone ignores the items

collector-drone

Any other comments?

The collector drone has a habit of teleporting, not sure why as the path looks clear. The harvesting drone with a standby upgrade has some strangeness too, it wakes up, harvest, hovers and goes into standby, it is the hovers section is odd as if another crop matures meanwhile it is not harvested until the next section.

commented

When you deployed the collector, did you shift click it on the chest or on the ground beside the chest? If on the chest and there was anything in the chest, it will only pick up more of what was already in the chest.

Otherwise it could be a pathing issue... it might be treating the mystical crops as non-pathable. I might need to install the mod and do some testing.

commented

Yep, empty chest or clicking the drone beside (rather than on) the chest allows it to pick up anything, clicking the drone on the chest with items in it filters by those items. It's also in the Collector Drone item tooltip ;)

Will be interested to see how this pack goes...

commented

The chest is in the air, so I shift-clicked the drone on it. So if the chest is empty then it picks up all the items otherwise it filters the items by the contents of the chest? The PNC:R manual tells me this, if I'd read it - shame on me.

Something I need to try is to see how the drone handles a farm tower with a one block gap between layers, the mystical agriculture growth accelerator works in a single vertical column.

The pack information is here https://youtu.be/NeTkyghPCOs (I pinched your icon for the image for the pack)

commented

@duncanwebb The easiest way of dealing with suffocation damage is to add an Item Life Upgrade. That'll cause it to heal through the damage. It does use air to do so, so it'll eventually end up having to go recharge somewhere.

But you'll eventually just want to push towards programmable drones so you can control where they go into standby.

As for storage, have you considered a logistics network? It's a very easy way to sort and organize your stuff into an array of chests, and can be easily hooked up to machines to auto process stuff. Come back from mining, dump everything in an input chest, and watch as ores are sent to furnaces and all your other goodies are sorted away the way you want them.

commented

Very unobservant of me :-(

I did try placing a collector drone next to the chest on a block with a mystical agriculture plant, it didn't pickup anything, on an empty block it worked as expected.

The harvesting drone when harvesting melons and pumpkins goes to standby on the spot where the melon or pumpkin was and if unlucky another plant grows and suffocated the drone. Is there a trick to prevent this?

I may need to add storage to the pack, chests are getting filled rapidly.

commented

The harvesting drone when harvesting melons and pumpkins goes to standby on the spot where the melon or pumpkin was and if unlucky another plant grows and suffocated the drone. Is there a trick to prevent this?

Other than what MuteTiefling said, not really, unfortunately. It's one of the drawbacks of having a cheap drone. It's also a hazard when using harvesting drones for tree farming.

The collector drone has a habit of teleporting, not sure why as the path looks clear.

Not sure on this one. I do need to check what sort of collision boxes mystical crops have. Might be confusing the drones.

The harvesting drone with a standby upgrade has some strangeness too, it wakes up, harvest, hovers and goes into standby, it is the hovers section is odd as if another crop matures meanwhile it is not harvested until the next section.

When it's hovering, it's scanning the area for harvestable crops (one block per tick IIRC to minimise lag). It's totally possible for a crop to grow in a spot that the drone has already passed over, in which case that crop won't be harvesting until the next time the drone wakes up to scan. So that's expected behaviour.

commented

The mystical agriculture hit box covers the farmland.

collector-drone-by-chest

Would believe it the harvesting drone was covered by a melon as I was watching!

drone-sitting
drone-melloned
drone-health

@MuteTiefling thanks, good tip. This must happen fairly often and the collector drone picks it up. I really meant storage drawers or simple storage. I will definitely use logistics modules and drone to move items and liquid around.

The collector drone has a habit of teleporting, not sure why as the path looks clear.

Not sure on this one. I do need to check what sort of collision boxes mystical crops have. Might be confusing the drones.

I had two chests one over water block with hoes, a vertical space and another chest for the collector drone. When I move the collector chest over the water then it didn't teleport any more.

In the four level 3x3 tower the drones behave correctly.

tower

commented

I think we're good on this one now? Anything else I should be looking at?

commented

Hmm, two small things.

  1. was it the intention to ignore the inventory when you place it on a plant beside the inventory? Since the hit box of the plant is not the full height of the block, I would expect it to work.
  2. How do harvest drone plant trees? They need a hoe to chop down the tree so their inventory space is full, where to they get the saplings from and why do they not always replant the sapling?
commented
  1. Not quite sure I understand the question. By "on a plant" do you mean the drone was right-clicked on a plant to deploy it? The way it works is the drone will check for an adjacent chest when deployed (in DUNSWE order) and use that as its drop-off point. If clicked against a chest, a filter is added to the program that's created for the drone. See https://github.com/TeamPneumatic/pnc-repressurized/blob/1.16/src/main/java/me/desht/pneumaticcraft/common/entity/living/EntityCollectorDrone.java#L33 if you're curious (and know some Java :) ) So the drone must be deployed in a blockspace adjacent to a chest for it to work. Easily worked around - just remove any plant that's beside the chest. The drone doesn't mind if it the plant is added back later (assuming it doesn't have a collision box, which crops in general don't).

  2. There's a bit of custom coding going on here, where the Harvesting widget will check for sapling items lying on the ground and pick one up and plant it, without it going through the inventory (i.e. the sapling item entity is auto-converted to a sapling block). If you were unlucky and tree dropped no saplings, or something else picked up all the saplings before the Harvest widget got to check for it, then no sapling will be planted. This is just a limitation of the Harvest piece; the price paid for convenience. A 100% robust tree farm would require a more complex program (using Dig/Place/Pickup pieces), and a programmable drone.

commented

Give build 61 a go - should implement the placement logic you're after.

commented

This image shows placing the collector drone on a plant with a chest behind, the drone does not use the chest. Are the fine black lines the hit box? There is a waterlogged chest underneath which the drone happily uses when it is placed on the ground in the water.
drone-on-plant
I do understand the filtering done by placing the drone on a non-empty chest, it's a neat way to filter items.

Thanks for the explanation, there is a collector drone (without inventory upgrades) running around picking up the wood, apples, sticks and saplings. The harvesting drone works from top to bottom so may be the saplings have been collected before it gets to ground level. Not sure how fast decay affects the logic, I would guess it doesn't as the drone harvest the leaves first. Maybe a water collection system would work better for a tree farm. I could remove the saplings for the chest and shift-click the collector drone on the chest.

commented

If you click on top of the plant's box, it still uses the block above the plant, even if the plant doesn't have a full hit box. The black outline is the plant's shape, which is a separate concept in Minecraft from the collision shape - for example, if you mouse over a vanilla flower, you see a box around it indicating the shape for interaction (e.g. breaking), but the flower has an empty collision shape so you can walk through it as if nothing were there.

I suppose I could change it so that if the block being clicked on has an empty collision box (as crops generally do), then the drone could be placed in that space rather than in the block next to it... but for now, just break the crop, place the drone and then replace the crop.

commented

Yes that works, Cheers!