Пример #1
0
        private void showInReportDialogue(string s)
        {
            var dialog = new ReportDialog("Results")
            {
                textBox_Results =
                {
                    Text                          = s,
                    HorizontalScrollBarVisibility = System.Windows.Controls.ScrollBarVisibility.Disabled,
                    VerticalScrollBarVisibility   = System.Windows.Controls.ScrollBarVisibility.Auto
                },

                Owner = GetWindow(this)
            };

            dialog.Show();
        }
Пример #2
0
        private void help_button_Click(object sender, RoutedEventArgs e)
        {
            var dialog = new ReportDialog("About")
            {
                textBox_Results =
                {
                    Text                          = @"Welcome to osu!ReplayAnalyzer.
This program is intended to analyze osu! replays and output relevant information, mostly targeted at witchhunter.
The provided information can be used to determine the probability of legitness of a player.

The first thing you want to do after downloading and launching the app is Open osuDB, this will load your osu!beatmaps into the program.
You'll only need to specify the path once, the program is going to remember the settings in a file and will load the DB automatically on startup next time.

Terms explained:
1. Pixel perfect hit is a hit done on the edge on the note rather than its center.
Originally, pixel perfect hits happened often when a player using relax was late on hitting a note.
Strictly, pixel perfect hits are only the ones that are PERFECTLY on the edge.
However, the term is generalized by measure of so-called perfectness for every hit.
Mathematically it is the distance between the cursor and the center of the note divided by the radius of the note.
It is a value from 0 (perfectly centered note hit) to 1 (pixel perfect edge note hit). Values more than 1 consequently correspond to so-called attempted hits, which are technically misses.
High number of pixel perfect hits indicates poor aim and probably usage of relax hack.

2. Over-aim is a hit which happened after the cursor hovered the note, left it and then hovered again.
This is also an indicator of poor aim, FCing maps with such inconsistency is fairly hard, so a high number of such moments across the replays of a certain player would suggest that they're relaxing.

3. Cursor teleport is a large cursor movement within a single frame which has no derivative.
This is equivalent to your intuitive definition of a teleport.
Even though cursor teleports happen often for tablet users due to mapping nature of the input, sometimes inverstigating cursor teleports allows to detect replay bots or maybe even aim assist.

4. Fast single tap is an inhumanly fast sequence of performed single tap hits.
This detects cases when a poor-coded relax hack managed to singe tap a triplet or a stream on a high bpm map where a human wouldn't be able to do that.
Beware that spamming keys at high BPM can also produce fast single taps even though it's humanly possible.
But usually in this case the hits are not going to be 300s.

5. Extra hit is a key press during gameplay time which did not look like an attempt to click a note.
This usually happens when player is spamming or accidentally presses the second key.
Such hits do not indicate any kind of hacking but the number of extra hits (especially 0) can provide a worthy statistical knowledge.

6. Effortless miss is a miss that didn't have a corresponding hit attempt.
Sometimes that happens during miss aimed notes using relax hack when it is poorly configured.

7. Average frametime difference is equivalent to the period of cursor position scan event during the replay.
This value is usually around 12.2-14.5ms for nomod plays and 16.5-22ms for DT plays (as the time goes faster, osu! is scanning frames less frequent in the absolute value).
A poor timewarp might not correctly encode the replay information which will result in effecient timewarp detection.
There's an automatic indicator of timewarp usage within this calculation, but it only applies to HT, DT and NC.
Timewarp detection at nomod speed seemed to be very unreliable so we skipped it.
If the program alerts about timewarp being used and the replay file doesn't look abnormal (e.g. missing all circles on purpose), then you can consider it as a positive.
NEW: The second version of the average frametime difference algorithm only takes inputs where K1/K2/M1/M2 were not used, to prevent false positives on >=225BPM deathstream maps and also detect cheaters with abnormal playstyles.

8. Average key press time interval represents for how long the key are held for during note hits.
Sliders and extra hits are not included. Lower values represent better finger control and inhumanly low values indicate timewarp or relax.
This conclusion though would require exhausting amount of statistics.

NOTE!! Absolute most of the found values do not automatically indicate cheating and require manual investigation of the replay files.
DO NOT jump into conclusions without good evidence.",
                    HorizontalScrollBarVisibility = System.Windows.Controls.ScrollBarVisibility.Disabled,
                    VerticalScrollBarVisibility   = System.Windows.Controls.ScrollBarVisibility.Auto
                },

                Owner = GetWindow(this)
            };


            dialog.Show();
        }