LeviLamina mods in the language you like¶
Rust, Go, Zig or C++. Install Pier, write a dynamic library, drop it into plugins/, and the server loads it; mods of different languages call each other.
-
The language you know
Rust, C++, Go and Zig have official bindings. A language not on the list can plug in too, as long as it can call a C function.
-
Mods talk to each other
When a Go mod calls a service a Rust mod provides, Pier hands the request over and the reply back; neither side needs to know the other's language.
-
An unreadable value is an error
When the host cannot read a value, the call returns an error naming what it tried to read, and your code can refuse the action.
-
Upgrades without rebuilding
While the ABI version stays the same, a mod built against an older Pier loads unchanged; a real incompatibility is refused at load with the reason.
-
A watchdog for hangs
When a mod holds a server thread too long, the watchdog logs which mod and where, then ends the process so a supervisor brings the server back.
-
Right at home in LeviLamina
LeviLamina's events, commands, players and world are yours to use, and native plugins call your services through the bridge.