Write plugins in JRuby!
Rubybukkit is a custom plugin loader that enables you to write Bukkit plugins as short Ruby/JRuby scripts.
Features
- Loads Bukkit plugins written in Ruby/JRuby
Installation
- Download the plugin from the Files tab and drop it into the plugins folder
- Create the folder plugins/RubyBukkit (or let the plugin create it on server start); this folder will contain the JRuby runtime and all your Ruby plugins
- Download the JRuby runtime version 1.6.x from http://jruby.org/download (get JRuby 1.6.x Binary as tar.gz or zip)
- Extract the file jruby.jar in the lib folder from that archive and drop it into plugins/RubyBukkit
Plugin Source
The source code is available in the Github repository: https://github.com/Zeerix/RubyBukkit
I will accept Pull Requests if I have the time and I find them useful.
Configuration
The plugin will create a default configuration file on startup as plugins/RubyBukkit/config.yml.
1 2 3 4 5 6 | settings: plugins-path: plugins/RubyBukkit debug: true runtime: ruby-version: '1.8' jruby-path: plugins/RubyBukkit/jruby.jar |
- plugins-path
- the folder which this plugins looks for Ruby plugins in. All files with extension .rb are loaded.
- debug
- enables/disabled debug output about plugin loading
- ruby-version
- JRuby version compatibility mode: '1.8' or '1.9'
- jruby-path
- location of the jruby runtime
Example plugins
Here is a list of some example plugins. There is also an explanation on How to Write a Ruby Plugin in the forum.
- [GEN/INFO] OnlinePlayers - Displays list of online players on login and by a command.
- [WGEN] RubyMoon - Ruby version of the custom map generator BukkitFullOfMoon by Dinnerbone.
- [ADMN] GarbageCollect - Registers a command that forces a garbage collection cycle.
- [INFO] Uptime - Displays time since server start on /uptime.
- [MISC/MECH] CustomRecipes - Adds some custom recipes for the crafting grid. Can easily be changed to add new recipes.
Donation
If you like RubyBukkit, you can donate some Bitcoins to my address.
One-time addresses and other forms of donation on request.
Bitcoins: 12RnhW6hMUJuHACNMgsmuGRzuWMswpchQf