This version is preliminary and subject to change
For this lab you have to do one of the two exercises.
- “Point at the badger” game
- Furhat integration
In this exercise you will learn a bit more about how to interact with the HTML page.
You need to design a game which helps user learn new words in a new language. You are encouraged to do implement your game in languages other than English.
The basic logic of the game is the following:
- System tells user to point/click at one of the objects on the screen. See example of UI (feel free to redesign it and change the objects).
- User points/clicks at the object (e.g., the badger) on the screen.
- System tells user whether they are right or wrong and either repeats the question or moves on to the next objects.
Advanced matters:
- Use the power of xstate to send multimodal input to dialogue manager, but try not to use too many events and don’t repeat yourself.
- You can use xstate to implement “point-and-hold” so that user doesn’t point at objects by mistake. Make use of mouseenter and timers to implement this.
- Indicate visually whether the user is right or wrong. Note that they don’t speak the language yet!
In this exercise you will get started with Furhat.
- Register at https://furhat.io/ (“Get SDK”) and install the SDK and virtual Furhat.
- Launch virtual Furhat and Start Remote API.
- You can use either your usual frontend XState to control Furhat or
you can run xstate as backend, see this repository:
https://github.com/vladmaraev/xstate-furhat-starter. In both cases
you will be using
invoke
. In case of frontend, you may use your browser to recognise and synthesise speech, not Furhat. - If you wish you can use other ways to control Furhat, namely Kotlin Skill API or Blockly.
You need to make Furhat follow simple commands to control its gestures, i.e. “Nod”, “Smile”, “Shake your head”.
Resources: