I suppose you could disable the mouse from being visible. Add a UI prompting the user to use arrow keys.
Then using UserInputService & indexes - basically assigns a value to each UI then upon going up/down (for example) you add a line that highlights the frame that the index is on.
Then finalise it when the player presses enter/return it does whatever you wish to do.
If I am reading this issue correctly and you haven’t already, check out GuiObject’s NextSelectionDown, Up, Left and Right. Enable “Selectable” on the selectable GuiObjects.
I have not done this myself but reading this forum post I believe the left joystick is the default.