NOTE: This repo is a work in progress, the following readme is a draft.
A set of mappings for Minecraft 1.7.10 that attempt to continue where MCP left off.
The repo was initialized by layering MCP on top of Feather on top of Yarn. Names from each mapping set are preserved in the comments next to mappings, allowing them to be easily compared and referenced.
The full set of mappings that were layered are the following (names on the right take priority over names on the left):
Legacy Yarn
<Feather
<MCP stable-39-1.12
<MCP stable-32-1.11
<MCP stable-29-1.10.2
<MCP stable-26.1.9.4
<MCP stable-22-1.8.9
<MCP stable-12-1.7.10
<MCP 1.7.10 (Forge userdev)
The mappings are in the Tiny V2 format, split into a separate file for each class. A second destination namespace is used for comments.
The comments show the name of each element in the following four mappings:
- MCP↓ (layered, older preferred), MCP↑ (layered, newer preferred), Legacy Yarn, Feather
A ~
symbol means no mapping is present, and a :
symbol means the previous name is repeated. For example:
#textureName, :, ~, spriteName
This means the field is called textureName
in MCP↓, also textureName
in MCP↑, nothing in Legacy Yarn, and spriteName
in Feather.
RetroFuturaGradle's support for custom mappings is still a work in progress, so using these mappings is not yet recommended for the general public, but it can already be done.
Usage
First of all, unless you are starting a new project, you will want to migrate your existing source code to the new mappings. The PR for this has not been merged yet, so you will need to compile and install it yourself.
Add this snippet to your buildscript:
repositories {
exclusiveContent {
forRepository {
ivy {
name = "LegacyMappings releases"
url = uri("https://github.com/LegacyModdingMC/LegacyMappings/releases/download/")
patternLayout {
artifact("[revision]/[module]-[revision](-[classifier])(.[ext])")
}
metadataSources {
artifact()
}
}
}
filter {
includeModule("io.github.legacymoddingmc", "legacymappings")
}
}
}
minecraft {
mcpMappingChannel = "legacymappings"
mcpMappingVersion = "1.7.10+build.1-pre1"
useForgeEmbeddedMappings = false
}
project.dependencies.add("mcpMappingData", "io.github.legacymoddingmc:legacymappings:" + minecraft.mcpMappingVersion.get() + ":csv@zip")
project.configurations.named("mcpMappingData").configure {
exclude(group: "de.oceanlabs.mcp")
}
Don't do it yet.
Opens Enigma for editing the mappings, using a custom fork that can display comments. This is the preferred way to edit the mappings, but sometimes editing the files manually may still be necessary.
Builds the mappings in tiny-v2 and csv formats, and attempts to build the example mod using the mappings.
Builds the mapping archives without testing.
Generates a new set of mappings in the directory format. This will overwrite any changes! You will probably never want to run this, it's only supposed to be used to intitialize a branch.
Generates a new set of mappings in a single-file format which does not have the MCP layers flattened. This can be useful as reference. The mappings get written to a separate file so the source directory doesn't get modified.
This project uses data from the following projects:
- MCP (custom permissive license, see LICENSE.MCP)
- Legacy Yarn (CC0-1.0)
- Feather (CC0-1.0)
Additionally, some of the buildscript code was taken from Yarn's. (CC0-1.0)
This project maintains MCP's license for the data (the contents of the mappings
directory, and any exported mappings). Everything else (the buildscript code) is under CC0-1.0.