{
  "schema_version": "tradecat.character_profile.v1",
  "scope": "37-original-assets-r47-controls-not-complete-java",
  "ticks_per_second": 20,
  "max_catchup_ticks": 5,
  "settings_persistence": "page-memory-only",
  "physics": "Prismarine Physics fixed mature core with recorded narrow adaptation",
  "market_collision": false,
  "controls_href": "character/CONTROLS.txt",
  "differences_href": "character/JAVA_DIFFERENCES.txt",
  "historical_control_profile": {
    "scope": "historical-not-current-qualification",
    "original_sha256": "a8ada8d71d5656d09e2440f74df2f907cad95597929f40819a57a57e762826ef",
    "content": {
      "schema": "local-java-creative-default-control-profile.v1",
      "local_only": true,
      "edition": "Java",
      "mode": "creative",
      "game_data_baseline": "1.21.4",
      "user_specific_minor_version_confirmed": false,
      "physics_ticks_per_second": 20,
      "physics_upstream_commit": "a4fbb863c227340198df5b830cea49dcf1538ccd",
      "bindings": {
        "move": "WASD",
        "look": "mouse",
        "jump_fly_up": "Space",
        "sneak_fly_down": "Shift",
        "sprint": "Left Control or double-W",
        "toggle_flight": "double-Space",
        "perspective": "F5: first → third-back → third-front",
        "pause": "Escape"
      },
      "default_fov": 70,
      "default_sensitivity_option_value": 0.5,
      "displayed_default_sensitivity_percent": 100,
      "ground": "ordinary stone, no potion/equipment",
      "default_flight": false,
      "default_perspective": "first-person",
      "standing_eye_height": 1.62,
      "crouching_eye_height": 1.27,
      "standing_collision_height": 1.8,
      "crouching_collision_height": 1.5,
      "collision_width": 0.6,
      "downloaded_model_metadata_scope": "unchanged historical conversion summary; old movement field is not this runtime profile",
      "limits": [
        "not a Minecraft client or full world",
        "no original-client/device parity trace yet",
        "OS/browser-reserved keys may require fullscreen Keyboard Lock",
        "source experimental limb animation retained; not original Java avatar animation",
        "only ordinary flat ground is rendered; non-flat collision checked separately",
        "not water/riding/items/combat qualification",
        "no public redistribution permission"
      ]
    }
  },
  "historical_visual_profile": {
    "scope": "historical-not-current-qualification",
    "original_sha256": "55125bf152fa7e9f976003ad11f5815ee54f71423d11640e5098db70f861a2af",
    "content": {
      "schema": "local-java-creative-visual-profile.v1",
      "local_only": true,
      "reference_baseline": "Java 1.21.4 ordinary ground, empty hand",
      "main_hand": "right; explicit left option",
      "hand_source": "only actual selected GLB arm subtree; shared original geometry/UV/PNG/rest",
      "missing_arm": "no fabricated replacement; explicit warning",
      "imported_arm_framing": "only wholly off-frustum rest arm is translated as a whole; geometry, proportions, rest, UV and PNG unchanged; cached per main hand/aspect",
      "hand_fov": 70,
      "hand_depth": "same renderer/context; world then clearDepth then arm",
      "swing_ticks": 6,
      "view_bobbing_default": true,
      "visual_interpolation": "20TPS previous/current position, no new physical solver",
      "camera_collision": "bounded four-metre eight-corner rays against existing block shapes",
      "idle": "all perspectives settled/pause zero RAF; idle arm clock freezes at rest as explicit experiment constraint",
      "references": [
        "mappings[点]dev / 1.21.4/net/minecraft/client/renderer/ItemInHandRenderer.html",
        "mappings[点]dev / 1.21.4/net/minecraft/client/renderer/GameRenderer.html",
        "https://github.com/mahtomedi/minecraft/blob/main/src/main/java/net/minecraft/client/renderer/ItemInHandRenderer.java"
      ],
      "reference_limits": "public mappings establish roles; older public client math is reference, not a 1.21.4 original-client trace; no game JAR/source/public assets redistributed; crosshair bitmap remains private local reference",
      "unresolved": [
        "custom shapes differ from vanilla Java player rig",
        "body yaw versus head yaw still coupled",
        "idle arm clock freezes at rest, unlike continuous Java idle animation",
        "original lighting/fog/water/hurt/items/full GUI not implemented",
        "hand/third-person transforms not full original-client visual golden",
        "OS input and hardware performance unqualified",
        "private skins redistribution unverified"
      ],
      "crosshair": {
        "bitmap": "crosshair.png",
        "source": "Java1.21.4 public asset commit58d92c8cee4c7ac22d02988fb2bc3e4648af9ef2; private reference only",
        "pixels": "original15x15 white/transparent, nearest",
        "scaling": "auto integer GUI scale; framebuffer320x240 minimum; ceil GUI dimensions; trunc((dimension-15)/2)",
        "composition": "native CSS difference over opaque system Canvas/world; white source pixels invert composite RGB; no new GL context or RAF",
        "visibility": "active first-person only; pause hiding retained experiment constraint",
        "limits": "no F3 orientation/attack progress/F1/full HUD/client trace/hardware qualification"
      },
      "historical_control_profile": "CONTROL_PROFILE.json remains unchanged R4 physical/metadata summary; its retained experimental-animation limitation is superseded only by this finite visual adapter"
    }
  }
}
