iOS Port

Hey, could you provide a compiled version of the current IOS port? I don’t have a Mac at hand.

COJDAT, built that, it is crashing on startup in void IVCMIDirs::init() … bfs::create_directories(userConfigPath());
with Operation not permitted error.
Is there some quick fix?

Hi! See my previous post about directory/files.

Yea, sure, i added everything required. it crashes exactly on config directory creation.

boost::filesystem::filesystem_error: boost::filesystem::create_directory: Operation not permitted: "/private/var/mobile/Containers/Data/Application/9E684091-DE8B-40CD-B269-1208507B442E/.config"

i tried following dir structures:

.config/<content from git/config>
config/<content from git/config>
config/config/<content from git/config>
.config/config/<content from git/config>

My brother is very interested in this project, but got iOS. Is there any way he can be a tester of this project?

Its would be really be worth if you can provide us with the ios port with original project.?

Currently working on the iOS port: https://github.com/kambala-decapitator/vcmi/tree/ios-wip

So far managed to launch app on device and see main menu. iPhone needs letterboxing, iPad looks good.

Turned out that having both client and server within a single process is impossible due to current VCMI architecture, so iOS has to run separate client and server apps for single player. Without jailbreak this is possible only on an iPad with multitasking features that supports Split View.

Now main dev branch is https://github.com/kambala-decapitator/vcmi/tree/ios-wip-server-app

created TODO list: https://github.com/kambala-decapitator/vcmi/issues

1 Like

@kambala I have no idea how any of this works, but i love to play Heroes 3 on iPad.

I’ll post an alpha build in the next days for anyone to try

Hello Kambala , i would be glad to test it ,
do you have a tutorial for building it ?
is there is any discord on the project ?

Hi! No tutorials so far, but I’ll try to write one over the weekend. Also no alpha build posted yet because I haven’t created a good tutorial on sideloading apps that require entitlements yet, will try to do that as well.

Basically, you need to get ffmpeg libraries (easy to google GitHub projects with prebuilt ones), build boost with https://github.com/faithfracture/Apple-Boost-BuildScript (but you need to use updated script from PRs) and build SDL2 (but that’s trivial to do). After that you can use cmake configure script similar to the one in my fork.

As for discord, there’s slack, see top of the page.

resumed working on the iOS version.

rebased iOS port to the latest develop, it’s now in a different branch - ios-port

updated all dependencies (except SDL_mixer, new version is crashing in both iOS and macOS) to the latest versions

having some real progress: single player is possible in a single app now! VCMI single player on iOS - YouTube

created beta version: Release First beta version · kambala-decapitator/vcmi · GitHub

1 Like

Hello Kambala,

I just installled it and test few things ,
The Music dosnt work for me , i tried to delete and reupload properly the Mp3 folder but its not fixing it.
The Cinematics also dont have sound for me , must be also related to my Mp3 folder.

Note that Effects sound does work.

My Data/Maps folder seems to work properly .

I tried to launch campaign, single scenario , no issue building, fighting, so far no bug really noticeable , I ll spend more time to test . The game speed seems to run better than the original version.

Files im using for Data/Mp3/Maps : Gog version of Homm3 Complete.
Sofware i used to import : iMazing .

Device tested:
Ipad M1 12.9’ on iOS 15.5 , NJB
Installed via Alstore with paid dev acount

One feature would be cool is to change the icon from the launcher or settings maybe ?
Otherwise Thank you so much , really awesome job , im really amazed how good it runs !

glad to hear that all works! and especially via AltStore.

Yes, it’s related to mp3 format. You can convert those files to ogg and music will work. I’ll see if I’m able to enable mp3 format at a later point.

I’ll create proper icon for the next build, thanks for reminding! I’ll also check if it’s easy to add some nice splash screen.

1 Like