Aizistral-Studios / No-Chat-Reports

Disable Player Chat Reporting and make user messages untrackable.
https://modrinth.com/mod/no-chat-reports
Do What The F*ck You Want To Public License
950 stars 78 forks source link

Detect signing requirement automatically #453

Closed Madis0 closed 10 months ago

Madis0 commented 11 months ago

Idea

Detect server's signing requirement without requiring the first message to be sent

Reasoning

Would make it faster to know the status and therefore make decisions based on it; simplify the indicator

Other Information

A competitor mod used this mixin to achieve this (1.20.4):

    @Inject(method = "onServerMetadata(Lnet/minecraft/network/packet/s2c/play/ServerMetadataS2CPacket;)V", at = @At("TAIL"))
    private void onServerMetaData(ServerMetadataS2CPacket packet, CallbackInfo info) {
        if (packet.isSecureChatEnforced()) {
            // implementation
        }
    }

I don't know why, but so far it appears to be spoof-proof, meaning it will not false alert on servers that hide the toast on vanilla clients, such as Hypixel and other viaversion ones.

Related: https://github.com/Aizistral-Studios/No-Chat-Reports/issues/437

https://discord.com/channels/757941072449241128/992979156767883375/1190552197101002884

Madis0 commented 10 months ago

Or [the server] can say signing is required and not refuse to process unsigned messages, likewise converting them to system

So this would still not be feasible.