Skip to content

Instantly share code, notes, and snippets.

View FxMorin's full-sized avatar
🎯
Focusing

Fx Morin FxMorin

🎯
Focusing
View GitHub Profile
@FxMorin
FxMorin / ScummyMods.md
Last active February 21, 2024 07:10 — forked from kyrptonaught/ScummyMods.md
The Scummy Behavior of mods that act like modpacks

Introduction

Let me start by clarifying that the following doesn't exclusively apply to Debugify, but they serve as an excellent illustration of the heinous behavior outlined in the following. The mods in question shall therefore be collectively referred to as "Scummy Mods".

Scummy Mods are mods that incorporate or outright copy foreign code bases, without permission from the original author. They commonly state to either "replace" or "include" the original work, if any mention is given at all. Developing a mod is not easy. Many mod creators sacrifice significant chunks of their personal time and resources to their creations, essentially for free. Curseforge offers a symbolic compensation for the hours poured, but it's usually insignificant and just a nice bonus.

The Problem

The majority of the original projects are still in development. Since the creators behind Scummy Mods typically do not understand the code they copied to begin with, they lack the knowledge required to eliminate the bugs that will

@Aizistral
Aizistral / AbsoluteStateOfChatReporting.md
Last active February 14, 2024 05:32
The Absolute State of Chat Reporting

The Absolute State of Chat Reporting

Originally introduced in 1.19.1, chat reporting has undergone many changes in Mojang's attempts to eliminate the exploits and make the system functional. The purpose of this paper is to document the current technical state of chat reporting on an ongoing basis, and to provide a reference for the community to use when discussing the system. To that end I will try to keep it as unbiased as possible.

The Basics

Chat reporting heavily relies on cryptographic commitments and signatures to ensure that reported chat messages are not tampered with. The basic idea is that all players sign their chat messages with their private key, and then send the signature along with the message to the server.

Chat signing keypair is not generated by the client as one could expect; instead, it is issued by Mojang's services and is tied to the player's account. This means that the keypair is shared between all clients that the player uses, and the player can't change it. The keypair is f