forum

Key presses per second program

posted
Total Posts
184
show more
tkltyj
you cool and stuff but how can i see it in osu?
Topic Starter
Roan

tkltyj wrote:

you cool and stuff but how can i see it in osu?
If you're not running osu! in exclusive fullscreen mode then you can use the overlay mode setting. Overlay injection into a program running in exclusive fullscreen mode is currently not supported (see https://github.com/RoanH/KeysPerSecond/issues/28).
paper2222
how about being able to change the number manually?
Topic Starter
Roan

Paperzi wrote:

how about being able to change the number manually?
I assume you mean the number of counted key strokes, any specific reason for why this would be useful? If you want to persist your counts between sessions, then that's already possible.
Sighfour
how do you save configs?
Topic Starter
Roan

Sighfour wrote:

how do you save configs?
On the main screen there is a button on the right called 'save config'. Once the program is launched you can open the right click menu by clicking anywhere on the program and then navigate to the 'save / load' item, here is a 'save config' option as well.
Hell Ember
How can i reduce counts of press??
in other words i only want to show which i press, without showing counts of press.
Topic Starter
Roan

Hell Ember wrote:

How can i reduce counts of press??
in other words i only want to show which i press, without showing counts of press.
This is currently not possible, though I do have this on my todo list and it will most likely be supported in the next version.
osu_zack
how do i start it on mac
if i download the zip file all I get is a folder I don't get an application
Topic Starter
Roan

osu_zack wrote:

how do i start it on mac
if i download the zip file all I get is a folder I don't get an application
Not sure where you got a zip file, for mac you need the ' Runnable Java Archive' download link which gives you a .jar file. After that you just need to run it with Java, which you'll need to install if you don't already have it. I would assume that you can just double click the .jar file if you have Java installed, but I don't own a mac so I'm not entirely sure.
osu_zack

Roan wrote:

osu_zack wrote:

how do i start it on mac
if i download the zip file all I get is a folder I don't get an application
Not sure where you got a zip file, for mac you need the ' Runnable Java Archive' download link which gives you a .jar file. After that you just need to run it with Java, which you'll need to install if you don't already have it. I would assume that you can just double click the .jar file if you have Java installed, but I don't own a mac so I'm not entirely sure.
i tried it again and it worked with java thank uuuuu
Topic Starter
Roan

osu_zack wrote:

Roan wrote:

osu_zack wrote:

how do i start it on mac
if i download the zip file all I get is a folder I don't get an application
Not sure where you got a zip file, for mac you need the ' Runnable Java Archive' download link which gives you a .jar file. After that you just need to run it with Java, which you'll need to install if you don't already have it. I would assume that you can just double click the .jar file if you have Java installed, but I don't own a mac so I'm not entirely sure.
i tried it again and it worked with java thank uuuuu
Nice!
funnydon600
how do i open it? i am on mac 27 and it just gave me a folder..
Topic Starter
Roan

funnydon600 wrote:

how do i open it? i am on mac 27 and it just gave me a folder..
Make sure you get the 'Runnable Java Archive' version and make sure that you have Java 8 or higher installed. As far as I am aware you should be able to run the program by just double clicking the downloaded .jar file in that case.
heckerinnit

Roan wrote:

Keys per second

Update note: You can now also track mouse buttons

So I wanted to know how many keys / second I pressed in osu! And I had already seen programs like this on streams.
I could however not find a program that worked on my computer so I decided to write one myself.

The program when active looks like this:



Accessible by right clicking on the program.

For each configured key it shows how many times it is pressed. By default it also shows the maximum, average and current number of keys pressed per second.
When enabled it can also show a graph of the number of keys pressed per second over time. The horizontal line in the graph represents the average number of keys pressed per second.

Everything shown in the picture above can be toggled on or off and all the panels can be arranged in a lot of different ways.

