Keyboard mapping on slider only moving between upper and lower bound of scale

OSX Sonoma 14., Windows 10

I am running an experiment with a button box in an MRI task. With this experiment, we have individuals listening to some audio recordings then rating clarity of words using a button box in the scanner. The button box is a fairly simple device (no model info on box) that maps to keyboard keys ‘6’, ‘7’, ‘8’, ‘9’. I want to present a rating scale from 1 to 7 where the marker starts in the middle at position 4, and the buttons mapping to 8 and 9 on the keyboard can be clicked in order to move left and right on the scale respectively. I have made a few attempts to create this, and have the slider tool working to where it presents the initial scale correctly. However, using both the pc keyboard itself (and when mapping the button box) – regardless of granularity setting – the slider is jumping to either end of the scale and not to the integer markers between them.

I also tried using the old RatingScale tool as well, but in the custom code using the leftKey and rightKey assignments does not work. The problem with the older rating scale is slightly different as instead of the keyboard inputs resulting in extremes along the scale, it is mapping directly to the scale ie I press keyboard button 3 and it will go to the third tick.

I am not really running into error messages with this problem at the moment-- I am moreso just not getting this configured properly in the GUI and have sort of exhausted my options. Using the slider, I have made custom code and keyboard response objects to try and store a scale value that can add or subtract 1 based on the button pressed, but it causes the same issue with jumping between extremes. Interestingly, if it adds less than 1 it will still move between extremes but at a slower rate.

I would not be opposed to the older rating scale if someone has a conda environment or something I can clone and adapt to my own task, but I’d also rather build this from the ground up as almost everything in the routine works perfectly except for this issue.