I started with a couple of old, abandoned Java games more (Spice Trade, 4D Maze and Domino on Acid) and I got quickly past the initial stage. I could easily convert them to build with Gradle. Only Spice Trade did not immediately start but after specifying updated dependencies it did and I could easily run static code analyses on these projects and improve a couple of things without really changing how the programms work.
Start screen of Spice Trade |
Interesting is that they all have about the same size (8-12k lines of Java code). That might be kind of a sweet spot in terms of what can be achieved and what is manageable and codeable within a reasonable time by a very small team or single person.
I identified issues that are common and I hope that I can exploit lots of synergies there and improve many games (apps) at the same time. The list includes:
- Localization with properties and resource bundles
- Swing (they all are based on Swing) helper utilities and UI modularization
- Persistent options/settings storage.
- Display HTML based help/documentation pages.
- Storage/serialization of game state data.
- Deployment of the apps for various OS systems.
- Logging support
- Meaningful tests
- Adapting display size to modern screen resolutions (full screen mode)
No comments:
Post a Comment