Dolphin, the GameCube and Wii emulator - Forums

Full Version: Pikmin 60fps mod that works?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
Hi,

I am trying to get Pikmin to work in 60fps as in noticed there was a way to mod both the Wii version and GC version.

Though i tried them, both have issues, one being that Cutscenes play too fast, which messes up for example the first seedling.

Is there a way that works?

I would prefer the GC version as i like the controller better as i play with 360, but if Wii works i will play that one.

ThanksSmile
Check for the 60 FPS patches thread, there might be some useful info to solve your problem.
I took this patch from there, but will ask for info there as well, is more appropriate, thanks.
Okay i tried modding it myself, the Wii version, and finally got something.

What the AR Code i made does is to shift to 30fps during cutscenes and back to 60fps again afterwardsSmile
Not sure if it works Everywhere, but it works for the intro movie as well as the other cutscenes during the first seedling.

EDIT:

Okay one thing bad about it is that it also changes to 30fps in the Save File Menu, the Wii version runs 60fps there, but i think the original runs 30fps.
Will probably be the same for the Map Menu i guess, not that big of a deal though as long as gameplay works i guess, this modding thing is kinda fun;D
Okay here is the Patch so far.

If someone can test it and report back i would be grateful.
I have only tested the start cutscenes, and it seems to work fine.

It's for Pikmin Wii - NTSC U (1.1)

Code:
$60fps Mod - Returns to 30fps during Cutscenes (Not Perfect) - zerowalker
08459FCF 0000003C
00459D23 00000002
10459FCF 0000003C
00459D23 00000000
0040AD9E 00000000
EDIT:


Here is one for Pikmin GC NTSC U, i could test more cutscenes here and it's not flawless, sometimes other adresses are used, so i think one could try to find each that the cutscenes always use (they usually use the same ones it seems).
But i don't know how to use "AND" stuff.
Cause of that it can sometimes get locked to 30fps after a cutscene cause the adress didn't change back and there is no failsafe, it seems like you can just press start or something to fix that though.
Any testing is much appreciated.
Code:
$60fps Mod - Return to 30fps during Cutscenes (Not Perfect) - Zerowalker
08398AF3 00000000
043988A0 00000001
10398AF3 00000000
043988A0 00000002
Can now confirm that my Patch for Gamecube works for the entire game without breaking it.
There are a few Cutscenes that plays too fast (Every time the Ship gains a new function (more maps), which is 3 times i think).
Otherwise all other Cutscenes works fine.

One does have to press Y after the landing scenes sometimes cause it gets locked to 30fps and pressing Y solves that.

EDIT:


This new code does an extra check to solve those Cutscenes i think (tried 2 i had save states at).
Don't know if it forces 30fps during any other moment.

Code:
08398AF3 00000000
043988A0 00000001
10398AF3 00000000
043988A0 00000002
08365334 00000080
043988A0 00000002

Worth noting, you need to Overclock the Gamecube CPU in order to be able to keep 60fps during some moments.
i had 160% and it worked fine, i only fps dropped if i had many pikmins and a build got completed (the Smoke causes it i guess).
So with 200% i would assume it to be flawless.
I could not see any issues with overclocking other than gaining performance in the game, all time related stuff and speed seems to be the same as usual.

EDIT 2:

Also here is a 60/30 fps trigger mod, so you can switch between 30 and 60fps at will (have 60fps mod above disabled for this).

D-Pad Up = 60fps
D-Pad Down = 30fps

Code:
0839D401 00000008
043988A0 00000001
0839D401 00000004
043988A0 00000002
Would you be all right with going a little more in depth on how you went about getting these codes? Some of the things related to making codes like this might be a little more complicated than what I can do, but I think there are still a few things I could learn about it. I also have an interest in anything related to 60fps codes even if in this case, you made a code to change the FPS in the middle of the game, rather than making the 60fps code itself.
Sure.

First of all, this is my first attempt to making a code, i had no idea how anything worked until i made this.

This game was luckily Very easy to get working in 60fps, i searched and found out that in order to find the framelimit of this game (and games that use this method), one can just search on the divider.

In this case, Gamecube runs at 60hz, meaning in order for the game to runt at 30fps if it uses a divider, that value would probably be "2".
And in some cases the game actually runs at 60fps, the divider would in this case be "1".

So one can just search for "1" when it's 60fps, and then search for "2" when it's 30fps (and vice versa).
That should eliminate most of the addresses, and you can them go by Trial and Error.

Then when you found the adress you simply turn it to what you want. (It's also possible to make the game run at much higher framerates by increasing the video rate if wanted).

Now for the other values, they are simply trial and error, i tried to find addresses that weren't 0 during cutscenes, but where 0 during In Game.
So i then took the one that was most promising and just made it act as a trigger. (If "Likely a Cutscene cause of value" set to 30fps, if value turns 0, set to 60fps).
It's not Flawless cause the value i used wasn't Always used (but it was used for the important cutscenes and basically 90% of them).
But it also made the game run 30fps after Landing in some cases, and pressing Y to take up the Menu solved this.

I have no clue what that address value did, as it wasn't a Cutscene value, cause if it was it would Always work.
But as i am very new to this i have no idea how to find anything and i just went by this trial and error method.


I like you am Very interested in 60fps patches and would love to be able to make something like that.

My next little thing i want to try to do (which i doubt is possible though) is to make a patch that forces Rumble to activate,
cause if i could do that, i could add Rumble support to VC titles in theory.
Thanks for the explanation. I think I mostly understood it. I actually had already known about 1 and 2 changing for 60fps and 30fps in this game, since that code was already available (at least for GC) but I didn't know about the rest. Unfortunately, there are many cases where a game doesn't switch values even when changing frame rate. For example, in Pikmin 2, the title screen is 60fps, but the value of the address you change to get the regular gameplay to run in 60fps doesn't change at all when the game switches to 30fps. Because of that, I don't even know how you would get the title screen of Pikmin 2 to run at 30fps, not that you would want to do that. I also have no idea how to go about finding a code for frame rate when the value is being read only once to pick the frame rate. I know just a little about breakpoints, but I don't think you can easily set a bunch of execution breakpoints at once, and I'm not sure that would even be a good trial and error way to find them.
Hmm, wasn't Pikmin 2 modified for 60fps already?
I think it was quite complex how the patch was made.

Though i don't really get how the values can't differ between 30 and 60fps, one would think there Has to be a difference,
cause in order to reach 30fps, there has to be some sort of limiter, now of course it doesn't have to be value 2, but it's the most obvious one.

There's also the option to increase the video rate with Ishiiruka to force the game to run at a higher refresh rate.
If the game is not bound by framerate, it will most likely run quite flawless with that (though i guess that's just a handful of games).
Pages: 1 2 3