The port-specific code and this documentation were generated with OpenAI Codex. Fully vibecoded, directed and tested by LeZergan.
Inherited community code and the original game retain their own authorship and licenses. The port has not had a complete playthrough. Expect unexpected bugs.
Unofficial PS Vita loader for the Android 4.5.2 ROW build of Plants vs. Zombies 2.
Download — Report a problem — Discord
| Loader | PvZ2 1.1 RC11 (452-v1.1-rc11) |
| Supported Android set | 4.5.2 ROW, version 147, ARMv7 |
| Data path | ux0:data/pvz2 |
| Licence | MIT, with third-party notices |
No Android game files are included. You must supply your own matching
libPVZ2.so and main OBB.
1.1 RC11 beta is available. Install its VPK over the previous version and keep your existing game files and saves.
RC5–RC11 fix audio queue locking, configuration startup races, JNI string handling, and a texture-worker handoff identified in a hardware loading freeze. RC11 also reuses matching shader pairs within a session and moves periodic log writes off the game thread. The latest RC10 hardware log reaches 15,300 frames without a stall report. RC11 hardware performance is not yet measured; busy waves and some transitions still need work. See the RC11 release notes and performance evidence.
Install the following on a homebrew-enabled Vita before the loader:
| Component | Location | Notes |
|---|---|---|
| VitaShell | — | Used to install the VPK and copy files |
| kubridge | *KERNEL |
Required; reboot after installing |
libshacccg.suprx |
ur0:data/ or ur0:data/external/ |
ShaRKBR33D can install it |
Use 4.5.2 ROW / version 147 game files. Other builds are not supported. Check file sizes and hashes.
Install pvz2-vita-latest.vpk with VitaShell.
Put your libPVZ2.so and main OBB in a folder named pvz2. Rename the OBB
to game.obb.
Copy the pvz2 folder into ux0:data/. The result must contain:
ux0:data/pvz2/
├── libPVZ2.so
├── game.obb
└── userdata/ ← created automatically
Launch Plants vs Zombies 2 from LiveArea. Do not nest a second pvz2 folder
inside the first. The older main.147.com.ea.game.pvz2_row.obb name is also accepted.
Install the new VPK over the old version. Keep both game files and userdata/.
Back up userdata/ to preserve your progress.
- Play until the problem happens.
- Close the game from LiveArea if it is still running.
- Do not launch it again yet.
loader.logis reset at the start of each launch. - Copy
ux0:data/pvz2/userdata/loader.logoff the Vita using VitaShell. - Attach it to a bug report.
Send the whole file. Include stall.log, runtime.log, jni.log and a previous log copy if
available. Each port log is capped at 2 MiB plus one previous copy.
For a crash, keep the matching psp2core-…-eboot.bin.psp2dmp for diagnosis.
Use the bug report form. Include:
- the build ID and exact world, level or menu
- what happened, and what you expected instead
- whether it happens every time and how long the game had been running
- your Vita model, firmware and any performance plugins or clock changes
Never upload the proprietary game library, APKs, OBBs or saves containing private information.
Use the touchscreen to navigate and play. Circle goes back, Start opens the menu and Square deletes text. Tap a text field to open the Vita keyboard; confirm replaces the field, cancel keeps it. The game's character rules still apply.
Saves, settings, logs and caches live in ux0:data/pvz2/userdata/. Older save
locations migrate automatically; conflicting copies are preserved and reported.
- Slowdowns during power activation.
- FPS drops when many zombies are on screen.
- You may experience crashes; the loader is very early in development.
- First-time shader compilation can stall new scenes.
See the private testing guide for the current evidence and the short test route.
The loader requires the softfp VitaSDK and the libraries listed in the build guide. A hard-float SDK is rejected.
.\scripts\build-vita.ps1 -SoftfpVitaSdk C:/tools/vitasdk -GameObb D:/game-files/game.obbThe output is out/pvz2-vita-latest.vpk. VPKs, extracted game data and proprietary
Android files are excluded from source control.
No Android executable, library, OBB or gameplay archive is included or linked. This is an unofficial fan project, unaffiliated with PopCap Games or Electronic Arts. Game names, artwork and trademarks belong to their respective owners.
- LeZergan — project direction and real Vita testing.
- OpenAI Codex (AI contributor) — port implementation, fixes and documentation.
- standard republic — LiveArea assets; KingTorro — port credit in the supplied layout
- Andy "TheFloW" Nguyen —
.soloader groundwork, so_util, fios and kubridge - Rinnegatamante — vitaGL, vitaShaRK and math-neon
- Volodymyr Atamanenko — soloader-boilerplate and FalsoJNI
- GrapheneCt — shared Vita runtime groundwork
- OptiJuegos / PvZ2Native — 4.5.2 lifecycle and input behavior reference
- Brad Conte — SHA-1; Michael G Schwern — time conversion; the miniz authors and VitaSDK team
- PopCap Games and Electronic Arts — game and IP; not affiliated
Full attributions are in THIRD_PARTY_LICENSES.md.
Loader source is licensed under the MIT License. Inherited and third-party components retain their own notices. Game data and branded artwork are not relicensed by the port's source license.
0 comments
log in to comment.