Well, after about 20 test reboots, it looks like the USB ports on the Pi (unlike the USB hub’s ports) are consistent with how they assign the joypad numbers. I even plugged in a third adapter (a single Sega Genesis port). Upon every reboot, the SNES ports are always js0 and js1, the Genesis is always js2, and the PSX ports are always js3 and js4. This is awesome, as now I can assign the joypads in the emulator specific configs like I was doing before. It’s too bad that I wasted all that time messing with UDEV rules, LOL, but oh well. At least it works now.
I guess I can eliminate the USB hub. I should be ok having 3 or 4 controller adapters plugged into the pi, considering I’ll only be using a max of two controllers at once, right? That shouldn’t be too much of a power drain for the Pi?