Baritone AI pathfinder

Baritone AI pathfinder

72.7k Downloads

BuildInLayers doesn't work as expected

Blizzen opened this issue ยท 5 comments

commented

Some information

Operating system: Windows 10 Pro (22H2)
Java version: Java 8 update 351
Minecraft version: 1.20.4 (specifically "fabric-loader-0.15.7-1.20.4")
Baritone version: baritone-standalone-fabric-1.10.2
Other mods (if used): Litematica (litematica-fabric-1.20.4-0.17.0), MaLiLib (malilib-fabric-1.20.4-0.18.1)

Exception, error or logs

Please find your latest.log or debug.log in this folder and attach it to the issue
latest.log

How to reproduce

1.) open and place a schematic using litematica
2.) enable #Buildinlayers
3.) ensure #layerorder is false
4.) observe baritone place blocks in layer 1,2,3, and 4 at the same time, while still on "layer 4"
5.) this is not expected as BuildInLayers is described as "Don't consider the next layer in builder until the current one is done". Building layer 1,2, and 3 while layer 4 is incomplete and currently being built runs counter to this description.

Modified settings

(these are my current settings - from a fresh install, I observed the same interaction only editing #buildinlayers and #layerorder)

allowBreak false
allowInventory true
buildIgnoreExisting true
buildInLayers true
skipFailedLayers true

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 logs, exceptions and / or steps to reproduce the issue.
  • I have not used any OwO's or UwU's in this issue.
commented

I have another bug with #StartAtLayer that I have a feeling is related to the above report - I will wait to submit that issue until this is confirmed as a bug.

commented

I figured out that whenever I experience this issue, it seems like baritone isn't taking #buildinlayers into account., as it is missing the "starting layer x" text in debug/chat. But that would be a different issue, I can make a new issue when I figure out how to replicate this

commented

Its not necessarily skipping failed layers, as in my tests there were no failed layers due to it being a small schematic for testing with 100% of required blocks. For example, if my schematic is a wall 2 blocks tall, #layerorder true, the expected outcome is building (locally) the top layer first. However, the builder will place layer 1 and 2 simultaneously, rather than "bridging" along the 2nd layer (or skipping the second layer entirely due to #skipfailedlayers). Please let me know if I am misunderstanding.

commented

You have skipFailedLayers enabled so if it says it skipped a layer and then starts placing on the next that's probably working as intended. Due to how BuilderProcess works it can decide it can't build a layer if there is nothing to do locally, even if walking a few blocks over would allow it to continue on the current layer.

commented

You mean it should work like this?

2024-03-10.00-48-28.mp4

(I disabled randomLooking113 because the jitter it causes annoys me, you don't need to change it)