Something my customers are always asking me for is joystick controllers, especially fans of classic arcade games. There is something about the feel of real arcade style controllers that a gamepad, no matter how good, cannot duplicate.
Now the best joystick on the market is probably the X-Arcade Tankstick, https://shop.xgaming.com/collections/arcade-joysticks/products/x-arcade-tankstick-trackball-usb-included
However, the size, weight and price may not make it the best bet for some people, especially ones who play a lot of single player games. I have tested a number of single player joysticks, looking for the best combination of quality and price. My favorite so far is the Mayflash F300 Arcade Fight Stick.
The first thing you notice about the joystick is the weight. This is a controller with a lot of heft, but not too heavy to put on your lap for extended gaming sessions. It also has rubber feet to keep it from slipping if you place it on a table or desk. The joystick action is pretty good, a little loose for my taste, but not too much so. The buttons have good action, springy and responsive. There are two toggle switches on the upper left of the controller. Set the left one to the middle position, between XInput and DInput, and the right one to the top setting, X/Y. Otherwise, the Raspberry Pi will not recognize the joystick correctly. Mine came out of the box with the switches set correctly, but your mileage may vary. After plugging it in and configuring it, I tried it out on a number of games.
Certain arcade games, such as Donkey Kong and Pac-man used a dedicated 4 way joystick that only moved up, down, left and right. The problem with that is that pretty much all modern game controllers are 8 way. This creates dead zones, where you try to move in one direction, but you accidentally press a diagonal, resulting in no action by your character onscreen. The F300 reduces but does not eliminate this problem. The dead zones are not as bad as a standard gamepad, and the games are more fun to play. I also tried it out on fighting games, such as SFII. Special moves flow naturally, and the diagonals are easy to hit.
A few games are noticeably harder with this joystick. The A, B, X and Y buttons are not in a standard diamond formation like on a regular controller, so games like Robotron 2084 aren’t as intuitive.
Console games play very well with this controller. The original Super Mario Bros took a little getting used to, but once I figured out how to avoid the diagonals I was breezing through the levels. Shoot em ups like Blazing Lazers for the TG16 are also much easier with this joystick than with a regular gamepad.
At under $60 on Amazon, this joystick won’t break too many banks for the single gamer. All around, probably the best inexpensive joystick on the market. Here is the link to purchase.