Also in future we can just make Android builds on every commit / branch / PR just like we do for Linux GCC, Linux Clang, MXE and Mac. Sadly that would take time to implement and I have tons of other tasks on project right now.
Ok. For now itâs set to only build âfa02900â commit from develop.
Please make it always build develop HEAD and also get rid of âinternalData.zipâ.
Now I just no longer sure git submodules is right tool for the task there.
So probably this need to be changed at least for Travis buildsâŚ
So I donât want to disrupt your workflow. Should we just implement cloning of actual VCMI develop instead of using submodule when itâs build by Travis?
Iâm not very knowledgeable about more complex git stuff, so just go ahead if you see a solution.
Can we just add git commands to .travis.yml?
- switching to correct branch based on external param
- git pull in the submodules (but this might be not needed because switching to the branch should use latest commit?)
I just not sure itâs actually worth to use submodule in this situation.
Probably I missing something, but most likely they not intended for that kind of use. E.g there no way to make git automatically grab latest commit. Iâll check how we can solve this.
Ok updated it and your patch actually fixed problem with red color on my device. Now only visual glitches I have is misplaced into video and some 1-2pixel line at bottom whee some weird white pixels could be flickering at times. I actually even managed to screenshot both line and intro glitch. I sent them through slack, please download one with line so you can see it.
Also one question there. Is internalData actually override assets from VCMI directory? Like âconfigâ directory.
I understand you wanted to include some mods that are not in repository here, but really we cannot ship âextraResolutionsâ to Google Play. I not sure, but itâs might be made using H3 assets as source.
Other than that weâll need to find out how to ship default mods after Iâll change how we distribute them.
Yay.
(actually, this might need some confirmation if it doesnât break anything: the fix changes pixel mode chosen by gl to hardcoded RGB565 with 0 depth buffer)
You can add a call to âpython3.5 ./update_internal_assets.pyâ on travis and assets will be recreated. Basically internalData is zipped content of Mods and config on repo. (the update_internal_assets script also tries to pack ./âŚ/data/vcmi_submods folder, where I have templates + extra resolutions â recreating assets on travis wonât include them).
Edit ~ actually, some more explanations about overriding: I tried to organize the files like in the desktop version:
- âinternalâ data that normally is in executable folder is placed in private, application-scoped folder (unpacked from internalData when starting the application for the first time)
- âpublicâ user data that normally is in â$appdata-likeâ location (config/settings.json, saves, maps etc) are in public folder that user can modify/delete
Downloading these submods on startup shouldnât be a problem (but we probably should ask the user if he wants to; Iâm not sure how common users without data plans are ).
@Intro: Do you mean that thereâs some unused space on the top/left? It looks the same for me AND these black margins are also present in the desktop version as well.
@bottom line: this will be much harder to debug. Honestly, this looks like some problem in SDL. Might also be connected to this post [forum.vcmi.eu/t/vcmi-for-android/784/199) where sdl displays random junk in the letterboxed space on the sides.
Problem is that we absolutely shouldnât include mods with unclear licensing to our Google Play packages. After all itâs should be doable to rework them with free assets instead (extraResolutions at least).
Yeah, I meant we can solve it like this:
- place these submods somewhere online,
- build android package without them (rebuilding internalData without submods),
- after starting the app for the first time (or basically any time when submods are not detected) ask user if he wants to download them -> download&unpack them to internal data folder.
Well, assuming that this method would be legally possible.
Hello Fay,
Issues:
Doesnât load next scenario of campaign after showing introduction video of it. Hang on main picture - in my case third from [forum.vcmi.eu/t/vcmi-for-android/784/199).
Auto fight crashes VCMI right before showing results (creatures lost by attacker & defeater, âŚ). Does in release version, doesnât in latest develop.
Fight is something like âtap-action-tap-action-tap-âŚâ or LONG wait for actions with pointer mode set to âNative with map swipeâ. In dev.
Android keyboard could be made more usefull (hide,show,arrowsâŚ) when saving scenarios? something like in JuiceSSH during session.
I could upload saves. HMM III Complete, Android 7.0 & Android 6.0
Related to:
VCMI-1.4-api21-20170515-release.apk
VCMI-branch-develop-01e5f99-fb57108.apk
Do you mean ânext scenarioâ as in moving to the next mission after winning the previous one? I guess I can check that, but it doesnât look like android-specific problem.
Yeah, this was the vcmi problem at the time I built the app last time. Use automatic builds if possible, theyâre the most up-to-date.
Iâm not sure what you mean⌠pointer modes shouldnât affect the performance (and even if they did, itâs relative mode that would be slower, as it needs some extra calculations). And if you mean the performance in general, then there isnât much that I can do from android side.
Currently keyboard handling uses default SDL android implementation and I never really analyzed the logic. But honestly Iâm not sure what to do there. Waiting for ideas.
One thing I can think of (not strictly about the keyboard) is to add the button to open the chat/console, because I donât think there is a way to do it in the gui.
@SXX
I found out that the fix for the âred backgroundâ wonât behave correctly on all devices and will crash the app if that device doesnât support the surface type that I forced. In this case Iâll probably need to add some better egl capabilities detection (a simple solution would be to check if RGB565/Depth0 is supported, otherwise fall-back to the gl-chosen default values â not sure if itâs possible to implement without messing up SDL config).
BTW today I played short game on Android and so far only problems I seen is battle machines tend to appear in army (though I guess this could be problem with outdated bundled config files) and also battle end tend to crash game for some reason.
Small note. I dropped VCMILIB_ADDITIONAL_SOURCES from CMakeList and instead added âifdefâ for Android-specific code. I hope this wonât break something since I really hope to at least share CMake configs.
Hello, Fay.
Iâve findout that issue not in ânext scenarionâ but even on second loading after one game was already loaded without complete exiting (to âdesktopâ) from game.
Iâve recorded videos with issues.
Next scenario hang - youtu.be/6Ev4pwCwzBE
Second load hang - youtu.be/qrPXmB2SEZ0
Slow fight - youtu.be/O867LD377Qs
Large keyboard vs keyboard use in JuiceSSH - youtu.be/Tc0ET_YVZMk
Hello SXX,
Where I should report not android related issues?
Because iâve tried to switch to ânext scenarioâ on PC (Linux) and one campaign scenario (Clearing the Border) loaded ânext scenarioâ (After the Amulet) and i saved it to continue on android, but other campaign scenario (Graduation Exercise) crashed vcmi on PC on loading next scenario of campaign.
Our bug tracker is here:
bugs.vcmi.eu
But use search first because most likely this is already reported.
There are issues with campaigns for quite some time.
Sorry, I tried to merge some of the CMake projects locally, but failed. Still unsure why itâs fail to build now because I added CAndroidVMHelper into the main CMakeLists.txt of our lib. .