⭐ Survey Plus | ⚡️ Get useful feedback from players!

 FREE ⭐ Survey Plus | ⚡️ Get useful feedback from players! 2.9.7

◦•●❤♡ ᴄᴏɴᴛᴀᴄᴛ Dekomori on discord ꜰᴏʀ ꜱᴜᴘᴘᴏʀᴛ ♡❤●•◦
Native Minecraft Version:
1.13
Tested Minecraft Versions: 1.12 / 1.13 / 1.14 / 1.15 / 1.16 / 1.17 / 1.18

Major new release: 2.0.0
After hours of work, the plugin has been completely rewritten.
Improved performance, easier to maintain and add future additions. If you have suggestions leave them on the discussion page!

In case you want the version 1 release it can be found here. It supports Minecraft 1.8 till 1.16.

onQo0GX.png


Do you no longer want to redirect people to the internet to answer your surveys? Do you want to get players' feedback in-game?
Survey plus is the in-game Minecraft survey solution!

Improve your server today by collecting useful feedback from your players!

LVKV5qp.png

  • 3 Different survey types (Inventory GUI, Chat Survey and Book survey)
  • Easy in-game editor. Configure everything using the in-game GUI menu for maximum convenience.
  • View survey results in-game.
  • Custom rewards for players that finish a survey. (Custom for every survey!)
  • NEW SQLite storage for single servers.
  • MySql storage for networks
  • Configure the surveys to make them unique for your server.
  • Target specific servers or server groups in your network.
  • NEW Only target a certain group of players using permissions.
  • NEW Cooldown on featured survey display (across servers)
  • Fast & without any lag. Programmed for minimal server impact.
  • NEW Export survey results to JSON.

Question types supported:

  • Open questions
  • Closed questions (yes / no)
  • Select question (select one of the options)
  • Multiple questions (select 0 or more options)

tCBQXI9.png

Demo version of 1.0.0 - Features are preserved in 2.0.0

Example of a book survey with only 1 question.
QRDp9Zw.gif


Example of a GUI survey option
[IMG]

(Layout and colors can be changed!)

Example CHAT survey
[IMG]

(Layout and colors can be changed!)

Or have them pop-up when someone joins the server:
[IMG]


dYoDQRl.png

  1. Download the surveyplus.jar
  2. Drop the jar in your plugin folder and start the server.
  3. Stop the server and configure the config.yml (MySql, SQLite)
  4. Start your server again.
  5. Use /sp menu to open the survey editor.
  6. Create your first survey.
  7. Activate the survey and collect feedback!
  8. Enjoy

UqSLDUz.png


There is only 1 config that contains all the data. An example config can look like this: (this is the default config)
YAML:
#   ___                                     _  _              ___     _
#  / __|   _  _      _ _   __ __    ___    | || |            | _ \   | |    _  _     ___
#  \__ \  | +| |    | '_|  \ V /   / -_)    \_, |            |  _/   | |   | +| |   (_-<
#  |___/   \_,_|   _|_|_   _\_/_   \___|   _|__/            _|_|_   _|_|_   \_,_|   /__/_
#_|"""""|_|"""""|_|"""""|_|"""""|_|"""""|_| """"| {======|_| """ |_|"""""|_|"""""|_|"""""|
#"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'./o--000'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'
#
#       A survey solution for networks and single servers by MartenM
#
#"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'./o--000'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'
#

# The server name specified here in the config is used to target the featured survey option.
# Server names don't have to be unique. This means that all servers in 1 group can carry the same name.
server_name: GLOBAL

# Database settings
# Specify the used database here.
# Possible options: "SQLite, mysql"
database_option: "SQLite"
mysql:
  user: root
  password: ''
  port: 3306
  host: localhost
  database: mc
SQLite:
  file_name: surveyData

# Used to define the default language file for easy use.
# Default is English.
language: "English"

# Featured settings
featured:
 # Timeout between the event and the presentation of the featured survey.
  # (in minecraft ticks: 20 ticks = 1 second)
  timeout: 20
  # Show a featured survey on server join.
  on_join: true

