Baritone AI pathfinder

Baritone AI pathfinder

72.7k Downloads

allowPlace does not always disallow placing

Artoria2e5 opened this issue · 2 comments

commented

Some information

Operating system: Windows 10
Java version:AdoptOpenJDK jdk-8.0.222.10-hotspot
Minecraft version: 1.12.2 (happens on 1.15.2 too)
Baritone version: 1.2.14

Exception, error or logs

No exceptions thrown, but here it is.
latest.zip

How to reproduce

Preparation

  1. Create a superflat world with the default grassy preset.
  2. Grow a 2x2 spruce tree.
  3. Select the tree by #sel pos1 #sel pos2 #sel ex a up 80.
  4. Give yourself a diamond axe, a stack of dirt, and go into survival.
  5. Run #sel r log air (or spruce_log for 1.15.2).

After the algorithm removes the bottom part, it suddenly realizes that it cannot reach the higher ones and tries to figure a way out. Somehow the temptation of all the blocks above makes it decide to place dirt and get itself up. Something similar happens when I have allowPlace on but am carrying no throwaway blocks.

A consequence of this problem is that tree removal can be quite suboptimal and really waste shovel durability. I only managed to coax baritone into doing a spiral once and I have already forgotten how.

Modified settings

allowPlace (false)
chatControl (I have impact :/)

Final checklist

  • I know how to properly use check boxes
  • I have included the version of Minecraft I'm running, baritone's version and forge mods (if used).
  • I have included steps to reproduce the issue.
  • I have not used any OwO's or UwU's in this issue.

A possible culprit is c780454. The comment never actually made sense: there is no such thing as overflowing to negative in floating point. double only overflows to positive or negative infinity.

commented

I'm like 60% sure that allowplace was intentionally merely a suggestion to baritone, sometimes it's impossible to path without placing

commented

The same piece of code that handles allowplace also uses the same not-really-inf value to handle the case when no throwaway blocks are available. That's not really a suggestion unless magic happens…