COWMODSКаталог модов
Geyser and Floodgate auto uploader

ВЕРСИИ (22)

release

Updater fixes, delayed restart & improved platform support

1.3
16 сент. 2026 г.4,6 тыс.Minecraft: 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3bungeecord
Скачать
Что нового
## GeyserUpdater 1.3 This release improves updater reliability, platform detection, and automatic restart handling. ### Added - Added `postUpdate.restartDelaySeconds` - Allows delaying the configured restart command after an update - Default: `0` seconds - Delayed automatic restart support for: - Paper / Spigot - BungeeCord - Velocity - Added platform-aware Geyser and Floodgate JAR detection - Added automatic detection to prevent GeyserUpdater itself from being mistaken for a Geyser JAR - Added automated tests for updater JAR detection and restart delay configuration ### Fixed - Fixed overly broad Geyser/Floodgate JAR matching - Fixed cases where unrelated or incorrectly named JAR files could be selected for replacement - Fixed GeyserUpdater potentially being detected as the plugin it was supposed to update - Fixed MCXboxBroadcast extension installation paths on proxy platforms - MCXboxBroadcast is now installed into the correct platform-specific Geyser extensions folder Examples: ```text Paper / Spigot: plugins/Geyser-Spigot/extensions BungeeCord: plugins/Geyser-BungeeCord/extensions Velocity: plugins/Geyser-Velocity/extensions ```` ### Automatic restart delay You can now configure a delay before the automatic restart command is executed: ```yaml postUpdate: runRestartCommand: true restartCommand: "restart" restartDelaySeconds: 60 ``` For BungeeCord, the restart command can for example be set to `end`. Negative restart delay values are automatically treated as `0`. ### Changed * Updated internal version information to `1.1.0` * Updated the HTTP User-Agent to `GeyserUpdater/1.1.0` * Improved resource handling while scanning plugin directories * Updated English and Japanese documentation for the new restart delay and platform-specific extension paths
release

Updater fixes, delayed restart & improved platform support

1.3
16 сент. 2026 г.346Minecraft: 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3velocity
Скачать
Что нового
## GeyserUpdater 1.3 This release improves updater reliability, platform detection, and automatic restart handling. ### Added - Added `postUpdate.restartDelaySeconds` - Allows delaying the configured restart command after an update - Default: `0` seconds - Delayed automatic restart support for: - Paper / Spigot - BungeeCord - Velocity - Added platform-aware Geyser and Floodgate JAR detection - Added automatic detection to prevent GeyserUpdater itself from being mistaken for a Geyser JAR - Added automated tests for updater JAR detection and restart delay configuration ### Fixed - Fixed overly broad Geyser/Floodgate JAR matching - Fixed cases where unrelated or incorrectly named JAR files could be selected for replacement - Fixed GeyserUpdater potentially being detected as the plugin it was supposed to update - Fixed MCXboxBroadcast extension installation paths on proxy platforms - MCXboxBroadcast is now installed into the correct platform-specific Geyser extensions folder Examples: ```text Paper / Spigot: plugins/Geyser-Spigot/extensions BungeeCord: plugins/Geyser-BungeeCord/extensions Velocity: plugins/Geyser-Velocity/extensions ```` ### Automatic restart delay You can now configure a delay before the automatic restart command is executed: ```yaml postUpdate: runRestartCommand: true restartCommand: "restart" restartDelaySeconds: 60 ``` For BungeeCord, the restart command can for example be set to `end`. Negative restart delay values are automatically treated as `0`. ### Changed * Updated internal version information to `1.1.0` * Updated the HTTP User-Agent to `GeyserUpdater/1.1.0` * Improved resource handling while scanning plugin directories * Updated English and Japanese documentation for the new restart delay and platform-specific extension paths
release

Updater fixes, delayed restart & improved platform support

