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

Hand bob is too strong overall

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • None
    • 1.19.40.22 Preview, 1.19.20.20 Preview, 1.18.30.27 Preview, 1.18.20.26 Preview, 1.18.20.25 Beta, 1.18.20.23 Beta, 1.18.10.26 Beta, 1.17.40.21 Beta, 1.17.0.56 Beta, 1.16.221 Hotfix, 1.17.2 Hotfix, 1.17.30, 1.18.1 Hotfix, 1.18.2 Hotfix, 1.18.10, 1.19.30, 1.19.51, 1.20.81 Hotfix
    • Confirmed
    • Multiple
    • 531723

      Steps to Reproduce:
      1.Enable 'view bobbing' toggle option in video.

      2.walk on ground.

      Observed Results:
      Hand bob is too strong than Java Edition and older Bedrock Edition

      Expected Results:
      Must match like Java Edition and old Bedrock Edition.

       

      We have prepared sample code for fixing bugs:

       

      animations/player_firstperson.animation.json

       

      "animation.player.first_person.walk": { // copy here
        "loop": true,
        "bones": {
          // You can get closer to the Java Edition or old Bedrock Edition by preparing a 0.75x hand bob code that is the reverse of the normal direction.
          // This is enough, as the hard-coded animation will play.
          "rightArm": {
            "position": [ "math.sin(query.walk_distance * 180) * variable.hand_bob * 0.75", 0.0, 0.0 ]
          },
          "leftArm": {
            "position": [ "math.sin(query.walk_distance * 180) * variable.hand_bob * 0.75", 0.0, 0.0 ]
          }
        }
      }

       

      However, if you go underwater, the animation may be played by mistake. You can improve it by adding this code to variable.hand_bob.

      entity/player.entity.json:

       

      "variable.hand_bob = query.life_time < 0.01 ? 0.0 : variable.hand_bob + ((query.is_on_ground && query.is_alive * (1.0 - variable.swim_amount) ? math.clamp(math.sqrt(math.pow(query.position_delta(0), 2.0) + math.pow(query.position_delta(2), 2.0)), 0.0, 0.1) : 0.0) - variable.hand_bob) * 0.15;",

       

      The cause of the bug that makes the top and bottom bobs stronger is that the hard-coded animation and the top and bottom animations coded in the vanilla resource pack are played at the same time.

      The problem of stronger left and right hand bobs actually exists from 1.2. It's very annoying.

      The top and bottom bob bugs only occur on some items and on empty hands.
      These codes only work for items specified by 'attachable', and for empty hands (the animation when holding the item seems to be hard-coded at this time and cannot be changed).

      These are just samples.
      If the empty hand animation is no longer affected by the hard-coded animation, we recommend using the following code:

       

      "animation.player.first_person.walk": {
        "loop": true,
        "bones": {
          "rightArm": { ?)
            "position": [ "math.sin(-query.walk_distance * 180.0) * variable.hand_bob * 7.0""-math.abs(math.cos(-query.walk_distance * 180.0)) * variable.hand_bob * 15.0 + variable.short_arm_offset_left", 0.0 ]
          }
        }
      }

      Finding these files can be very annoying.
      The animations player_firstperson.animation.json in the 'vanilla' folder uses 9.75, and 'vanilla_1.16.200' folder is uses 1.5.
      This is the cause.

      Note: It appears that the 1.14.0 bug has returned from version 1.17.0. (MCPE-54072)

       

            KuriSan_Fox unused
            Votes:
            32 Vote for this issue
            Watchers:
            16 Start watching this issue

              Created:
              Updated:
              CHK: