Use Quilt Mappings on Loom

Overview

Quilt Mappings on Loom

The time has finally arrived! Quilt Mappings are now usable in Loom!

Ever wanted to use mappings other than Yarn or MojMap?

Quilt Mappings is a Yarn derivative that allows inspiration from MojMap, which allows Quilt Mappings to map the obscure constants in Minecraft code and more. This gradle plugin allows Quilt Mappings to be used in Loom and Fabric environments. Currently, only 1.17.1+ has support, with no plans of backporting to earlier versions.

Benefits of Quilt Mappings:

  1. Faster turn around.
    • For the past couple weeks, Quilt Mappings has been out before intermediary. While this doesn't help too much in loom, it is something to look forward to in the future.
  2. Consistent names.
    • Quilt Mapping names are never mismatched, meaning you won't find issues where names swap between versions.
  3. Familiarity of Yarn with the completeness of MojMap.
    • While not complete, Quilt Mappings has the goal of 100% mapping coverage for Minecraft. Any help toward this goal would be appreciated as well!

How to use Quilt Mappings:

settings.gradle:

pluginManagement {
    repositories {
        maven { url = "https://maven.quiltmc.org/repository/release" }
    }
}

build.gradle:

plugins {
  // ...
  id "org.quiltmc.quilt-mappings-on-loom" version "QMoL_VERSION"
}

// ...

dependencies {
   mappings(loom.layered {
      addLayer(quiltMappings.mappings("org.quiltmc:quilt-mappings:${minecraft_version}+build.${project.quilt_mappings}:v2"))
   })
}

QMoL Versions

Replace QMoL_VERSION in build.gradle with the version corresponding to the version of Loom being used:

Loom Version QMoL Version
0.10 3.1.2
0.11.31- 4.0.0
0.11.32+ 4.1.0
Comments
  • Fix loss of initializer parameters, add unpick support

    Fix loss of initializer parameters, add unpick support

    Fixes final mapping file not containing any initializer parameters.

    Should we change the hash code of the mappings so that when the plugin is updated, the old mappings aren't used? As it is now, updating to 4.0.1 without deleting the cached mappings file, or changing the mappings dependency to an uncached one, doesn't have any effect

    opened by ByMartrixx 6
  • Set Java compatibility level to 16

    Set Java compatibility level to 16

    Loom is still on Java 16 and no Java 17 features are used. This is slightly more convenient for people who want to use this on 1.17.1 without updating their jdk

    opened by TheEpicBlock 2
  • Change quilt-to-intermediary saved file name to prevent Windows-based errors

    Change quilt-to-intermediary saved file name to prevent Windows-based errors

    If using Windows, the attempted previous name would fail because of the : character. My change grabs only the version rather than the entire artifact name to hopefully prevent crashes

    opened by sschr15 1
  • Avoid loom removing <init> parameters

    Avoid loom removing parameters

    Because loom switches the result mappings source namespace to intermediary, parameters are lost because intermediary doesn't contain the method. This change just completes intermediary with those names to keep them

    opened by ByMartrixx 0
  • Depend on loom 0.11

    Depend on loom 0.11

    No source changes were necessary, but net.fabricmc.loom.configuration.providers.MinecraftProvider being moved to net.fabricmc.loom.configuration.providers.minecraft.MinecraftProvider necessitated building against loom 0.11. I changed the version to 4.0.0 since I assume this breaks compatibility with loom 0.10.

    opened by leo60228 0
  • Update README.md

    Update README.md

    Adds new/current QMoL_VERSION to the table, however I'm not sure which loom version this corresponds to.

    I also figured it'd be a good idea to mention the necessary changes for gradle.properties - specifically since quilt_mappings is expected to be there (unless I'm misunderstanding something)

    opened by xanderstuff 4
Owner
null
Official Quilt template mod.

Quilt Template Mod The official Quilt template Mod. You can use it as a template for your own mods! Usage In order to use this mod as a template: Crea

null 32 May 7, 2022
Win32 and DirectX mappings for java using Project Panama. Ignore the C# tag, it's just reference code used for decompilation

JWin32 A Project Panama-based mapping + wrapper generator for win32 headers. IMPORTANT As of 0.5.0, no prebuilt jars will be provided. You must genera

FalsePattern 9 Nov 27, 2022
Echo client-server components to evaluate Project Loom virtual threads.

