How to get your (Completed) game on Android & OUYA
Moderators: Bob the Hamster, marionline, SDHawk
Game port request
I don't know if anybody has requested this game yet. But i was wondering if you could possibly port Off by Mortis Ghost to the Ouya?
Or Possibly Witches House, by Fummy, or Ib, by Kouri. These are all pretty popular RPGM games i'm sure a lot of people would love to see those on the Ouya
Or Possibly Witches House, by Fummy, or Ib, by Kouri. These are all pretty popular RPGM games i'm sure a lot of people would love to see those on the Ouya
- Bob the Hamster
- Liquid Metal King Slime
- Posts: 7460
- Joined: Tue Oct 16, 2007 2:34 pm
- Location: Hamster Republic (Ontario Enclave)
- Contact:
I think I heard some rumors about some of the RPG Maker devs working on android porting, but I am afraid I don't know any more about it than that rumors exist. I don't even have any links to paste for you, sorry!
Contacting the authors of each of those specific games will be a good start, since they will likely know more about whether or not porting options exist.
Contacting the authors of each of those specific games will be a good start, since they will likely know more about whether or not porting options exist.
- Meowskivich
- Blubber Bloat
- Posts: 2199
- Joined: Tue Mar 06, 2012 12:38 am
- Location: Earth
- Contact:
Re: Game port request
I never thought I'd ever hear of that game on this forum.catcam92 wrote:I don't know if anybody has requested this game yet. But i was wondering if you could possibly port Off by Mortis Ghost to the Ouya?
Or Possibly Witches House, by Fummy, or Ib, by Kouri. These are all pretty popular RPGM games i'm sure a lot of people would love to see those on the Ouya
- jcenterprises
- Slime Knight
- Posts: 132
- Joined: Sun Aug 21, 2011 7:30 pm
- Contact:
Just noticed in the newest nightly that an in-app purchase feature has been added, but all you can do right now is add you OUYA name and nothing else.
Last edited by jcenterprises on Thu Nov 21, 2013 10:42 am, edited 1 time in total.
- Bob the Hamster
- Liquid Metal King Slime
- Posts: 7460
- Joined: Tue Oct 16, 2007 2:34 pm
- Location: Hamster Republic (Ontario Enclave)
- Contact:
Yeah, still super experimental. I hope to work on it some more this week.jcenterprises wrote:Just noticed in the newest nightly that an in-app purchase feature has been added, but all you can do right now is add you OUYA name and nothing else.
In addition to the OUYA support, I am also planning an Paypal-Honor-System store backend that will work on Windows/Mac/Linux. It won't have any way of reliably verifying purchases, so it won't work for really selling a game, but I think it will work great if you want to have a built-in "Donation" option inside your game.
- Bob the Hamster
- Liquid Metal King Slime
- Posts: 7460
- Joined: Tue Oct 16, 2007 2:34 pm
- Location: Hamster Republic (Ontario Enclave)
- Contact:
I just wanted to mention that although I still haven't set up an android nightly build, I did upload a fresh manual build of the latest wip version, with lots more bugfixes than the last one had http://hamsterrepublic.com/tmp/ohrrpgce ... -debug.apk
Is the mod able to sticky this very important thread? It took me quite awhile to locate it again...
Anyways, James, is there any new update on this?
I'm not sure if I or anybody else made this suggestion about how to go about making that "Export to Android" menu option work, but here's an idea...
Basically, a Skeleton APK is shipped with the engine, this is a bare bones APK with no embedded RPG file, and won't run as-is, because it will reference an RPG file, that will be inserted into the APK during the Export to Android process. Basically, all the tools the game developer will need is Java(which most PCs have), a tool called apktool, jarsigner, and zipalign. Here are the commands I currently use to rip apart an APK to modify it, and put it all back together again:
So, if you make the pre-compiled Game.apk reference a dummy RPG file within the APK, you can use these commands to replace that RPG file with a real one the developer is working on.
https://code.google.com/p/android-apktool/
The only issue I can think of off the top of my head is the Android application namespace, so that the Google Play store and the android device don't see the same com.hamsterrepublic.game or something, but is in the developers namespace. I am sure there are tools or a way to hexedit the .class files.
Anyways, James, is there any new update on this?
I'm not sure if I or anybody else made this suggestion about how to go about making that "Export to Android" menu option work, but here's an idea...
Basically, a Skeleton APK is shipped with the engine, this is a bare bones APK with no embedded RPG file, and won't run as-is, because it will reference an RPG file, that will be inserted into the APK during the Export to Android process. Basically, all the tools the game developer will need is Java(which most PCs have), a tool called apktool, jarsigner, and zipalign. Here are the commands I currently use to rip apart an APK to modify it, and put it all back together again:
Code: Select all
PATH=/usr/bin:/bin:/home/kveroneau/android-sdks/platform-tools
java -jar apktool-cli-1.5.3-SNAPSHOT.jar d -s SL4A_6.apk
java -jar apktool-cli-1.5.3-SNAPSHOT.jar b SL4A_6
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore recompile.keystore SL4A_6.apk kveroneau
jarsigner -verify SL4A_6.apk
/home/kveroneau/android-sdks/tools/zipalign -v 4 SL4A_6.apk SL4A_6-multiwin.apk
https://code.google.com/p/android-apktool/
The only issue I can think of off the top of my head is the Android application namespace, so that the Google Play store and the android device don't see the same com.hamsterrepublic.game or something, but is in the developers namespace. I am sure there are tools or a way to hexedit the .class files.
(Note: Chronoboy continued this discussion at http://www.slimesalad.com/forum/viewtop ... 386#109386)
That is exactly what I wanted to do. (I don't remember apktool being needed though.) However, is it true that everyone has java? (It took me a couple of years before I bothered to install it on this machine) So rather than use Smali (which is written in Java) to recompile a dex file with modified classpath I tried to find an alternative. I couldn't find one, so I considered writing a small utility myself. None of the other tools require Java. And it only needs to change a few bytes in a tiny skeleton .dex file which calls the rest of the program, with a fixed classpath (at least, I think that would work). See the mailinglist.However, in hindsight not depending on Java is pretty silly, because you would only need to to export to Android.
Clearly you already know everything needed to package an .apk by hand. Would you be interested in implementing it in the engine?
That is exactly what I wanted to do. (I don't remember apktool being needed though.) However, is it true that everyone has java? (It took me a couple of years before I bothered to install it on this machine) So rather than use Smali (which is written in Java) to recompile a dex file with modified classpath I tried to find an alternative. I couldn't find one, so I considered writing a small utility myself. None of the other tools require Java. And it only needs to change a few bytes in a tiny skeleton .dex file which calls the rest of the program, with a fixed classpath (at least, I think that would work). See the mailinglist.However, in hindsight not depending on Java is pretty silly, because you would only need to to export to Android.
Clearly you already know everything needed to package an .apk by hand. Would you be interested in implementing it in the engine?
Last edited by TMC on Sat Oct 11, 2014 10:06 am, edited 2 times in total.
I can definitely try playing around with an APK to make it easier for folks to create a self-contained APK without needing to install the entire toolchain mentioned on the wiki page. I'd personally like to start with just building a both a basic shell script, and Windows batch file that the game dev could run with their .RPG as a parameter. This seems like a logical first step to me, then after, embedding the script into the engine should be as easy as running an external program, which the engine already does for a few other tasks.TMC wrote:Clearly you already know everything needed to package an .apk by hand. Would you be interested in implementing it in the engine?
And, yes, not everyone in this day and age has Java installed. We can always look into seeing what these Java-specific tools actually do, and re-implement that in another language like FreeBasic. Most, if not all these Java tools I mentioned are open sourced, so understanding what the code does and porting it over shouldn't be too difficult. I just hope that they don't use any Java specific object introspection...
If you want to write a batch script or script in any other language to do that packaging, that would be great. We can then translate it to FB code. If you write it in C or C++ then it can even be linked directly. I don't want to have a pair of batch and shell scripts to do the packaging, it's a big pain for maintenance, portability, showing proper error messages, etc. Did I mention I hate batch files?
I think it's OK to require Java to export an Android package. It's not like we're requiring the Java development kit. And in future we can always replace Smali with a custom tool for fun.
Porting Smali to another language would still be far more work than writing a tiny single purpose custom tool. I had a look at the .dex file format. It's not that complicated, and only one field in the file will need to be changed (not counting offsets to update), so only a fraction of the file format needs to be parsed.
I think it's OK to require Java to export an Android package. It's not like we're requiring the Java development kit. And in future we can always replace Smali with a custom tool for fun.
Porting Smali to another language would still be far more work than writing a tiny single purpose custom tool. I had a look at the .dex file format. It's not that complicated, and only one field in the file will need to be changed (not counting offsets to update), so only a fraction of the file format needs to be parsed.
Last edited by TMC on Mon Oct 13, 2014 10:31 am, edited 2 times in total.