• Login
  • Register
  • Dolphin Forums
  • Home
  • FAQ
  • Download
  • Wiki
  • Code


Dolphin, the GameCube and Wii emulator - Forums › Game Modifications › Cheats, Hacks, & Game Patches v
« Previous 1 2 3 4 5 ... 19 Next »

NTSC/JP Xenoblade 60fps and other mods
View New Posts | View Today's Posts

Pages (31): « Previous 1 ... 16 17 18 19 20 ... 31 Next »
Jump to page 
Thread Rating:
  • 1 Vote(s) - 4 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes
NTSC/JP Xenoblade 60fps and other mods
10-14-2017, 11:43 AM (This post was last modified: 10-14-2017, 11:49 AM by Vermunds.)
#171
Vermunds Offline
Junior Member
**
Posts: 14
Threads: 0
Joined: Mar 2016
Attached a save.

Z button code works, but I'm afraid I got so used to it that I can no longer notice it unless I explicitly want to test it Smile
But with the code it activated always no matter how long I pressed, so I think it's good. Didn't find broken controls.

/edit
I noticed that you asked about merging the main code with the camera code. And I see no reason why it shouldn't. Without it the camera is totally uncontrollable, and with it almost feels like the original. (Maybe a little bit faster, could be placebo. I don't think you should touch it.)


Attached Files
.zip   monado03.zip (Size: 22.44 KB / Downloads: 113)
Find
Reply
10-14-2017, 03:38 PM (This post was last modified: 10-16-2017, 10:12 AM by One More Try.)
#172
One More Try Offline
Posting Freak
*****
Posts: 886
Threads: 23
Joined: Dec 2014
Thanks. I feel like the camera set to slow works the best for me, so I'm not certain about using the code. I haven't had an opportunity to thoroughly compare though.

These other conveyors break because the keyframes are very often, causing them to revert to 30fps frequently, and standing on them makes it obvious. I may be able to do something really hacky to fix it, otherwise I'll leave it as is.

This code breaks waterfalls once every 30 seconds or so? There were so many fringe cases, the code became much longer than intended. If I can tweak it more and maybe shorten it up, it might work.

/edit deleted code

It triggers when a keyframe pops up. It checks if the real counter is a fractional value, and if so it outputs the average value between the current keyframe and the next (they always come in groups). But it also has to check that the next keyframe is adjacent to the current one, otherwise it has to compare against the previous keyframe and interpolate from that difference. The values also rotate from 1 to 0 (0.95 + 0.20 -> 0.15) so I have to make sure the average rotates correctly too. So, yeah... became more work than I hoped.

