Chisels & Bits - For Fabric

Chisels & Bits - For Fabric

2M Downloads

Partial Square Prevents Pathing

DefiantZombie opened this issue ยท 6 comments

commented

I don't know if this bug should be about prevention of pathing or the appearance of pathing after a certain condition. Hopefully you can make sense of this late night report.

MC: 1.10.2
Forge: 12.18.1.2027 (incorrectly listed as 2044)
Chisel & Bits: 11.7

Imgur showing bug: (http://imgur.com/a/VkRap)

Setup steps:

  1. Place 3x3 hoppers.
  2. Surround hoppers with blocks.
  3. Place 3x3 carpets on top of hoppers.
  4. Create and craft 9 custom C&B 'fence' shapes.
  5. Place the fences on the 4 sides of the 3x3 carpets. I used shift to place off grid, but this was observed with fences placed on the grid as well.
  6. Spawn 1 adult chicken and any number of non-adult chicken(s).
OFFFO
FCCCF
FCCCF
FCCCF
OFFFO

The test:

  1. Stand several blocks off the corner of the fence outline.
  2. Hold seeds in your hand.
  3. Observe chickens smash into the corner, but don't pop over. (pathing unavailable)
  4. Remove seeds from hand.
  5. Place any number of bits in an open corner spot next to the fences.
  6. Hold seeds and move away from enclosure. Observe non-adult chickens jump over the corner. (pathing available)
    Note: Adult chickens will manage to...climb over smaller chickens and make the jump as well.
OFFFO
FCCCF
FCCCF
FCCCF
OFFFB

Hopefully this makes sense (with the pictures in the link of course).

Edit: Fixed incorrect Forge version.

commented

@AlgorithmX2 I have to apologize. My forge version is incorrectly listed. The version I had installed when witnessing this bug was 2027. I will test again with 2044 to verify.

commented

@AlgorithmX2 Okay I verified this still happens with Forge 2044.

commented

I should have some time tonight to look into this, however I'm not sure if there is much that I can do, pathing is mostly controlled by the AI code, which has special previsions for things like fences and doors.

I'm not entirely sure whats responsible for the behavior your seeing, but there is a chance something can be done, but in the end it might also just be a collision artifact allowing them to push into the fence like they are and get though.

commented

So looking into this has revealed two key facts.

  1. Entities will try to walk though corners, even if that corner is "blocked" by two walls.
  2. All C&B Blocks function as "walls"

for this reason this cage works, The walls are technically 2 blocks tall, because the top block has a single line of bits in it,
Cage

That chicken could easy walk though that or jump over it but he still accepts his life behind bars.

I could potentially change it so that in some cases they are "not-walls" but i'm not sure it would really help anything.

In the end the only cases I can see where it might help, is when the block contains 1-2 layers of bits on the bottom... cause entities like to jump around in that case.

That said, i'm not sure its really worth any additional performance overhead to special case that. And I can't really do anything about the diagonal issue your seeing.

commented

Yeah my gut was telling me not much could be done since I've not seen many mods in the past mess with mob AI and/or pathing. But figured you should know about it.

If you need more info or a video or something, please let me know.

Edit: You know what...they really are trying to path through the corners. I have 3 pens full and all 4 corners are packed with chickens. I'd almost say if it's not an easy fix or will possibly induce lag...don't fix it. This could create interesting mechanics.

commented

Yeah, I wouldn't mess with a great performing mod.