fully functional fps character