Skip to content

HelpSystem

Sarah Augustinowski edited this page Oct 6, 2024 · 1 revision

SEE HelpSystem

SEE comes with its own in-build HelpSystem which supports the following types of instructions:

  • visual
  • acoustical
  • textual

NOTE: At the moment only HelpEntries for desktop use are available in the game.

Open the HelpSystem in desktop enviorment

In desktop use you can open the HelpSystem by pressing 'H'. You can then choose a category you would like to get some help for. There is either a sub-category or an entry which opens the video player. Videos can be paused at any time, you can also jump back and forth.

Add aditional content

Content for the HelpSystem is parsed by a json-file named helpSystem.json, by default its stored in /Assets/StreamingAssets/HelpSystem. By editing this file you can add more entries.

The following snippet gives you an overview about how the file is structured:

"HelpSystem": {
    "MenuEntry": {
        "name": "Help System",
        "description": "Find your specific use case",
        "icon": "Materials/Notification/info",
        "MenuEntries": [
            {
                "type": "MenuEntry",
                "name": "Navigation",
                "description": "Use cases related to the navigation in SEE",
                "color": "green",
                "MenuEntries": [
                    {
                        "type": "MenuEntry",
                        "name": "Player navigation",
                        "description": "How to navigate in SEE",
                        "color": "green",
                        "MenuEntries": [
                            {
                                "type": "HelpSystemEntry",
                                "name": "Simple navigation",
                                "description": "",
                                "color": "green",
                                "video": "HelpSystem/Videos/Navigation/navigation.mp4",
                                "HelpEntries": [
                                    {
                                        "index": 1,
                                        "text": "Press Key W or S to move forwards or backwards.",
                                        "startPosition": 0
                                    },
                                    {
                                        "index": 2,
                                        "text": "You can move to the right or left with Key A or D.",
                                        "startPosition": 5
                                    },
                                    {
                                        "index": 3,
                                        "text": "To change your view direction keep the right mouse button pressed while moving your mouse.",
                                        "startPosition": 11
                                    },
                                    {
                                        "index": 4,
                                        "text": "With Key E and Q you can go up and down.",
                                        "startPosition": 20
                                    }
                                ]
                            }
                        ],
                        
                        ...

You can set new categories by adding a new MenuEntry (with attributes: type, name, description, color and MenuEntries) as child of a parents MenuEntries. You can nest mutiple categories/MenuEntry by adding a MenuEntry in the MenuEntries attribute.

For a HelpSystemEntry you have to add a type HelpSystemEntry in a parent MenuEntries. You have to also set the attributes name, description, color and video. In video you specify the place of your videos inside StreamingAssets(see: https://github.com/uni-bremen-agst/SEE/wiki/VideoRecording to record videos in unity, they need to be in 16:9 ratio). Now you only need to append HelpEntries with the attributes index, text and startPosition. Index needs to start at 1 and increases. Text contains the text which will be displayed on the canvas and spoken by the SEE-Assistent. startPosition is the time in seconds of your video where you want your text to appear/said.

NOTE: At the moment the spoken text by the SEE-Assistent is not supported on Linux.

Colors

Colors in the json-file needs to be mapped to unity colors. At the moment this is done for magenta, red, blue, cyan and green. Others need to be maintaint in class HelpSystemMenu and method ColorFromName.

Clone this wiki locally