There are a lot of criticisms here, so I would like to clear them up and make a summary of the thread. (I don’t want to offend anyone) So here are the very important things you need to take care of, DarkCart.
Project Hosting
DarkCart, you are offering everything in the form of downloads, but the main thing is nobody is going to download things without knowing what it can do. The best thing you can do is to host your project online (GitHub is better in that case) and also show some screenshots what your library is capable of.
Hosting on the internet has it’s benefits, users need not download to look at the stuff, they can browse the code online and save a lot of time themselves. It also allows people to contribute in return, or notify you of any issues or bugs, and you can fix them asap. I recommend you to host your library on GitHub to prevent these criticisms.
Naming Conventions
You named your methods in a weird manner which no one really expects. Your methods start with [icode]gl[/icode] in their names, which confuses many users that your library uses OpenGL, which is not the case. It’s not going to benefit you, as this may cause a reduction in the number of users that are willing to try your library.
Another example is you named your color class as [icode]ColorValue[/icode] while many people prefer [icode]Color[/icode] as the name. Using non-standard conventions will do nothing but scare people away. I recommend you to change these names to the correct ones to avoid the confusion of your users.
The Tools you Use
Even the tools you use does matter for your users. You are using Java2D, which is not the right tool for this job. Java2D is not designed for performance efficient graphics programming, and especially not with games in mind. Since yours is a game library, you should really start using the recommended libraries, such as OpenGL. I recommend learning OpenGL and LWJGL (again I don’t want to start wars, but I do prefer LWJGL) and make your library use it.
Not only that OpenGL allows you to gain good performance and frames per second, it will also give you the ability to apply much transformations to your entities using shaders and GLSL. By the way, I’m not against Java2D, nor we hate it, we just say that it is not the right tool for games programming.
Proper Game Loop
As seen in your [icode]ImageTest[/icode] example, your game loop is the not the right one, and is an example of a bad game loop. You might want to look at the game loops article written by EliDelventhal in the articles section of this forum. Or you can also read the article by Koen Witters, namely deWitter’s Game Loops on the KoonsoloGames website. That is more necessary for a perfect game loop.
And again, the game loop should be built-into the [icode]BasicGame[/icode] class, and you should also allow the user to switch between variable frame times or fixed frame times. A perfect library should give those.
Proper Demos
You need to provide proper demos to show off what your library is capable of. ImageTest isn’t one, since users need to know how to make a game with your library, just showing them on how to draw an image wouldn’t suffice. The recommendation is to make as many games with this as you can (not only limited to tile based ones) and post the screenshots here. It is also important to post the code in a folder alongside with your library on github or whatever hosting you use.
Aside from these things, this entire thread is filled with arguments, they do good in the end, but I think there should not be these many criticisms arguments on a project page. Anyways, DarkCart, these are the things that you need to take care of. I wish you good luck with your game library.