Would love to give that port a try but unfortunately it crashes silently on my tablet. And that's despite it being more or less capable enough of playing the game - 1GB RAM, a Mediatek MT6382 quad-core, etc. I could give a logcat if you want to.

I don't have any Android device now too. I'm still running on Symbian
Only on monday at work I can capture some gameplay.

ASM. wrote:

Nice!

Is there a video somewhere showing this in action? I don't have any Android devices to test it myself.

I played it on Nexus 7 tablet (Android 6.0.?) with no crashes, draw distance about 250 m, low res shadow maps with one cascade at about 25 FPS.

huckleberrypie wrote:

Would love to give that port a try but unfortunately it crashes silently on my tablet. And that's despite it being more or less capable enough of playing the game - 1GB RAM, a Mediatek MT6382 quad-core, etc. I could give a logcat if you want to.

I don't have any Android device now too. I'm still running on Symbian
Only on monday at work I can capture some gameplay.

ASM. wrote:

Nice!

Is there a video somewhere showing this in action? I don't have any Android devices to test it myself.

I played it on Nexus 7 tablet (Android 6.0.?) with no crashes, draw distance about 250 m, low res shadow maps with one cascade at about 25 FPS.

huckleberrypie wrote:

Would love to give that port a try but unfortunately it crashes silently on my tablet. And that's despite it being more or less capable enough of playing the game - 1GB RAM, a Mediatek MT6382 quad-core, etc. I could give a logcat if you want to.

Well considering the frame rate I very much doubt that the game would even run on my low-end device. Not unless if the renderer's lightweight and/or if shadows are baked as opposed to realtime.

Did you convert the original assets or did you write some custom loaders for direct consumption of LS3D formats (if that is even possible in Unity)?

How do you handle scaling of cache.bin models? In mview/MWE I use the first scaling vector (the one that follows after the quaternion in 0x07D0 blocks). However that yields incorrect scaling for a small set of model instances like the brick walls at the docks (base250).

What are your plans with the project going forward if you don't mind me asking?

I wrote several editor scripts (same as game scripts in C# but they are triggerable in editor widnow e.g. via top menu ~ plugins) for converting textures (needed for color key detection), models from 4ds into Mesh and scripts for converting objects in scene2.bin and cache.bin. Last two scripts makes Prefabs from Game Objects. I also wrote script for making shader variants and Materials. All resources are saved into Assets folder using AssetDatabase.

I forgot which one scale must be used then I used incorrectly both.
I also had some problems with quaternions because in 4ds and scenes are some axes inverted and order and direction of axes from rotation to quaterion (and vice versa) is different in Unity.

Now, I have no plans about further development and I don`t want to promise something

It's very nice and great work. It reminds me I've been recently thinking about a completely open-source reimplementation of Mafia engine in the style of OpenMW or OpenRW. Would anyone here be interested? I don't feel I have enough experience to lead such project now so I'd be glad if somebody else took that burden, but I've been contributing to OpenMW for a while now and would be more than happy to take part in OpenMafia. Let me know if you're interested

EDIT: A few things we could get, to maybe get people hooked:

- native support of Mafia on all platforms (Widnows, Linux, OSX, Android, iOS, ...)
- unlimited and super-easy modability
- modern graphics and physics
- new features (multiplayer? swimming? planes? ...)
- completely new from-scratch games in that engine
- fix all bugs in the original game