This thread is about the suggestion for working on the engine and optimizing it and the Java VM that is included with the game.
===
I know this request will be the most-intensive one out of the many I may suggest, but I feel that it would be one of the best things for the game.
While personally I believe Spiral Knights should eventually move off Java itself (Much like MS is doing to Minecraft for the win10 version), I know that if anyone can make a good Java based game it would be people who have worked for and with Three Rings for years.
Over the many months the Java VM has been updated with speed improvements, as well as providing a native x64 version (which at the time of Spiral Knight's launch, wasn't reliable//existed). I believe this would be the easiest thing to target for initial steps of optimization. Barring any specific Java issues, nothing should have to change within the programming of Spiral Knights itself, and it could potentially speed the game up for many users.
Since the game is server based and there shouldn't be any major issues with the newer Java versions, players should be able to get a BETA client from Steam and still be able to play with normal players (unless there's another beta to connect to the test realm, which then they'd have to switch betas).
The second place for optimization might be in the code itself. All code isn't perfect and I suspect many things Spiral Knights does, can be done in a smoother way. This would require more effort and funds though as it's not an easy job sifting through all the code and not breaking things when you try to do them in a better way.
A third way to optimize is providing even lower graphics settings for lower end PCs. While this can only do so much, if you design the lower quality modes with custom low res-content it may add a charm to the game in that way as well (8x8 - 16x16 wall textures, etc.) With purposefully low-res designed textures, you can make the texture resolution lower than you would normally, while still having a good looking game.
Same with lower poly models. (should be a separate option of course)
---
If the game can run better, then that would allow more people to play it and current players to have a better time.
While it's a moonshot, if it gets running smooth enough you might be able to play the game at a decent framerate on a raspberry pi
(Assuming at the very least, pi3 + whenever they update the gfx driver)
===
If you have any opinions on this please comment as well.
According to steam, the minimal requirements are:
- XP (32bit only?)
- 512 MB ram
- 64 MB video memory
- 1024x600 screen
- 300MB HDD (though it's using a bit more than 1GB now, that page should be updated too)
- java 1.5
This is basically a mid-range smartphone! I don't think it's actually necessary to make the game even more simple.
Putting it into a new engine could solve a lot of problems indeed. There is a free java engine called jMonkeyEngine, which seems to be a good choice. It would probably easier to put in everything that works and then write the rest from scratch than trying to patch the current game without breaking it.