The game is primarily written in Java using jMonkeyEngine for it's OpenGL/event handling/etc. Otherwise, the engine is pretty custom.
Most of the "game logic" is written in the Groovy scripting language... and that will be even more true in the new engine.
How would you compare jMonkeyEngine to something like Unity? And why are different languages used in the same game? How does that even work?
Pretty sure this has been covered a few times before... but it doesn't hurt to refresh. I'm not sure if it's in an index somewhere.
woops, sorry. I didn't even think to check the search function >.<