How to install • Controls • Known Issues • How to compile • Credits • License
Modern Combat 3: Fallen Nation is a 2011 first-person shooter developed and published by Gameloft Montreal for a number of mobile platforms. The game is set in 2028 where North Korea, Russia and Pakistan join forces to invade USA, thus causing a global war. Modern Combat 3 features an intense 13-mission campaign with impressive cinematics and memorable moments.
This repository contains a loader of the Android release of Modern Combat 3 v1.1.7g, based on the Android SO Loader by TheFloW. The loader provides a tailored, minimalistic Android-like environment to run the official ARMv7 game executable on the PS Vita.
Modern Combat 3: Fallen Nation is copyright © 2012 Gameloft. All rights reserved. Gameloft and the Gameloft logo are trademarks of Gameloft in the U.S. and/or other countries.
The work presented in this repository is not "official" or produced or sanctioned by the owner(s) of the aforementioned trademark(s) or any other registered trademark mentioned in this repository.
This software does not contain the original code, executables, or other non-redistributable parts of the original game product. The authors of this work do not promote or condone piracy in any way. To launch and play the game on their PS Vita device, users must possess their own legally obtained copy of the game in the form of an .apk file.
In order to properly install the game, you'll have to follow these steps precisely:
-
(Recommended) Make sure that you are either on 3.60 enso or 3.65 enso firmware version. Other versions may work too, but no support are provided for them! If you experience any issues apart from described in the Known Issues section, please upgrade or downgrade your firmware accordingly before asking for support.
-
Install or update kubridge and FdFix by copying
kubridge.skprx
andfd_fix.skprx
to your taiHEN plugins folder (usuallyur0:tai
) and adding two entries to yourconfig.txt
under*KERNEL
:
*KERNEL
ur0:tai/kubridge.skprx
ur0:tai/fd_fix.skprx
! ⚠️ Don't install `fd_fix.skprx` if you're using the rePatch plugin!
- ⚠️ Even if you had `kubridge.skprx` installed before, most likely you still
- need to update it, since a new version of the plugin was released at the same
- time as this port. kubridge v0.3.1 or newer is required to run the game!
-
Make sure you have
libshacccg.suprx
in theur0:/data/
folder on your console. If you don't, use ShaRKBR33D to get it quickly and easily. -
Legally obtain your copy of Modern Combat 3 for Android in a form of an
.apk
file and data files. This port is tailored for v1.1.7g (latest) version of the game. Other versions may work too but no support is provided for them.- If you have it installed on your phone, you can get all the required files directly from it or by using any APK extractor you can find on Google Play.
ℹ️ Verify that your build is the correct one using sha1sum (can also be found as an online tool). sha1sum for
lib/armeabi-v7a/libModernCombat3.so
must bebe0d5e8779899e081a538b3930ec711d2df8aeb4
-
Open the
.apk
with any zip explorer (like 7-Zip) and extract the filelib/armeabi-v7a/libModernCombat3.so
from the.apk
intoux0:data/mc3/
on your Vita. Example of correct resulting path:ux0:data/mc3/libModernCombat3.so
-
Fetch the game data files from your device. You can find them at
/sdcard/Android/obb/com.gameloft.android.ANMP.GloftM3HM
. Copy both files you find there (patch.11428.com.gameloft.android.ANMP.GloftM3HM.obb
andmain.1120.com.gameloft.android.ANMP.GloftM3HM.obb
) toux0:data/mc3/
on your Vita. Example of correct resulting path:ux0:data/mc3/main.1120.com.gameloft.android.ANMP.GloftM3HM.obb
-
Unpack the video files from the game data. To do that, open your
patch.11428.com.gameloft.android.ANMP.GloftM3HM.obb
with any zip explorer (like 7-Zip) and extract all files to/ux0:/data/mc3/data/briefing
on your Vita. Example of correct resulting path:ux0:data/mc3/data/briefing/Briefing_M01.mp4
-
Install
ModernCombat3.vpk
(from Releases). -
(Optional) Install CapUnlocker. It may give you a bit better performance.
-
(Optional) For trophies to be unlockable, install NoTrpDRM.
Button | Action |
---|---|
Move | |
Control camera | |
Aim | |
Fire | |
Sprint | |
Crouch | |
Change weapon | |
Grenades | |
Reload | |
Open Menu |
- Multiplayer doesn't work, same as on Android, because the servers have been shut down.
- button works only in main menu. For in-game interaction prompts and pause menu you will have to use the touchscreen.
- The highlight effect on interactable objects is constant instead of flashing like in the original game due to some GXM limitations.
- In Mission 7, crosshair is not showing when the sniper rifle is zoomed in. You will have to no-scope it :^)
In order to build the loader, you'll need a vitasdk build fully compiled with softfp usage. The easiest way to obtain one is following the instructions on https://vitasdk.org/ while replacing the URL in this command:
git clone https://github.com/vitasdk/vdpm
Like this:
git clone https://github.com/vitasdk-softfp/vdpm
All the required libraries should get installed automatically if you follow the installation process from https://vitasdk.org/.
One thing you'll need to recompile by hand is VitaGL.
In source/draw.c
at the start of each glDraw*
function, add the following line:
if (mode == GL_POINTS) return;
And then compile and install using the following flags:
make SOFTFP_ABI=1 NO_DEBUG=1 NO_DMAC=1 -j$(nproc) install
After all these requirements are met, you can compile the loader with the following commands:
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Debug # Or =Release if you don't want debug logging
cmake --build build -j$(nproc)
Also note that this CMakeLists has two "convenience targets". While developing, I highly recommend using them, like this:
cmake --build build --target send # Build, upload eboot.bin and run (requires vitacompanion)
cmake --build build --target dump # Fetch latest coredump and parse
For more information and build options, read the CMakeLists.
- Andy "The FloW" Nguyen for the original .so loader.
- Rinnegatamante for help with rendering issues, audio/video playing issues, video player code, trophy support code.
- CatoTheYounger for quality assurance.
- Once13One for LiveArea assets.
- GrapheneCt for CapUnlocker.
This software may be modified and distributed under the terms of the MIT license. See the LICENSE file for details.