Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Nymashock] Fake lag frames #3390

Open
ThunderAxe31 opened this issue Sep 19, 2022 · 9 comments
Open

[Nymashock] Fake lag frames #3390

ThunderAxe31 opened this issue Sep 19, 2022 · 9 comments
Labels
App: EmuHawk Relating to EmuHawk frontend Core: Nymashock Playstation (PSX/PS1) core Repro: Affects 2.8

Comments

@ThunderAxe31
Copy link

I've always thought that the point of lag frames is pointing out that the core isn't reading the inputs during that frame. However, I stumbled more than once in lag in which the provided inputs are actually read and resulted in the relative game acting accordingly. Here is my example:
Emulator version: 2.8
Game: Time Crisis (USA) http://redump.org/disc/1871/
.tasproj file: Time Crisis (USA)_nonlag.zip
Incriminated frame: 27693
Repro: just try removing the "1" input from frame 27693, you'll see that the player gun doesn't shot. Set it again to have the gun shooting again. Clearing the greenzone doesn't change the outcome. You even get the game result if you play back as a .bk2 file.

@CasualPokePlayer
Copy link
Member

CasualPokePlayer commented Sep 19, 2022

A look at guncon code seems to say there is nothing wrong for the lag detection code per se. The issue seems to more due to how guncon works (at least according to mednafen's code). The trigger being pressed variable is not cleared until after the input poll and if the trigger button is not pressed. So while the frame you press the trigger button may be a lag frame, the guncon remembers that until the input poll actually occurs. (i.e. the input meant for a non-polling frame is "stored" until the next polling frame.) Not really any way to fix this.

@CasualPokePlayer CasualPokePlayer closed this as not planned Won't fix, can't repro, duplicate, stale Sep 19, 2022
@Spikestuff
Copy link

I can switch this out from being a GunCon issue by mentioning that Salary Man Champ: Tatakau Salary Man also has this exact same issue where it polls false lag frames every other frame for whatever reason.

@YoshiRulz YoshiRulz reopened this Sep 20, 2022
@YoshiRulz YoshiRulz added App: EmuHawk Relating to EmuHawk frontend Core: Nymashock Playstation (PSX/PS1) core Repro: Affects 2.8 labels Sep 20, 2022
@YoshiRulz YoshiRulz added this to the 2.9 milestone Sep 20, 2022
@CasualPokePlayer
Copy link
Member

CasualPokePlayer commented Sep 20, 2022

With what controller? Do you have a repro movie?

@Spikestuff
Copy link

Spikestuff commented Sep 20, 2022

Any standard controller (dpad, dualanalog/dualshock), I don't have a movie but it'll happen instantaneously in the first mini-game regardless (and carries throughout the rest of the game), it's extremely noticeable since it drops lag every other frame.

@CasualPokePlayer
Copy link
Member

How are these lag frames false lag frames? The game is not responding to inputs on these frames. As far as I can tell the emulator is correctly reporting lag frames here.

@CasualPokePlayer
Copy link
Member

Please provide a repro movie that contains "fake lag frames" where input on those fake lag frames have the game do something.

@Spikestuff
Copy link

I read the repo wrong apparently. The issue is that the lag frames shouldn't exist in SMC.

@CasualPokePlayer
Copy link
Member

CasualPokePlayer commented Sep 23, 2022

Why not? Is there no "lag" on actual console? Or is this based on another emulator (which itself has as much claim to "accurate lag" as Nymashock)?

@Spikestuff
Copy link

Actual console.

@CasualPokePlayer CasualPokePlayer removed this from the 2.9 milestone Oct 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
App: EmuHawk Relating to EmuHawk frontend Core: Nymashock Playstation (PSX/PS1) core Repro: Affects 2.8
Projects
None yet
Development

No branches or pull requests

4 participants