Описание
# ModSync
## Why should you use ModSync?
ModSync is a client-server setup that adds transparency to the client's Mods and Texture packs.
Here are more ways ModSync might turn out helpful:
- **Anti-Cheat:** Instead of the server running continuous checks for cheats, ModSync presents a 1 time check solution. ModSync doesn't just check your mod directory; It checks all the threads running inside Minecraft.
- **Auto-Authorisation:** No need for fancy auth plugins, ModSync generates a unique authorisation key for every device. This will link with the player's username once he joins the server. If someone with a different key tries to log in with the user's account, ModSync will kick them for a mismatched auth key.
- **Modlist & Packlist:** All the Mods and Texture packs installed on the client will be listed in the username's log file.
- **Screenshot Player's Gamescreen:** Admins can use a command to take a screenshot of screenshots of players gamescreen to ensure texture pack legitimacy. (mainly used to detect Xray packs)
## 🛡️ Core Security
ModSync doesn't just "ask" the client for a list; it uses a secure challenge-response handshake:
**Dynamic Hashing:** Every handshake is secured with SHA-512 using a server-side pepper and a unique challenge UUID to prevent packet spoofing.
**Privacy-First:** Players are prompted to agree to data reporting on their first join, ensuring compliance with privacy standards.
## ⚙️ Technical Features
**Categorized Resource Reporting:** Unlike basic list-reporters, ModSync distinguishes between Active (enabled), Inactive (in folder), and Deleted resource packs.
**Intelligent Mod Consolidation:** Automatically collapses library dependencies (like fabric-api sub-modules) into single entries to keep admin modlists readable.
**Historical Audit Logs:** Every player gets a dedicated .yml log tracking their mod/pack history across sessions—including timestamps of when a mod was removed.
**Remote Diagnostics:** Admins can request remote screenshots or even "dump" specific mod/pack files directly from a client to verify suspicious files.
**Bedrock Support:** Native compatibility with Geyser/Floodgate to skip verification for Bedrock players while maintaining strict security for Java players.
## 💻 Commands
_**/modsync modlist **_ – View all installed mods (filtered to remove library noise).
_**/modsync packlist **_ – View active vs. inactive resource packs.
_**/modsync screenshot **_ – Request a secure remote screenshot.
_**/modsync dump **_ – Download a specific file from the player's client for inspection.
_**/modsync authreset **_ – Reset the hardware ID link for a player.
_**/modsync reload**_ – Hot-reload all configurations and banned/required lists.
## 🚀 Setup
1. Install the **Plugin** on your Spigot/Paper server.
2. Install the **Mod** on your Fabric client.
3. Configure your **_required-mods_** and banned-mods in the server's **_config.yml_**.
_Developed by Dark_Yoddha — Built for Integrity._