/edit I think I got it, but all moving textures should be watched for bugs.
/edit posting the fully compiled code instead
60fps Moving Texture version: (Show Spoiler)
$60fps MovTex Delag
22666098 3f400000
04666098 3f400000 //Ice Slide Speed
04666fdc 42F00000 //condition cycle speed
04667038 42F00000
046673f0 43340000 //UI slideout
04667420 43340000
C24C1ED4 00000002 //Stairs unsticky
EC3F0024 EC2100B2
60000000 00000000
0466606c 3b23d000 //buggy lift
04667870 43480000 //Burst B fix
C2181264 00000002
EC0010FA EC00182A
60000000 00000000
0412e66c 41820008 //Slow Text
C212E668 00000003
7F85E378 7F66DB78
3E608000 82731824
2C130001 00000000 //Text End
041a3dec 41820008 //Slow Cutscene Text
C21A3DE8 00000003
807F0088 7FA4EB78
3E608000 82731824
2C130001 00000000 //End
0466AB90 3F000000 //Cutscene Switch speed
C24A0838 00000002
3E808082 82949E68
2C140002 00000000
C203A52C 00000004 //screen dimming duration
3E808082 82949E68
2C140001 3803F800
41A20008 3803F000
60000000 00000000
C24ED0AC 00000001 //Head Movement
ECC0C63A 00000000
C24EC8BC 00000001
EC40FFFA 00000000
C24ED0B4 00000001
ECA0C63A 00000000
C249A358 00000004 //Menu 60fps
3FC080CA 63DE54B4
C282CF74 7C03F000
41A20008 EC210532
83C10008 00000000
041C3904 3803FFFA
041C38EC 2800001A
041C3890 2800001A
041C38A8 3803FFFA
046687A0 41A00000
046687A8 40666667
04668890 42080000
04668894 41900000 //Menu End
C24497D4 00000002 //Select art controls
7D084214 7CE83A14
60000000 00000000
C24497FC 00000002
7D084214 7CE83850
60000000 00000000
C2449844 00000002
7D084214 7C083800
60000000 00000000 //Controls End
C20BAD8C 00000003 //Grass double value if fraction
EEA1082A FE810878
FC34A86E C01F2F48
60000000 00000000
C23DFE1C 00000003 //Updated Moving Texture
1C00000C D022FFFC
F0223FF8 E0223FF8
60000000 00000000
C23DFEBC 00000002
C043000C C022FFFC
60000000 00000000
C23E5B54 00000004
C02D9BE0 3D808082
818C9E68 2C0C0002
4182000C C062CF74
EC230072 00000000
C23E5128 00000004
C02D9BE0 3D808082
818C9E68 2C0C0002
4182000C C062CF74
EC230072 00000000
C23E8AEC 00000004
C02D9BE0 3D808082
818C9E68 2C0C0002
4182000C C062CF74
EC230072 00000000
C23DFEB4 00000012
C062FFFC FC030840
C0230004 41820080
C0630000 C043000C
EC621828 C042C010
C0A2CF74 FC021840
41A20038 C023FFF8
C0630004 FC801A10
FC000A10 FC040040
41A10014 FC801050
FC8120AE EC64182A
4BFFFFE4 EC230828
EC25187A 48000030
C0630010 FC801A10
FC000A10 FC040040
41A10014 FC801050
FC8120AE EC64182A
4BFFFFE4 EC43082A
EC220172 00000000
C244B714 0000000B //Impotrant Timer
3E808000 62941824 //Gr1824
80140000 68000001 //and FPS set
90140000 3E808066
82944268 2C140000
38000001 41A20024
3E808066 82943E18
3C008082 6000CB00
7C140000 38000001
41A20008 38000002
3E808082 90149E68
38630001 00000000
C216ADC4 00000005 //Timer mods using Gr1824
3E808082 82949E68 //skip if movie
2C140002 3A800001
4182000C 3E808000
82941824 7C04A214
60000000 00000000
C216ADCC 00000001
7C03A214 00000000
C21669CC 00000002 //Not Skipped
C242CF74 EC0004B2
D01E01E8 00000000
60000000 00000000 //End Timer
C216AD8C 00000004 //Intro Only Probably
3E808082 82949E68
C0229BCC 2C140002
41820008 C022CF74
60000000 00000000
C2137DE8 00000002 //UI Speeds Half
C002CF74 EC210032
C0030010 00000000
C205C414 00000002 //Climb Fix
C3E2CF74 EC01EFFA
60000000 00000000
C244B468 00000001 //disable run speed update
60000000 00000000
04819e78 0000001E //set run speed manually
E2000001 00000000
22CA54C0 00000000
04CA54C0 3F000000 //60 fps speed
E0000000 80008000

Ok I think I'm all caught up. The code in this post just needs to be tested to see if it can go into the first post.

/edit I'm still getting some gecko based lag. I think I'm going to edit the code so that you enable it once, then turn the code off and it'll keep doing it's thing without needing gecko.
Find
Reply
10-16-2017, 10:34 AM (This post was last modified: 10-16-2017, 02:45 PM by One More Try.)
#173
One More Try Offline
Posting Freak
*****
Posts: 886
Threads: 23
Joined: Dec 2014
Fairly sure this is buggy, but here's the first attempt at a run-once then disable 60fps. I notice my fps stabilizes right on 60, rather than bouncing around between 58 - 60, once you disable it.

