iOS Port

Hi all.
Instruction
After installation you need copy some folders and files to Documents directory. You can copy by iTunes (i share Documents folder for this application).
Need following folder structures in Document directory:
Data
Maps
Mp3
config
Games
Mods

In Data folder copy H3*.snd,H3*.vid,H3*.lod,VIDEO.VID files from original HMM3 game
In Maps folder copy maps files from origin game (*.h3m)
In Mods folder copy vcmi folder from Mods folder in sources.
In MP3 folder copy MP3 folder from origin games.
in config folder copy config folder from source code.
After that you can start test/game.
Enjoy

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 !