@Markg546 opened this Issue on February 8th 2021

Description

The bug occurs when clicking text generated by another fabric mod (for example baritone), instead of executing, it spits out the command in chat. It is wurst specific as (for example britone) works without a problem without wurst.
Interested why it happens though...

Steps To Reproduce

Please make a list of steps to reproduce the problem (ideally from a fresh Wurst installation):

  1. Have wurst and baritone installed on fabric
  2. Press any clickable text generated
  3. Watch it spit out the command in chat instead of executing it

Screenshots / Videos (Optional)

image
image

Crash Report

Don't think the crash report will help, but just in case.

---- Minecraft Crash Report ----
// I let you down. Sorry :(

Time: 2/8/21 8:50 PM
Description: Manually triggered debug crash

java.lang.Throwable
    at net.minecraft.class_309.method_1474(class_309.java:458)
    at net.minecraft.class_310.method_1574(class_310.java:1609)
    at net.minecraft.class_310.method_1523(class_310.java:1021)
    at net.minecraft.class_310.method_1514(class_310.java:681)
    at net.minecraft.client.main.Main.main(Main.java:215)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:226)
    at net.fabricmc.loader.launch.knot.Knot.init(Knot.java:139)
    at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:27)

A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Render thread
Stacktrace:
    at net.minecraft.class_309.method_1474(class_309.java:458)

-- Affected level --
Details:
    All players: 1 total; [class_746['Rajmika'/135, l='ClientLevel', x=-142.62, y=72.28, z=-66.58]]
    Chunk stats: Client Chunk Cache: 625, 441
    Level dimension: minecraft:overworld
    Level spawn location: World: (-144,67,-66), Chunk: (at 0,4,14 in -9,-5; contains blocks -144,0,-80 to -129,255,-65), Region: (-1,-1; contains chunks -32,-32 to -1,-1, blocks -512,0,-512 to -1,255,-1)
    Level time: 223986 game time, 201278 day time
    Server brand: fabric
    Server type: Integrated singleplayer server
Stacktrace:
    at net.minecraft.class_638.method_8538(class_638.java:449)
    at net.minecraft.class_310.method_1587(class_310.java:2239)
    at net.minecraft.class_310.method_1514(class_310.java:699)
    at net.minecraft.client.main.Main.main(Main.java:215)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:226)
    at net.fabricmc.loader.launch.knot.Knot.init(Knot.java:139)
    at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:27)

