views:

287

answers:

1

In college, my senior project was to create a simple 2D game engine complete with a scripting language which compiled to bytecode, which was interpreted. For fun, I'd like to port the engine to android. I'm new to android development, so I'm not sure which way to go as far as deploying the engine on the phone.

The easiest way I suppose would be to require the engine/interpreter to be bundled with every game that uses it. This solves any versioning issues. There are two problems with this. One: this makes each game app larger and two: I originally released the engine under the LGPL license (unfortunately), but this deployment strategy makes it difficult to conform to the rules of that license, particularly with respect to allowing users to replace the lib easily with another version.

So, my other option is to somehow have the engine stand alone as an Activity or service that somehow responds to intents raised by game apps, and somehow give the engine app permissions to read the scripts and other assets to "run" the game. The user could then be able to replace the engine app with a different version (possibly one they made themselves).

Is this even possible? What would you recommend? How could I handle it in a secure way?

A: 

What I understand from your question is 1. You have a game App which is the UI (An Activity or intent in Android terms) 2. The Game Engine is used to do actual calculations from various game apps( Seems like content provider in Android terms)

Does that make things clearer for u??

the100rabh
So, the engine is the content provider, and then each game would consist of a launcher that accessed the engine runtime from the content provider with access to the game assets?
Jeremy Bell
exactly thats what I mean
the100rabh