Using accelerometer – While it is a relay responsive type of controls it can be really tricky to make them work right (especially if we have 3 dimensions). It might be hard to compensate for all possible angles of holding the device, so character won’t “stuck” running up or down all the time. But what if we add “walk” button and control direction in which character will move by tilting the device left and right? That might work…
Typically the accelerometer/gyroscope can give you angle changes in any direction. What you could have, is a small circle in a corner, with an easy to notice color change, that shows the angle of the phone. It you tap it, it will center the phone. The circle is a boundary. If you tilt the phone, nothing will happen until it tilts outside the circle. Giving you a certain forgiveness for shakes and subtle tilts, while still easily perceiving when the tilt will make the character move.
What other ways there could be to control characters movement? Here is some thoughts on this matter:
You could consider a literal drag and drop setup. It could be the character, but I think it would be easier, that you are moving the level, while your character stays centered on the screen. For instance, your character could be automatically fighting anything they pass, and you have to be careful not to smash them into walls, or drop them in holes, etc... Swiping/dragging will move the character, while tapping will change their direction, and give quick bursts to their attacks. then on the outer rim of the screen, you have additional controls for switching weapons or what ever else you need.
“Attack wheel” – Instead of joystick we use circle of 4 segments (“Up”,”Down”,”Left”,”Right”).
Taping on different parts of the circle will make player’s character to attack in corresponding direction. Minuses of this method, is that it decreases possible amount of attack angles to four and removes no brainer attack forward button. Though this type of attack controls proved them self in “Binding of Isaac” they still wouldn’t give that “Hotline Miami” accuracy we are trying to achieve. Of course we can use circle of 8 segments or more, but that will drastically complicate controls on small screen of the smartphone.
I tend to hate this in games, or at least the way it is commonly done. your thumb covers up the controls and at a certain point, it slips off the tracked boundary of the control, and your character just stops moving. Your correction is to try to get the thumb back in the right place, but since there is no groves or dents to track like on a controller, your thumb/finger usually moves past where you want, and you have a moment of control wobble while correcting.
An alternative to still use this general method, is once the character touches their thumb down in the general spot of the control, the game considers that the center of movement, or no movement yet. Then, as long as you don't let go, where ever your finger goes on the screen, is compared to the original point for the direction you are travelling. Could also affect speed. You could do the same for attack intensity with a second thumb control point. which way your character is facing, and the farther from the center, the more intense the fighting.