There is no easy way of adding a new field type. You need to modify multiple places.
1. Name: add this in your language file to show correct name
2. When you click on it, you need to handle the action. for this follow below steps.
a. Add you question form in components/com_communitysurveys/layouts/YOURLAYOUTNAME/form/question folder. name the file as per the type of the question. You can copy existing question type file and modify it as needed. for example, if your question type is dept, add dept.php
b. edit components/com_communitysurveys/helpers/constants.php and add type
define("CS_SPECIAL_DEPT", 25);
c. Edit components/com_communitysurveys/layouts/YOURLAYOUTNAME/form/question.php and add below into the types array
CS_SPECIAL_DEPT => 'dept'
d. Now, you need to add logic to save your field values as per the name of the fields in your dept.php files
edit administrator/components/com_communitysurveys/models/question.php and add your logic in save function. see the switch ($question->question_type) block for special types questions.
3. The next step is to show your new field type in the response form
a. Edit components/com_communitysurveys/layouts/YOURLAYOUTNAME/response/question.php and add your question type into the array
CS_SPECIAL_DEPT => 'dept'
b. copy existing render file to your new render file in the folder components/com_communitysurveys/layouts/YOURLAYOUTNAME/response/question. You need to name it as dept.php as your question type in constants.php is dept. Modify the file as needed
c. Now saving the user response. Edit components/com_communitysurveys/models/response.php and add your code for new question type.
4. Now if you want to show new question type in your reports, you need to make similar modifications in LAYOUTNAME/reports/consolidated and LAYOUTNAME/results folders
Hope this will help you.