Lag

Revision as of 02:06, 11 July 2021 by Whiteted (talk | contribs) (→‎Causes: add smoke)

Lag is wherever the game frame rate drops, and that's quite often in Goldeneye.

Its main effects are slower forward movement and warps. It directly determines the fire rate of automatic weapons, which is a bottleneck for areas of many levels such as Dam SA and Train. A large part of OCB is coping with lag, particularly avoiding stucks in heavy lag, and experienced players are very sensitive to it.

Causes

Lag is caused by anything which makes more work for Goldeneye to do before it completes a game tick, so the causes are much more than just "what's on screen". However, levels are divided into rooms, objects are marked as being 'on-screen' and generally what is on screen has a much bigger effect on lag than just how long the rendering takes.

Beyond broad ideas, not a great deal is known about the relative size of various causes. But that's not to say that the player base hasn't becoming pretty skilled at reducing lag, including through some rather subtle strats.

Some particular causes:

  • Weapon switching / pausing - this creates a lag spike as the new object is spawned in, and the size of the lag spike is specific to the weapon. The exact cause is unknown but could relate to fetching the files from the ROM and decompressing them. This seems insufficient to explain the size of the lag spike though.
  • Bringing things on screen for the first time (new rooms / guards who have been off-screen)
  • Smoke, particularly if it's very close to the camera i.e. from shooting at a wall right in front of you
  • Guards, particularly when loaded and active (moving or shooting)
  • Having lots of rooms loaded

Lag and speed

One of the big early discoveries was that of 'lookdown'. More precisely, this was the idea that a higher frame rate increases your forward speed.

Again this is not terribly well understood, as the code is horrific. Your forward movement seems to be actually driven by the animation of Bond moving side to side, and so perhaps the root cause is in how lag effects this process.

Certainly exactly when lag spikes land affects the loss of speed: TASers will nudge weapon switches about by a few frames to find a spot that causes the smallest loss of forward speed, and the variation is dramatic.

Strafing speed is added to your velocity much later in the process, and is confirmed as being entirely unaffected by lag.