# Interfaces for different survey types.
interface:

  # Universal sound settings
  sounds:
   # Configure sound settings, values like "none" "" will be ignored.
    feature_popup: "ENTITY_CAT_AMBIENT 1 1.5"
    next_question: "BLOCK_NOTE_BLOCK_XYLOPHONE 0.8 1"
    toggle_answer: "BLOCK_STONE_BUTTON_CLICK_ON 0.7 3"
    click: "BLOCK_STONE_BUTTON_CLICK_ON 1 3"
    finish_survey: "ENTITY_PLAYER_LEVELUP 0.3 0.5"
    error: "BLOCK_NOTE_BASS 1 0.5"

  ######################################################################
  #                                                                    #
  #                      Chat interface settings                       #
  #                                                                    #
  ######################################################################
  chat:
   # General settings for this survey interface
    settings:
      chat_clear_rows: 20
      spacing: "          "

    # General UI settings
    general:
      hover_answer: "&eClick to answer&e: %option%"
      header:
       - "       &e&l%question%"
        - " "
      footer:
       - " "

    #
    #  Start of per question specifications
    #
    open:
      hint_message: "&e   Please type your answer in the chat!"
    closed:
      yes_option: "&7> &a&lYES"
      no_option: "&7> &c&lNO"
    select:
      format: "&7> &0 %option%"
      # Footers can be overridden for each question type!
      # The same holds for headers.
      footer:
       - "&7 Click an answer to proceed"
    multiple:
      format_selected: "&a&l✓&r &e %option%"
      format_unselected: "&7● &e %option%"
      # Footers can be overridden for each question type!
      # The same holds for headers.
      hover_selected: "&eClick to &cdeselect&e: %option%"
      hover_unselected: "&eClick to &aselect&e: %option%"
      hover_next: "&eClick to move to the next question"
      next_question:
       - " "
        - "        > &a&lNext question&r <"
    finish_screen:
      text:
       - "&aThanks for filling in this survey"
        - "&aUsing your feedback we will make sure to improve our server in the future"
        - " "
        - "&7You have been given some rewards for finishing the survey"
    featured_screen:
      text:
       - "      &6&lWe are hosting a survey!"
        - " "
        - "      &l%name%"
        - "      &7%description%"
        - " "
        - "<START>"
        - " "
      start_text: "     &a&lStart survey"
      start_hover: "&7Click to &astart &7the survey"

  ######################################################################
  #                                                                    #
  #                      Book interface settings                       #
  #                                                                    #
  ######################################################################
  book:
    general:
     # Adds a little space before answer entry.
      answer_spacing: " "
      hover_answer: "&eClick to answer&e: %option%"
      header:
       - "&lQuestion:"
        - "%question%"
        - " "
        - " "
    open:
      hover_text: "&aClose the book"
      content:
       - "&lClose the book and type your answer in chat."
      chat_content:
       - " "
        - "&7&e Type your answer in chat!"
        - " "
    closed:
      yes_option: "&7> &2&lYES"
      no_option: "&7> &4&lNO"
    select:
      format: "&7>&0 %option%"
    multiple:
      format_selected: "&2&l✓&r&0 %option%"
      format_unselected: "&7● &0%option%"
      hover_selected: "&7Click to &cdeselect&7: %option%"
      hover_unselected: "&7Click to &aselect&7: %option%"
      hover_next: "&7Click to move to the next question"
      next_question:
       - " "
        - "  > &1&lNext question&r <"
    finish_screen:
      text:
       - "&2&lThanks for filling in this survey"
        - " "
        - "&0Using your feedback we will make sure to improve our server in the future"
        - " "
        - "&0You have been given some rewards for finishing the survey."
    featured_screen:
      text:
       - "&1&lWe are hosting a survey!"
        - " "
        - " &l%name%"
        - " %description%"
        - " "
        - "    <START>"
        - " "
      start_text: "&2&lStart survey"
      start_hover: "&7Click to &astart &7the survey"
      # Use <CLOSE> to create a close button.
      close_text: "&c&lClose"
      close_hover: "&7Click to close this pop-up"

  ######################################################################
  #                                                                    #
  #                      Inventory interface settings                  #
  #                                                                    #
  ######################################################################
  inventory:
    general:
      size: 45
      # Header items that display the question
      # Placeholders: %username% %question%
      extra_items:
        q1:
          material: ITEM_FRAME
          slot: 12
          name: "&7Question:"
          lore:
           - "%question%"
        q2:
          material: ITEM_FRAME
          slot: 13
          name: "&7Question:"
          lore:
           - "%question%"
        q3:
          material: ITEM_FRAME
          slot: 14
          name: "&7Question:"
          lore:
           - "%question%"
      # Distribution of answer items
      distribution:
       - 31
        - 30 32
        - 30 31 32
        - 29 30 32 33
        - 29 30 31 32 33
        - 28 29 30 32 33 34

    # Settings per question type
    open:
      material: WRITTEN_BOOK
      name: "Open the chat and type your answer"
      lore:
       - " "
        - "&7There is also an message in chat to help you answer :)"
    closed:
      yes_option:
        material: LIME_CONCRETE
        name: "&a&lYes"
        lore:
         - " "
          - "&7Click to answer &ayes"
      no_option:
        material: RED_CONCRETE
        name: "&c&lNo"
        lore:
         - " "
          - "&7Click to answer &cno"
    multiple:
      selected:
        material: YELLOW_CONCRETE
        name: "&e%option%"
        lore:
         - " "
          - "&7Click to &ede-select&7 %option%"
      un_selected:
        material: LIGHT_GRAY_CONCRETE
        name: "&f%option%"
        lore:
         - " "
          - "&7Click to &aselect&7 %option%"
      next_question:
        slot: 44
        material: ARROW
        name: "&aNext question"
        lore:
         - " "
          - "&7Click to move to the next question"
    select:
      material: ORANGE_CONCRETE
      name: "&f%option%"
      lore:
       - " "
        - "&7Click to answer"
    finished_screen:
      general:
        size: 36
        name: "&lThanks for participating"
      items:
        thanks1:
          slot: 21
          material: "GOLD_INGOT"
          name: "&6&lThanks for your help!"
          lore:
           - " "
            - "&7With your feedback we can improve the server!"
            - "&7You have been &6rewarded&7 for your participation."
        thanks2:
          slot: 22
          material: "GOLD_BLOCK"
          name: "&6&lThanks for your help!"
          lore:
           - " "
            - "&7With your feedback we can improve the server!"
            - "&7You have been &6rewarded&7 for your participation."
        thanks3:
          slot: 23
          material: "GOLD_INGOT"
          name: "&6&lThanks for your help!"
          lore:
           - " "
            - "&7With your feedback we can improve the server!"
            - "&7You have been &6rewarded&7 for your participation."
    featured_screen:
      general:
        size: 36
        name: "&lPlayer feedback: %survey_name%"
      start_items:
        start1:
          slot: 30
          material: "LIME_CONCRETE"
          name: "&a&lStart survey"
          lore:
           - " "
            - "&7Click here to start the survey"
        start2:
          slot: 31
          material: "LIME_CONCRETE"
          name: "&a&lStart survey"
          lore:
           - " "
            - "&7Click here to start the survey"
        start3:
          slot: 32
          material: "LIME_CONCRETE"
          name: "&a&lStart survey"
          lore:
           - " "
            - "&7Click here to start the survey"

      extra_items:
        extra1:
          slot: 13
          material: "DIAMOND"
          name: "&l&bGive feedback & get epic rewards"
          lore:
           - " "
            - "%survey_description%"
            - " "
            - "&7Answer the questions in the survey"
            - "&7and receive &bepic &6rewards&7."


