Kingdom Hearts 3D 60FPS code? (Intended for New 3DS models)

Discussion in '3DS - ROM Hacking, Translations and Utilities' started by ShootingStar, Mar 20, 2018.

?
  1. Yes!

    62.0%
  2. No.

    10.0%
  3. we don't need "new" 3DS-specific codes you wank

    28.0%
  1. kumikochan

    kumikochan GBAtemp Psycho!

    Member
    11
    Feb 4, 2015
    Belgium
    Tongeren
    Frametiming is more noticeable not framerate. People usually complain about framerate but you should complain more about frametiming. A question you could ask is why does 30fps feel different and less noticeable on console then when you lock the framerate 30fps on pc. I'm a big pc gamer myself and always use 144hz/fps min but the thing people always make mistakes with is that framerate matters. No it does not, frametiming matters.
    Take a game like monster hunter and play it on ps4 or xbox and then do the same on pc and lock the framerate to 30. The difference is huge. even when both are played in 30fps
     
    Last edited by kumikochan, Oct 12, 2018
  2. kikongokiller

    kikongokiller GBAtemp Advanced Fan

    Member
    9
    Jan 12, 2017
    Australia
    Regardless of whatever you wanna call it or refer to it as, where does that leave us in terms of improving this issue for problematic games?
     
  3. kumikochan

    kumikochan GBAtemp Psycho!

    Member
    11
    Feb 4, 2015
    Belgium
    Tongeren
    I don't think you can do much about it because the game has been built up from the ground with 30fps in mind. Increasing it to 60fps would break a lot of stuff
     
    kikongokiller likes this.
  4. ShootingStar
    OP

    ShootingStar Member

    Newcomer
    2
    Jan 23, 2017
    United States
    It was more-less the PS2 KH games that would break from 60FPS. Kingdom Hearts 1 isn't beatable at 60FPS due to cutscene glitches, and Kingdom Hearts II had doubled gravity.
    Birth by Sleep, which uses the same engine that KH3D would later use, doesn't break nearly as much, and all the animations and stuff play at the correct speed.
    Logically to me, that would mean KH3D would have little issues if capped to 60FPS if a game using the same engine didn't break all that much.
     
  5. kumikochan

    kumikochan GBAtemp Psycho!

    Member
    11
    Feb 4, 2015
    Belgium
    Tongeren
    it could be but you don't know for sure till you unlock it. Maybe it would work but for me the frametiming is really good so it doesn't bug me that much that it is 30fps on 3ds
     
  6. granville

    granville GBAtemp Goat

    Member
    9
    Aug 24, 2007
    United States
    Orlando, Florida
    I've been testing it. It works fairly well from what I can see besides a couple of minor issues (mostly animation related from what I can tell, such as collecting and using keys). I actually prefer the way the 60fps was implemented for the DS version, the N64 version's 60fps hack I believe uses a sort of artificial interpolation effect instead and isn't as smooth as the DS hack.

    I don't know how well this runs on real DS hardware, been using an emulator to try it out. It should work on a real DS as well, but will probably slow down at some points.

    Snake Eater 3D's performance is shockingly horrible. It's locked to 20fps to begin with (the original had occasional performance dips as well but was at least locked at a higher 30). But it frequently drops into the low teens and even sometimes single digits. And playing on the New 3DS via homebrew to unlock the extra CPU speed doesn't completely fix this either, cutscenes still constantly drop into the mid teens.

    I'm suspicious there's poorly optimized GPU programming causing some of these dips, beyond just the CPU speed. The GPU in New 3DS did not receive a bump in clock speed like the CPU did.

    There are also other issues with Snake Eater 3D besides the horrible framerate too. The jungle foliage has significant reductions in both density and draw distance. Though the lighting is slightly better and they added a crouch walk move which was welcome (though this is negated by the controls being worse in other ways).

    The best way would probably be the PS3 version. I think that version runs at 60fps. Vita port seems to run at a fairly solid 30fps most of the time.

    Though for anyone with a powerful enough PC (it seems to run fairly well on my 4670k at 4ghz), there's a 60fps hack for the PS2 version for use in PCSX2.
     
    Last edited by granville, Oct 12, 2018
    plug313 likes this.
  7. plug313

    plug313 GBAtemp Regular

    Member
    4
    Jun 27, 2016
    I wonder if there is anyone who can help us unlock the frame rate for these games. it's definitely possible and we won't know if it breaks anything unless we try. if we're lucky nothing will break and the games will play better thanks to the New 3DS extra power
     
  8. granville

    granville GBAtemp Goat

    Member
    9
    Aug 24, 2007
    United States
    Orlando, Florida
    There are quite a number of people in the communities for other emulators who have made 60fps hacks, generally via cheats. I know of Retroben from Project64 has done some for N64 games (and there are a couple of others who have done N64 framerate hacks too). Also asasega from the PCSX2 forums made a ton of PS2 60fps hacks. There's a handful of people from the PPSSPP forums as well as Dolphin who have done it for those respective emulators (the forums have threads with a list of the 60fps hacks). But i've yet to see anyone attempt any such hacks for 3DS games, don't know if there's an interest from anyone with the skills to do it.
     
  9. ShootingStar
    OP

    ShootingStar Member

    Newcomer
    2
    Jan 23, 2017
    United States
    Well, it's been a long time coming, almost a year later, but i'm now picking up my efforts once again. This time i'm using Citra emulator.
    To be exact, a build of Citra that has a built in cheat search feature, Citra Valentin. Upon starting up KH3D, doing a search for a value of 0, there are 50k+ results that pop up.
    Then searching for 1 when going ingame, which caps to 30FPS, there is about 3.2k or so results that show up. If I search for 1 without searching for 0 on the title screen first though, about 7k results show up. I can assume then that I have to do 2 searches in succession for the cheat search to compare values.

    I'm currently about 20-25% of the way through the 3.2k or so results I get with no avail, i'm worried this might not work.

    Edit: About 45% - 50% of the way through. Still no results...
     
    Last edited by ShootingStar, Jul 13, 2019
    Dartz150 and Nutez like this.
  10. ShootingStar
    OP

    ShootingStar Member

    Newcomer
    2
    Jan 23, 2017
    United States
    This was inevitable, but I have now went through 100% of the results, with no avail. I simply cannot get the game capped at 60FPS while ingame.
    Maybe someone else can pick up my efforts eventually. For referenced, I used Citra Valentin's built-in cheat search to try and create the code, to no avail.
    Hopefully someone else can find the code.
     
  11. Hazerou

    Hazerou Advanced Member

    Newcomer
    2
    Jul 27, 2018
    United States
    Ladies and Gentlemen, WE GOT EM!

    USA / 000400000008D300

    [60 FPS for 3DS]
    2055BDE0 00000001

    [30 FPS for 3DS]
    2055BDE0 00000002

    [60 FPS for CITRA]
    1055BDE0 00000101

    [30 FPS for CITRA]
    1055BDE0 00000102

    It runs super smooth on my N3DS XL! I don't know about O3DS and CITRA though.
    I might share how I found them later. For now, Imma rest my eyes (Probably because it took me 3+ hours to find it lol).

    Edit: Oops, forgot to mention that the game region is USA.
     
    Last edited by Hazerou, Oct 1, 2019
  12. Dartz150

    Dartz150 Hat Gurl Official Fan™

    Member
    10
    May 5, 2010
    Mexico
    Under your bed
    Definitely going to try these, thank you for your work. Before I do, didn't this trigger side effects such as wrongly timed animations or transitions for other objects?

    EDIT: Which register/s did you found related to the frame rate caps? it may be applicable to other games as well.
     
    Last edited by Dartz150, Oct 1, 2019
    NanashiFinal13 likes this.
  13. Hazerou

    Hazerou Advanced Member

    Newcomer
    2
    Jul 27, 2018
    United States
    Hmm... I don't know, So far it runs good for me. I haven't really tested it that much but I think there will be no side effects. And NGL, I only used CTRPF only and with the help of Adrenaline+PSPTempar plugin on my Vita, since there is a PSP game : Kingdom hearts BBSFM with a 60 fps cheat code and I used that as a guide on how to search it.
     
    Nutez, NanashiFinal13 and Dartz150 like this.
  14. NanashiFinal13

    NanashiFinal13 GBAtemp Regular

    Member
    5
    May 1, 2017
    Argentina
    I just found this thread and i must say: This is great, thank you very much! :D
    Latter, after you rest, can you share how you achive it? Maybe more 60 fps codes can be made for other games, i like to give it a try.
     
    Last edited by NanashiFinal13, Oct 1, 2019
    Nutez likes this.
  15. Hazerou

    Hazerou Advanced Member

    Newcomer
    2
    Jul 27, 2018
    United States
    Ok, so this is how I found the FPS code For KH3D.
    This was my last attempt/method on finding it which is the easiest and fastest way all this time! It only took me less than 20 minutes!
    But first, the things I used;

    1. N3DS XL - CTRPF Action Replay.plg
    2. PS Vita Slim - Adrenaline+TempAR Plugin

    Ok so as we know, the FPS code in KHBBSFM has only 1 line of code;

    KHBBSFM;

    [60 FPS]
    09F25EC8 00000000
    {32-bit code}

    [30 FPS]
    09F25EC8 00000001
    {32-bit code, thanks to TempAR Plugin that I used}

    And so does KH3D;

    KH3D;

    [60 FPS ]
    0055BDE0 00000101
    {32-bit code}

    [60 FPS ]
    2055BDE0 00000001
    {8-bit code}

    [30 FPS ]
    0055BDE0 00000102
    {32-bit code}

    [30 FPS ]
    2055BDE0 00000002
    {8-bit code}

    Now the thing is, their value is different, So searching 00000000 for 60 fps and 00000001 for 30 fps on KH3D is a no go.

    So instead, I went to search it by "Unknown search" on CTRPF.
    But searching it that way is troublesome since there's a lot of addresses and it takes awhile to search all.
    So I went on my Vita to find what memory region is KHBBSFM's FPS code at by checking the other cheats with the closest address to the FPS code.
    And guess what;

    KHBBSFM;

    [Munny 999999]
    09F2B8C4 000F423F

    [60 FPS]
    09F25EC8 00000000

    As we can see, their address starts at 09F2, so I went ahead and checked the Munny cheat code on KH3D;

    KH3D;

    [Munny 999999]
    0057FFB8 000F423F

    The address starts at 0057, now we know where the FPS code might be!
    Now, the Search;

    1.At KH3D Title Screen, the game runs there at 60 FPS.
    2. I opened CTRPF and used the FPS counter feature then "search".
    3. Now remember that the Munny cheat code's address starts at 0057.
    4. Then I tapped "MemRegion : All memory"
    5. I Chose "0052C000 - 005E4000" because this is where the Munny cheat code's address is located.
    6. Then I search using "Unknown search" at "4 Bytes" and it was lightning fast I tell ya! About 188416 results.
    7. Then I went back to the game to continue one of my saves.
    8. And now the game runs at 30 FPS while playing, so I searched "Bigger Than".
    9. Then I went to a different area until the loading screen with the spinning heart appears because the game runs at 60 FPS there for some reason.
    10. Then I quickly opened CTRPF to search " Smaller Than" then went back to game.
    11. The loading screen ends and now the game runs at 30 FPS again, so I searched "Bigger Than" again.
    12. I Repeated step 9-11 but there's still a lot of results, so I went to "World Map".
    13. Still 30 FPS so I searched "Equal To" and now there's only about 12 results.
    14. Then I did the step 9-10 and compared the new value and the old value to know which one of them is decreased by 1 and found two of them.

    0053C514 00000001 = I edited this to 0 and I keep falling down again and again...
    0055BDE0 00000102 = I edited this by decreasing the value by 1 and voila! I found it! And I'm falling endlessly at 60 FPS that time:rofl2:

    And that was it! I hope this guide might help on finding the FPS code on other games.
     
    Zense, Robz8, Vague Rant and 4 others like this.
  16. NanashiFinal13

    NanashiFinal13 GBAtemp Regular

    Member
    5
    May 1, 2017
    Argentina
    Thanks, this info will be very usefull, after work, i will be searching the value in other games to achive more 60 fps codes, wish me luck! :D
    Also i want to say that the code works great, i encounter no issue so far. And in other note, i was searching the 30 fps value on Shingeki no Kyojin Mirai no Zahyou (3DS) and i notice that the game runs on 30 fps all the time, so if other games also runs on 30 fps all the time (and im pretty sure that other games do that) it will be more dificult to obtain the value.
     
    Hazerou likes this.
  17. granville

    granville GBAtemp Goat

    Member
    9
    Aug 24, 2007
    United States
    Orlando, Florida
    Note that if you want to use this on Citra, you may need an older build of the emulator to run it at decent speeds.
    https://github.com/citra-emu/citra-canary/releases/tag/canary-1037

    The Citra developers were testing out a speed hack called Ignore Format Reinterpretation Hack back in August-November 2018. This hack produced an enormous boost in speed for certain games, including KH3D. For builds without the hack, I struggle to maintain even 30fps (which is the original cap) at 3-4x resolution and drop to 25fps or worse in large areas and battles. But for builds that do contain this speed hack, I can easily attain 60fps and higher. This is using an i5 4670k @4ghz (8GB ram and a GTX 1060 6GB).

    This speed hack was removed in Canary 1038 onward and KH3D has regressed back to its previously poor performance. You'll need an extremely fast CPU to run the game on builds without this speed hack, especially using the 60fps cheat. I'm actually not sure if ANY current CPU can handle the game at a locked 60fps in builds without the Reinterpretation hack, even a 5ghz 8th or 9th gen Intel might not be sufficient.

    So for now, keep Citra Canary 1037 on hand if you want to run KH3D at good speeds with this 60fps unlocker. The only disclaimer I will make is please do not pester the Citra developers about any issues you may run into using this older build. It's outdated and you won't get support for it.
     
    Hazerou and Dartz150 like this.
  18. Hazerou

    Hazerou Advanced Member

    Newcomer
    2
    Jul 27, 2018
    United States
    Yes, there's a lot of 3DS games that are stuck at 30 FPS which is hard to find , but I found another method to easily search one Using CTRPF only! (and probably a Floating Point Calculator). Plus, Finding the Rendering Options code to boost the performance by disabling the anti-aliasing and more! Though you can only search this one on 3d enabled Devices and it only works on most Capcom Games. So I'll be making a new guide on how to find them later:).
     
    Last edited by Hazerou, Oct 2, 2019
    Zense and NanashiFinal13 like this.
  19. NanashiFinal13

    NanashiFinal13 GBAtemp Regular

    Member
    5
    May 1, 2017
    Argentina
    Oh thats great! can you explain me your other method, the one with CTRPF plugin and Floating Point Calculator? Im searching values right now and i will really apreciate some help
     
  20. Hazerou

    Hazerou Advanced Member

    Newcomer
    2
    Jul 27, 2018
    United States
    Don't worry dude, I will post the guide here or make a new thread about it later. For now I must do some IRL stuff.
     
    NanashiFinal13 likes this.
Quick Reply
Draft saved Draft deleted
Loading...