As we’ve mentioned, FAtiMA Toolkit is a collection of tools and assets designed for the creation of characters (virtual or robotic) with social and emotional intelligence.
The toolkit is a continuation of the work done in developing the FAtiMA agent architecture, initially released in 2005.
- Facilitate the authoring process
- Use library-based design to empower developers
- Create content that is easy to change and be reutilized
- Open-Source approach
How does it work?
Using the Integrated Authoring tool authors are able to create not only intelligent characters but also complex socio-emotional scenarios that can be used in Teaching, Training and even Entertainment contexts. This tool works as a user interface developed in Windows Forms which creates .json files where all the information regarding agents and narrative is stored. These files can then be imported into development engines such as Unreal Engine and Unity, among others, so that they can be imported into the application you are working on.
- Character-Centric design: Narrative emerges from how the player and the agents interact with each other in accordance to their given narrative roles.
- Rule based system: motivated from the desire to approach the language used in the Intelligent Virtual Agent field to the one used by programmers
- Explicit Dialogue Structure: a combination of dialogue trees and dialogue pools.
- Modular approach: despite its complexity, developers can simply use the components they need
FAtiMA Toolkit is a Windows Form application which can be downloaded from our NAS server. Additionally it is also available on our Github Repository where is it still being updated with new features and improvements.
The years of work and development have let to a complex but modular architecture. In the following sections we will describe step by step what each component does along with examples and training materials to facilitate the authroing of FAtiMA Toolkit
An affective agent created with FAtiMA Toolkit will be initialized by the Role Play Character component. The name of the component was chosen based on the notion that FAtiMA agents are typically designed to be able to act according to a specific social role in a coherent manner. This component is responsible for managing the structures that constitute the internal state of the agent: their beliefs, memory and emotional state. Authors can also add more complex and believable behaviour to the agents, which we call Role Play Characters, by using other components. For instance, in order for agents to be able to perceive events in the world around them and have emotional reactions, the Emotional Appraisal component can be used. To define the agents’ ability to make decisions based on their beliefs and goals one can use the Emotional Decision Making asset. All of these different components were developed as libraries, which the developers or authors can directly import and explore more easily without having to worry about compatibility issues
For a more extensive look at FAtiMA Toolkit we recommend reading our paper: “FAtiMA Toolkit — Toward an effective and accessible tool for the development of intelligent virtual agents and social robots”.