Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.20.4 support #15

Closed
PukPukov opened this issue Sep 22, 2023 · 6 comments
Closed

1.20.4 support #15

PukPukov opened this issue Sep 22, 2023 · 6 comments

Comments

@PukPukov
Copy link

No description provided.

@kb-1000
Copy link
Owner

kb-1000 commented Sep 22, 2023

If it's not working for you, could you please post a log/crash report?

@ghost
Copy link

ghost commented Dec 7, 2023

@kb-1000 1.20.2 was working for me, however 1.20.4 doesn't start with:

fabric-api-0.91.1+1.20.4.jar
fabric-loader-0.15.0
no-telemetry-1.7.0.jar

It throws the 255 Exit Code with this error:

The game crashed whilst initializing game
Error: java.lang.RuntimeException: Mixin transformation of net.minecraft.class_6628 failed

@TheMrEngMan
Copy link

Minecraft 1.20.3 seems to have changed the way telemetry is disabled in dev builds.

net.minecraft.client.session.telemetry.TelemetryManager:

private TelemetrySender computeSender() {
    if (!this.client.isTelemetryEnabledByApi()) {
        return TelemetrySender.NOOP;
    }
    ...
}

I believe the new mixin should be:

@Mixin(targets = "net.minecraft.client.session.telemetry.TelemetryManager")
@Environment(EnvType.CLIENT)
public class TelemetryManagerMixin {
    @Redirect(method = "Lnet/minecraft/client/session/telemetry/TelemetryManager;computeSender", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/MinecraftClient;isTelemetryEnabledByApi()Z"), remap = true)
    private boolean disableTelemetrySession(MinecraftClient instance) {
        return false;
    }
}

I am not quite sure how to integrate this into the current system with the pre and post mixins, so leaving this as a comment instead of a PR for @kb-1000

@kb-1000
Copy link
Owner

kb-1000 commented Dec 10, 2023

The pre/post mixin split right now is because mojmap changed the package of TelemetryManager in 1.19.3, which breaks binary compatibility on Forge so I need a second mixin class to make a separate refmap entry.
The new change doesn't need a new mixin class, just an additional injector in the current mixin class, and a group to ensure one of them injects successfully. I'm working on that rn.

@PukPukov PukPukov changed the title 1.20.2 support 1.20.4 support Dec 10, 2023
@ChildishGiant
Copy link

Is this getting a release tag on git or a publishing on modrinth etc? For now it can be installed from the workflow build: https://github.com/kb-1000/no-telemetry/actions/runs/7172504788

@kb-1000
Copy link
Owner

kb-1000 commented Dec 14, 2023

I was looking into adding NeoForge support as well before releasing 1.8.0, but maybe I should drop that idea for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants