[FF7PC-98/Steam] Smoother 60FPS Battles (v0.95)

  • Thread starter Thread starter obesebear
  • Start date Start date
Status
Not open for further replies.
You guys are goddamn wizards. It's probably weird but I kind of like how fast the active character indicator spins
 
Thanks for the video LetCreativityPlay.  I'll put it up on the first post and check out what you're talking about with Catastrophe.

For everyone else.  Do not use the lgp.exe ulgp.exe I included in the download.  It will work, but has some errors.  Instead, use Luksy's lgp inserter/extractor https://dl.dropboxusercontent.com/u/3227870/ulgp_v1.2.1.7z

For things like barret's attack, the game wouldn't display his shell casings, and some textures like muzzle flashes weren't working.  Luksy's changes fixed that problem.   All new uploads will include his program with his permission.
 
I can tell you now that he won't have any issue with you using it... he is all for open source as long as credit is given :)  Plus, credit should be given to Aali also.
 
UPDATE:

I've fixed the camera for the summons....and discovered a new problem. For some reason, while effects only have to be drawn once a frame, summons need to be drawn every frame. I'm still hunting down the cause.
 
UPDATE:

I've fixed the camera for the summons....and discovered a new problem. For some reason, while effects only have to be drawn once a frame, summons need to be drawn every frame. I'm still hunting down the cause.
DLPB ran into the same problem on his PSX-style battle mod. He solved it by abusing the game's pause function, but that broke actual pausing, and I don't think it'll work when other stuff is rendering at native 60.

If you find a solution to this, I'd be curious to know how you did it.
 
No, I resolved the issue another way because it was caused by the pause value.  If this is the same issue, NFITC1 may be in luck.
 
Sometimes, even though I'm not religious, I'm pretty sure miracles happen
 
NFITC1:

I used a sloppy work around.  Hopefully you can go a step further and see about doing it a different way.  Basically, any function address in the queue that caused flashing (i.e. was disappearing 3 of 4 frames) was forced to be drawn (if that's what the main function call is doing) all 4 frames.  You can't simply tell everything to draw all 4 frames (at least I couldn't find a way) or it causes even more issues.   Only a few things in the game have a bug with the pause variable.  It exists in the original game...  that when the game is paused, certain models disappear (Rufus on the helicopter and the Summons are two so far).

So, my workaround goes through a list of function addresses and compares them to the one in the queue.  If match, then draw. If not, then skip.  It's rather hard to explain, and my 60fps uses the pause var of course.  Here are the changes:

Code: [Select]
Code:
{KOTR pause fix5BF047 = 0F 8D AF 00 00 00 8B 04 8D 58 28 BF 00 85 C0 74 7D 83 3D AC D1 9A 00 00 75 12 31 C9 B1 0C 39 04 8D 88 42 91 00 74 05 E3 65 49 EB F2 FF D0{KOTR function list.914288 = B0 AB 47 00 93 C7 47 00 AE CB 47 00 76 D9 47 00 6A DD 47 00 5E E0 47 00 67 E3 47 00 92 EB 47 00 A0 EF 47 00 7D FB 47 00 C2 FF 47 00 4E 03 48 00 76 07 48 00
914288 is a list of function addresses for the knights.

==================

In the original game code, the part that you need to concern yourself with is this:

5BF06E
call dword ptr [eax*4+00BF2858]

This is exactly what is causing your issue.  But I have no idea why the problem is unique to Summons etc.

You may be able to get away with making it draw all the time.  The way I did it with the pause var was unique (unless you are also using it?).

The issue is that the function at 0041BB51 is being shared by others.  So if I disable the jump there, and also at 5BF06E, it just messes a ton of other stuff.
 
Last edited:
Is it possible to install  your 60 fps mod and keeping my 'bootleg graphical overhaul' of the game( char and fields ) ?
 
Is it possible to install  your 60 fps mod and keeping my 'bootleg graphical overhaul' of the game( char and fields ) ?
Yes. I was wondering the EXACT same thing.

obesebear, will 60 fps work when the game is rendered at 2560 x 1440, or only 1080p?
 
Just read that summons are broken. How broken are they? Are they worse than default?
 
Yes. I was wondering the EXACT same thing.

obesebear, will 60 fps work when the game is rendered at 2560 x 1440, or only 1080p?
He can correct me if I'm wrong, But that's hardware dependent. the higher the resolution and framerate, the more your GPU is taxed.

This is pure speculation. But if you have a monitor like that, I'm gonna guess you have the hardware to push modern games out with at least 30fps. So you'll play FF7 just fine.
 
obesebear, will 60 fps work when the game is rendered at 2560 x 1440, or only 1080p?
It will work at all possible resolutions.  The only hiccups you may see are from the game's limiter not working correctly.  So instead of exactly 60fps you may only get 57 or 58fps.  The game has ALWAYS had this problem, but there's nothing we can do about it at this point.

Just read that summons are broken. How broken are they? Are they worse than default?
The summons still work and will cause damage to the enemies like always.  However, I would suggest closing your eyes during the summon, because the screen is going to flash from the battle ground to the summon animation VERY rapidly back and forth.


While I'm here, NFITC1 or DLPB, any idea why sometimes in battle certain textures won't load?  The main one I've tested is against the Custom Sweeper.  Sometimes when it or Barrett attacks the muzzle flash and spent shells don't appear, but I can reload the save and play the exact same fight again and they'll work.  If it works, it works the rest of the battle, if they fail to load, they won't work the rest of that battle.   Seems to almost be a 50/50 chance.
 
Last edited:
Great, it will work then for me at high res.

Haha. Bummer that summons are completely broke. What is the technical limitation? I'm not too smart with programming but I can help you test some new fixes if you have them or anything else you want to experiment on in regards to 60 fps. Let me know how I can help.
 
Testing is pretty much done at this point.  The only thing we could really use is more programmers.
 
While I'm here, NFITC1 or DLPB, any idea why sometimes in battle certain textures won't load?  The main one I've tested is against the Custom Sweeper.  Sometimes when it or Barrett attacks the muzzle flash and spent shells don't appear, but I can reload the save and play the exact same fight again and they'll work.  If it works, it works the rest of the battle, if they fail to load, they won't work the rest of that battle.   Seems to almost be a 50/50 chance.
That's an animation script thing, remember? I can sort of fix that, but I don't know why it only sometimes works.
 
Has anyone tried seeing what summons look like at 30 fps? i believe the ps1 battles scenes were 30 fps. what about getting the game to 30 fps instead of 60 fps as a compromise? At least this way everything will be working the same as the console. 30 fps looks way better than 15 fps in battle. i understand that the ultimate goal is 60 fps but now I'm curious.
 
No.  The ps1 battle (animations, 2d/3d effects etc) was 15 unique frames a second, duplicated 3 times to be 60 frames. The only thing in PSX that is true 60fps is the battle menu. The camera is 30 unique frames in PSX.
 
Last edited:
That's an animation script thing, remember? I can sort of fix that, but I don't know why it only sometimes works.
Ha, nope I don't remember discussing it.  You'll have to bear with me if every month or so I pop back in and ask the same questions over an over.   I've been brute forcing a lot of school information in, and as a result I think some other things have gotten shoved out.

Has anyone tried seeing what summons look like at 30 fps? i believe the ps1 battles scenes were 30 fps. what about getting the game to 30 fps instead of 60 fps as a compromise? At least this way everything will be working the same as the console. 30 fps looks way better than 15 fps in battle. i understand that the ultimate goal is 60 fps but now I'm curious.
As for 30fps, there's no need.  The difficulty in making 30fps work is basically the same as 60.  But if you're looking for how the game originally ran on PSX without the smoother battle animations, you should check DLPB's thread.  Its title is pretty similar to this one.
 
Status
Not open for further replies.
Back
Top