Home›Java›Mods›Kojin - Advanced Punishment Manager
Kojin - Advanced Punishment Manager
Support
DM me on Spigot for now.

What Is Kojin?
Kojin is named after a figure of Japanese mythology, named Kōjin - a god associated with powerful, purifying forces. According to legend, he was responsible for watching over households and ensuring misdeeds were punished appropriately.

Kojin is a modern punishment management solution for your Minecraft server, currently built to run on standalone Spigot servers, but full Bungee/Network support is planned in a Premium version.

Features
Tutorial Video
[Coming Soon]

Warning
Kojin is still in an alpha stage, although I'm rapidly developing it. I cannot guarantee it is without bugs at this time, although my testing has not revealed any.

There is one inefficiency if you delete player data from your server, but that will be fixed in a later update.

Commands & Permissions
Config
Code (Text):

Storage:
  # SQLite (.db file in the Sorcery folder) or MySQL (if you have a MySQL server)
  # If you have a server of another SQL implementation (e.g. Postgres, MariaDB) then choose MySQL and it will still probably work
  # If you don't know what you're doing and only have a single server, just leave it as SQLite.
  Use: SQLite
  # This is only used if you choose to use MySQL
  SQL-Info:
    Address: 'localhost'
    Port: '3306'
    Database: 'schema'
    Username: 'admin'
    Password: 'password'
Settings:
  # If a Punishment is given without a reason, what should show?
  Default-Reason: 'Unspecified'
  Ban:
    # What message should be given to the banned player? (This is the ban screen)
    Punished-Message: |
      &f[&4Kojin&f] &cYou are permanently banned.
      &cReason: &6<reason>
    # What message should be given to the punisher? (typically a staff member or the console)
    Punisher-Message: |
      &f[&4Kojin&f] You have &cpermanently banned &6<player>&f.
      &cReason: &6<reason>
  Unban:
    # What message should be given to the unbanner? (typically a staff member or the console)
    Punisher-Message: '&f[&4Kojin&f] You have &aunbanned &6<player>&f.'
  Temp-Ban:
    # What message should be given to the banned player? (This is the ban screen)
    Punished-Message: |
      &f[&4Kojin&f] &cYou are temporarily banned.
      &cReason: &6<reason>
      &cExpires: &6<time>
    # What message should be given to the punisher? (typically a staff member or the console)
    Punisher-Message: |
      &f[&4Kojin&f] You have &ctemporarily banned &6<player>&f.
      &cReason: &6<reason>
      &cExpires: &6<time>
  IP-Ban:
    # What message should be given to the banned player? (This is the ban screen)
    Punished-Message: |
      &f[&4Kojin&f] &cYou are permanently ip-banned.
      &cReason: &6<reason>
    # What message should be given to the punisher? (typically a staff member or the console)
    Punisher-Message: |
      &f[&4Kojin&f] You have &cpermanently ip-banned &6<player>&f.
      &cIP: &6<ip>
      &cReason: &6<reason>
  IP-Unban:
    # What message should be given to the unbanner? (typically a staff member or the console)
    Punisher-Message: '&f[&4Kojin&f] You have &aunbanned &6<player>''s IP (<ip>)&f.'
  Mute:
    # What message should be given to the muted player?
    Punished-Message: |
      &f[&4Kojin&f] &cYou are permanently muted.
      &cReason: &6<reason>
    # What message should be given to the punisher? (typically a staff member or the console)
    Punisher-Message: |
      &f[&4Kojin&f] You have &cpermanently muted &6<player>&f.
      &cReason: &6<reason>
  Unmute:
    # What message should be given to the unmuted player?
    Punished-Message: '&f[&4Kojin&f] You have been &aunmuted&f.'
    # What message should be given to the unmuter? (typically a staff member or the console)
    Punisher-Message: '&f[&4Kojin&f] You have &aunmuted &6<player>&f.'
  Temp-Mute:
    # What message should be given to the muted player?
    Punished-Message: |
      &f[&4Kojin&f] &cYou are temporarily muted.
      &cReason: &6<reason>
      &cExpires: &6<time>
    # What message should be given to the punisher? (typically a staff member or the console)
    Punisher-Message: |
      &f[&4Kojin&f] You have &ctemporarily muted &6<player>&f.
      &cReason: &6<reason>
      &cExpires: &6<time>
  Kick:
    # What message should be given to the kicked player? (This is the kick screen)
    Punished-Message: |
      &f[&4Kojin&f] &cYou were kicked.
      &cReason: &6<reason>
    # What message should be given to the punisher? (typically a staff member or the console)
    Punisher-Message: |
      &f[&4Kojin&f] You have &ckicked &6<player>&f.
      &cReason: &6<reason>
  # What ongoing punishments look like in /kojin history
  History-Format-Active: |
    &f[&c<type>&f] - &4&lACTIVE
    &fReason: &e<reason>
    &fCreated At: &e<created>
    &fExpires: &e<expiry>
    &fPunisher: &e<punisher>
  # What expired punishments look like in /kojin history
  History-Format-Expired: |
    &f[&c<type>&f] - &7&lEXPIRED
    &fReason: &e<reason>
    &fCreated At: &e<created>
    &fExpired: &e<expiry>
    &fPunisher: &e<punisher>
  # What revoked punishments look like in /kojin history
  History-Format-Revoked: |
    &f[&c<type>&f] - &a&lREVOKED
    &fPunishment Reason: &e<reason>
    &fCreated At: &e<created>
    &fPunisher: &e<punisher>
    &fRevoked By: &e<revoker>
Messages:
  No-Permission: '&cInsufficient permissions.'
  Incorrect-Args: '&cIncorrect args! Try &e<suggestion>'
  Never-Joined: '&c<player> has never joined the server before! You cannot punish them!'
  Cannot-Self-Punish: '&cYou cannot punish yourself!'
  Already-Banned: '&c<player> is already banned!'
  Already-IP-Banned: '&c<player> is already ip-banned!'
  Already-Muted: '&c<player> is already muted!'
  Not-Banned: '&c<player> is not banned, so they cannot be unbanned!'
  Not-IP-Banned: '&c<player> is not IP-banned, so their IP cannot be unbanned!'
  Not-Muted: '&c<player> is not muted, so they cannot be unmuted!'
  Not-A-Number: '&cThe input must be a number!'
  Cannot-Kick-Offline: '&c<player> is offline and cannot be kicked!'
  Cannot-Ban-IP: '&cCannot IP-Ban <player> because they are offline and their IP is unknown.'
 
Requirements
Metrics
I haven't added any metrics yet, but will probably add bStats down the line.

Commands

Plugin details

Read from the plugin's own plugin.yml.

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

Kojin - Advanced Punishment Manager is a free Minecraft Java mod. Compatible with Minecraft 1.21. Downloaded 9 times (via Spigot). Download it and open it directly in the game.

Explore more