Overview Project Loom is the OpenJDK initiative to introduce user-mode threads in Java. The purpose of this repository is to compare Project Loom virt

Elliot Barlas 15 Nov 1, 2022
The first Java Actor System supporting fibers from Project Loom

Fibry Fibry is an experimental Actor System built to be simple and flexible. Hopefully, it will also be fun to use. Fibry is the first Java Actor Syst

Luca Venturi 196 Dec 26, 2022
A spring boot application for providing loom-ld services

LOOM-LD Structures sparql_based-linking It is a java project using maven to manage dependencies. loom-ld It is a spring boot application for providing

Ontology Engineering Group (UPM) 2 Apr 19, 2022
Experimenting with Project Loom

Project Loom Lab Experiments with Project Loom's features based on these JEP(draft)s: Structured Concurrency Virtual Threads Experiments For these exp

Nicolai Parlog 86 Dec 23, 2022
Experiments on how to add Loom support for Netty

Netty Loom Experiment This repository contains Project Loom and Netty related test code. Contents / Goals I created these examples since I was curious

Johannes Schüth 5 Oct 14, 2022
Async-Await support for Vertx using Project Loom

Vertx-Async-Await Async-Await support for Vertx using Project Loom. import static com.augustnagro.vertx.loom.AsyncAwait.async; import static com.augus

August Nagro 21 Jun 9, 2022
Add a partial Coeffect system into Java using Loom's ExtentLocals

Coeffect Add a partial Coeffect system into Java using Loom's ExtentLocals. In Java there are generally 2 strategies to manage the parameters a method

Holo 12 Sep 9, 2022
Helidon Níma Example - Loom based webserver

helidon-nima-example Helidon Níma Example - Loom based webserver This example is built on top of an ALPHA-1 release of Helidon 4. Alpha releases serve

Tomas Langer 30 Dec 16, 2022
A distributed lock that supports the use of Redis and Zookeeper, out of the box, fast and easy to use

lock-spring-boot-starter A distributed lock that supports the use of Redis and Zookeeper, out of the box, fast and easy to use 一款基于 Redis 和 Zookeeper

Pear Stack 9 Oct 15, 2022
Spring-Boot-Plus is a easy-to-use, high-speed, high-efficient,feature-rich, open source spring boot scaffolding

Everyone can develop projects independently, quickly and efficiently! What is spring-boot-plus? A easy-to-use, high-speed, high-efficient, feature-ric

geekidea 2.3k Dec 31, 2022
Saga pattern with Java => order -> payment -> stock microservices are ready to use

Order_Payment_Stock_Saga_Pattern Saga pattern with Java => order -> payment -> stock microservices are ready to use Docker-compose.yaml You can see th

Gurkan İlleez 5 Dec 27, 2022
Mint 0.1.1 public release, HWID System removed. Feel free to use. (Note: for all of u thinking its ratted; its not.)

Mint By: zPrestige_ | ! zPrestige_#1514 | git Kambing | dragonhacker32_#3091 | git FB | FB#7334 | git ZenovJB | Zenov#0603 | git Support no support No

null 17 Dec 2, 2022
Don't use this maliciously, this is for testing

log4j-exploit-example Don't use this maliciously, this is for testing Specifically for testing within Minecraft, but this will probably work on other

fizzdev 7 Dec 25, 2021
A simple app to use Xposed without root, unlock the bootloader or modify system image, etc.

中文文档 Introduction VirtualXposed is a simple App based on VirtualApp and epic that allows you to use an Xposed Module without needing to root, unlock t

VirtualXposed 14k Jan 8, 2023
An Android library for managing images and the memory they use.

Fresco Fresco is a powerful system for displaying images in Android applications. Fresco takes care of image loading and display, so you don't have to

Meta 16.9k Jan 3, 2023
AndroidX Media is a collection of libraries for implementing media use cases on Android

AndroidX Media AndroidX Media is a collection of libraries for implementing media use cases on Android, including local playback (via ExoPlayer) and m

Android Jetpack 311 Jan 1, 2023
Logout4Shell - Use Log4Shell vulnerability to vaccinate a victim server against Log4Shell

Logout4Shell Description A vulnerability impacting Apache Log4j versions 2.0 through 2.14.1 was disclosed on the project’s Github on December 9, 2021.

Cybereason 1.7k Jan 3, 2023