1.3
16 сент. 2026 г.25,6 тыс.Minecraft: 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3paper, purpur, spigot
Скачать
Что нового
## GeyserUpdater 1.3 This release improves updater reliability, platform detection, and automatic restart handling. ### Added - Added `postUpdate.restartDelaySeconds` - Allows delaying the configured restart command after an update - Default: `0` seconds - Delayed automatic restart support for: - Paper / Spigot - BungeeCord - Velocity - Added platform-aware Geyser and Floodgate JAR detection - Added automatic detection to prevent GeyserUpdater itself from being mistaken for a Geyser JAR - Added automated tests for updater JAR detection and restart delay configuration ### Fixed - Fixed overly broad Geyser/Floodgate JAR matching - Fixed cases where unrelated or incorrectly named JAR files could be selected for replacement - Fixed GeyserUpdater potentially being detected as the plugin it was supposed to update - Fixed MCXboxBroadcast extension installation paths on proxy platforms - MCXboxBroadcast is now installed into the correct platform-specific Geyser extensions folder Examples: ```text Paper / Spigot: plugins/Geyser-Spigot/extensions BungeeCord: plugins/Geyser-BungeeCord/extensions Velocity: plugins/Geyser-Velocity/extensions ```` ### Automatic restart delay You can now configure a delay before the automatic restart command is executed: ```yaml postUpdate: runRestartCommand: true restartCommand: "restart" restartDelaySeconds: 60 ``` For BungeeCord, the restart command can for example be set to `end`. Negative restart delay values are automatically treated as `0`. ### Changed * Updated internal version information to `1.1.0` * Updated the HTTP User-Agent to `GeyserUpdater/1.1.0` * Improved resource handling while scanning plugin directories * Updated English and Japanese documentation for the new restart delay and platform-specific extension paths
release

Geyser and Floodgate auto uploader 1.0.1

1.2.2
17 июн. 2026 г.32,6 тыс.Minecraft: 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
suppots
release

Geyser and Floodgate auto uploader 1.0.1

1.2.2
17 июн. 2026 г.1,2 тыс.Minecraft: 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 26.2spigot
Скачать
Что нового
supports 26.2
release

Geyser and Floodgate auto uploader 1.1.2

1.1.2
17 июн. 2026 г.627Minecraft: 26.2velocity
Скачать
Что нового
supports 26.2
release

Geyser and Floodgate auto uploader 1.1.1

1.1.1
4 июн. 2026 г.1,5 тыс.Minecraft: 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bungeecord
Скачать
Что нового
## What's changed - Fixed an issue where MCXboxBroadcast was downloaded to the Geyser-Spigot extensions folder when running on Velocity. - On Velocity, MCXboxBroadcast is now correctly downloaded to the Geyser-Velocity extensions folder.
release

Geyser and Floodgate auto uploader 1.0.1

1.1.1
4 июн. 2026 г.219Minecraft: 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2velocity
Скачать
Что нового
## What's changed - Fixed an issue where MCXboxBroadcast was downloaded to the Geyser-Spigot extensions folder when running on Velocity. - On Velocity, MCXboxBroadcast is now correctly downloaded to the Geyser-Velocity extensions folder.
release

Geyser and Floodgate auto uploader 1.1.1

1.1.1
4 июн. 2026 г.18,2 тыс.Minecraft: 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, paper, purpur, spigot
Скачать
Что нового
## What's changed - Fixed an issue where MCXboxBroadcast was downloaded to the Geyser-Spigot extensions folder when running on Velocity. - On Velocity, MCXboxBroadcast is now correctly downloaded to the Geyser-Velocity extensions folder.
release

Geyser and foodgate auto uploader 1.0.1

1.1
13 апр. 2026 г.4,2 тыс.Minecraft: 26.1, 26.1.1, 26.1.2bungeecord
Скачать
Что нового
**Update summary** * Support for **26.1 2** has been added. * Known issues have been fixed. * Fixed an issue where only **Floodgate** was updated while **Geyser** and **BroadcastExtension** were downloaded but not replaced correctly. * Fixed an issue where update files remained in the temp folder instead of being moved to the server’s `plugins` folder. * Improved the reliability of the automatic update process after restart.
release

Geyser and foodgate auto uploader 1.0.1

1.1
13 апр. 2026 г.258Minecraft: 26.1, 26.1.1, 26.1.2velocity
Скачать
Что нового
**Update summary** * Support for **26.1 2** has been added. * Known issues have been fixed. * Fixed an issue where only **Floodgate** was updated while **Geyser** and **BroadcastExtension** were downloaded but not replaced correctly. * Fixed an issue where update files remained in the temp folder instead of being moved to the server’s `plugins` folder. * Improved the reliability of the automatic update process after restart.
release

Geyser and foodgate auto uploader 1.0.1