######################################################################
#                                                                    #
#               Available survey interface settings                  #
#                                                                    #
######################################################################
available_surveys:
 # General settings like size and inventory name
  general:
    inventory_name: "&lAvailable surveys"
    inventory_size: 45

  # Settings about the items used to display available surveys.
  survey_item:
    material: "WRITABLE_BOOK"
    name: "&6&l%survey_name%&r"
    lore:
     - " "
      - "%survey_description%"
      - " "
      - "&7Click to start the survey"

  # If no surveys are available this item will be shown instead.
  none_available:
    slot: 31
    material: "BARRIER"
    name: "&cNo survey available"
    lore:
     - " "
      - "&7No new surveys are available!"
      - "&7Please check back later."

  # Distribution of surveys across the inventory.
  distribution:
   - 31
    - 30 32
    - 29 31 33
    - 29 30 32 33
    - 29 30 31 32 33

  # Add any extra items here. These will be overwritten by the survey
  # items if they are in the same slot.
  extra_items:
    hint_item:
      slot: 13
      material: "GOLDEN_APPLE"
      name: "&a&lHelp us improve the server"
      lore:
       - " "
        - "By answering surveys you"
        - "give us useful feedback."
        - " "
        - "With that feedback we can"
        - "make improvements to the server!"
        - " "
        - "&7Finishing a survey will give you rewards"
    fancy_1:
      slot: 12
      material: "GOLD_NUGGET"
      name: "&a&l>"
    fancy_2:
      slot: 14
      material: "GOLD_NUGGET"
      name: "&a&l<"

