Getting Started with FAtiMA-Toolkit
FAtiMA Toolkit is a collection of tools/assets designed for the creation of characters with social and emotional intelligence. Using it will allow you to create interesting, believable and engaging characters that appraise events and make decisions on their own.
The FAtiMA framework is available as a C# library that can be easily integrated into several different development engines. FAtiMA Toolkit can be, and is, used in commercial video games, serious games, educational robots, virtual reality experiences, among others.
By incorporating the FAtiMA library authors are able to add different levels of intelligence to their characters such as decision making capabilities, emotional responses, emotional appraisal of events, belief and memory systems, dialogue, etc.
These layers are difficult to author using code alone, this serves as motivation to create the Integrated Authoring Tool – a Windows forms application where authors can easily design and create their scenarios and the characters within them.
The Integrated Authoring Tool works as an independent user interface application where authors can not just create believable agents but also design interactable and socially interesting scenarios. Additionally the Toolkit has several different debugging features such as a Simulator, a Dialogue Tree Generator, a World Model among others.
FAtiMA-Toolkit is frequently updated, as such we use Github’s “Release” system.
Additionally, there is a large amount of material available to users/authors, we hope the following table clarifies their purpose and where you can find them. Download them as you see fit.
Once you download the latest release of FAtiMA Toolkit, you might be a bit lost, so what do all these files ?
As we’ve mentioned FAtiMA is a C# library as a result its source code is a C# Solution/Project. Here are the most important files you can find there:
- “FAtiMA-Toolkit.sln”: This is the FAtiMA Solution, it encapsulates all the assets used by FAtiMA
- “Executables” Folder: In this folder you can find the executable file for each component within FAtiMA including the most important one the “Integrated Authoring Tool”.
- “AuthoringTols/AuthoringTools.sln”: This is the C# Solution for the Authoring Tools. It is user interface focused and serves as an addition to the original solutions. Keep in mind that in order to be able to compile this part of the code it is important that the FAtiMA Solution is also compiled.
- “Tutorials”: In this folder we present different code tutorials for the different assets, these are also available once you’ve loaded the FAtiMA-Toolkit solution.
- “ExportAuthTool.bat”: This is a script that generates the Authoring Tool Executable files from the AuthoringTools.sln compiled code.
- “ExportDlls.bat” : This is a script that generates an C# library (.dll files) using the compiled code from the FAtiMA Solution.
If you prefer to use the latest experimental version, you can do so, by clicking the “Clone or download” button. Use this version at your own risk, however you can take a look at its current state by checking the Unit Tests in its GitHub page.
FAtiMA Toolkit is an open-source project, feel free to play around, change remove and add your own code to it.
FAtiMA-Toolkit requires no installation. By opening the “Executable Folder” you can start using the Toolkit and all of its components.
In this website you can find several in-depth tutorials on how to use the different Toolkit components, we advise new users to start at Tutorial 1: What is FAtiMA-Toolkit and continue through that order.
If you are looking for information regarding one particular component, you can find it in the top right column of this page under the “Tutorials”.
Additionally, under “Other Posts:” you can find more “articles” detailing details on:
- Artificial Intelligence in Games exercise and video solution: AIG students used a simple exercise as a guide to learn how to use FAtiMA-Toolkit, in this post we share the guide and a video describing and guiding you to the solution.
- FAtiMA as a C# Library : How to use FAtiMA within your C# solution, with code examples and suggestions.
- FAtiMA Starter Kit : A simple Unity project that is perfect to use as a learning environment for FAtiMA Users.
- FAtiMA, MCTS and Don’t Starve Together: How to use the FAtiMA and MCTS algorithms to improve the agent’s decision making.
- NCSU FAtiMA Workshop Presentation (November 2018)
- IAJ Lecture 1 (January 2018)
- IAJ Lecture 2 (January 2018)
- GALA 2017 Tutorial Presentation (November 2017)
Workshop Videos (January 2021)
Using the Integrated Authoring Tool
Using FAtiMA Unity Starter Kit
To learn more about FAtiMA Toolkit and for additional learning content check the posts on the right sidebar of this page