Lastly, there are also some commands that can be sent to the program:
Ctrl + P: Causes the program to reset the average and maximum value.
Ctrl + U: Terminates the program
Ctrl + I: Causes the program to reset the key press statistics.
Ctrl + Y: Shows / hides the GUI.
Ctrl + T: Pauses / resumes the counter.
Ctrl + R: Reloads the configuration file.

You can also move the program using the arrow keys this makes pixel perfect positioning possible :D .
Well I hope some of you find this program useful and/or will use it for your streams (I would love to see that happen :) ).
And if you find any bugs feel free to report them.

Notes

- To clarify, you can add any key, and any number of keys to the program. So it can be used for any game mode.
- The overlay option doesn't work on a Mac nor does it work when the fullscreen option in osu! is enabled.
- When changing the key order, the keys are ordered from lowest value to highest value (negative values & skipping indices is allowed).
- To change a GUI colour in the colours menu, click on the current colour.
- An opacity of 100% means completely opaque and an opacity of 0% means completely transparent.
- The snap to screen edge function works on multi-monitor setups.
- You can move the window with the arrow keys at 3 different speeds 1, 2 & 3 pixels at a time (2=Ctrl, 3=Shift).
- You can also track mouse buttons with this program.
- The order for positions is from the top left to the bottom right.
- You can pass the path to the config file to load via the commandline or a shortcut so you can skip the configuration step.
- For some people running the program in Windows 98 / ME compatibility mode makes it so it can overlay full screen osu! so if you're lucky this might work.

Updates

2 February 2017: Added the option for the program to overlay the osu! window. This only works if osu! isn't being run in fullscreen mode.
5 February 2017: Added support for a variable update rate & changed exit key to Ctrl + U (Ctrl + O opens the osu! options menu).
6 February 2017: Added the ability to configure the order in which the keys are displayed & some minor bug fixes.
9 February 2017: Invert the key text color when a key is pressed.
10 February 2017: Added the option to customize the GUI foreground & background colour.
12 February 2017: Added the option to track all keys, show tracked keys or not, fixed some edge case bugs & minor improvements.
12 February 2017: Added support for more then 10k hits on a single key (now displays correctly) & added the option to hide a tracked key.
12 February 2017: Added the option to remove added keys.
16 February 2017: Added support for decimal avg & cur, also added a new command key that hides the GUI.
17 February 2017: Added support for transparent colours.
17 February 2017: Added automatic version checking & removed the decimal point for cur since cur is an integer.
18 February 2017: Added support for a variable size & added an icon to the window.
21 March 2017: Major performance improvements & change opacity settings to use a percentage.
21 March 2017: Made adding keys a little bit easier.
24 March 2017: Added the option to pass a config file via the command line & minor bug fixes.
30 March 2017: Implemented a right click dialog, pause functionality & a snap to screen edge function.
31 March 2017: Fix ! path bug, add arrow key moving, improve window draging, properly reset the graph, fix no menu on graph.
1 April 2017: Implement 1 & 5ms update rate (CPU heavy), fix infinite instances bug, fix rendering bug, filter config selection view.
8 April 2017: Implement a text based config format & the option to configure the program while it's running & beter arrow moving support.
12 April 2017: Fix checkmark not being colored, fix custom colors being reset, implement config caps & defaults, fix size issue, add add key cancel button
13 April 2017: Add pause checkmark, fix overlay option, implement config reloading (ctrl + R), Fix visual glitch, fix trackall bugs, NPE workaround, fix double click = ctrl, improve command line arguments.
16 April 2017: Added the option to track mouse buttons, added the option to save the onscreen location of the program to the config.
17 April 2017: Rendering fixes & fix the counters being reset when the color is changed.
19 April 2017: Fix keys not being removed when they should be, fix Win 10 rendering bug, Add cancel option for graph, size, precision & update rate, fix move keys moving the context menu & program at the same time, fix loading a new config not resetting stats.
29 April 2017: Minor optimizations, context menu improvements & fixes, add totals panel, fix some bugs.
30 April 2017: Fix an opacity bug that causes the window to be invisible with certain settings.
28 May 2017: Fix a localization bug & add the option to track key-modifier combinations.
28 June 2017: Added a lot of layout options.
28 June 2017: Fix the position/index feature for keys not working.
28 June 2017: Add warning for invalid key/row/columns combinations, improve reset menu, add a value-text horizontal rendering mode.
16 August 2017: Fix several bug involving key-modifier combinations & a bug showing weird mouse button text.
9 November 2017: Implement save stats feature & 6 additional rendering modes. Fix key capacity checks, changing the update rate messing up the average, fix a multi-threading issue, fix a mode loading bug. Improve startup times & overall performance. Lots of internal refactoring & optimizations.
15 November 2017: Fix command keys with modefiers not working & visual enhancements for resetting.
24 December 2017: Fix all known key-modifier bugs, better support for unfilled grids, internal optimizations.
2 June 2018: Fix the arrow keys displaying rather broken.
3 June 2018: Switch to arrow symbols with better availability, fix configuration position saving and UTF-8 support, add GitHub link to the initialisation dialog.
12 September 2018: Completely new versatible layout system, rendering modes on a per key basis, improved performance.
27 December 2018: Variable layout size, variable layout border offset size, support for the right shift key, several other bug fixes, improved dialogs.
5 February 2019: Changable key name, periodic stats saving, separate track all options for keys and mouse buttons, some bug fixes.
27 August 2020: Windows style file chooser, prevent loading non-existent config files, force quoting for cli config passing, fix background transparency not being applied to non-panel areas, general aesthetic and internal improvements.
24 May 2021: sub-pixel rendering, save/load statistics on exit/launch, jnativehook update, Java 16 compatibility fix, fix incorrect fill color border offset, prevent ESC from closing dialogs, enable the config save button by default.