######################################################################
#                                                                    #
#                         Survey reminders                           #
#                                                                    #
######################################################################
survey_reminders:
 # If this setting is set to false no reminders will be send
  # even if in the database this setting is set to true.
  enabled: true
  # Rest of the settings for reminders is in the database.
  messages:
   - " "
    - "    &6&lYou have an ongoing survey left open!"
    - "    &eClick here to continue."
    - " "
  hover_text: "&7Click to &acontinue &7with the survey."

uc8OGUL.png

  • /survey /surveys - Opens the available survey menu
  • /answer - Give an answer to the currently asked question. (Mostly used to give support for the book and chat surveys. You will NOT be typing this command manually.)
  • /sp - Shows the survey plus help
  • /sp menu - Opens the survey list menu for editing.
  • /sp start <id> (playername) - Start the survey. The optional parameter is the target player's name.
  • There are very few commands to this plugin. The reason for that is that it features a whole in-game editor using inventories instead of a command-based system.
OSXiAwO.png

Code:
// Root
surveyplus.open.menu - Open the editor
surveyplus.open.available - Open the survey start screen

// Editor
surveyplus.edit.survey.create
surveyplus.edit.survey.name
surveyplus.edit.survey.description
surveyplus.edit.survey.rewards
surveyplus.edit.survey.type
surveyplus.edit.survey.questions
surveyplus.edit.survey.featured
surveyplus.edit.survey.available
surveyplus.edit.survey.servertarget
surveyplus.edit.survey.start
surveyplus.edit.survey.permission

// danger zone
surveyplus.edit.survey.reset
surveyplus.edit.survey.delete

// Commands
surveyplus.cmd.settings
surveyplus.cmd.survey.start.other

// base node for starting a survey with permission enabled.
surveyplus.survey.start.<ID>

// Access to certain views
view.survey.advanced
view.survey.results;
Survey-specific permissions may be a feature addition if people are needing this.

A3FVSLh.png

In order to use the API you first need to install the surveyplus-api.jar into your local maven repository.

After that, you can use the SurveyPlusAPI class.
You can get an instance of this class using the services manager in Bukkit.
JavaScript:
public class DependentPlugin extends JavaPlugin {

    @Override
    public void onEnable() {
        SurveyPlusAPI myAPI = Bukkit.getServicesManager().load(SurveyPlusAPI.class);
    }

}

PW7dc42.png

Not convinced yet? Test the plugin your self!
Just send me an PM and I will set it up on a server for you to try.

rJeLG0M.png

These are items I have planned for future updates:
  • Allow people to answer a survey multiple times.
  • Schedule surveys
  • More options for when a user should be able to answer a survey.
  • Export survey results to a flatfile.Done!
  • Reminder when someone leaves his survey. Done!
  • Add a stable developer API. Done!
  • Add survey settings table for global changes. Done!
  • More features.

Latest updates

  1. 2.9.7

    2.9.7
  2. 2.9.6

    2.9.6
  3. 2.9.2

    2.9.2

Similar resources

⭐ Survey Plus | ⚡️ Get useful feedback from players! Bluebelly
Get feedback using in game surveys! In game editor and result viewer!
4.00 star(s) 1 ratings
Downloads
71
Updated
(-20% off for first 10 buyers) ⭐ ChatTags ⭐ THE BEST TAGS/TITLES PLUGIN [1.7.x-1.12.x] B
5.00 star(s) 1 ratings
Downloads
517
Updated
1.13 - 1.19.3 ⭐ MiniaturePets - Custom Companions ⭕ Your Own Custom 3D Pets ✅ 30% SALE MikeyBoy
Create Your Personal 3D Pet Companion⭐ 10+ Pets ⭐ Unique Animations ⭐ Ride and Disguise
0.00 star(s) 0 ratings
Downloads
59
Updated
BlackSpigot General Chat
Rules Help Users
    A @ AxellGB: hi
    Top