Skip to content

Database, Placeholder and API

casqidev edited this page Jun 12, 2026 · 3 revisions

Database

MimiKoth supports multiple storage providers. The storage type can be selected in config.yml.

Supported Storage Types

  • YAML
  • SQLite
  • MySQL
  • MariaDB

Recommendations

  • YAML → Testing and very small servers.
  • SQLite → Recommended for small and medium-sized servers.
  • MySQL → Recommended for large servers and networks.
  • MariaDB → Recommended for large servers and networks.

By default, MimiKoth uses SQLite.


PlaceholderAPI

MimiKoth includes PlaceholderAPI support for KOTH information, player statistics, event data and leaderboard integrations.

KOTH Information

%koth%
%koth_name%
%kothname%
%mode%
%mode_raw%
%location%
%world%

Region & Coordinates

%x%
%y%
%z%

%center_x%
%center_y%
%center_z%

%min_x%
%min_y%
%min_z%

%max_x%
%max_y%
%max_z%

Capture Information

%capturer%
%dominator%
%king%

%capturer_points%
%dominator_points%
%king_points%

%current_points%

Time Information

%time%
%time_left%
%remaining_time%
%remaining_seconds%

%elapsed_seconds%

%duration%
%duration_seconds%

Event Configuration

%points_reward%

%capture_kill_points%

%event_interval%
%event_points%
%event_kill_points%

%top_winners%
%target_points%

Player Information

%player%
%player_name%

%my_points%
%player_event_points%

Example

Current KOTH: %koth%
Mode: %mode%
Capturer: %capturer%
Time Left: %time_left%

Developer API

MimiKoth provides a public API designed for developers who want to integrate their plugins with MimiKoth.

The API allows access to:

  • KOTH data
  • Active events
  • Player statistics
  • Event listeners
  • Event management

without interacting directly with MimiKoth's internal implementation.

Getting Started

Access the API through:

MimiKothAPI api = MimiKothAPI.get();

Common Methods

Get a KOTH

Koth koth = MimiKothAPI.get().getKoth("spawn");

Get All KOTHs

List<Koth> koths = MimiKothAPI.get().getAllKoths();

Get Active KOTHs

List<Koth> activeKoths = MimiKothAPI.get().getActiveKoths();

Start a KOTH

MimiKothAPI.get().startKoth("spawn");

Stop a KOTH

MimiKothAPI.get().stopKoth("spawn");

Get Player Points

int points = MimiKothAPI.get().getPlayerPoints(player);

Events

KothStartEvent

Called when a KOTH starts.

KothEndEvent

Called when a KOTH ends normally.

KothCancelEvent

Called when a KOTH is cancelled.

KothCaptureStartEvent

Called when a player starts capturing a KOTH.

KothCaptureStopEvent

Called when a player stops capturing a KOTH.

KothCaptureCompleteEvent

Called when a player successfully captures a KOTH.

KothKingChangeEvent

Called when the current king changes.

KothPointsGainEvent

Called when a player receives points from a KOTH event.

KothRewardGiveEvent

Called when a reward is given.

Example Listener

@EventHandler
public void onKothStart(KothStartEvent event) {

    String kothName = event.getKoth().getName();

    Bukkit.broadcastMessage(
        "KOTH Started: " + kothName
    );
}