(Github mirror) Minecraft Clientside Mod that adds specific stuff for Fabric.
fabricmc fabric-mod fabricmc-mod minecraft minecraft-mod fabric
0

Configure Feed

Select the types of activity you want to include in your feed.

Add "billboarded nametags" feature that does what it says

Lukiiy (Jul 4, 2026, 8:01 PM -0300) 29acb8bb 9a2ff04e

+28
+1
src/main/java/me/lukiiy/lysten/client/IngameConfScreen.java
··· 99 99 100 100 addEntry(new CategoryEntry("misc")); 101 101 addEntry(new BooleanEntry(LystenClient.renderOwnNametag)); 102 + addEntry(new BooleanEntry(LystenClient.billboardedNametags)); 102 103 addEntry(new StringEntry(LystenClient.containerExtra, true)); 103 104 addEntry(new BooleanEntry(LystenClient.containerExtraPause)); 104 105 addEntry(new BooleanEntry(LystenClient.renderStuckArtifacts));
+1
src/main/java/me/lukiiy/lysten/client/LystenClient.java
··· 45 45 public static ConfigKey<Boolean> renderNamesInF1 = ConfigKey.bool("unhideGuiRenderNames", false); 46 46 public static ConfigKey<Boolean> renderHandInF1 = ConfigKey.bool("unhideGuiHands", false); 47 47 public static ConfigKey<Boolean> capeHitTint = ConfigKey.bool("capeHitTint", false); 48 + public static ConfigKey<Boolean> billboardedNametags = ConfigKey.bool("billboardedNametags", false); 48 49 49 50 public static int vanillaHitColor = -1291911168; 50 51
+25
src/main/java/me/lukiiy/lysten/mixin/NameTagFeatureStorageMixin.java
··· 1 + package me.lukiiy.lysten.mixin; 2 + 3 + import com.llamalad7.mixinextras.injector.wrapoperation.Operation; 4 + import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; 5 + import com.mojang.blaze3d.vertex.PoseStack; 6 + import me.lukiiy.lysten.client.LystenClient; 7 + import net.minecraft.client.Minecraft; 8 + import net.minecraft.client.renderer.feature.NameTagFeatureRenderer; 9 + import org.joml.Quaternionf; 10 + import org.joml.Quaternionfc; 11 + import org.spongepowered.asm.mixin.Mixin; 12 + import org.spongepowered.asm.mixin.injection.At; 13 + 14 + @Mixin(NameTagFeatureRenderer.Storage.class) 15 + public class NameTagFeatureStorageMixin { 16 + @WrapOperation(method = "add", at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/vertex/PoseStack;mulPose(Lorg/joml/Quaternionfc;)V", ordinal = 0)) 17 + private void lysten$billboard(PoseStack instance, Quaternionfc quaternionfc, Operation<Void> original) { 18 + if (!LystenClient.billboardedNametags.get()) { 19 + original.call(instance, quaternionfc); 20 + return; 21 + } 22 + 23 + original.call(instance, new Quaternionf().rotationY((float) Math.toRadians(180 - Minecraft.getInstance().getEntityRenderDispatcher().camera.yRot()))); 24 + } 25 + }
+1
src/main/resources/lysten.mixins.json
··· 21 21 "LevelRendererMixin", 22 22 "LivingEntityRendererMixin", 23 23 "MinecraftMixin", 24 + "NameTagFeatureStorageMixin", 24 25 "NametagRendererMixin", 25 26 "ParticleAccessor", 26 27 "PauseMixin",