-- System Details --
Details:
    Minecraft Version: 1.16.5
    Minecraft Version ID: 1.16.5
    Operating System: Windows 10 (amd64) version 10.0
    Java Version: 1.8.0_51, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 1819328320 bytes (1735 MB) / 2818572288 bytes (2688 MB) up to 6442450944 bytes (6144 MB)
    CPUs: 4
    JVM Flags: 9 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx6G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M
    Fabric Mods: 
        baritone: Baritone 1.6.3
        fabric: Fabric API 0.30.0+1.16
        fabric-api-base: Fabric API Base 0.2.0+daa38b3d7d
        fabric-biome-api-v1: Fabric Biome API (v1) 3.1.1+ca58154a7d
        fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.5+ca58154a7d
        fabric-command-api-v1: Fabric Command API (v1) 1.0.10+ca58154a7d
        fabric-commands-v0: Fabric Commands (v0) 0.2.2+ca58154a7d
        fabric-containers-v0: Fabric Containers (v0) 0.1.10+ca58154a7d
        fabric-content-registries-v0: Fabric Content Registries (v0) 0.2.1+ca58154a7d
        fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.1.3+ca58154a7d
        fabric-dimensions-v1: fabric-dimensions-v1 2.0.2+ca58154a7d
        fabric-entity-events-v1: Fabric Entity Events (v1) 1.0.3+ca58154a7d
        fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.4.2+ca58154a7d
        fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.1+ca58154a7d
        fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.6+ca58154a7d
        fabric-item-api-v1: Fabric Item API (v1) 1.2.1+ca58154a7d
        fabric-item-groups-v0: Fabric Item Groups (v0) 0.2.3+ca58154a7d
        fabric-key-binding-api-v1: Fabric Key Binding API (v1) 1.0.2+ca58154a7d
        fabric-keybindings-v0: Fabric Key Bindings (v0) 0.2.1+ca58154a7d
        fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 1.2.1+ca58154a7d
        fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.0.2+ca58154a7d
        fabric-mining-levels-v0: Fabric Mining Levels (v0) 0.1.3+ca58154a7d
        fabric-models-v0: Fabric Models (v0) 0.2.1+ca58154a7d
        fabric-networking-api-v1: Fabric Networking API (v1) 1.0.1+ca58154a7d
        fabric-networking-blockentity-v0: Fabric Networking Block Entity (v0) 0.2.8+ca58154a7d
        fabric-networking-v0: Fabric Networking (v0) 0.3.2+ca58154a7d
        fabric-object-builder-api-v1: Fabric Object Builder API (v1) 1.9.3+ca58154a7d
        fabric-object-builders-v0: Fabric Object Builders (v0) 0.7.2+ca58154a7d
        fabric-particles-v1: Fabric Particles (v1) 0.2.4+ca58154a7d
        fabric-registry-sync-v0: Fabric Registry Sync (v0) 0.7.4+ca58154a7d
        fabric-renderer-api-v1: Fabric Renderer API (v1) 0.4.1+ca58154a7d
        fabric-renderer-indigo: Fabric Renderer - Indigo 0.4.4+ca58154a7d
        fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 2.2.1+ca58154a7d
        fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.1.5+ca58154a7d
        fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 0.1.13+ca58154a7d
        fabric-rendering-v0: Fabric Rendering (v0) 1.1.2+ca58154a7d
        fabric-rendering-v1: Fabric Rendering (v1) 1.5.1+ca58154a7d
        fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.4.2+ca58154a7d
        fabric-screen-api-v1: Fabric Screen API (v1) 1.0.0+c045166c7d
        fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.1.1+ca58154a7d
        fabric-structure-api-v1: Fabric Structure API (v1) 1.1.4+ca58154a7d
        fabric-tag-extensions-v0: Fabric Tag Extensions (v0) 1.1.1+ca58154a7d
        fabric-textures-v0: Fabric Textures (v0) 1.0.6+ca58154a7d
        fabric-tool-attribute-api-v1: Fabric Tool Attribute API (v1) 1.2.6+ca58154a7d
        fabricloader: Fabric Loader 0.11.1
        java: Java HotSpot(TM) 64-Bit Server VM 8
        minecraft: Minecraft 1.16.5
        wurst: Wurst Client v7.11-MC1.16.5
    Launched Version: fabric-loader-0.11.1-1.16.5
    Backend library: LWJGL version 3.2.2 build 10
    Backend API: Intel(R) HD Graphics 4000 GL version 4.0.0 - Build 10.18.10.5129, Intel
    GL Caps: Using framebuffer using OpenGL 3.0
    Using VBOs: Yes
    Is Modded: Definitely; Client brand changed to 'fabric'
    Type: Client (map_client.txt)
    Graphics mode: fast
    Resource Packs: Fabric Mods
    Current Language: English (US)
    CPU: 4x Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz
@JamesTheAwesomeDude commented on March 14th 2021 Contributor

I can also confirm that this issue affects the Xaero × Baritone integration. It works flawlessly without Wurst installed, but if I install Wurst then trying to travel to a waypoint just dumps #goto 123 45 6789 in chat

@Soulevoker commented on April 12th 2021

I found the source of this bug. I need to perform some more tests before I open a PR, but it fixes both Baritone menu clicking, and the Xaero integration. I have a strong suspicion that the code causing this bug doesn't affect anything negatively once removed.

@ThisTestUser commented on April 12th 2021 Contributor

The bug is caused by #120. The problem is that servers can also use clickable text (#94) to see if a player has certain clients installed or not.

@Soulevoker commented on April 12th 2021

I think I have a workaround for that. How do you suggest I test those server anticheat methods locally?

@ThisTestUser commented on April 13th 2021 Contributor
@AndrewBruhMoment commented on April 13th 2021

I think I have a workaround for that. How do you suggest I test those server anticheat methods locally?

You can install the plugins featured in the above comment onto a free temporary aternos server. Would recommend doing this instead of going through the hassle of running your own server, as you can add these plugins either through their built-in menu, or the FTP.

@Soulevoker commented on April 14th 2021

Alright, after testing some plugins, and decompiling old ones, I have two "okay-ish" workarounds for this.

The baritone menu clicking solution only solves menu clicking due to baritone's "Force Command" system. To be honest, I think their system is quite badass and nearly impossible to detect with an anti-cheat plugin.

The second, more broad solution will block cheat detection like the captcha above, but only for Wurst commands, and if click commands are ever implemented, this will prevent them from working, unless a similar system to Baritone's "Force Command" system is implemented. It will also restore the ability to click baritone commands, and allows Xaero's Map waypoint command to "goto" the coords.

Let me open a draft PR with these two solutions. Be aware that the draft might be messy to look at, but will only serve the purpose for open debate and critique.

@Soulevoker commented on April 14th 2021
@lntel commented on October 8th 2021

Has anything come of this? Still experiencing this issue with 7.17.1