This is a guide for playing the original Pikmin for the Nintendo Gamecube in third person Virtual Reality using the Dolphin VR emulator and a VR headset that's capable of connecting to PC.
Before we get any further into this, let’s get the bad news out of the way first: no, there currently isn’t a way I’ve found to play the game in first person VR. You can edit the game’s camera to put your head roughly at Olimar’s position, but the game always tries to clip the area around the camera (and by clipping I mean it makes it invisible). Dolphin VR does have a setting for disabling near camera clipping, but the game still renders objects in this area in pitch black and it just looks bad. You’re not completely out of luck if you’re looking to play Pikmin in first person as it is possible to do in Pikmin 2 and I’ll be making a separate guide on that later. Also, this tutorial only works for the Gamecube version of Pikmin. While I believe you should be perfectly able to play the Wii version in Dolphin VR, we’ll be relying on a number of Action Replay and Gecko codes to make the experience worthwhile that as far as I’m aware do not exist for the Wii version.
Well, for starters, because it’s cool. Pikmin takes place on Earth and canonically, the game’s protagonist Captain Olimar is roughly the size of a US Quarter. By adjusting the size settings in Dolphin VR, you can adjust the scale of the game world to the appropriate size and play the game as if it’s unfolding just below your feet.
The second main reason why you should try Pikmin in VR is that by combining codes to disable culling throughout the entire world with the head tracking and 3D view in VR, you can see a huge position of the map at once just by looking around. You can multitask easier by checking on your Pikmin even when they’re far from Olimar and would be well out of view of any of the original game’s camera angles. The depth of the 3D perspective of the headset also makes it slightly easier to hit airborne targets.
First, we’ll go over some basic setup to get the game running smoothly in Dolphin VR. This should be fine for a vast majority of users. However, for people who like to tinker, I’ll later show you how you can adjust the game’s camera controls to work a bit more appropriately with our new VR perspective.
You will need the following:
Dolphin VR latest version
A recent beta version of Dolphin v5
I’m using 5.0-16380 currently
Yes, you will need both the regular and VR versions of Dolphin as some features only exist in one or the other.
A Pikmin 1 for Gamecube iso (preferably one of the later revisions)
No, I will not be providing any links as the only legal way in the US to obtain the file is to rip it from a copy of the game you own yourself. If you need help, google how to rip Gamecube games as there’s several different ways to set it up (mostly involving jailbreaking your Wii)
A capable PC
A VR headset capable of connecting to PC
Quest/Quest 2/Quest Pro will work, but you will need to connect to PC using Virtual Desktop or Oculus Link. You cannot run it on the headset itself.
Launch Dolphin (the non-VR version) and go to options, then Configuration and add the file path containing your iso to the paths. You should see Pikmin appear in your game list.
Right click on Pikmin in the game list and click Properties. Click AR codes. You should see a long list of AR codes that are automatically loaded by Dolphin. Check “No Blur”, close that window and then close out of regular Dolphin.
Now, launch Dolphin VR. Again, right click on Pikmin and go to properties and AR Codes. If you scroll to the bottom of the list you should see that Dolphin VR has also added its own codes for disabling culling of many items. Personally I have checked to disable culling for every item that isn’t marked “Unknown effect”. Note that the Enemies and Flowers one warns that it’s slow and not to use it. It’s entirely possible your system may not be able to handle it but I enabled it and it was just fine on my machine and it definitely improves the game experience a ton.
You’ll notice a 60 FPS hack code in the list as well. Do NOT check this. From my experience, it does make the game run at 60FPS, but I’ve noticed Olimar has serious issues grabbing Pikmin and throwing them with it enabled. Instead, use the 60Hz Gecko codes at this link for your respective region: https://wiki.dolphin-emu.org/index.php?title=Pikmin_(GC)#60Hz
Now, let’s set up all of our other Dolphin VR settings starting in the VR tab on the game. The default settings provided by Dolphin VR here work just fine as is if your only goal is to just play the game in 3D, but it does technically make Olimar larger than he is canonically so I’ve been working with Units Per Meter set to 350 instead.
Rather than explaining every single little setting I'll show screenshots of the settings I'm using which have been working for me. Your mileage may vary on how well these settings work on your machine. We'll start with the game config and VR options you get when you right click on the game and go to properties.
For the VR Units per Metre setting, 350 should make Olimar roughly match his canonical real world height of about three quarters of an inch. If you want the game world to be larger relative to the player, you would decrease this number. If you feel Olimar and the game world need to be smaller relative to the player, you would increase this number.
We'll skip the other tabs because we either don't need to touch them or already touched them with the codes setup from earlier.
This is the menu that opens when you click "Config" in the main Dolphin window. We'll only care about the General and Advanced tabs here.
Note that the CPU Clock override being set to 200% was actually an accident on my part from when I was testing the AR 60FPS hack that recommended increasing it. However, it hasn't seem to have had any noticeable ill effects so I've left it for now. However, I'd actually recommend starting with it at 100% and seeing if 200% is necessary.
This is the menu that opens when you click "Graphics" in the main Dolphin Window. Obviously, Adapter would be whatever graphics card you have, not necessarily an RTX 3070.
This is the menu when you click "VR" on the Dolphin Menu.
There's also a hot key settings menu in the options dropdown. Go there and be sure to set "Freelook Reset" to a button on your controller that isn't being used for gameplay. This will be used for reseting your view in VR.
That's it for Dolphin setup, but there's one last thing we need to do.
With the above options set, I found that when I loaded the game, it did run at 60 frames per second but that the cutscenes also ran at double speed. Now, if you’ve played the game before you may be thinking “that’s fine, I don’t need to see them anyways”, but certain flags and actions occur during cutscenes that break including the Red Onion never shooting out a seed, rendering the first Day impossible.
Now, I use an Oculus Quest 2 and as far as I could tell, the key to fixing this was to disable any space and time warping done by Oculus and Steam.
For Oculus, go to the debug tool located in your Oculus install folder (likely Program Files\Oculus. Go to Support, then oculus-diagnostics and open the OculusDebugTool. In here, find (PC) Asynchronous Spacewarp and disable it. You may want to have a shortcut to this tool on your desktop for ease of use later as Asynchronous spacewarp can be very helpful for more demanding titles and you will likely want to re-enable it in the future.
Personally, I use a Quest 2 with virtual desktop to remotely play on my PC and it has its own built in handy option for disabling the equivalent setting for Steam VR. Unfortunately I don’t have a native Steam VR headset to give any help if you’re having issues with it, and I was unable to locate the way to disable it within Steam VR nor did google help me in this case since most of the information I found was outdated. It’s entirely possible you may not even need to disable it in this case since I’ve heard it’s a bigger issue when using Virtual Desktop than Steam VR natively but unfortunately I can’t really help at this time if you’re on a Steam VR headset.
This is definitely NOT for VR beginners. The game’s camera was never designed with this in mind obviously so using L to move the camera behind Olimar will result in the world shifting positions wildly. Personally I’ve played enough VR stuff that this does absolutely nothing to me but if you’re new and still suffer from VR motion sickness, you may want to sit this one out.
Also there are some issues that I should address as well. LIfe bars on enemies do not work properly. Personally, I don’t mind not knowing how much health enemies have as it makes encounters more tense, but obviously this may not be to everyone’s liking. Also, I haven’t played through the entire game yet so I can’t attest to everything working all of the way through the game. I’ve completed Forest of Hope and Forest Navel completely and am starting DIstant Spring on Day 8 as of this writing and while most things have run smoothly, I did notice a possible glitch where the White Wollywogs in Forest Navel didn’t seem to be capable of crushing Pikmin. I’m not sure if this was just weird RNG or something about this setup that broke something about its behavior so I figured I’d mention it. Everything else has worked flawlessly however and I’ve been having a blast playing through the whole game like this.
These settings are designed for the game’s standard low view and work best with the camera zoomed in either all of the way or to middle zoom. You actually won’t notice a major difference between these two zoom levels outside of the world shifting angles at about a degree. Far zoom works fine, but the world will be angled down towards you at about a 5 degree angle.
Now, if you feel like you’re a bit too distant from the action or you’d like to fix the angle issue for the far camera zoom, however minor it is, well, we can fix that but it’s going to require some…reconstructive surgery.
Open regular Dolphin, right click on the game, and click properties. Move over to file system, right click on the disc, and click “Extract entire disc”.
Go to the folder you exported to containing the game’s files, then go to datadir and then Camera. Now, you’ll see several bin files: the one we care about is camepara.bin. We’ll need to edit this file, but that’s easier said than done: you’ll need to open the file in a hex editor. The site hexed.it is an online one I used that worked great. Use it to open the file and you’ll see a bunch of letters and numbers that may not make a lot of sense to you. Basically, this contains all of the values we need to adjust in hexadecimal, but don’t worry: it’s easier than it sounds. Using this guide from the Pikmin Technical Knowledge Base (https://pikmintkb.com/wiki/Pikmin_camera_parameters), we can get the addresses of the values we need to edit. Copy the offset for “Distance from Leader” in the [Near: Flat] setting and paste it into the “Go to” field in hexed.it. Now on the left, go to Data Inspector (Big Endian) and look for the value at 32-bit Float. This should match the value you see in the table back on Pikmin Technical Knowledge Base. Set this to something lower than 600 to add a new closer view to the game (I went with 350).
Next, go the 0x24 address for the Angle Above Horizontal parameter for the [Mid: Flat] setting. Back in that 32-bit float field we used last time, you should see “21”. Set this to 20. Do the same for address 0x3C (you’ll be changing it from 25 to 20).
Save the file over the original. Next, back in Dolphin, add the sys folder of your extracted game to the paths list. You should see a second Pikmin appear with the file name “main.dol” in the game list. Right click on this entry and click “convert file”. Make sure ISO is selected as the file type and then click convert. Name the Iso something different than the original iso (maybe PikminVR.iso) and then copy it into the same folder as the original game.
Now, go back to Dolphin VR and open your new iso for the game (don’t worry if you’ve already made progress in the game: dolphin shares save files between both of your iso files). Load into the world and then cycle through the zoom levels and you should see that you now have 3 distinct zoom levels without altering the angle of the world.