Forums  /  Grand Theft Auto: San Andreas  /  Laggy Arrows
  GallaGalla

This happens every time I play, I Don't know about anyone else but it is really annoying and previously it caused me to lose around 12 Minutes in a LS Race because it was so bad I couldn't even win. If anyone knows how to fix this or has any information please tell me, Thank You very much.

 
  [user deleted]

reinstall your game

DerpethDerpeth and GallaGalla like this. 
  TokytoTokyto

It only happens to me with the first 2-3 arrows.

GallaGalla likes this. 
  GallaGalla

Im reinstalling SA Right now christera and Ok Tokyto

 
  TireanTirean

This used to happen to me when I hadn't rebooted in a long time, a quick reboot of the pc fixed it straight up.

GallaGalla likes this. 
  Patrick_Patrick_

All but the last two paragraphs were copied from Discord.

Have you tried ignoring the arrows and just going by the beat?

The arrows are just there to help, what counts is how many milliseconds from the song start you press your buttons (as I have learned today, this game is documented so well <3). [But ofc if your arrows are off, so might be the timer and/or the music].

v1.01+ are nicer for that lowrider minigame.
The patch notes mention "improvements" to the dancing minigames. maybe that means that your problem goes away by patching or maybe they are just refering to the fact that you need less precise timings now.

The official patches require a legit 1.0 exe, the downgrader from the resources section gives you a cracked exe, so it's not easy to get from steam to v1.01.

(I refer to this downgrader: http://gtaforums.com/topic/753764-relsasteam-downgrader/)

GallaGalla likes this. 
  wooxwoox

the game reads something from audio folder every frame in that mission or smthing like that.
Possible causes of lags
1) HDD - locally recording to same drive game installed on
2) SSD - dying controller
3) game installed on extarnal HDD/usb drive, ive seen that happen!!

GallaGalla and Patrick_Patrick_ like this. 
  tuxxortuxxor

The issue seems to be caused by the game using number of seconds since boot time for timing and converting it to a single precision float. An experiment of playing the mission during the time when number of seconds since boot crosses 2^20 mark seems to confirm the theory:

Notice how it becomes more laggy around 12 days, 3 hours, 16 minutes and 16 seconds of up time. That's because 12¤86400+3¤3600+16¤60+16=1048576, which is 2^20. The number of seconds took one more bit, which means the precision of fractional part halved.

A single precision float has only 23 bits of precision (not counting the sign bit), so if the number of seconds takes 20, we're left with only 3 bits for the fractional part. That's only 8 fps. Exactly as in the video.

Unless there's some other issue, rebooting the OS should help. For windows 8 or 10 it may be necessary to disable fast boot, to make sure the OS really reboots instead of pretending to do so.

villanavillana, HaviHavi and 8 others like this. 
  hoxihoxi

Galla does use Windows 10, so it's possible that Fast Boot screws it up.

 
  Patrick_Patrick_

TireanTheComputerGod knew it all along. 😃

The v1.01 mention improvements to the dancing games. Nick says that they made it easier by increasing the time windows, but probably they also changed it to double, I guess? Can you post the decompiled code of the relevant parts of both versions, please? 🙂

Edit: Nick just pasted it into Discord:
unsigned int CAEAudioUtility::GetCurrentTimeInMilliseconds()
{
LARGE_INTEGER PerformanceCount; // [sp+0h] [bp-8h]@1

QueryPerformanceCounter(&PerformanceCount);
return (unsigned int)((float)PerformanceCount / (float)Frequency ¤ 1000.0
- (float)TimeInMillisecondsAtGameStart);
}