PersonalDevelopment

Keeping Track of Mojang's Enforcement Actions

Mats
Mats
The king
Oct 21, 20259 minutes read
Keeping Track of Mojang's Enforcement Actions

Introduction

This article goes hand-in-hand with the Mojang blacklist check tool. If you want to skip the deep dive and just use the tool, go ahead!

Minecraft brings millions of players together every day in its thriving multiplayer scene. Anyone can spin up a server and build their own virtual world, complete with custom content if they have the coding skills.

But running a popular server isn't free. There are hosting costs, freelance developers and artists to hire, and the time investment of managing a team. Most server owners solve this by selling in-game perks for real money, turning their hobby into a business.

This usually creates a win-win situation. Server owners can expand their projects beyond what they could do alone, while players enjoy richer gaming experiences and support communities they love.

Unfortunately, not everyone plays fair. The law of large numbers guarantees that some communities will have shady or outright bad actors.

The shady side of Minecraft

Just because you can bring your wildest imagination to life in a game doesn't mean you should. But some people genuinely think otherwise.

The ability to monetize creative content attracts those who aren't interested in maintaining that win-win balance. There will always be parties trying to tip the scales in their favor. Mojang introduced mechanisms to fight back as early as 2016.

Minecraft has rules outlined in their EULA (End User License Agreement) that cover how players and server owners can legally use, distribute, and monetize the game. The main goal isn't to suppress creativity but to protect it, ensuring Minecraft remains fair and safe for everyone. Mojang doesn't want servers becoming pay-to-win factories or shady marketplaces where players buy their way to power. You can sell access, cosmetics, or perks, but selling gameplay advantages or anything that distorts the core player experience is strictly forbidden.

Beyond just gameplay fairness, Mojang has a responsibility to protect their intellectual property and maintain Minecraft's reputation. When servers exploit the game in harmful ways, whether through predatory monetization or inappropriate content, it reflects poorly on the Minecraft brand as a whole. Parents need to trust that when their kids join a Minecraft server, they're entering a safe environment.

To enforce this, Mojang introduced systems that can block servers violating these terms. If your server breaks the EULA, say by selling overpowered weapons or locking key features behind paywalls, it can get blacklisted. Players can't join unless they disable certain checks, which most won't bother doing.

EULA blocks and enforcement

The blacklist system has one characteristic that frustrates many: limited public transparency.

When a server gets blacklisted, players aren't told what happened. They just see a generic connection error, leaving them confused about what went wrong. The criteria Mojang uses to determine whether a server is a risk remain largely undisclosed, and nobody quite knows where the line is drawn.

The reporting mechanism adds another layer of complexity. Anyone can report servers directly through Mojang's form, opening the door to conflicts of interest. Competitors, disgruntled players, or bad actors can report any server for any reason, real or fabricated. There have been recent cases where this system may have been abused through faked evidence.

On the other hand, Mojang sometimes proactively reaches out to server owners based on their own findings, perhaps from spotting issues on public webstores. In these cases, they generally provide feedback and warnings in advance, giving owners a chance to correct problematic behavior.

Here's the thing though: Mojang's enforcement team isn't a PR department. Their job is to protect the Minecraft brand and ensure player safety, not to manage public opinion or provide detailed explanations for every decision. They don't need community approval to do their job effectively. Being transparent about every enforcement decision could actually undermine their efforts, giving bad actors a roadmap to avoid detection or turning blocklists into unintended advertising.

From a purely practical standpoint, they're doing what they need to do. The system works, even if it's not perfect. But the lack of visibility does create an information vacuum, and when people don't understand what's happening or why, speculation and misinformation rush in to fill that space.

Keeping track of enforcement actions

The community picks up where publishers drop the ball. This has been the case forever for Minecraft. Don't have an official modding API? Create your own (Bukkit). Not happy with game performance? Install performance mods. And frankly, I could keep going for ages.

Minecraft needs to fetch a list of blocked servers from somewhere to know what to allow. The @BlockedMCServers Twitter/X account (by Jackson and Marvin) had been the place to keep track of Mojang's enforcement actions since the feature was added. It would post hashes (because Mojang doesn't publish blocked servers in human readable form) and known hostnames within minutes, making it both a spicy drama source and a good way to stay informed. However, this project shut down in early 2025 with no clear successor.

The old X/Twitter accountThe old X/Twitter account

The challenge of mapping servers

Mojang doesn't keep a public list of blocked servers, only a list of hashes.

When you try to join a server, Minecraft calculates a few hashes for the connecting hostname and checks if any match Mojang's blocked list. Only then does it cause a vague client error.

Think of a hash as a one-way mathematical function that turns any text into a fixed length string of seemingly random characters. Mojang uses SHA-1, which always produces a 40 character hexadecimal output regardless of input length. For example, the server address "mc.example.com" might become "5303a76c19617a55ae2c2102319038f225fcc328."

Here's the catch: you can easily go from "mc.example.com" to its hash, but you cannot reverse the process. There's no mathematical way to take that hash and figure out the original server address. It's like putting something through a meat grinder. You can't un-grind it back into its original form.

This is exactly why Mojang chose this approach. If they published a readable list of blocked servers, it would be free advertising for the very communities they're trying to discourage. With hashes, the blocked list remains public (so the game can check it), but the actual server addresses stay hidden.

The only way to discover what a hash represents is through brute force: generating hashes for thousands of possible server addresses and hoping one matches. This makes maintaining a comprehensive mapping incredibly challenging. You need either a massive database of known servers to check against, or you need people to actively search for specific addresses, revealing matches one by one.

(the old Twitter account probably used a database where people would add their own translations from hashes to hostnames through crowdsourcing)

Building a new tool

This project came back onto my radar after some developments in the Dutch Minecraft server space. I wanted a place to keep track of what was happening, when, and how it developed over time. This eventually turned into my creatively named "Mojang blacklist check tool."

It works by periodically checking the list of hashes from Mojang and tracking additions and removals. This builds a version history timeline where we can not only check if a server is (or has been) blacklisted, but also see when it was unbanned, banned again, or changed to a broader address.

Activity timeline screenshotActivity timeline screenshot

This is fun, but showing random strings isn't very useful. That's where the mapper comes in.

Every time someone searches for a hostname, I check if it's already a known hash and gather its recent history if so. If it's unknown, I generate a dozen varieties and check their hashes. If any match, we've uncovered a new entry that can be saved and shown to everyone. The list gets pieced together one search at a time.

Timeline from the appTimeline from the app

Community response

I didn't expect much activity at first, but the tool has seen steady traffic with over 2,000 unique visitors in the first month alone. People are genuinely interested in tracking these enforcement actions, and it's rewarding to see the community engaging with it.

Not everyone is thrilled about the increased transparency though. One server owner reached out rather aggressively, demanding I take down a post about the project where their server was called out as well. While I understand the frustration of being blacklisted, I believe there's value in the community having access to this information.

What really validated the project was when Mojang's enforcement team reached out to me out of the blue to commend it. They personally love it and even provided feedback and offered to add test entries to help verify the tool's accuracy. It's reassuring to know that the people doing the actual enforcement work see value in what the community is building.

Email from Mojang enforcement team - I originally had the thread here, but they asked me to like, not do that.Email from Mojang enforcement team - I originally had the thread here, but they asked me to like, not do that.

I really do want to thank the Mojang enforcement team for their feedback, and special help testing this tool (they added and removed special test entries to verify accuracy, how cool is that!).

Conclusion

This tool exists because the community wanted visibility into something that affects them, even though Mojang has no obligation to provide it. Their enforcement team has a job to do: protecting the Minecraft brand and keeping players safe. They're not there to explain every decision or manage public relations, and frankly, they shouldn't have to be.

But that doesn't mean the community can't benefit from better information. When the official channels don't provide the level of detail people want, the community builds its own solutions. That's what makes Minecraft special. It's always been this way, from mods to performance tools to enforcement tracking.

The positive response from both users and Mojang's enforcement team shows that there's room for both approaches. Mojang can focus on doing their job effectively without the burden of constant public explanation, while community tools like this one can help fill the information gap for those who want to understand what's happening.

At the end of the day, everyone wants the same thing: a safer, fairer Minecraft ecosystem. Mojang enforces that through their systems, and tools like this help the community understand and navigate those systems. It's not about demanding transparency from those who don't owe it. It's about the community taking initiative to inform itself, as it always has.