Description

Server connection error screen: the player's shader or shader settings do not match the server's configuration. The error text suggests downloading the shader and shader settings from the specified link

Server Shader Gate & Enforcer (SSGE) – a client-side mod and server-side plugin that requires players to install a shader and use specific shader options to play on the server.

Upon connecting to the server, the SSGE client mod automatically sends its configuration data about the current shader and its settings to the server plugin. The server plugin compares the received data with its own configuration. If the data matches, the player is allowed onto the server. Otherwise, the connection is refused.

The mod requires Iris and Fabric API to work.

Сonfiguration

The configuration file of the mod – ssge_mod.json; the configuration file of the plugin for the server – ssge.yml

ssge_mod.json
{
  "shaderFile": "",
  "shaderOptions": "",
  "sizeShader": 0,
  "sizeOptions": 0,
  "enableShaders": false
}

This configuration is generated automatically when connected to the server and depends on the Iris settings: the switch on/off shader, selected shader file and selected shader settings

shaderFile – shaderpack file

shaderOptions – shader settings file. If the shader uses default settings, this string will be empty because the file will not exist.

sizeShader – shaderpack size in bytes.

sizeOptions – shader settings size in bytes. If the shader uses default settings, this value is 0.

enableShaders – shaders enabled/disabled switch

ssge.yml
require_enabled: true
shader_file: ''
shader_options: ''
size_shader: 0
size_options: 0
link: https://example.com/download-shader-with-config
require_shader: true
require_options: true

Generated automatically and requires further configuration to work properly.

require_enabled – shaders enabled/disabled switch

shader_file – shaderpack file

shader_options – shader settings file. If the shader uses default settings, this string will be empty because the file will not exist.

size_shader – shaderpack size in bytes.

size_options – shader settings size in bytes. If the shader uses default settings, this value is 0.

link – your link to download the shader and specific settings

require_shader – requires a specific shaderpack

require_options – requires specific shader settings

For example

Let's say we want all players on our server to play using thejinxedartist's MC VHS shader.

Then the plugin configuration can be like this:

require_enabled: true              <––
shader_file: 'MCVHSV2.zip'         <––  Required 
shader_options: 'MCVHSV2.zip.txt'  <––   values
size_shader: 275232                <––
size_options: 79                   <––
link: https://modrinth.com/shader/mc-vhs
require_shader: true
require_options: true

The mod configuration must match the plugin configuration and be like this:

{
  "shaderFile": "MCVHSV2.zip",
  "shaderOptions": "MCVHSV2.zip.txt",
  "sizeShader": 275232,
  "sizeOptions": 79,
  "enableShaders": true
}

If the player has a different configuration, the server will kick him. Also, the link for downloading the shader will be received from the plugin and saved in the file ssge_link.txt in the .minecraft/config folder


Project members

VolfLife

Owner

Details

Licensed ARR
Published 9 days ago
Updated 9 days ago