Todo list / working on

Working on more cosmetic aswell as functional ideas.

Downloads

(Java 8 required, supported operating systems: Mac (tested 10.11.6), Linux (tested Ubuntu 16.04 LTS) & Windows (tested 7, 8 & 10))
Windows executable
Runnable Java Archive

All releases: link
GitHub repository: KeysPerSecond
i cant use it since i dont have the java thing, and i cant download it either since my pc is saying that it will harm it and blocks it ;_; but fr its a very good thing, i have seen others use it but sad that i cant lol
Topic Starter
Roan

heckerinnit wrote:

i cant use it since i dont have the java thing, and i cant download it either since my pc is saying that it will harm it and blocks it ;_; but fr its a very good thing, i have seen others use it but sad that i cant lol
You should be able to get Java from https://java.com or https://adoptopenjdk.net the warning you sometimes get when running the executable comes from the fact that as far as Windows is concerned I'm just a random person (who it doesn't really trust). The only way to prevent this warning is to pay for expensive code signing certificates that would cost me hundreds of euros every year, which isn't really something I can afford to do for a project that generates no revenue for me. There should be a button on the warning dialog that allows you to run it anyway, whether you trust me enough to press it is up to you.
SoyKoi

awsumturtle wrote:

Thanks man looking these from everywhere now you made a one thank you you are awesome but how do i apply it to see it on osu?
You have to use overlay mode
paper2222

Roan wrote:

Paperzi wrote:

how about being able to change the number manually?
I assume you mean the number of counted key strokes, any specific reason for why this would be useful? If you want to persist your counts between sessions, then that's already possible.
hi, sorry for late reply lol
so, i've been using another keystroke counter already, so i'd just like to be able to manually enter the number on its own, so that i can use this one
Topic Starter
Roan

paper2222 wrote:

Roan wrote:

Paperzi wrote:

how about being able to change the number manually?
I assume you mean the number of counted key strokes, any specific reason for why this would be useful? If you want to persist your counts between sessions, then that's already possible.
hi, sorry for late reply lol
so, i've been using another keystroke counter already, so i'd just like to be able to manually enter the number on its own, so that i can use this one
I see, this will be possible with a new stats saving format I had planned already. Though I'm unsure when I'll get around to implementing this (stats saving in general is broken in v8.5). If you don't mind waiting (or wait 9 months to reply again lol) then your problem should fix itself as the next stats format will be text based so you can just edit the values with a text file editor. Otherwise, if you don't have a lot of keys to copy over you can tell me the numbers and I'll manually craft a stats file you can load in v8.4 with those press counts set.
NoThisIsCasper

