When I rotate the controls become change depending on the area I'm facing

You must rotate the inputs by the camera heading.

This usually involves multiplying by a Quaternion. See lines 124 to line 130 here:

Alternately, here is a full-featured here is a super-basic starter prototype FPS based on Character Controller (BasicFPCC):

That one has run, walk, jump, slide, crouch… it’s crazy-nutty!!