1.1
13 апр. 2026 г.15 тыс.Minecraft: 26.1-snapshot-1, 26.1-snapshot-2, 26.1-snapshot-3, 26.1-snapshot-4, 26.1-snapshot-5, 26.1-snapshot-6, 26.1-snapshot-7, 26.1-snapshot-8, 26.1-snapshot-9, 26.1-snapshot-10, 26.1-pre-2, 26.1-pre-3, 26.1-rc-1, 26.1-rc-2, 26.1-rc-3, 26.1, 26.1.1-rc-1, 26.1.1, 26w14a, 26.2-snapshot-1, 26.1.2-rc-1, 26.1.2, 26.2-snapshot-2paper, purpur, spigot
Скачать
Что нового
Update summary * Support for **26.1 2** has been added. * Known issues have been fixed. * Fixed an issue where only **Floodgate** was updated while **Geyser** and **BroadcastExtension** were downloaded but not replaced correctly. * Fixed an issue where update files remained in the temp folder instead of being moved to the server’s `plugins` folder. * Improved the reliability of the automatic update process after restart.
release

Supports multiple languages and mcbroadcast.

1.0.2
11 янв. 2026 г.4,4 тыс.Minecraft: 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bungeecord
Скачать
Что нового
Users who installed previous versions must delete config.yml located at plugins/geyseruploader/config.yml.
release

Supports multiple languages and mcbroadcast.

1.0.2
11 янв. 2026 г.26 тыс.Minecraft: 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur, spigot
Скачать
Что нового
Users who installed previous versions must delete config.yml located at plugins/geyseruploader/config.yml.
release

Supports multiple languages and mcbroadcast.

1.0.2
11 янв. 2026 г.326Minecraft: 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11velocity
Скачать
Что нового
Supports multiple languages and mcbroadcast.Users who installed previous versions must delete config.yml located at plugins/geyseruploader/config.yml
release

Geyser and foodgate auto uploader 1.0.1

1.0.1
21 окт. 2025 г.3,4 тыс.Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10velocity
Скачать
Что нового
Bug fixes.
release

Geyser and foodgate auto uploader 1.0.1

1.0.1
21 окт. 2025 г.85Minecraft: 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10bungeecord
Скачать
Что нового
Bug fixes.
release

Geyser and foodgate auto uploader 1.0.1

1.0.1
21 окт. 2025 г.7,1 тыс.Minecraft: 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10paper, purpur, spigot
Скачать
Что нового
Bug fixes.
release

Geyser and foodgate auto uploader 1.0.0

1.0.1
19 окт. 2025 г.143Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10bungeecord
Скачать
release

Geyser and foodgate auto uploader 1.0.0

1.0.0
23 авг. 2025 г.8,6 тыс.Minecraft: 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8paper, purpur, spigot
Скачать
Что нового
# GeyserUpdater An automatic updater plugin for GeyserMC / Floodgate. Supports Spigot (and forks like Paper), BungeeCord, and Velocity. ## Features - **Fetches the latest stable versions** of GeyserMC and Floodgate from the Jenkins/download API and overwrites the existing JARs in the plugins directory. - **Automatic Update Checks**: - On server startup. - At a specified interval (e.g., every 12 hours). - When a player with a specific permission logs in (can be enabled/disabled). - **Manual Command**: `/geyserupdate` (Permission: `geyserupdater.admin`). - Configurable messages, update targets, check intervals, and restart commands. ## Build - **Prerequisites**: Java 17, Maven 3.8+ - **Instructions**: - Run `mvn package` in the directory where you cloned the repository. - **Artifacts**: - `spigot/target/GeyserUpdater-Spigot-1.0.0.jar` - `bungee/target/GeyserUpdater-Bungee-1.0.0.jar` - `velocity/target/GeyserUpdater-Velocity-1.0.0.jar` ## Installation 1. Place the appropriate JAR for your server platform into the plugins folder. 2. Start the server to generate the `config.yml` file (it will be identical to the default config included in this README). 3. The plugin automatically detects existing Geyser / Floodgate JARs by searching for files in the plugins directory that contain "geyser" or "floodgate" in their names. - If no existing JARs are found, it will create new ones with standard names (e.g., `Geyser-Spigot.jar`, `floodgate-velocity.jar`). ## Commands & Permissions - **/geyserupdate** - **Description**: Immediately runs an update check. - **Permission**: `geyserupdater.admin` ## Configuration File (`config.yml`) - `enabled`: Enables or disables the plugin. - `checkOnStartup`: Enables or disables the update check on startup. - `periodic.enabled`: Enables or disables the periodic update check. - `periodic.intervalHours`: The interval for periodic checks (in hours). - `adminLogin.enabled`: Enables or disables the update check when a privileged player logs in. - `adminLogin.permission`: The permission that triggers the check on login (default: `geyserupdater.admin`). - `targets.geyser | targets.floodgate`: Choose which plugins to update. - `postUpdate.notifyConsole`: Notifies the console after an update. - `postUpdate.notifyPlayersWithPermission`: Sends an in-game chat notification to players with permission. - `postUpdate.runRestartCommand`: Automatically executes a restart command after an update. - `postUpdate.restartCommand`: The restart command to execute (e.g., `restart` or `end`). - `messages.*`: Customize the messages sent by the plugin. ## How it Works - **Download URLs**: - Geyser: `https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/downloads/{platform}` - Floodgate: `https://download.geysermc.org/v2/projects/floodgate/versions/latest/builds/latest/downloads/{platform}` - `{platform}` is replaced with `spigot`, `bungeecord`, or `velocity`. - The latest JAR is downloaded to a temporary file and its SHA-256 hash is compared with the existing JAR. - If the hashes are identical, it is considered "up to date," and the file is not replaced. - If they differ, the existing file is overwritten using an atomic replacement operation. - A server or proxy restart is required after an update is applied. - To enable automatic restarts, set `postUpdate.runRestartCommand` to true and configure the `restartCommand` to match your server's environment. ## Notes / Known Limitations - If a download fails due to network issues or other errors, the existing plugin files will not be affected. - The plugin cannot detect Geyser/Floodgate files if they have unusual names or are not located directly within the plugins folder (it only scans for `*.jar` files in the root of the plugins directory). - The plugin does not display version numbers; it relies solely on hash comparison to determine if an update is available. ## License A license (e.g., MIT) can be added upon request.
release

