what is the best controller to be able to play games on PC or Mac? how popular is the steam controller?
I don't know about Terraria nor 1.3.1, but the best two controllers for PC are the XBox 360 controllers (you can buy wired Xbox 360 controllers made especially for desktop PCs) for games that are
NOT 2d side-scrollers.
Games that
ARE 2D sidescrollers, or emulating old consoles, you simply cannot beat a Playstation 2 controller. Analog sticks absolutely suck for 2D movement (you will oftentimes get diagonal when you want straight, for example), and for me, the D-pad on a 360 controller is too awkward to use as a primary control method.
The Playstation2 controller (PS1 controllers work too!) can be hooked up to your PC via a cheap adapter you can find anywhere. You probably won't get the analog sticks, nor vibration, but the D-pad and the 10 buttons should work fine with most of those adapters.
Some games won't recognize it because of Micro$uck's outdated controller support (they only support 360 controllers nowadays lol), but that's why you get a program like xpadder to map gamepad buttons to keyboard keys and then in the game/emulator's config, map those keys to the functions.
I've found that no PC gamepad has ever come close to a PS2 controller, ever. Not in terms of comfort and especially not in the D-Pad. The PS2's D-pad is 4 separate buttons, nearly all PC gamepads have the D-pad as one large moveable button and you get the same problem as you do on 360 controllers -- getting down right or up right when you just want plain right which can cause your characters to crouch or what-not while trying to run right.