I've been trying to reimplement some old simple 2D titles in a more modern, crossplatform friendly way, much like Gigalomania reimplements the MegaLoMania framework, loading in the original's graphics if available. My initial thoughts were to use something like libgdx, as I've been working a lot with Java APIs and it felt like something I could prototype up fairly quickly. However, most of the engines I've looked at demand the images and audio be presented in very specific formats, or that they come prebaked into the project as a whole (such as Monogame, to give one example). As my intention behind this project is to be a drop in replacement for the original executable, the runtime would need to be able to call and process the data from the original installation, which limits the types of off the shelf engines I can use.
Are there any 2D engines (regardless of base language) without these restrictions, as it would be useful to me to have something extensible that could do at least part of the heavy lifting of the implementation side of things and make it easier to port, rather than to have to code everything from scratch, and let me focus on adding the few features I'd need to do the rest.
I appreciate this is a particularly strange set of requests, so to make it a bit easier to comprehend here's the sort of feature list I'm talking about:
- Ability to provide a parser for a resource format to comparmentalise the sprite audio and text data mentioned below.
- Good 2D performance (will be doing lots of animated text and sprite layering)
- Ability to stream ADPCM and PCM from external files.
- Ability to use custom sprite formats (e.g RLE bitmaps in archives)
- External configuration and score saving (ideally with date and time)
NOTE: In my case extending an existing engine was acceptable, your mileage may vary. I've left the question up in its full context for those who may want it.