Roan wrote:

Agrrox wrote:

Also to the interface... i think it will be better to invert the color of background and key, so its always visible when pressed. nice program :D
Thank you :) , do you mean that when a key is pressed I should change the text color to black? If so I'll implement that as soon as I have some time, since that seems like a useful feature ;) .

Edit
Implemented! The color of the text now turns black when the key is pressed, this way the text on a key is always clearly readable :) . And thanks again for your feedback ;) .

Roan wrote:

Keys per second

Update note: You can now also track mouse buttons

So I wanted to know how many keys / second I pressed in osu! And I had already seen programs like this on streams.
I could however not find a program that worked on my computer so I decided to write one myself.

The program when active looks like this:



Accessible by right clicking on the program.

For each configured key it shows how many times it is pressed. By default it also shows the maximum, average and current number of keys pressed per second.
When enabled it can also show a graph of the number of keys pressed per second over time. The horizontal line in the graph represents the average number of keys pressed per second.

Everything shown in the picture above can be toggled on or off and all the panels can be arranged in a lot of different ways.

Lastly, there are also some commands that can be sent to the program:
Ctrl + P: Causes the program to reset the average and maximum value.
Ctrl + U: Terminates the program
Ctrl + I: Causes the program to reset the key press statistics.
Ctrl + Y: Shows / hides the GUI.
Ctrl + T: Pauses / resumes the counter.
Ctrl + R: Reloads the configuration file.

You can also move the program using the arrow keys this makes pixel perfect positioning possible :D .
Well I hope some of you find this program useful and/or will use it for your streams (I would love to see that happen :) ).
And if you find any bugs feel free to report them.

Notes

- To clarify, you can add any key, and any number of keys to the program. So it can be used for any game mode.
- The overlay option doesn't work on a Mac nor does it work when the fullscreen option in osu! is enabled.
- When changing the key order, the keys are ordered from lowest value to highest value (negative values & skipping indices is allowed).
- To change a GUI colour in the colours menu, click on the current colour.
- An opacity of 100% means completely opaque and an opacity of 0% means completely transparent.
- The snap to screen edge function works on multi-monitor setups.
- You can move the window with the arrow keys at 3 different speeds 1, 2 & 3 pixels at a time (2=Ctrl, 3=Shift).
- You can also track mouse buttons with this program.
- The order for positions is from the top left to the bottom right.
- You can pass the path to the config file to load via the commandline or a shortcut so you can skip the configuration step.
- For some people running the program in Windows 98 / ME compatibility mode makes it so it can overlay full screen osu! so if you're lucky this might work.
- If you have an old config (kpsconf1 or kpsconf2) then you need to convert it with version 8.4 to load it in more recent versions.

Updates

See the changelog on GitHub.

Downloads

(Java 8 required, supported operating systems: Mac (tested 10.11.6 & M1), Linux (tested Ubuntu 16.04 LTS) & Windows (tested 7, 8, 10 & 11))
Windows executable
Runnable Java Archive

All releases: link
GitHub repository: KeysPerSecond
hi roan. i am wondering why windows protects your pc pops up. is this normal?
Topic Starter
Roan

NoThisIsCasper wrote:

hi roan. i am wondering why windows protects your pc pops up. is this normal?
This is usually expected yeah. Windows tends to show that because as far as Windows is concerned I'm just a random person who it doesn't really trust. The only way for me to prevent this warning dialog is to pay for expensive code signing certificates that would cost me hundreds of euros every year. That way the application would no longer show up as 'Unknown Publisher'. Unfortunately this isn't really something I can afford to do on a project that generates me no revenue. You can bypass the warning dialog, but whether you trust me enough to do so is up to you.
Please sign in to reply.

New reply