VCMI for Android


Okay, the build passed.

So fyi, the hack with fuzzylite is preventing hardcoding of the output paths in the lib ( ), because during the build we need the output in arch-based folders (armeabi-v7a etc). This could be probably done using cmake custom commands and copying the lib manually but I don’t know how to use cmake properly.


Latest build works fine. Thanks Fay!!


Hello everyone, im experiensing some problem with VCMI for android. On my old phone, oneplus one, with 4.4 kitkat the program worked fine.
Now i own a leeco le max 2 with 6.0.1 droid. Everything starts normally, i can click on any single player and campaign start, but suddenly when the loading screen comes in either single or champaign, the game drops me out to main screen and closes. Allowed all allowance what the program asked.
Anyone had similar problem and found a solution for it?
Thank you for any help or sugestions you all might can tell me.

I read further more and find out that the google play vcmi is outdated and not works properly. I found the desceiption on the currently working android project. Now the game works, thank you for eveyone and all the dev team for making this wonderful port.
Best wishes and good bless you all.


Hello everyone i have a problem with vcmi for android . if i started vcmi app they show me message ‘"Could not save vcmi config; reason: Attempt to invoke virtual method ‘org.json.JSONObject org.json.JSONObject.optJSONObject(java.langString)’ on a null object reference’ and i cant start game , anyone know what happen ?

I have android v. 6.0.1 and Heroes from


I found the cause of crash at the end of the battle and at the tavern. The whole problem is in .bik files.
Open any file manager. Go to the “/vcmi-data/Data” folder and delete VIDEO.VID. Instead of video there will be a black screen, but the game does not crash!

P.S. Is it possible to replace .bik files with a different format using mods? I’m ready to spend my time and convert all files.


I have a tool to convert bik files into smk files (smk files are played by h3). Unfortunatelly I don’t have enough space on my phone to test them. But I can make a mod with converted files…


I already checked.
Crash occurs regardless of the file format. I was able to run mpg video in the tavern on windows bild, but on the phone I catch an error.


I leave it here…


How??? Teach us!

Little problem on Android

Im found a file format that does not crash. But still need to test. Im understand how make a mod and Ill do it. But i need more time.


I do not understand anything. I have crash in the tavern again with any type of video (even that used to work). But instead of the 3DO logo, any file is played, though slowly and without sound. I think this is a lack of phone resources and it is necessary to optimize the stream of video in the source code.


Is there anyway to use cheats on the latest build? On the play store version there was a ‘tab’ button that I could press and then the keyboard would pop up but I see no such option on the latest builds.

Any help would be appreciated.


I guess there is no way, new android version is not based on old one, and is delivered “as is” for now. VCMI team is working hard on actual gameplay features.


The only way for cheats on android now is to connect it to a keyboard


So from wha I understand only the SDL versions of VCMI had that cheat support…

Do you know what the latest version of VCMI android was based on SDL? I DON’T think it was 0.97 (The playstore version) and where I could find it?

Also unrelated but where did the google play version go? Was it taken down? It’s not there anymore:


There are now only dailies for android. For now at least. Can be downloaded here:



I wanted to try and get this working on my Fire 7 HD tablet (KFFOWI). So I downloaded the latest daily build and transferred over my GoG data to my sdcard to the vcmi-data folder.

When I first ran the app and tried i tried every codepage and every resolution and none actually launched. just black screen then wait a second then back to the launcher.

I then installed the extra resolutions mod which didnt fix the problem on its own but I noticed when I loaded up my logs they stated my devices native resolution was 1024x552

so then I edited the extraResolutions\Content\config\resolutions.json and .jsona files so the first lines “y” value was “552” instead of “600” so it reads like

“resolution”: { “x”: 800, “y”: 552 },

saving that will actually run the game and I know this is a stupid hacky solution but the game was actually up and running on my screen. I am able to mouse through menus and things but randomly when inputting names for hotseat will crash the game. and most frustratingly I cant even start a game at all once i click on begin game the game loads and sometimes ill see “red turn” for a second but most the time its just a straight crash.

I know there’s not much hope and my logs are no help. they don’t seem to point to a single issue at all and infact seem to stop randomly on a different line every time.

im mostly just kinda of pissed at amazon for screwing me out of 48 pixels? all specifications say my device is 1024x600 but its really not

EDIT: in a last ditch effort I grabbed a resolution changer app from the app store and gave myself an extra 48 pixels…10/10 would do again seriously fixed everything!..EXCEPT the input and it still crashes randomly but I can get ingame…

EDIT EDIT: so yeah fresh install with new resolution and random crashing everywhere. I can get in game if I’m lucky but it will crash after a moment. My device having issues is a KFFOWI amazon fire 7 tablet. not the nicest thing but has some power.


Hey, sorry to bother. i looked at the android daily builds and there hasnt been a new build in over a month? Whats happening?


Builds are broken because they are not fully integrated with project’s CMake configuration and from time to time adjustments are needed. Likely easy to fix, but since no one there to look after them they might stay broken for some time still.

Eventually I want to setup build system for Android properly and integrate it with main CMake, but it’s likely to take weeks of work to dig into it so no idea when this will be done.


I see. Thank you. Good luck!