Geyser and foodgate auto uploader 1.0.0

1.0.0
23 авг. 2025 г.98Minecraft: 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8velocity
Скачать
Что нового
# GeyserUpdater An automatic updater plugin for GeyserMC / Floodgate. Supports Spigot (and forks like Paper), BungeeCord, and Velocity. ## Features - **Fetches the latest stable versions** of GeyserMC and Floodgate from the Jenkins/download API and overwrites the existing JARs in the plugins directory. - **Automatic Update Checks**: - On server startup. - At a specified interval (e.g., every 12 hours). - When a player with a specific permission logs in (can be enabled/disabled). - **Manual Command**: `/geyserupdate` (Permission: `geyserupdater.admin`). - Configurable messages, update targets, check intervals, and restart commands. ## Build - **Prerequisites**: Java 17, Maven 3.8+ - **Instructions**: - Run `mvn package` in the directory where you cloned the repository. - **Artifacts**: - `spigot/target/GeyserUpdater-Spigot-1.0.0.jar` - `bungee/target/GeyserUpdater-Bungee-1.0.0.jar` - `velocity/target/GeyserUpdater-Velocity-1.0.0.jar` ## Installation 1. Place the appropriate JAR for your server platform into the plugins folder. 2. Start the server to generate the `config.yml` file (it will be identical to the default config included in this README). 3. The plugin automatically detects existing Geyser / Floodgate JARs by searching for files in the plugins directory that contain "geyser" or "floodgate" in their names. - If no existing JARs are found, it will create new ones with standard names (e.g., `Geyser-Spigot.jar`, `floodgate-velocity.jar`). ## Commands & Permissions - **/geyserupdate** - **Description**: Immediately runs an update check. - **Permission**: `geyserupdater.admin` ## Configuration File (`config.yml`) - `enabled`: Enables or disables the plugin. - `checkOnStartup`: Enables or disables the update check on startup. - `periodic.enabled`: Enables or disables the periodic update check. - `periodic.intervalHours`: The interval for periodic checks (in hours). - `adminLogin.enabled`: Enables or disables the update check when a privileged player logs in. - `adminLogin.permission`: The permission that triggers the check on login (default: `geyserupdater.admin`). - `targets.geyser | targets.floodgate`: Choose which plugins to update. - `postUpdate.notifyConsole`: Notifies the console after an update. - `postUpdate.notifyPlayersWithPermission`: Sends an in-game chat notification to players with permission. - `postUpdate.runRestartCommand`: Automatically executes a restart command after an update. - `postUpdate.restartCommand`: The restart command to execute (e.g., `restart` or `end`). - `messages.*`: Customize the messages sent by the plugin. ## How it Works - **Download URLs**: - Geyser: `https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/downloads/{platform}` - Floodgate: `https://download.geysermc.org/v2/projects/floodgate/versions/latest/builds/latest/downloads/{platform}` - `{platform}` is replaced with `spigot`, `bungeecord`, or `velocity`. - The latest JAR is downloaded to a temporary file and its SHA-256 hash is compared with the existing JAR. - If the hashes are identical, it is considered "up to date," and the file is not replaced. - If they differ, the existing file is overwritten using an atomic replacement operation. - A server or proxy restart is required after an update is applied. - To enable automatic restarts, set `postUpdate.runRestartCommand` to true and configure the `restartCommand` to match your server's environment. ## Notes / Known Limitations - If a download fails due to network issues or other errors, the existing plugin files will not be affected. - The plugin cannot detect Geyser/Floodgate files if they have unusual names or are not located directly within the plugins folder (it only scans for `*.jar` files in the root of the plugins directory). - The plugin does not display version numbers; it relies solely on hash comparison to determine if an update is available. ## License A license (e.g., MIT) can be added upon request.
release

