
KrepAPI (Plugin)
Run server commands when a player presses a key- configured in a simple YAML file, no programming required.
7
0
Список изменений
IMPORTANT: Changes to the config file will not take effect until the server is restarted
Added
- Config-driven key bindings — define GLFW keys, display names, categories, optional vanilla override, and server commands under
bindings.<id>inconfig.yml. - Automatic KrepAPI handshake — sends
s2c_hello, validatesc2s_client_info, protocol version, and mod build requirements. - Optional enforcement —
require-krepapiandhandshake-timeout-ticksto kick players without a timely, valid client response. - Binding sync — pushes
s2c_bindingsfrom configuration after a successful handshake (and a delayed path whenrequire-krepapiis disabled). - Command execution on key press —
c2s_key_actiontriggers configured commands as the player onPHASE_PRESSonly; leading/stripped; execution scheduled on the main thread. - Per-player cooldown — wall-clock based (~250 ms) to reduce command spam from repeated packets (avoids tick APIs for broader compatibility).
versionGate(Plugin)API —KrepAPIVersionGatefor other plugins to register extra minimum client build constraints (Bukkit plugin name:KrepAPI).- Auxiliary protocol hooks —
sendRawCaptureConfig,sendInterceptKeys,sendMouseCaptureConfig, andgetClientCapabilitiesfor advanced integrations (same layout as the KrepAPI reference implementation). - Single distributable JAR — embeds the
net.shik.krepapi.protocolclasses alongside the plugin (no separate protocol JAR on the server). - Gradle composite build — resolves
net.shik:protocolfrom a sibling KrepAPI checkout (../KrepAPIby default). - Developer-oriented source — short comments on handshake, config → bindings, and key → command flow for use as a template.
Supported environments (intended)
- Paper (not Spigot-only or Sponge); Purpur and similar Paper forks are expected to work but are not separately certified.
- Minecraft / Paper game versions: 1.21.4–1.21.11 and 26.1–26.1.1 (one JAR, compiled against Paper API 1.21.4;
api-version1.21.4 inplugin.yml). - Java 21 for building; run the server with the Java version required by your Paper build.
Build / tooling
- Gradle wrapper 9.4.x — required so composite inclusion of the KrepAPI monorepo (Fabric Loom subprojects) configures correctly (Gradle 8.8 is insufficient).
- run-paper task for local smoke tests (default
minecraftVersion1.21.4).
Notes
- The
net.shik:protocoldependency version inbuild.gradlemust stay aligned withmod_versionin the sibling KrepAPI repo’sgradle.properties. - Players still need the KrepAPI Fabric mod build that matches their Minecraft client version; the plugin only handles the server side.
Файлы
KrepAPI-Plugin-1.0.0.jar(50.38 KiB)
ОсновнойМетаданные
Канал релиза
Alpha
Номер версии
1.0.0
Загрузчики
PaperPurpur
Версии игры
1.21.4–26.1.1
Загрузок
3
Дата публикации
1 нед. назад

