Description
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