Run Once: (Show Spoiler)
$Run then disable 60fps
C249A374 00000003
FC019840 41820008
C022CF74 D023000C
60000000 00000000
04666098 3f400000 //Ice Slide Speed
04666fdc 42F00000 //condition cycle speed
04667038 42F00000
046673f0 43340000 //UI slideout
04667420 43340000
C24C1ED4 00000002 //Stairs unsticky
EC3F0024 EC2100B2
60000000 00000000
0466606c 3b23d000 //buggy lift
04667870 43480000 //Burst B fix
C2181264 00000002
EC0010FA EC00182A
60000000 00000000
0412e66c 41820008 //Slow Text
C212E668 00000003
7F85E378 7F66DB78
3E608000 82731824
2C130001 00000000 //Text End
041a3dec 41820008 //Slow Cutscene Text
C21A3DE8 00000003
807F0088 7FA4EB78
3E608000 82731824
2C130001 00000000 //End
0466AB90 3F000000 //Cutscene Switch speed
C24A0838 00000002
3E808082 82949E68
2C140002 00000000
C203A52C 00000004 //screen dimming duration
3E808082 82949E68
2C140001 3803F800
41A20008 3803F000
60000000 00000000
C24ED0AC 00000001 //Head Movement
ECC0C63A 00000000
C24EC8BC 00000001
EC40FFFA 00000000
C24ED0B4 00000001
ECA0C63A 00000000
C249A358 00000004 //Menu 60fps
3FC080CA 63DE54B4
C282CF74 7C03F000
41A20008 EC210532
83C10008 00000000
041C3904 3803FFFA
041C38EC 2800001A
041C3890 2800001A
041C38A8 3803FFFA
046687A0 41A00000
046687A8 40666667
04668890 42080000
04668894 41900000 //Menu End
C24497D4 00000002 //Select art controls
7D084214 7CE83A14
60000000 00000000
C24497FC 00000002
7D084214 7CE83850
60000000 00000000
C2449844 00000002
7D084214 7C083800
60000000 00000000 //Controls End
C20BAD8C 00000003 //Grass double value if fraction
EEA1082A FE810878
FC34A86E C01F2F48
60000000 00000000
C23DFE1C 00000003 //Updated Moving Texture
1C00000C D022FFFC
F0223FF8 E0223FF8
60000000 00000000
C23DFEBC 00000002
C043000C C022FFFC
60000000 00000000
C23E5B54 00000004
C02D9BE0 3D808082
818C9E68 2C0C0002
4182000C C062CF74
EC230072 00000000
C23E5128 00000004
C02D9BE0 3D808082
818C9E68 2C0C0002
4182000C C062CF74
EC230072 00000000
C23E8AEC 00000004
C02D9BE0 3D808082
818C9E68 2C0C0002
4182000C C062CF74
EC230072 00000000
C23DFEB4 00000012
C062FFFC FC030840
C0230004 41820080
C0630000 C043000C
EC621828 C042C010
C0A2CF74 FC021840
41A20038 C023FFF8
C0630004 FC801A10
FC000A10 FC040040
41A10014 FC801050
FC8120AE EC64182A
4BFFFFE4 EC230828
EC25187A 48000030
C0630010 FC801A10
FC000A10 FC040040
41A10014 FC801050
FC8120AE EC64182A
4BFFFFE4 EC43082A
EC220172 00000000
C244B714 0000000E //Timer FPS Speed Multi
3E808000 62941824 //Gr1824
80140000 68000001
90140000 3E8080CA
801454C0 2C000000
4182000C 3C003F00
901454C0 3E808066
82944268 2C140000
38000001 41A20024
3E808066 82943E18
3C008082 6000CB00
7C140000 38000001
41A20008 38000002
3E808082 90149E68
38630001 00000000
C216ADC4 00000005 //Timer mods using Gr1824
3E808082 82949E68 //skip if movie
2C140002 3A800001
4182000C 3E808000
82941824 7C04A214
60000000 00000000
C216ADCC 00000001
7C03A214 00000000
C21669CC 00000002 //Not Skipped
C242CF74 EC0004B2
D01E01E8 00000000
60000000 00000000 //End Timer
C216AD8C 00000004 //Intro Only Probably
3E808082 82949E68
C0229BCC 2C140002
41820008 C022CF74
60000000 00000000
C2137DE8 00000002 //UI Speeds Half
C002CF74 EC210032
C0030010 00000000
C205C414 00000002 //Climb Fix
C3E2CF74 EC01EFFA
60000000 00000000
C244B460 00000001 //Run Speed
38000002 00000000
E0000000 80008000

/edit Updated. May not be broken now.

Still not happy with ice sliding. If anyone wants to help, you'd just look at the memory and edit the floats at 80666090 to 8066609C and see if you can reproduce the 30fps behavior. Use the Run Once code, disable it, then savestate near ice to quickly reload - you won't need to reload Run Once when reloading a savestate.
Find
Reply
10-17-2017, 07:44 AM
#174
JershJopstin Offline
Junior Member
**
Posts: 44
Threads: 0
Joined: Sep 2017
(10-14-2017, 05:50 AM)Kurausukun Wrote: I forget, did we determine that 60fps cutscenes involved way too much math and weird stuff to be worth it? This testing was the first time I'd looked at this thread in a while, sorry.

