KBukkit
Kotlin for Bukkit and Spigot plugins!
If you are a server owner, and you were told that you need this plugin as a dependency for another plugin, all you need to do is download this plugin and put it in your plugins folder.
What is Kotlin?
Kotlin is a programming language made by JetBrains, the same people who make IntelliJ IDEA. It compiles into Java, which means that you can interact with the Bukkit and Spigot APIs with it. Kotlin has tons of features that Java doesn't have, so I made a neat library that uses some of the features that Kotlin has to offer.
Features
Kotlin for Bukkit and Spigot plugins!
If you are a server owner, and you were told that you need this plugin as a dependency for another plugin, all you need to do is download this plugin and put it in your plugins folder.
What is Kotlin?
Kotlin is a programming language made by JetBrains, the same people who make IntelliJ IDEA. It compiles into Java, which means that you can interact with the Bukkit and Spigot APIs with it. Kotlin has tons of features that Java doesn't have, so I made a neat library that uses some of the features that Kotlin has to offer.
Features
- ChatColor addition
- In Java, if you do ChatColor.BOLD + ChatColor.BLUE, you get an error. This is because the "+" operator cannot be put on two enum constants.
- Kotlin solves this with operator functions and extension functions. Basically, you can add extension functions to the ChatColor class, and if you add an operator function, then you can use that operator on that class.
- This means that with KBukkit, you can legally do ChatColor.BOLD + ChatColor.BLUE, and it will return "§l§9"
- Custom Player Classes
- Are you tired of tons of maps of UUIDs to data types? With KBukkit, you can create custom player classes. These classes take advantage of Kotlin's delegation pattern. Basically, you pass a player as an argument to a constructor, and the class will implement the Player interface, mapping all required functions to the argument passed into the constructor. I know that sounds complicated, but it's really powerful.
- Custom Config Handler
- Having more than one config is annoying. With Kotlin's operator functions that I mentioned earlier, configs get a lot easier. With KBukkit's KConfig class, you can simply do config["foo", Bar::class] to get an element from the config that is type Bar.
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.9, 1.10
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
KBukkit is a free Minecraft Java mod. Compatible with Minecraft 1.9, 1.10. Downloaded 307 times (via Spigot). Download it and open it directly in the game.