This article is licensed under a Creative Commons Attribution-ShareAlike 3.0 license. Derivative works must be licensed using the same or a compatible license.

Java Edition protocol

From Minecraft Wiki
Jump to navigation Jump to search
This feature is exclusive to Java Edition.
 

Minecraft: Java Edition is one of the two editions of Minecraft known for being written in Java and depends on the Minecraft Launcher to download, update, and play. Most of the new development projects focus on either creating entirely new programs from scratch that interoperate with Minecraft (such as a bot or server) or modding projects that integrate with the game's client or server and provide bug fixes, new features, and several enhancements to existing features.

Documentation

[edit | edit source]

There are ongoing efforts to keep reverse engineered documentation updated, but it isn't as easy as it sounds. The protocol generally changes slightly with each release. Below are links to the current documentation segments, which may or may not be completely up to date.

Protocol

[edit | edit source]

Minecraft APIs

[edit | edit source]
  • Authentication systems – Minecraft have used multiple authentication systems in the past:
  • Mojang API – several legacy and current APIs for querying player data and make changes programmatically.
  • Game files[vg]
  • Realms API[vg]

Map format

[edit | edit source]

Vanilla implementation

[edit | edit source]

Miscellaneous

[edit | edit source]
  • Data formats – several data formats used by Minecraft to store data readable by machines or humans:
  • Text formatting and styling – several resources on Minecraft's rendering of text:
    • Font – changes how characters look in the game defined by resource pack.
    • Text component – the modern way to define text formatting, such as italic, bold, strike through, colors, and other types of formatting in Minecraft.
    • Formatting codes – the legacy way to define text formatting based on "§" character.
  • Server protocols and APIs:

Tools and mods

[edit | edit source]
  • Clients - third-party Java Edition clients
  • Servers[vg] - third-party Java Edition servers
  • Libraries[vg] - libraries to interface with Minecraft data files or network protocols
  • Utilities[vg] - tools that interface with a client, server, or data files, such as proxies, bots, or inventory editors
  • Wrappers[vg] - mods that override features in the client or server
  • Generators[vg] - tools that extract data from Mojang to a readable format
  • Decompilers[vg] - tools for decompiling Java Edition
  • Burger - a tool that generates information for arbitrary Java Edition versions
    • Pokechu22's fork - where new version development is mostly done
    • Burger Vitrine - shows differences in data and protocol between arbitrary versions
    • PAaaS - shows differences in protocol and sounds for newer versions (1.8 and above)
  • Code Snippets[vg]

Communities

[edit | edit source]

For more info, see the Java Edition protocol category.

[edit | edit source]
This article is licensed under a Creative Commons Attribution-ShareAlike 3.0 license.
 
This article has been imported from wiki.vg or is a derivative of such a page. Thus, the wiki's usual license does not apply.
Derivative works must be licensed using the same or a compatible license.