odd question, but i am wondering what exactly is stored in an APK? for example, if i write some code in gamemaker and export it for android, can that code be easily viewed from the APK? a friend of mine was worried about using a template for menus because they thought google would flag their game as spam if someone else also used this template saying that google would know because "we have the same variable names." now, i don't know too much about the play store's algorithm, but i read the policy and it does not state that. so i am just curious for future reference, is this even possible when only given the APK?
#what is stored in an APK?
12 messages · Page 1 of 1 (latest)
If you mean by if anyone could theoretically view the contents of the apk itself? Yes.
If someone could somehow open up the compiled GameMaker game and view it? It depends.
If you open a gamemaker apk file as a zip file you will find a ".droid" file which contains your game data.
It's usually quite easy for people to reverse engineer .droid files unfortunately ☹️
You won't get in trouble with Google for anything like that though
In regards to GameMaker games in general, use YYC if you are concerned about any form of decompilation
i’m not necessarily concerned, just curious because it would seem odd to be flagged for using the same variable name, like oGame for example is super common. though i didn’t think using just the APK file you’d be able to see there’s an object and its name is “oGame.” so basically you’re saying if i were to give someone an APK file, they would be able to open the gamemaker file fully and view any and all code, assets, etc?
Variable name flagging is unheard of, not at least something I've heard or seen before
basically you’re saying if i were to give someone an APK file, they would be able to open the gamemaker file fully and view any and all code, assets, etc?
Assets yes (no real way to prevent textures/audio ripping fwiw)
Code, again depends™
GameMaker itself does strip out a lot of unnecessary bits, and does a bunch of compile-time work
So the code isn't exactly the same as the source
However, there are two key differences
VM - Generates GM bytecode and gives you an interpreter-runner. This is what many people tend to use, including Undertale/Deltarune, which is notorious in the modding community as people have made tools around it to decompile GameMaker VM games.
YYC - Generates native machine code, which, well, unless you have a full entire understanding of the native machine language itself, it really isn't going to be super beneficial to reverse engineer. It is almost impossible to see any kind of code.