It kinda dropped off. One More Try found a fairly correct solution that lagged a lot, then took a break as other bugs started coming into the spotlight. I was working a different approach but got hit with school stuff and haven't come back to it yet. It's not necessarily axed altogether, but it's not being worked on atm.
Find
Reply
10-17-2017, 12:57 PM (This post was last modified: 10-17-2017, 05:50 PM by One More Try.)
#175
One More Try Offline
Posting Freak
*****
Posts: 886
Threads: 23
Joined: Dec 2014
I'm having quite a bit of difficulty with ice. I may need to give a non-exact hack for it. The current fix is completely wrong. Testing showed that changing the ice values was unnecessary (as it correctly lowers the counts already). So I'm not sure what the issue is, but tweaking the ice values regardless can make it work ok, just not consistent with 30fps.

Sliding without pushing a direction seems to be fully correct without tweaks. Pressing a direction uses a different section of code and has some problems. It hits one speed limit check twice as fast, causing issue with jumping and possible stutter movement. If I slow that down, jumping loses quite a bit of distance. If I increase the speed limit check, jumping works great but you slide about 30% faster overall.
Find
Reply
10-17-2017, 04:13 PM
#176
Kurausukun Offline
Zeitgenössischer Wurst
*******
Posts: 1,034
Threads: 62
Joined: Mar 2014
I don't think it needs to be exactly the same as long as it feels mostly the same. Trust me, I understand the desire to have an actual solution that produces the same behavior, but sometimes there's just too much going on for that to be feasible. 60fps is a hack to begin with. I think if you can test a bunch of values and find one that gets pretty close to the original, then that's fine.
Find
Reply
10-18-2017, 06:25 PM (This post was last modified: 10-20-2017, 06:00 PM by One More Try.)
#177
One More Try Offline
Posting Freak
*****
Posts: 886
Threads: 23
Joined: Dec 2014
Ugh, yeah. The thing is my other hacks are largely accurate to 30fps. Could you test my simplest solution that speeds up sliding a bit and tell me if it's too fast? Also delete the Ice slide line in the gecko code before trying this.

AR or Gecko:
04666088 46040000

Also, nobody has noted if Run Once feels any better for them.

/edit Second ice code:
04666090 3F7D6A16
04666098 3F400000
0466609C 3F7DD000

If I want to disconnect slide speed and jump distance any more than that I would need to stomp around in the jump code.
Find
Reply
10-30-2017, 01:52 AM (This post was last modified: 10-30-2017, 09:26 PM by One More Try.)
#178
One More Try Offline
Posting Freak
*****
Posts: 886
Threads: 23
Joined: Dec 2014
For people who want/need to leave the code on, I want it to run the code once then stop (but not be disabled). To do this I check a memory value that needs to be changed for 60fps and only run the code if it's the 30fps value. The problem is if you need to hit the apply codes button again, it will skip rewriting the code (because the memory value is still the 60fps version) and it will crash dolphin, because the code needs to rerun once every time you hit apply. I need a better method that reliably runs the code once every time you hit apply.

A8000000 00000000 Might work. It's a counter that goes up every frame and it'll run when the counter is 0. The counter loops around, but it doesn't go up by 1 each frame, so it seems like it skips 0 when it loops. It resets to zero when you hit apply.
Find
Reply
10-30-2017, 05:14 AM
#179
Jao Offline
Junior Member
**
Posts: 5
Threads: 1
Joined: Oct 2017
Thanks a lot for all your work ! It feels so good to play at 60 fps, the game is so smooth.
I have a question tho : is it normal that the game extremely slow during fights when I use your patch ?
During fights the game feels like I'm playing in slow motion
Sorry if the question is stupid, I read this thread but I saw no one talking about that ! I didn't have any stuttering or lag or anything except that, I think
Find
Reply
10-30-2017, 06:27 AM
#180
One More Try Offline
Posting Freak
*****
Posts: 886
Threads: 23
Joined: Dec 2014
The fps can drop during fights. You'll want to try raising the config -> cpu overclock to 110%, 120%, etc as they can really help. Other than that, I haven't found much else that helps.
Find
Reply
« Next Oldest | Next Newest »
Pages (31): « Previous 1 ... 16 17 18 19 20 ... 31 Next »
Jump to page 


  • View a Printable Version
  • Subscribe to this thread
Forum Jump:


Users browsing this thread: 1 Guest(s)



Powered By MyBB | Theme by Fragma

Linear Mode
Threaded Mode