Make one with a bunch of arcade buttons and an RP2040 running the GP2040 firmware:
However, having done this, you will learn NOT to cheap out on buttons. Cheap Chinese clone buttons absolutely suck. Once you buy a set of proper arcade buttons or keyboard switches, plus a bit of wire, you’ll have spent as much as the 8BitDo stick costs anyway.
What have you found bad about bash arrays? I have some simple usage of those (in bash) and they work fine.