ROM Hack Discussion Astral Chain ROM Hacking Bible

MrComputerRevo

Well-Known Member
Newcomer
Joined
May 13, 2013
Messages
93
Trophies
0
Age
28
XP
1,078
Country
Ukraine
I didn't check resolution. I tried everything I could for FPS and only found that animations speed for gameplay is taking 1/60 float and one function is multiplying it by two. I couldn't disable FPS lock.

--------------------- MERGED ---------------------------

Sorry, wrong. I mixed other game with this multiplyier and float. For speed animations it's using getsystemtickfrequency(). Multiply it by two and you have 1s rendered in 60 frames, but because of lock it slows down game twice.

Can you explain how exactly you slowed down the game twice? I've only been able to speed it up by two times.
 

masagrator

The patches guy
OP
Developer
Joined
Oct 14, 2018
Messages
6,308
Trophies
3
XP
12,105
Country
Poland
Can you explain how exactly you slowed down the game twice? I've only been able to speed it up by two times.
I made SaltyNX plugin, but I think you can patch that with IPS.
You need to make function GetSystemTickFrequency return 38400000 (0x249f000). By default it's 19200000
 

WaitWhatBro

Well-Known Member
Member
Joined
Jul 15, 2016
Messages
123
Trophies
0
Age
34
XP
409
Country
United States
Does anyone have any intention of making a save editor for this game by any chance? Havent seen anything about that yet but figured I'd ask
 

MrComputerRevo

Well-Known Member
Newcomer
Joined
May 13, 2013
Messages
93
Trophies
0
Age
28
XP
1,078
Country
Ukraine
I made SaltyNX plugin, but I think you can patch that with IPS.
You need to make function GetSystemTickFrequency return 38400000 (0x249f000). By default it's 19200000
Yeah, hmm, that didn't seem to really change anything except *some* animations? I really don't get how this game works, I've been able to set the vsync interval to 1, but the game just runs twice as fast as if it doesn't use delta time... except it does! I also found something that I *think* is an animation speed multiplier but with it set to 0.5 it looks smooth and is actually rendering (well, trying to at least) 60 frames per second but animations are slowed down twice. So with 1.0 it's two times as fast and with 0.5 it's two times as slow... go figure.
 

masagrator

The patches guy
OP
Developer
Joined
Oct 14, 2018
Messages
6,308
Trophies
3
XP
12,105
Country
Poland
So what about 0.75 or 1/3? :P

--------------------- MERGED ---------------------------

If this is fmov, then 1/3 won't work... But 0.75 should work.

--------------------- MERGED ---------------------------

And I'm curious how you have found vsync interval.
 

MrComputerRevo

Well-Known Member
Newcomer
Joined
May 13, 2013
Messages
93
Trophies
0
Age
28
XP
1,078
Country
Ukraine
So what about 0.75 or 1/3? :P

--------------------- MERGED ---------------------------

If this is fmov, then 1/3 won't work... But 0.75 should work.

--------------------- MERGED ---------------------------

And I'm curious how you have found vsync interval.

0.75 is still too fast, well, anyway, 0.5 works when it's actually hitting 60, which doesn't happen very often (or at all, outside of the training area that's with full overclock docked (I set it up properly this time))
Basically, I don't think it's worth it, the game won't really hit 60, more like 35-40 on a good day
And for vsync you can search for `nvnWindowSetPresentInterval` in the strings and you'll find a function where NVN API is set up, from there it's easy to find where it's used
 
  • Like
Reactions: masagrator

orangpelupa

Well-Known Member
Member
Joined
Aug 7, 2009
Messages
388
Trophies
1
XP
1,183
Country
Indonesia
0.75 is still too fast, well, anyway, 0.5 works when it's actually hitting 60, which doesn't happen very often (or at all, outside of the training area that's with full overclock docked (I set it up properly this time))
Basically, I don't think it's worth it, the game won't really hit 60, more like 35-40 on a good day
And for vsync you can search for `nvnWindowSetPresentInterval` in the strings and you'll find a function where NVN API is set up, from there it's easy to find where it's used

How about using reversenx and runs Astral Chain docked but in portable profile AND overclocked?

Then use your 60 fps trick?
 
Last edited by orangpelupa, , Reason: Bloody auto incorrect

masagrator

The patches guy
OP
Developer
Joined
Oct 14, 2018
Messages
6,308
Trophies
3
XP
12,105
Country
Poland
Probably will be no difference.

--------------------- MERGED ---------------------------

@MrComputerRevo can you explain exactly how did you found it? Because your "easily" is not easy for me. I know of this strings, but never couldn't understand where values of it are stored.

Edit: You mean I should try to find first string that has found reference before nvn* and try to check it's code for where is storing value?
 
Last edited by masagrator,

orangpelupa

Well-Known Member
Member
Joined
Aug 7, 2009
Messages
388
Trophies
1
XP
1,183
Country
Indonesia
Astral chain in portable profile only runs up to 720p rather than 900p. It also disables AA. That's why I though it will help to run in 60 fps.

BTW turns out someone already found the speed cheat for Edison

[1.5 times faster]
580F0000 00DCA550
580F1000 00001C88
580F1000 00000170
580F1000 00000188
780F0000 00000160
640F0000 00000000 3

https://gbatemp.net/threads/astral-chain-cheat-code.547078/FC0000


So slow the game down to half speed, then double speed it using the Edison cheat?
 
Last edited by orangpelupa,

MrComputerRevo

Well-Known Member
Newcomer
Joined
May 13, 2013
Messages
93
Trophies
0
Age
28
XP
1,078
Country
Ukraine
Well, here it is. I worked on it some more yesterday and now it should actually work more or less fine? (man this game has a weird way of keeping pace) It will now appropriately speed up the animations when it's not hitting 60fps and slow down when it hits that target framerate (the speed multiplier range from 0.5 to 1.0, since this game has hardcoded frame time for animations of 0.03333, so it's either changing all of that, which is not fun, or making the original system work with 60fps which is what I attempted to do here). Cutscenes are still two times faster than they should be though, if anyone finds the multiplier for that, that would be nice. Well, at least it's actually playable now and doesn't slow down in larger areas.
 

Attachments

  • astral_chain_60fps.zip
    509 bytes · Views: 846

Niko_of_Death

Well-Known Member
Member
Joined
Aug 10, 2016
Messages
151
Trophies
0
Age
29
XP
1,205
Country
United States
Well, here it is. I worked on it some more yesterday and now it should actually work more or less fine? (man this game has a weird way of keeping pace) It will now appropriately speed up the animations when it's not hitting 60fps and slow down when it hits that target framerate (the speed multiplier range from 0.5 to 1.0, since this game has hardcoded frame time for animations of 0.03333, so it's either changing all of that, which is not fun, or making the original system work with 60fps which is what I attempted to do here). Cutscenes are still two times faster than they should be though, if anyone finds the multiplier for that, that would be nice. Well, at least it's actually playable now and doesn't slow down in larger areas.
Tried it out a bit, seems awesome so far! Curious if the dynamic resolution floor is low enough for a stable 60 with max overclock, too bad there isn't a fps counter plugin for me to test myself.
 

vastrolorde

Well-Known Member
Newcomer
Joined
Mar 22, 2015
Messages
91
Trophies
0
Age
39
XP
1,771
Country
United States
Well, here it is. I worked on it some more yesterday and now it should actually work more or less fine? (man this game has a weird way of keeping pace) It will now appropriately speed up the animations when it's not hitting 60fps and slow down when it hits that target framerate (the speed multiplier range from 0.5 to 1.0, since this game has hardcoded frame time for animations of 0.03333, so it's either changing all of that, which is not fun, or making the original system work with 60fps which is what I attempted to do here). Cutscenes are still two times faster than they should be though, if anyone finds the multiplier for that, that would be nice. Well, at least it's actually playable now and doesn't slow down in larger areas.


Wow nice, how do i apply these on my switch running AMS.?
 

alkar

Well-Known Member
Member
Joined
Apr 30, 2013
Messages
329
Trophies
1
Age
94
XP
1,262
Country
United States
Works perfectly fine in handheld mode profile (except x2 cutscenes) ! thanks! Hopefully you cna fix cutscenes in x2.
Definitely smoother (even with max overclock) in handheld profile than docked profile with reverseNX. Stable 60fps it seems.
 
Last edited by alkar,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • K3Nv2 @ K3Nv2:
    Send me your ip I'll remotely fix it
  • ZeroT21 @ ZeroT21:
    @K3Nv2 my head needs fixing if I believe you
  • ZeroT21 @ ZeroT21:
    it's kinda fun watching it happen tho
  • K3Nv2 @ K3Nv2:
    It needs fixing for other things but your pc I can fix
  • ZeroT21 @ ZeroT21:
    over 300+ virus/trojians/worms after scanning, what did I do to deserve this attention lol
  • ZeroT21 @ ZeroT21:
    tho I find it funny when i receive other people's pc/laptops in this state
  • ZeroT21 @ ZeroT21:
    i wont be upgrading unless I cant run the games i want anymore
  • K3Nv2 @ K3Nv2:
    Spill water on it good excuse
  • ZeroT21 @ ZeroT21:
    @K3Nv2 that's like a valid option if someone else is paying for ya
  • K3Nv2 @ K3Nv2:
    Daddy's wallet
  • K3Nv2 @ K3Nv2:
    Ngl hogwarts legacy has good pooping music
  • OctoAori20 @ OctoAori20:
    That's uh-
  • OctoAori20 @ OctoAori20:
    That's certainly a Dairy Queen sign lmao
  • K3Nv2 @ K3Nv2:
    You should see his help wanted signs
  • OctoAori20 @ OctoAori20:
    Ugh, so many sweat-dipwads in Sploon 3 Anarchy mode tonight
  • OctoAori20 @ OctoAori20:
    I didn't know this was "Make Octo never finish Fresh Season 2024 Catalog in Splatoon 3" month, good god
  • Veho @ Veho:
    What's the point of "confirming" games you know will get released. Like Nintendo "confirming" a Zelda sequel. "We can't be sure Nintendo is working on a new Zelda game, or if a new Zelda game will ever be released, until they officially confirm it."
    +1
  • Veho @ Veho:
    "There is literally no way to know if they will ever release a new Zelda game, it's wild speculation until they officially confirm it."
    +1
  • K3Nv2 @ K3Nv2:
    Black ops was the lesser shitter line in cock a poopoo tbf just a way to let people know it hasn't died or going a different route I guess
  • K3Nv2 @ K3Nv2:
    $70 DLC per 6 months is what it turned into
  • Psionic Roshambo @ Psionic Roshambo:
    She saw the sign and it opened up her mind lol
    Psionic Roshambo @ Psionic Roshambo: https://youtu.be/iqu132vTl5Y?si=MZw4KpDtlawLZNEF