-
Notifications
You must be signed in to change notification settings - Fork 183
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Idea for the Android port #575
Comments
I don't think that file management (delete game e.g.) is required, but maybe "open game directory" and "open save directory", which launches ES File Explorer or whatever is installed. |
Thanks for the ideas :) ! I'll start to improve the button mapping system (the easiest xp). I think I'll switch to an xml format, that will be way more flexible for the futur. I thought of this :
I also thought of displaying a thumbnail, that would be a big UX improvement BUT there are those .LDB parsing and folder's name thing (different depending on version/location). If I find which function are involved in the C++ code I maybe will be able to use them with JNI (after learning how to use it hahaha). |
The problem here is that liblcf is not optimized for quickly extracting a single information out of the LDB-database. It always parses all of it, which is a waste of time here. The only feasible approach when using liblcf here is to cache the result... or to write a very simple parser in Java, only extracting title image and version code is simple. |
It could create the thumbnail the first time you open the game. |
|
Haha I was the guy who annoyed you for Xperia Play support, but it's dead snif RIP gaming in train ;'(. Is it a problem if I use JDOM .jar to parse xml ? It use an Apache licence, which is GPL3 compatible. |
According with the license is an Apache-like license but not Apache. Apache 2.0 license is GPLv3 compatible but JDOM license clause 4 is GPL incompatible, according with a related question in debian-legal mailing list. |
Pff those licences stuff break my balls. Thanks for the explanation ! |
Doesn't Java include a XML parser? |
Oh nice, I didn't even known about that format, thanks Ghabry ! |
If it used INI, the per-game setting could be loaded/saved from the RPG_RT.ini file. That way, if you want to distribute your game using easyrpg, you could set a recommended default buttons setting. |
+1 for .ini, you can use ini4j and eventually it could be reused later for a non-Android implementation without losing existing stored settings. |
That's a good idea but the problem is that EasyRPG will have its own button preset list, if the user modifies one, it has to be applied to all game involved. But I can implement a way for a developper to suggest a predefined button mapping in the .ini, EasyRPG would ask the first time to the user if he want to use it. |
|
Nice, some users asked for resizable buttons for several devices, they were looking too small. What about another slider to adjust the size by the user if possible? |
:o Sooooo. 2 options :
|
How about activating a button by touching it (color changes) and then you can resize it by making a zoom gesture (moving two fingers) |
API 10 my friend :p |
Soooo. Here are the Adventures of BlisterB in an Android World™. To have a clean and an understandable GUI, use discrete sliders is a good idea (better than implement an ugly thing with a textfield actualized in real time). That's wonderful, this will provide us a wonderful GUI. The only solution (like everytime in android) is to use a library that solve the problem: By chance, this one use a true Apache V2 licence. So we can include it in EasyRPG : Does it poses a problem if I use it ? |
(Of course I can do the textfield thing) |
Sure if you think that external libs are useful add them. |
Yep I finally did the other solution and it's not so bad. Sometimes you just go nuts when you see the difference between what they say you can do and what you really can do lol. Btw the Android port really starts to being cool ^^. But the Google Play (in french) highlights just comments talking about past problems.. What a shame ! Is there a way to hide them ? (As they are solved for a long time). |
Another thing to do : |
The standalone mode has one gigantic problem: It wastes twice the space because the game must be extracted out of the assets. The more complex solution would be to work with Streams in the FileFinder API and not with Filenames... then we could open streams to the files in the asset part of the APK. And no we can't hide anything in the Store. Imo it is really stupid, that all rating are weighted the same way. Older ratings should be downweighted to make it possible to get a better rating over time. |
Yeah that sucks ! Some bad comments from frenchies comes from people which seems to have no idea of what is RPG Maker ^^". I fixed the standalone mode, I saw the problem of copy folders. Why is there a copy ? Because application cannot write file in asset folder ? For the moment it's not a big deal, but we can find solution such as copying file in external storage or use a different folder for save/log/etc. |
The problem is that the Assets are in in an archive, so you can't get a handle to them from the native code. This could be worked around by adding extra code to the following FileFinder functions (native code):
Then it should be possible to use the asset dir directly. https://stackoverflow.com/questions/13317387/how-to-get-file-in-assets-from-android-ndk Should be easily possible to get a FILE* handle by using AAsset_openFileDescriptor and then open this descriptor using fdopen. Will check this during the weekend :) |
Maybe this could be clarified by changing the text in the "Add button" dialog (the user should see this dialog because he searches ESC). |
It sounds to be an excellent compromise
|
There are 3 minor (?) (well it's Android, maybe they are tricky :D) improvements that would be useful: In Game: |
Good ideas, my 2 friends will be available for working on the port in few weeks, this will be a great start for them to understand the project !
We can use a "menu" button in game, the app "My Boy!" use this features and I find it usefull.
Edit the layout in game would be a good improvement but, Android lolilol => will probably kill the game session while the user edit the layout in another activity x). |
I wanted to write the "Force Orientation" on my own. But I gave up after 30min. because I had no idea how to do this. Not even breakpoints worked, the breakpoint is triggered but the activity rotates and native code continues m( |
Haha don't worry this is their problem now xp. Even the SettingsActivity itself. Android provide an Activity helping changing preferences, but it's so limited that I was forced to code it like a normal activity x) (this is why the SettingsActivity is so bulky). |
Maybe we should consider switching to API14 (4.0.4). The amount of people running under 2.3.3 is currently less then 2% (200 devices) and the daily install rate of people with 2.3.3 is 1% (~3 devices). |
How do we do the thumb up icon, I need a lot of them EDIT : 👍 👍 👍 👍 👍 👍 👍 👍 👍 👍 |
But more seriously, we should try to use the Android Support Library before switching to another API. |
(But Android Studio propose some really nice and intuitive Activity with API >= 15) |
And have to correct myself: API 15 is 4.0.3 👍 |
What do you think about keeping the minimum API to 10, but changing the target to 15? |
Do what you want. I don't maintain the Android port 💃 |
Interesting article about the API target concept: http://simonvt.net/2012/02/07/what-api-level-should-i-target/ |
A user suggested an option to disable the music because he prefers listening to his own ;). |
I was thinking about this and I suggested it to one of the french invaders. They will try to find a way to modulate the app volume. |
I don't want an Android only solution for modulating app volume and there is no obvious reason why you should use platform specific code for this. This is also useful for other ports (a friend already complained about the loudness of emscripten) |
Okay, but the user should be able to modulate the volume in app during a game. No ? So if I follow you, we should be able from the android app to call a native function (which act as a callback design pattern on the C++ code?) during a game. |
Of course, we could assume that the user has to go in the settings to modify the volume (so stop the game). It makes sense in the actual form of the app, but we won't be able to add a features such as "modify the volume" in the menu of EasyRpgActivityPlayer. (Of course, we can just have a checkbox to enable/disable volume in Setting, it will be easier to implement - Captain Bash, if your reading that). |
See #794 (comment) So a "Open Settings" option in the EasyRpgPlayerActivity to trigger Scene_Options (which doesn't exist yet) is good enough |
I'll try adding the volume checkbox :) (btw it's kael from the forum, nickname already taken on git ) |
@Souigetsu Thanks Captain, this will be cool waiting the feature of Ghabry. @Ghabry Are you talking of a doing a menu similar to your gamebrowser ? |
I'll try to help captain on this duty! ;) |
Don't worry it's pretty simple. |
Actually I have this problem with "FB Lite" (FB App replacement): Attaching an image is impossible because it opens an indent e.g. file browser or camera. After selecting an image it returns, and the app restarts, because the system doesn't have enough RAM m( |
@BlisterBoy another useful feature would be a language select in the settings. If somebody hates our translation ;) |
@BlisterB can we close this meta-issue? |
Of course :) Le 4 oct. 2016 5:59 PM, "Ghabry" notifications@github.com a écrit :
|
Hi guys !
I open this issue to centralize suggestions about how improve the Android port, don't hesitate to give me job :) !
Idea :
The text was updated successfully, but these errors were encountered: