Tis

Minecraft 26.3 snapshot 2

Original Changelog

The second 26.3 snapshot is out, with many technical changes.

Blocks

Shelf Mushroom

Small shelf mushrooms now consist of two collision boxes:

  • A larger hitbox 0.625 x 0.125 x 0.4375 blocks in size, resting 0.5625 blocks off the ground
  • A smaller hitbox 0.375 x 0.0625 x 0.25 blocks in size, resting 0.5 blocks off the ground

Large shelf mushrooms now consist of two collision boxes:

  • A larger hitbox 0.875 x 0.1875 x 0.625 blocks in size, resting 0.5 blocks off the ground
  • A smaller hitbox 0.5 x 0.125 x 0.375 blocks in size, resting 0.375 blocks off the ground

Wool

Wool stairs now smelt 1/2 of an item each, and wool slabs now smelt 1/4 of an item each.

Mobs

Wandering traders now sell 8 poplar logs for 1 emerald up to 4 times.

Striders no longer have a 1/30 chance to spawn with a zombified piglin if the spawn_monsters game rule is false.

Options

F3+X now toggles the Improved Transparency setting.

Data Packs

Data Components

Projectiles can no longer break blocks in adventure mode (fix for MC-309081) unless the item that shot the projectile’s can_break component allows breaking that block.

Int Providers

The very_biased_to_bottom int provider uses this code to generate a random number, where randInt(x) generates a random integer from 0 (inclusive) to x (exclusive):

min + randInt(randInt(randInt(max - min + 1) + 1) + 1)

Debug Properties

Removed -DMC_DEBUG_CARVERS.

Mojang API

The game no longer hardcodes API endpoints. Instead, the game sends a GET request to the delivery service at https://discovery.minecraftservices.com/minecraft/client, which returns all services and their endpoints:

{
  "environment": "prod",
  "product": "minecraft",
  "discovery": {
    "authentication": {...},
    "session": {...},
    "player": {...},
    "profiles": {...},
    "telemetry": {...},
  }
}

Contained in each service’s {...} is a map from endpoint keys to URIs.

{
  "<key>": {
    // Can contain arguments such as {name}
    "uri": "<uri>",
  },
  ...
}

Below is a table of all endpoints the game uses, and the service and endpoint key used to discover that endpoint:

Host Current Endpoint Service Endpoint Key Arguments
Services GET /publickeys authentication getPublicKeys  
Services POST /authentication/login_with_xbox authentication loginXbox  
Session GET /session/minecraft/profile session getProfileById {profileId}
Session GET /session/minecraft/hasJoined session verify  
Session POST /session/minecraft/join session join  
Services POST /player/certificates player getCertificates  
Services GET /player/attributes player getAttributes  
Services POST /player/attributes player updateAttributes  
Services GET /privacy/blocklist player getBlocklist  
Services POST /player/report player sendReport  
Services GET /friends player getFriends  
Services PUT /friends player updateFriends  
Services POST /presence player updatePresence  
Profiles GET /minecraft/profile/lookup/name/ profiles getByName {name}
Profiles POST /minecraft/profile/lookup/bulk/byname profiles getManyByName  
Services POST /events telemetry sendEvents  

Where “Host” is the base URL of the current endpoint:

  • Services: https://api.minecraftservices.com
  • Session: https://sessionserver.mojang.com
  • Profiles: https://api.mojang.com

The getTextures endpoint key under the profiles service instead returns a list of URIs that, when the argument {textureId} is removed, determines which URIs are valid skin texture hosting locations:

{
  "getTextures": {
    "validUris": [
      "https://textures.minecraft.net/texture/{textureId}",
      "http://textures.minecraft.net/texture/{textureId}"
    ]
  }
}