Homebrew Homebrew game Plants vs Zombies Fusion - Switch Port

ChanseyIsTheBest

Well-Known Member
Member
Joined
Aug 26, 2022
Messages
497
Reaction score
749
Trophies
0
Location
Australia
XP
1,844
Country
Australia

Plants vs Zombies Fusion — Nintendo Switch port​

A native Switch wrapper for Plants vs Zombies Fusion 3.6.1, a fan project whose Android build runs on Unity 2022.3.62f1c1 with IL2CPP.

https://github.com/ChanseyIsTheBest/pvz_fusion_en_nx
Original game source:

https://github.com/Teyliu/PVZF-Translation/releases#release-3.6.1_android

2026072018252400-4C50C9E55CE6EFA8AC8E22437051E3C3.jpg

2026072018233600-4C50C9E55CE6EFA8AC8E22437051E3C3.jpg
 
@ChanseyIsTheBest
Thanks!.. The game shows that screen:
scr.jpg
Then it turns completely black for ~20 seconds, then it crashes.. Could you please check the data path, is it right?..
Code:
└───switch
    └───pvz_fusion
        └───assets
            └───bin
                └───Data
                    └───Managed
                        ├───Metadata
                        └───Resources
 
@ChanseyIsTheBest
Thanks!.. The game shows that screen:
View attachment 582787
Then it turns completely black for ~20 seconds, then it crashes.. Could you please check the data path, is it right?..
Code:
└───switch
    └───pvz_fusion
        └───assets
            └───bin
                └───Data
                    └───Managed
                        ├───Metadata
                        └───Resources
Yes that path log is correct. Make sure you are using the right 3.6.1 EN .apk and make sure you have the four lib.so files you need. Sorry about the long loading
 
Very awesome.
This may be a silly question, how do these native Switch wrappers work?
I am very interested in this because I was hoping to request from someone the fanport of Marble Blast Ultra, but I'm merely wondering as there have been a boatload of ports for NX lately.
 
Very awesome.
This may be a silly question, how do these native Switch wrappers work?
I am very interested in this because I was hoping to request from someone the fanport of Marble Blast Ultra, but I'm merely wondering as there have been a boatload of ports for NX lately.
https://github.com/RandomityGuy/MBHaxe
The apk has a arm64-v8a folder so it likely can be ported.

This is a previous explanation I have given + AI is good really good making these ports.

I'd probably explain it as essentially we are running all the of the game's code natively on the Switch CPU, however we have to patch some minor stuff in the game to reroute to the correct output as Android and HOS have differences. I would argue it tends to be more on the side of a wrapper then a port since we aren't recompiling or rewriting game code.

Some examples all the games graphical rendering is routed through homebrew graphics drivers instead, we have to reroute the controls and audio as well. Unity games have to patch to change their memory allocation because what works on Android doesn't work on Switch and we have to patch games to read from the right file directory. There's plenty more then that as HOS and Android have a lot of differences.
 
https://github.com/RandomityGuy/MBHaxe
The apk has a arm64-v8a folder so it likely can be ported.

This is a previous explanation I have given + AI is good really good making these ports.

I'd probably explain it as essentially we are running all the of the game's code natively on the Switch CPU, however we have to patch some minor stuff in the game to reroute to the correct output as Android and HOS have differences. I would argue it tends to be more on the side of a wrapper then a port since we aren't recompiling or rewriting game code.

Some examples all the games graphical rendering is routed through homebrew graphics drivers instead, we have to reroute the controls and audio as well. Unity games have to patch to change their memory allocation because what works on Android doesn't work on Switch and we have to patch games to read from the right file directory. There's plenty more then that as HOS and Android have a lot of differences.
Thank you!

That gives me a lot of insight on how the brews I am utilizing function, and it really does clear up how some of these were being released at such a breakneck pace; some of them have been really awesome and it is fun to put in Issues for glitches on apps on GitHub.
Would you happen to know anyone who is taking requests for Android - Horizon wrappers?
 
  • Like
Reactions: ChanseyIsTheBest
@mathew77 is it still crashing? Did you get it working?
First of all, I'd like to thank you for creating this port.

We need to know whether mathew77 used Title Override to launch the game. Based on my testing today, it seems that launching the game directly through the forwarder is prone to crashing.

Additionally,when a Switch Pro Controller is connected, I can tap the plants in Plants vs Zombies Fusion while playing in handheld mode. However, after switching from handheld mode to docked (TV) mode, the touch controls stop working. Also, launching the game via Title Override in docked mode tends to crash frequently.
 
Yeah
First of all, I'd like to thank you for creating this port.

We need to know whether mathew77 used Title Override to launch the game. Based on my testing today, it seems that launching the game directly through the forwarder is prone to crashing.

Additionally,when a Switch Pro Controller is connected, I can tap the plants in Plants vs Zombies Fusion while playing in handheld mode. However, after switching from handheld mode to docked (TV) mode, the touch controls stop working. Also, launching the game via Title Override in docked mode tends to crash frequently.
Touch controls don't work in docked mode that is correct. Do you mean the pointer controls with the stick and cursor?. I'm guessing you mean you originally played in handheld went to docked and then went back to handheld and touch controls stopped working then.

I haven't tested with any fowarders yet I just launch through the homebrew menu. Weird how it crashes in docked when launching more because resolution is same is in handheld and docked as I set things up.

I can tell you in handheld mode I have never got a crash launching the game.
 
Sorry, I described it incorrectly.

The first issue is about the Pro Controller. It works normally while the Switch is in handheld mode. However, after I connect the console to the dock, the Pro Controller remains connected. The left analog stick can still control the mouse cursor normally, but none of the controller's buttons respond when pressed.

The second issue occurs when I boot directly into TV mode with the Pro Controller already connected, and then launch the game using Title Override. The game crashes immediately on startup, before the logo even appears.

This one is harder to pin down. I can't say for sure whether it's related to my CFW setup or any installed plugins. I'm running Atmosphère 22.5, and the only overlay/plugin I have enabled is Ultrahand Overlay.

Based on my testing so far, the results are exactly as you described. Launching the game via Title Override while in Handheld Mode works perfectly fine.
 
  • Like
Reactions: ChanseyIsTheBest
Did you get it working?
Noo...
@mathew77 is it still crashing?
Yeah, still crashing. I use the generated NSP forwarder from https://nsp-forwarder.n8.io/ though.

A game won’t start when I use Nro forwarder. It shows pvz fusion logo and Unify, then crashes.
The very same, alas...
Based on my testing today, it seems that launching the game directly through the forwarder is prone to crashing.
Guess you're completely right, sir. :(
 
Last edited by mathew77,
  • Like
Reactions: herowang

Site & Scene News

Popular threads in this forum