How does Vscroll work

Hi all, I am looking for some help with Vscroll. What I am getting now when I run this is that it’s clicking multiple times all at once, and I wanted to do one click per keypress. What setting do I need to change

thanks beau

The way a key → “V scroll” mapping normally works is it sends a scroll tick for every frame (millisecond) that the key is pressed. For scroll in particular this is probably too fast so you can slow it down with the scaling parameter.

But if you want to send a single tick every time the key is pressed, you can make an expression like this:

0x00090001 input_state_binary
0x00090001 prev_input_state_binary not
mul

This translates to “button X is currently pressed but wasn’t pressed on the previous frame”.

And create an “Expression X” → “V scroll” mapping. Probably repeat for the other direction with scaling set to -1.

Change 0x00090001 to the correct code for the key you want to work as V scroll.

Hi jfedor,

What it is I have difficulty using the scroll wheel on the mouse so my idea was to reassign the scroll wheel to some keys on the keyboard So I had tried a setting of 1 and minus 1 but if that was way too quick if I did something like 0.05 would that be slower then or would I be better off to do it with the expressions that you showed

Thanks Beau

Yes, setting the scaling to some value like 0.05 or even lower would make it slower.

Why don’t you try it both ways and see which one you like better?

Another thing to keep in mind is that doing it the regular way (without expressions) gives you smooth (high resolution) scroll, which may or may not be what you want. It’s nice for scrolling documents and websites, but doesn’t let you easily adjust number pickers one by one etc.

Hi jfedor, I have done some testing, and I’m still having trouble understanding the scaling. I tried a scaling of 0.1, and that was even too fast. What scaling would be equivalent to what the expression does

There is no equivalence, the expression sends one tick when the key is pressed, after that it does nothing even if you hold it.

Why don’t you try a number lower than 0.1? You can go as low as 0.001.

Or just use the expression if you like that better?

Hi, I know that expression only does one tech, but is there a way in an expression to do one where, if I was holding the key down, it would continue doing a single ticket of time with the pies between?