Minecraft:Mod
More actions
|
For the {{{Description}}} of the same name, see [[{{{Destination}}}]]. |
A mod (short for modification) is a piece of unofficial code that is injected into the game for the purpose of modifying its behavior. They can be used to enhance the game by means ranging from fixing Minecraft:bugs, adjusting core mechanics, to completely revamping the way the game is played with unique features.
Nomenclature
The term mod is short for modification. Within the Minecraft community, the term is conventionally used in a strict sense to refer to unofficial, community-made code alterations that require third-party mod loaders. Under this definition, "mods" are distinct from officially supported Minecraft:game customization features, such as Minecraft:data packs, Minecraft:resource packs, and Minecraft:add-ons.
In the broader video game industry, the term "mod" is often used as an umbrella term for any user-created content that alters a game's look or behavior. Because Minecraft is a unique case that supports both unofficial modification and official modification APIs simultaneously, the community generally maintains a practical distinction to avoid confusion between the two methods.
Despite this distinction, Minecraft:Mojang Studios occasionally uses the terms "mod" and "modding" more broadly in official marketing and documentation to include official features. For example, the official Minecraft:Minecraft.net's Creator homepage refers to the use of Minecraft:add-ons as a way to "mod Minecraft".<ref>https://www.minecraft.net/en-us/creator</ref> Similarly, an official promotional material has referred to a data pack and resource pack combination, Minecraft:Phantom Frames, as a "Java mod".<ref>https://www.minecraft.net/en-us/article/beyond-the-pale-garden</ref> This varying usage between the community, the broader gaming industry, and Mojang Studios themselves can occasionally lead to ambiguity regarding what officially constitutes a "mod" in the context of the game.
Additionally, in Java Edition, the term "modded" can be determined in the game's code as the game running with a custom client brand or an invalidated signature file (likely coming from a modified Java class), see Template:Slink.
Overview
Mods are Template:W used to alter the base game to create unique experiences that are not usually present from the Minecraft:vanilla experience. They allow players to customize the look and feel of the game, give more options and customization, or expand the game with new Minecraft:progression and Minecraft:mechanics. Mods have control over various aspects of the game, where developers can modify or add custom features, such as Minecraft:physics, Minecraft:graphics, Minecraft:user interface, and various Minecraft:gameplay features (such as Minecraft:entities, Minecraft:items, Minecraft:blocks, Minecraft:world generation, and Minecraft:dimensions, usually through the game's registries<ref>Template:Cite</ref><ref>Template:Cite</ref>).
There are also utility mods serve to improve the game by adding or improving minor features while being close to Minecraft:vanilla (as not to change the game drastically). Optimization mods modify the game's Minecraft:rendering to improve frame rates and load times, making the game more accessible on lower-end hardware (see also Minecraft:Tutorial:Improving frame rate).<ref>Template:Cite</ref><ref>Template:Cite</ref> Other client side mods may improve stability, such as reducing crashes and micro-stutter, and fixing several bugs that are originally from the base game.<ref>Template:Cite</ref><ref>Template:Cite</ref>
In Java Edition, a mod loader is used to inject modifications into the game. Mod loaders serve as an intermediary between the game's and the mod's code, they provide two main functions for modding: (1) providing system of Minecraft:API and tools to develop new mods and communicate with the game, and (2) managing loading mods simultaneously while keeping them compatible with each other.<ref>Template:Cite</ref><ref>Template:Cite</ref><ref>Template:Cite</ref> There are many well-known mod loaders, such as Forge, Fabric, Quilt, and NeoForge. Each mod loader supports different system and API for developing mods. Because of this, mods designed for specific mod loader are not likely interoperable with another mod loader, and vice versa.
Mods are usually designed for specific release versions of the game. When the game is updated, the mod must also be updated accordingly, otherwise it may no longer work for future versions.<ref name="rps-update-breaks-mod">Template:Cite</ref>
Modding support
Template:JE is written in Template:W and runs on JVM, which for technical reasons makes creating mods relatively easy. Modding strongly depend on decompilation to see the game's source code. Because Java compiles to bytecode rather than machine code, it is highly susceptible to decompilation,<ref>Template:Cite</ref> allowing modders to Template:W the game logic easily. Due to this, a prolific modding scene exists for that edition, which has matured over a decade, and has created several programs and tools for modding, notably mod loaders.<ref>Template:Cite</ref>
For older versions, Minecraft:obfuscation maps provided by Mojang and the community which ease the process of reverse-engineering the game. The unobfuscated versions of the game also lets modders directly see the game's source code without obfuscation maps.<ref>Template:Mcnet</ref>
Template:BE is written in Template:W and runs as Template:W, which makes it technically challenging to mod. Mods for that edition exist, but are much less common and less complex, both due to technical challenges, and other reasons such as low interest from the community, and add-ons, which is supported by Mojang Studios, providing official means of adding content to the game.
Minecraft:Add-ons is the official modding API in Bedrock Edition, they can add new content and modify existing features and customization in the game. In comparison to Java Edition mods, add-ons may be limited in terms of features and customization, but are far more friendly and less complex for creators.<ref name="pcgamer-je-vs-be">Template:Cite</ref> An official modding API was planned for Java Edition, called "Plugin API" (dubbed "Workbench"), but was subsequently abandoned, with no further mentions or developments of it after Minecraft:Java Edition 1.9 (see Template:Slink).
In Minecraft:Bedrock Edition 1.21.20, Mojang Studios removed debug information (Template:Cd file) from Minecraft:Bedrock Dedicated Server, making modding more difficult for Bedrock Edition.<ref>Template:Cite</ref>
While there are other ways to change the experience of Minecraft, such as Minecraft:resource packs and Minecraft:data packs, the ability to load these is part of the Minecraft:vanilla game and usually not considered modding (see Minecraft:Game customization).
Integration with data packs
Historically, the modification of features such as Minecraft:advancements, Minecraft:enchantments, Minecraft:dimensions, or Minecraft:world generation have required the usage of mods. However, in later versions of the game, the additions and expansions of Minecraft:data packs and Minecraft:resource packs have allowed several of these features to be implemented into the game without any modification of or addition to the game's code. Most modern mod loaders allow data packs and resource packs to be included alongside a mod to provide additional data and resources, such as Minecraft:models or Minecraft:recipes.<ref name="fabric-custom-resources">Template:Cite</ref>
Types of mods
Template:See also Template:Redirect Template:Exclusive
Client-based
Template:Va are direct modifications of the Minecraft game files. They control and add custom content for Minecraft:mobs, Minecraft:particles, Minecraft:items, and Minecraft:blocks, such as Minecraft:models, Minecraft:sounds, Minecraft:textures, and Minecraft:GUIs, but require the Minecraft:server to implement the game mechanics behind them (see Template:Slink). They usually modify the client software, or Template:Cd file.
Functional client mods like Sodium and OptiFine modify and enhance client side features of the game, such as Minecraft:graphics fidelity and rendering, while not adding or changing any Minecraft:gameplay features, making them perfectly compatible with Minecraft:vanilla server without any modifications.
Server-based
Template:Va are modifications to the official Minecraft server software, or Template:Cd. They control features that are handled exclusively in the Minecraft:server, primarily the game Minecraft:mechanics, such as Minecraft:physics, Minecraft:mob AI, Minecraft:chat, Minecraft:commands, player interactions (e.g. Minecraft:crafting, Minecraft:smelting, opening Minecraft:chests or Minecraft:inventory, block placement and destruction), Minecraft:world generation, and much more. They cannot control client side features, and are limited in terms of custom content. Most mods are installed together on the server and client side, allowing for more freedom and complete game customization.
Server mods are commonly used to enhance server administration with more functionality and ease of use. They can provide tools to protect against Minecraft:griefing and Minecraft:cheating, implement tiered privileges for commands, automate server backup, monitor server performance, optimize Minecraft:gameplay features, and more. Most server mods are compatible with Minecraft:vanilla client, without requiring the same modifications on their end (see semivanilla). Most multiplayer minigames, such as Minecraft:spleef, capture the flag, sky wars and bed wars, are implemented using server mods.
Server mods may be referred to as plugins, mainly on Spigot mod loader and its derivatives. Some are implemented as wrappers, which do not modify the server software directly, instead monitoring its output and sending commands to it, typically using the Minecraft:RCON protocol.
Shader pack
|
For the {{{Description}}} of the same name, see [[{{{Destination}}}]]. |
A shader pack is a client mod used to alter the visuals and looks of Minecraft. They primarily enhance the game's Minecraft:graphics by adding shadows, lightnings, reflections, and other customization.<ref>https://www.gamesradar.com/best-minecraft-shaders/</ref><ref>https://www.rockpapershotgun.com/best-minecraft-shaders</ref> Shader packs are written in OpenGL Shading Language (GLSL), and require a mod designed to load them, such as Iris Shaders or OptiFine.<ref>https://shaders.properties/current/guides/your-first-shaderpack/0_intro/</ref><ref>https://shaderlabs.org/wiki/Getting_Started</ref> They can be complemented with Minecraft:resource packs, especially ones that include custom material data for use in Template:W (PBR). Shader packs and resource packs are often used to heavily customize the game's appearance, allowing players to transform into different styles and settings, like medieval, realistic, cinematic, and cartoonish.Template:Cn
Modern shader packs can implement Template:W and Template:W (GI) for Minecraft, notable examples include SEUS PTGI and Continuum RT.
Mod pack
A mod pack is a collections of mods that have been put together and configured so that they work together. Mod packs are often centered around a general theme like tech, quests, or magic. Mod packs often have either custom Minecraft:launchers or installers that make installing and running the mod pack easy. Some of the most popular mod packs include Feed The Beast, Tekkit, RLCraft, and Hexxit.
In addition to making it easy to install mod pack clients, certain launchers can also download server mod packs.
Modded flag
Template:Exclusive
If Minecraft crashes, a modified game is flagged in the Minecraft:crash report. This is possible by first checking the client or server brand is Minecraft:vanilla branded, then verifying if the Template:W (where the game crashed from) is signed from a signature file, which is stored on the META-INF directory with .SF file extension in the JAR archive.<ref>The checks can be seen on Template:Jcp class (Mojang mapping)</ref><ref>Template:Citation</ref> These checks are done on both Minecraft:client.jar and Minecraft:server.jar files.
The signature file that comes from the vanilla build of the game is named MOJANGCS.SF, and stored on the META-INF directory like any other signature files. The creator of the signature file is listed as Microsoft.<ref>The Created-By entry of client.jar/META-INF/MOJANGCS.SF file.</ref>
The crash report text includes one of these lines near the bottom:
- Template:Cd – the environment (either client or server) brand is unaltered and the signature file is validated.Template:Note
- Template:Cd – the environment (either client or server) is unaltered but the signature file is invalidated.Template:Note
- Template:Cd – the environment (either client or server) brand is changed to a custom brand specified by the mod loader, such as Template:Cd, Template:Cd, Template:Cd, or Template:Cd, which are for Minecraft:Forge, NeoForge, Quilt, and Fabric respectively. However, the game does not check the signature file any further.
A shortened example crash report is given below:
Trivia
- The Aether, a popular mod released in 2011,<ref>Template:Citation</ref> was referenced in an April Fools 2023 update, where players would be able to build the Minecraft:other portal out of Minecraft:glowstone and Minecraft:water, with striking similarity to the Aether portal. In the mod, players can transport to a Heaven-like dimension using the portal, serving as a counterpart to the Minecraft:Nether's hellish environment accessed through an obsidian and fire portal. In its heyday, the mod was easily one of the most popular and iconic Minecraft mods, leading some players to believe it was actually in vanilla Minecraft.<ref>Template:Citation</ref>{{#section:Other Portal|sky-dimension-trivia}}
Gallery
-
The title screen of a modded Minecraft:Java Edition with Forge.
-
The Aether mod adds a custom Minecraft:dimension called "Aether".
-
The Aether dimension is similar to the Minecraft:sky dimension, which was scrapped in Minecraft development.
-
The Twilight Forest mod adds a custom dimension with fantasy-medieval setting.
-
The Macaw's Bridges mod adds bridges to the game.
-
The Immersive Portals mod adds custom portals that players can transition seamlessly in the game.
Historical screenshots
-
An example of a world generator mod (custom Minecraft:Indev map generator)
See also
- Minecraft:Add-ons, a feature Template:In that allows modders to more easily add content to the game.
- Minecraft:Data packs and Minecraft:resource packs, features Template:In which allow the addition of specific content to the game without the use of code modification.
- Minecraft:Tutorial:Programs and editors/Modding showcases tools for installing and making mods.
- Feed The Beast Wiki for looking up information about specific mods.
- Template:Slink for a list of wikis for specific mods.
- Template:W on Wikipedia, which includes extensive history of Minecraft modding, from alpha to release era.
- Template:W on Wikipedia, which explains general video game modding.
- Minecraft:ModJam, a form of community event where participants create fan-made content for Java Edition within a set period of time. Typically focuses on mod-related content, but maps, Minecraft:resource packs, and mod packs have all been included to various degrees.
Notes
References
External links
- CurseForge and Modrinth, which are popular repositories for hosting user-created content, mainly Java Edition mods, data packs, and other content.
- Neoforged, Fabric, and QuiltMC, which are popular mod loaders for Java Edition.
- MCPEDL, which is a popular repository for hosting user-created content exclusively for Bedrock Edition, such as add-ons, behavior packs, resource packs, and other content. It is managed by the same company that hosts Template:W.
- There is also Modbay, a less popular alternative.
- Mods for Minecraft: Java Edition, the official Minecraft:Minecraft Help Center article.
Template:Navbox mods Template:Navbox Java Edition Template:Navbox Bedrock Edition
Minecraft:de:Modifikation Minecraft:es:Mod Minecraft:fr:Mods Minecraft:hu:Modok Minecraft:it:Mod Minecraft:ja:Mod Minecraft:ko:모드 Minecraft:nl:Mods Minecraft:pl:Modyfikacje Minecraft:pt:Mods Minecraft:ru:Модификации Minecraft:th:ม็อด Minecraft:uk:Модифікація Minecraft:zh:加载器Mod