Geyser and foodgate auto uploader 1.0.0

1.0.0
23 авг. 2025 г.68Minecraft: 25w34bbungeecord
Скачать
Что нового
# GeyserUpdater An automatic updater plugin for GeyserMC / Floodgate. Supports Spigot (and forks like Paper), BungeeCord, and Velocity. ## Features - **Fetches the latest stable versions** of GeyserMC and Floodgate from the Jenkins/download API and overwrites the existing JARs in the plugins directory. - **Automatic Update Checks**: - On server startup. - At a specified interval (e.g., every 12 hours). - When a player with a specific permission logs in (can be enabled/disabled). - **Manual Command**: `/geyserupdate` (Permission: `geyserupdater.admin`). - Configurable messages, update targets, check intervals, and restart commands. ## Build - **Prerequisites**: Java 17, Maven 3.8+ - **Instructions**: - Run `mvn package` in the directory where you cloned the repository. - **Artifacts**: - `spigot/target/GeyserUpdater-Spigot-1.0.0.jar` - `bungee/target/GeyserUpdater-Bungee-1.0.0.jar` - `velocity/target/GeyserUpdater-Velocity-1.0.0.jar` ## Installation 1. Place the appropriate JAR for your server platform into the plugins folder. 2. Start the server to generate the `config.yml` file (it will be identical to the default config included in this README). 3. The plugin automatically detects existing Geyser / Floodgate JARs by searching for files in the plugins directory that contain "geyser" or "floodgate" in their names. - If no existing JARs are found, it will create new ones with standard names (e.g., `Geyser-Spigot.jar`, `floodgate-velocity.jar`). ## Commands & Permissions - **/geyserupdate** - **Description**: Immediately runs an update check. - **Permission**: `geyserupdater.admin` ## Configuration File (`config.yml`) - `enabled`: Enables or disables the plugin. - `checkOnStartup`: Enables or disables the update check on startup. - `periodic.enabled`: Enables or disables the periodic update check. - `periodic.intervalHours`: The interval for periodic checks (in hours). - `adminLogin.enabled`: Enables or disables the update check when a privileged player logs in. - `adminLogin.permission`: The permission that triggers the check on login (default: `geyserupdater.admin`). - `targets.geyser | targets.floodgate`: Choose which plugins to update. - `postUpdate.notifyConsole`: Notifies the console after an update. - `postUpdate.notifyPlayersWithPermission`: Sends an in-game chat notification to players with permission. - `postUpdate.runRestartCommand`: Automatically executes a restart command after an update. - `postUpdate.restartCommand`: The restart command to execute (e.g., `restart` or `end`). - `messages.*`: Customize the messages sent by the plugin. ## How it Works - **Download URLs**: - Geyser: `https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/downloads/{platform}` - Floodgate: `https://download.geysermc.org/v2/projects/floodgate/versions/latest/builds/latest/downloads/{platform}` - `{platform}` is replaced with `spigot`, `bungeecord`, or `velocity`. - The latest JAR is downloaded to a temporary file and its SHA-256 hash is compared with the existing JAR. - If the hashes are identical, it is considered "up to date," and the file is not replaced. - If they differ, the existing file is overwritten using an atomic replacement operation. - A server or proxy restart is required after an update is applied. - To enable automatic restarts, set `postUpdate.runRestartCommand` to true and configure the `restartCommand` to match your server's environment. ## Notes / Known Limitations - If a download fails due to network issues or other errors, the existing plugin files will not be affected. - The plugin cannot detect Geyser/Floodgate files if they have unusual names or are not located directly within the plugins folder (it only scans for `*.jar` files in the root of the plugins directory). - The plugin does not display version numbers; it relies solely on hash comparison to determine if an update is available. ## License A license (e.g., MIT) can be added upon request.