Hey Paul, I have a quick question.
If I wanted to make a mod for Mythruna, would it have to be written in Groovy or could I choose between using Groovy or Java?
Groovy can call Java... so you'd have to at least have a groovy stub to get it to load using the standard mod mechanism.
Just to clarify this further because I saw some less-than-correct information flying around on the chat.
Groovy and Java are a natural fit because groovy compiles are runtime to byte code essentially. Groovy is written in Java and essentially is calling Java classes to do anything significant. You can even pre-compile groovy to Java .class files (though it will still do some stuff at runtime because of the dynamic typing).
Mythruna's game engine is nearly 100% Java. It's the game specific stuff on top that has a large percentage of groovy code and it was a natural fit for mods.
Most of the mods are calling the groovy-exposed API to register callback objects with the engine... either hooks for shell commands or hooks for tools or hooks for context menus, etc.. These APIs generally take Java objects... but since Groovy objects are also Java objects, it just works.
You can just as easily register real Java objects implementing the appropriate interfaces. You still need the groovy script to hook them into the engine... but that's because I search for and run groovy scripts at startup.
In fact, many of the standard console commands are Java objects. Maybe half or less are configured in groovy scripts that are run during startup.