Overview

About

NaNDL

I am NaN GD, and I make Frame Window Counter videos on Geometry Dash levels.

My goal is to calculate and predict difficulty of Top Extreme Demons.

Please note that this list is not reliable as there are many factors to difficulty than just precision.

A video on this will be made very soon.

FAQ

What is a Frame Window?

The number of frames/ticks available to pass a timing.

Frame windows offer more information about each timing than traditional frame perfects.

Why don't you use Frame Perfects instead?

A 60Hz frame perfect have a problem of having a frame window of 1–7 on 240Hz.

In fact, a 60Hz frame perfect that is not a 120Hz frame perfect has an average frame window of around 5.

Frame windows offer more information about each timing than traditional frame perfects.

Why do you count frames from 1–10 instead of from 1–4

More data is better.

A 60Hz frame perfect is not the same as a frame window of 4 on 240Hz

They will be even more useful too when I do lower end extremes.

What is σ/s or precision? (The number on the bottom left of my videos)

This is the precision \(L\) required to beat the level in a given expected time (24h) based on frame windows.

How did you calculate precision?

The formula can be viewed in the "Calculations" tab.

This is based on each input's frame window and time position.

It uses Normal Distribution, which is the most common pattern among human-error.

Is this measurement reliable enough to determine a level's difficulty?

No, there are many more factors to difficulty than just frame windows.

However, I do believe it is more accurate than traditional counters.

Why did you create this list if it's not reliable?

Because the list is still useful for me as a reference point to improve on my calculations.

What other factors can affect difficulty?

Nerves, blindness, learniness, click speed, kinematics (velocity & acceleration), and many more.

They are pretty difficult to measure since they are subjective. I may use machine learning to figure out these factors.

What is "Nerve Inflated"? and how is it calculated?

This is my first attempt to estimate the impact on timings based on the player's nerves.

Using the fact that Flamewall is between Thinking Space II and Amethyst on Pointercrate's Demonlist, I calibrated the Nerve Constant until precision values of Flamewall is right in between those levels.

This helps better predict the difficulty of upcoming levels in the list. Although, it is still unreliable.

In this case, I added a multiplier to my calculations based on the time position of the inputs.

Why does precision change so much in the beginning but not much at the end?

Adding a frame perfect after one has a bigger impact than adding it to a hundred. The player does not need to increase their precision much to do another hard timing after many.

Why did you create this website?

I did not like Google Sheets.

Rankings

Precisions

Status
Rank Level Name Precision (σ/s) E[Attempts] Length (s) Inputs Avg CPS Accuracy Status

Timings

Frame Windows

Status
Rank Level Name 1 2 3 4 5 6 7 8 9 10 Status

Model

Calculations

Model Assumptions

  • All inputs are independent of one another.
  • All inputs are performed under the same player conditions.
  • All inputs receive equal practice.
  • All inputs have symmetric timing windows around the target timing.
  • All inputs follow the same normal distribution of timing error.

Equations

Time window to pass input \(i\) in seconds

\[ w_i = N_i\left(\frac{1}{f}\right) \]

Probability of passing input \(i\)

\[ p_i = P\left(|X_i| \le \frac{1}{2}w_iL\right), \qquad X_i \sim N(0,\sigma^2) \]

Probability of failing input \(i\)

\[ q_i = 1 - p_i \]

Probability of reaching input \(i\)

\[ r_i = \prod_{j=1}^{i-1} p_j \]

Probability of completing the level

\[ P(C) = \prod_{i=1}^{n} p_i \]

Expected time per attempt

\[ E[T_A] = t_nP(C) + \sum_{i=1}^{n} t_i r_i q_i \]

Expected time to complete the level

\[ E[T_C] = \frac{E[T_A]}{P(C)} \]

Precision value

\[ L^* = \left\{L \in \mathbb{R}: E[T_C(L)] = 24h\right\} \]