implemented new character controller