Uploaded image for project: 'Minecraft (Bedrock codebase)'
  1. Minecraft (Bedrock codebase)
  2. MCPE-165457

Documentation for movement behaviors is misleading

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • None
    • 1.19.51
    • None
    • Confirmed
    • Multiple
    • 950879

      The documentation for many of the movement AI goals is misleading because it uses the verb "Allows..." to describe behaviors that cause mobs to move in specific ways.

      The word "allow" means to give permission (https://www.dictionary.com/browse/allow). It connotes removing obstacles and constraints or withdrawing objections. An entity that is "allowed" is freed from interference and is therefore able to go wherever it would otherwise go. In contrast to that, behavior components such as behavior.move_to_village give entities specific movement goals. These behaviors add constraints, while the word "allow" implies that they remove constraints.

      The misleading language creates confusion for addon creators. I help many addon creators through the Bedrock Addons discord, and I have twice encountered this exact scenario:

      1. Decide to make a mob that can move in water and on land and will follow its target or owner into either environment.
      2. Read the behavior documentation that says behavior.move_to_land "Allows the mob to move back onto land when in water," and behavior.move_to_water "Allows the mob to move back into water when on land."
      3. Based on the meaning of "allow", interpret the documentation to mean that these behaviors are necessary conditions for a mob to be able to move out of water onto land, or into water from land.
      4. Add both behavior.move_to_land and behavior.move_to_water to the mob's behavior components.
      5. Discover that the mob "doesn't work" and generally gets stuck moving back and forth.

      For clarity:

      Expected results

      The entity behavior documentation would use clear, accurate language to describe the function of AI goal behaviors. If a behavior's description says that it "allows" X, then that behavior would be a necessary condition for X happen. Conversely, if a behavior causes a mob to do X or prioritize/try for X, then the description would say that it "causes" or "makes" the mob to do or prioritize X.

      Observed results

      The entity behavior documentation uses misleading euphemistic language to describe the function of AI goal behaviors. Specifically, for many behaviors it says "Allows...[X]", where the behavior actually causes the mob to specifically choose or prioritize X, and X is already possible indirectly without that behavior component.

            GoldenHelmet [Mod] GoldenHelmet
            Votes:
            2 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              CHK: