Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Links
Tags
Creators
Details
Overview
Server Eye is a Mod designed for Forge and NeoForge, giving Server Owners the ability to Blacklist certian modIds to prevent Players with these Mods from joining the Server.
How does this work?
Once a Player connects to your Server, the Client of Server Eye will send all Mod Data to the Server, which will the be compared to the Blacklist set in server_eye-common.toml. If a modId matches, the Player will be kicked from the Server, asking them to remove the Mod.
Best use-case
I personally recommend doing this, as it is an ideal outcome.
The best use case by far is if your Server is Modded and has a Modpack! You can just add Server Eye to the Modpack, so Players do not have to install it manually.
Then, simply put Server Eye on the Server's end, configure it to match your needs, Blacklist some Mods via there modId and you should be good to go.
Heads up!
I made this Mod for my Server, and only published it in the hoppes that people may find it useful. Server Eye is not perfect, but I will try to maintain the Project as best as I can.
Configuration
You can find Server Eye's Config under Files > Config > server_eye-common.toml
Blacklisting Mods
blacklistedMods
blacklistedMods is a list of modIds that you do not want your Players to use on your Server.
# This is how you add modIds
blacklistedMods = ["freecam", "xray"]
Where can I find a modId?
On Forge and NeoForge, you have an inbuild Mod Menu, just click on "Mods", and it will show a list of all Mods you currently have installed. You can click on any Mod listed within the Menu.
Right below the Mod'ss Version, you should be able to find something that says "ModID". A Mod's ID is always lowercase, so it should not be hard to find. You can see an example below.

This Screenshot was taken on NeoForge 1.21.1
Whitelisting Players
whitelistedPlayers
whitelistedPlayers is a list of Players which will skip the Mod checks that Server Eye does. This currently only Supports Usernames.
# This is how you add Players
whitelistedPlayers = ["Player1", "Player2"]
timeoutSeconds
timeoutSeconds
timeoutSeconds is the Duration where Server Eye waits for the Client to send its Modlist. If the Modlist is not send in the specified duration, the Player will be kicked for timing out.
This feature can be disabled by setting timeoutSeconds to 0
"logOnly" Mode
logOnly
logOnly will disable Players being kicked from the Server. If a Player joins with a Blacklisted Mod, it will be logged in the Console.
Commands
Server Eye has a few simple Commands, which can be accessed via /server_eye
viewMods
/server_eye viewMods
The /server_eye viewMods Command allows you to see all the Mods a Player currently has installed, once the Player has sent there Modlist.
reload
/server_eye reload
This Command is Forge exclusive! NeoForge checks for Config changes and applies them automatically.
The /server_eye reload Command will reload Server Eye's Config File, so you do not have to restart the Server when changing the Config.
Q&A
Fabric Support?
I have no plans to port this Project to Fabric. ClientID is an allot better alternative then what I created here. So if you want something simular for Fabric, use ClientID!
Is this Server-Side only?
No. there is no known methood to do so for Forge and NeoForge. You can get more detail below.
Can you make this a Plugin?
Yes, I could. I can make the Server-side of Server Eye a Plugin. But, it would still need its Client-side to work correctly. Players would still need to Download the Mod, even if it is a Plugin.
Even if there are methoods to do so without the Mod, they are not as reliable as a Plugin Mod pair, I do not have plans for any kind of Plugin Support.
Is Server Eye reliable?
Yes, it should be in most cases, but ofcourse, nothing is perfect. So, you cannot just add this and expect that if you Blacklist Freecam that your Players cannot use it anymore, there are ways to bypass Mods like Server Eye.


