MonitoringMinecraft MonitoringMinecraft

SyAPI

Плагин PaperPurpur

SyAPI — плагин для Майнкрафт, предоставляет API для разработки других плагинов.

26 скачиваний 1 подписчик
Оцените первым

SyAPI

SyAPI is a server statistics API plugin for Minecraft Purpur/Paper 1.21.1, providing server runtime status, player statistics, and more.

Features

  • 📊 Server uptime statistics
  • 📈 Yesterday's login count statistics
  • 👥 Historical maximum online players record
  • 📝 Total login count statistics
  • ⚡ Server minimum TPS monitoring
  • 🌐 Player latency detection (highest latency player)

Supported Versions

  • Server: Paper, Purpur 1.21.1
  • Java Version: Java 17+
  • API Version: 1.21

Usage

Commands

Command Description Permission
/syapi View server statistics syapi.use
/syapi info View server statistics syapi.use
/syapi reload Reload plugin configuration syapi.admin
/syapi help Display help information syapi.use

API Usage

Other plugins can call SyAPI in the following way:

import cn.shiyuan.syapi.SyAPI;
import cn.shiyuan.syapi.SyAPIProvider;

// Get API provider
SyAPI syapi = SyAPI.getInstance();
SyAPIProvider api = syapi.getApiProvider();

// Get server start time
long startTime = api.getServerStartTimeMillis();
String uptime = api.getServerUptime();
String startTimeFormatted = api.getServerStartTimeFormatted();

// Get player statistics
int yesterdayJoins = api.getYesterdayJoinCount();
int maxOnline = api.getMaxOnlinePlayers();
int totalJoins = api.getTotalJoinCount();

// Get server performance data
double minTps = api.getMinTps();

// Get latency information
Player highestLatencyPlayer = api.getHighestLatencyPlayer();
String playerName = api.getHighestLatencyPlayerName();
long highestLatency = api.getHighestLatency();
long playerLatency = api.getPlayerLatency(player);

API Method Reference

Server Time Related
Method Return Value Description
getServerStartTimeMillis() long Get server start timestamp (milliseconds)
getServerUptime() String Get server uptime (formatted string, e.g., "2 days 5 hours 30 minutes")
getServerStartTimeFormatted() String Get server start time (formatted date, e.g., "2026-04-03 12:30:00")
Player Statistics Related
Method Return Value Description
getYesterdayJoinCount() int Get yesterday's login count (unique players)
getMaxOnlinePlayers() int Get historical maximum online players
getTotalJoinCount() int Get total login count
Server Performance Related
Method Return Value Description
getMinTps() double Get server minimum TPS
getHighestLatencyPlayer() Player Get player object with highest latency
getHighestLatencyPlayerName() String Get name of player with highest latency
getHighestLatency() long Get maximum latency value (milliseconds)
getPlayerLatency(Player player) long Get specified player's latency (milliseconds)

Project Structure

SyAPI/
├── src/
│   └── main/
│       ├── java/cn/shiyuan/syapi/
│       │   ├── SyAPI.java              # Main class
│       │   ├── SyAPIProvider.java      # API provider
│       │   ├── StatsManager.java       # Statistics manager
│       │   ├── PlayerListener.java     # Player event listener
│       │   └── SyAPICommand.java       # Command handler
│       └── resources/
│           ├── plugin.yml              # Plugin configuration
│           └── data.yml                # Data storage
├── pom.xml                             # Maven configuration
└── README.md                           # Documentation

Permission Nodes

Permission Description Default
syapi.admin Admin permissions (reload, etc.) OP
syapi.use Usage permissions (view statistics) All players

Data Storage

The plugin uses YAML files to store data, located at plugins/SyAPI/data.yml:

  • total-join-count: Total login count
  • max-online-players: Historical maximum online players
  • yesterday-join-count: Yesterday's login count
  • today-join-count: Today's login count (automatically resets daily)
  • current-date: Current date
  • yesterday-players: Yesterday's player UUID list

Scheduled Tasks

The plugin automatically runs the following scheduled tasks after startup:

  • TPS Monitoring: Updates minimum TPS every second
  • Latency Update: Updates player latency data every second
  • Date Check: Checks for date changes every minute, automatically resets today's statistics
  • Data Save: Automatically saves data to file every 5 minutes
Смотри также

Похожие подборки плагины — по версиям Майнкрафта, загрузчикам и жанрам.

Сервера Майнкрафт

Играть интереснее на сервере — выбирай в рейтинге серверов Майнкрафт и заходи прямо сейчас.

SkyBars
SkyBars Java + BE
1368 онлайн
1.8 — 26.2 версия
🎮 ВЫЖИВАНИЕ ⚔️ АНАРХИЯ 🚗 ГТА РП 🎤 ГОЛОСОВОЙ ЧАТ 🎁 БЕСПЛАТНЫЙ ДОНАТ 🌟 СМП 💻 ПК+ТЕЛЕФОН
CLOUDWORLD
6 онлайн
1.16.5 — 1.21.11 версия
Пвп, Арены, Дуэли, Кейсы, донаты, /free, приваты, спавн,
Battle Mine
Battle Mine Java + BE
3 онлайн
1.21.4 — 26.2 версия
ОТКРЫТИЕ! 20 + различных ивентов, 10+ различных боссов, много интересных механник
MigosMc
MigosMc Java + BE
1728 онлайн
1.8 — 26.2 версия
🌿 MigosMc.net | Гриферский сервер с войс-чатом | Награды за онлайн ⭐ ВЫЖИВАНИЕ⭐ ОДИНБЛОК⭐ МИНИ-ИГРЫ
MineLauncher
Лаунчер Майнкрафт без лицензии — все версии
Бесплатный лаунчер для ПК и Андроид — все версии 26.2, 1.21.11, 26.1.2, 1.21.8. Fabric, NeoForge, Forge, шейдеры, моды и скины в один клик.
Без лицензии Fabric, NeoForge, Forge Моды, шейдеры, скины Все версии Майнкрафта ПК и Андроид Для слабых ПК Сервера в лаунчере
Скачать бесплатно
Windows и Андроид · Бесплатно · Без лицензии
Наш чат