A state machine is just a way of tying together a number of changes to the existing structure of your code. It's the equivalent of using objects instead of lots of separate functions and variables. When you change state, you know that x, y, and z will always be appropriate to what's happening now. Using state machines will probably help you as your code becomes more complex, but you might or might not ever need them.
I like that you can use scenes as state machines in godot. It really doesn't change much, but it seems easier to grasp.