Un JAR es simplemente un archivo ZIP, que contiene los diversos archivos de clase y otros metadatos utilizados; es un formato completamente estandarizado.
Los archivos ZIP se pueden extraer y los archivos de clase se pueden editar según sea necesario para la modificación. Los archivos modificados se vuelven a agregar al archivo, lo que hace que el servidor use los archivos modificados en lugar de los originales.
Técnicamente, los mods de Minecraft son realmente versiones "pirateadas" del código original: los archivos de clase binarios reales tienen que modificarse para que el juego sepa sobre las nuevas cosas; todavía no hay soporte oficial de mods (aunque Notch ha declarado que trabajarán en él durante la versión Beta).
Por supuesto, esa no es una muy buena manera de hacer las cosas si diseñas activamente para modificaciones. En su lugar, diseñaría algún tipo de arquitectura de complemento que permita ejecutar código personalizado cuando sea apropiado. El modo exacto en que lo harías depende de lo que quieras que hagan tus mods; por ejemplo, si la seguridad es una preocupación, probablemente quieras diseñar la interfaz de mods para usar algún tipo de secuencia de comandos, de modo que puedas restringir que los mods hagan todo tipo de cosas a la computadora del usuario.
Las modificaciones para un jugador son versiones pirateadas del código original. Los modos multijugador son diferentes en este momento. Casi todos usan el contenedor del servidor de hey0, que enlaza en minecraft_server.jar (o el término que se encuentre en la tierra de Java) pero define sus propias clases de funciones, sobrecarga algunas de las funciones principales y ejecuta su propio main ()
Hey0 proporciona una API mod . Ver
fuente
Para su información, Mojang lanzará una "Mod API" en un futuro cercano (durante la versión beta, así que antes de su lanzamiento oficial, que será alrededor de noviembre de 2011).
De hecho, será el código fuente completo, como se menciona en el blog de Notch
http://notch.tumblr.com/post/4955141617/the-plan-for-mods
pero por ahora, debe "descompilar" los frascos para ver un código parcialmente ofuscado y volver a compilarlo para su posterior uso / depuración.
Para hacer esto, recomiendo Minecraft Coder's Pack http://mcp.ocean-labs.de/index.php/MCP_Releases
También hay un par de tutoriales de modificación en los foros, como este: http://www.minecraftforum.net/topic/96862-creating-mods-modding-tutorials-21511/
fuente