Back to mods
ModIntegrity — allowlist client-only mods project artwork

Vintage Story Mod DB · Vintage Story mod

ModIntegrity — allowlist client-only mods

Helps ensure that the client uses only mods approved by the server. It's intended for modpack authors or server owners to restrict which client-only mods their players can use. Mods are checked by mod ID, version, source type (e.g. "zip"), and MD5 fingerprint.

Choose a version Pick your version below, then grab the matching file.

Quick answer

Which ModIntegrity — allowlist client-only mods release should I use?

Updated 5 years ago
Latest stable file 0.2.0
Game version 1.14.8
Loader Built-in Vintage Story mod system

ModIntegrity — allowlist client-only mods 0.2.0 targets 1.14.8. It must be installed on the client. Installation on the dedicated server is optional. No extra mods listed for this file.

Where it goes

Is ModIntegrity — allowlist client-only mods required on the client, server, or both?

It must be installed on the client. Installation on the dedicated server is optional.

Client Required
Dedicated server Optional
Loader for this release Built-in Vintage Story mod system
Required install it here Optional supported, not mandatory Not supported do not install here Source doesn’t say do not assume

This release supports both sides, but the source does not require it on the server.

What else does ModIntegrity — allowlist client-only mods 0.2.0 need?

0.2.0. Change the file and its required mods may change too.

No extra mods listed for this file

This file does not list any required mods. Do not add a library just because a different file uses it.

This file does not list any required or optional mods.

Before you install it

Add ModIntegrity — allowlist client-only mods without breaking your instance.

Built for ModIntegrity — allowlist client-only mods 0.2.0. Pick another file and the loader, install side or required mods may change.

  1. 01

    Stick to this file

    Use 0.2.0. It targets 1.14.8; another release may have different loader, side or dependency requirements.

  2. 02

    Bring the mods it needs

    This file does not list any required mods. Do not add a library just because a different file uses it.

  3. 03

    Put it on the correct side

    It must be installed on the client. Installation on the dedicated server is optional.

  4. 04

    Pick the file you checked

    Use the “Get this file” button beside 0.2.0. It opens that exact file at the source.

About this project

What does ModIntegrity — allowlist client-only mods add?

Helps ensure that the client uses only mods approved by the server. It's intended for modpack authors or server owners to restrict which client-only mods their players can use. Mods are checked by mod ID, version, source type (e.g. "zip"), and MD5 fingerprint.

How It Works

The client, upon joining, sends a report of all of its enabled mods to the server, including any enabled client-only mods. MD5 fingerprints of the mods' files/folders are included (don't worry, it's very fast.) The server checks that the report matches the mods that it's running, plus any client-only mods which have been allowlisted in its config JSON file. If any mods don't match, the player is disconnected with a helpful message which lists which mods caused problems and hints about how to fix things (see below.)

To make things easier for modpack authors or server owners, a command /modintegrityapprove can be used to easily add all mods that someone was just kicked for. Getting yourself kicked and using this feature is the easiest way to allowlist the client-only mods in your modpack, as a server owner. Just join your own server, get kicked, then copy-paste the /modintegrityapprove myPlayerUID command from the server console to add all your enabled client-side mods.

Disconnect Messages

Examples of the 4 types of mod issues:

  • Unrecognized or banned mod "Make Ice Unslippery" — please disable this mod using the in-game Mod Manager.
  • Unrecognized or banned version "0.0.1" for mod "Autopottery" — please update to a known good version, such as: 1.0.0
  • Unrecognized or banned source type "DLL" for mod "Drifter Googly Eyes" — please update this mod to use a known good source type, such as: Zip
  • Unrecognized or banned fingerprint for mod "Secret Drift Wolves" — please update this mod with a freshly downloaded copy.

The message "Please contact the server owner with any problems or to request new mods." can be customized in %appdata%/VintagestoryData/ModConfig/ModIntegrity.json. You should may want to add your own contact information!

Primary Motivation

Some client-only mods give players an advantage which doesn't match the intended gameplay of a modpack author or server owner. For example, some client-only mods can expose coordinates (which isn't supposed to be allowed on Wilderness Survival playstyle) or show where enemies are through walls. There's probably an X-ray mod out there too...

Caveats

Doesn't verify any client-side files outside of the mods' source files, so any mod config JSON files can be tampered with, as well as any vanilla assets or dlls.

This is not exactly the most advanced anti-cheat system; however, it should stop "casual cheating". Players who want to cheat will need to explicitly circumvent this system, rather than innocently adding (or forgetting to remove) client-side mods.

Project description from Vintage Story Mod DB.

Pick your setup

ModIntegrity — allowlist client-only mods releases for each Vintage Story version.

Choose the version and loader you play, then open the matching release.

1 available setups

Check the dependencies, then try the file in a copied instance before changing a world you care about.

Recent files

ModIntegrity — allowlist client-only mods versions and loaders

1 of 1 releases match

Looking for an older file? The official Vintage Story Mod DB project page is in Resources.