Farkit loads Lua plugins from the server's plugins/ directory. A plugin can be a single Lua file or a folder with a main.lua entry point.
plugins/
Welcome.lua
Clock/
main.lua
config.lua
data.lua
players/
Welcome.lua is loaded as plugin Welcome and stores its data under plugins/Welcome/. A folder plugin uses the folder name, for example Clock/main.lua.
Plugins use Lua 5.2 syntax through LuaJ. LuaJ standard globals and Java interop (luajava) are available. Shared modules in plugins/lib/ can be loaded with require("shared"); files in a plugin folder can also be required.
With plugin-hot-reload=true (the default), plugin files are checked about once per second; a detected change is applied after the file is unchanged for another check. Changes in plugins/lib/ reload all plugins. Server console or operators can use /reload to reload all plugins, /reload Clock for one plugin, and /plugins to list loaded plugins.