Skip to content

Anti Yo-Yo System

One of the most annoying issues of dynamic scaling systems is the Yo-Yo Effect (or quality ping-pong).

The Core Problem

Without smart management, the system falls into an infinite loop:

  1. FPS drops due to a heavy scene.
  2. The plugin reduces graphics quality (e.g., cuts resolution).
  3. The load drops, and FPS rises above the baseline.
  4. The plugin determines there's Performance Headroom available and restores graphics quality to maximum.
  5. FPS drops again. The cycle repeats.

Consequently, the player experiences continuous Quality flickering: shadows constantly pop in and out, and the image "jumps" every second from blurry to sharp.

The WebAP Solution: Penalty Lockout

We completely eradicated this issue by implementing the concept of a Penalty Lockout. It is built upon two parameters from the plugin settings.

When the plugin increases graphics quality, it triggers a hidden timer — the Detection Window (e.g., 15 seconds). During this timeframe, the Indexer closely monitors frame stability.

If the FPS suddenly drops during this window, the system draws a definitive conclusion: «The previous graphics upgrade was a mistake; the device cannot sustain this level over a long distance.»

A penalty is enforced:

  1. The plugin immediately decreases the quality back down.
  2. A strict Penalty Lockout Duration is applied (e.g., for 60 seconds).
  3. For the duration of this minute, the plugin is strictly prevented from attempting to increase graphics quality again, even if the FPS skyrockets and the processor idles.

Extended Lockout (Session Lock)

If your game's dynamics feature load spikes that occur in waves, and you prefer the quality to never attempt recovery after the first drop, simply specify a massive value in the Penalty Lockout Duration field (e.g., 600 for 10 minutes or 3600 for an hour). This effectively locks the graphics at a consistently low level until the end of the gaming session.

Fluidity Priority

The penalty exclusively blocks attempts to improve the render. If the player enters an even heavier scene and the FPS drops below the critical threshold, the plugin can still urgently decrease quality further. The system invariably prioritizes gameplay fluidity over visual effects.