A big hit on the game engine development: language change.
I was very satisfied with Java until a serious problem happened: the quality of the audio decoder was bad, and it was eating more CPU than it should. Sometimes, choosing between fast code and precise code is necessary, but in this case the problem wasn't so simple. After about a month searching for solutions to make the code better (both in the quality and performance department), the results were unsatisfactory. That really pissed me off.
Pratical solution: the development language changed to C++.
Re-coding the audio code to C++ was fast and the results already are excellent. I have to re-code the remaing parts that were done in Java (physics and graphics), but it'll be easy to do.
This was a hard, but necessary decision: I wished to invest on the development of games in Java, but if I have to choose between robust code and technically impressive code (meaning to make quality, commercial games written in Java), I'll aways choose the robust code.
Maybe in the future I'll work more with Java (I like the language a lot), but unfortunately I can't right now.
Well... Welcome back C++!