This is the place to access all the descriptions, information, and usage manuals for all of Intrinsic Algorithm's game development technology. Some of these will be filled out slower than others and they will be updated as technology changes or features are added. You will also find references to lectures and documents about these products as well as game and AI development in general.
The following is a list of the technologies that are offered by IA and have information contained in this section.
Infinite Axis Utility System
Dave Mark is well known in AI circles, particularly at the GDC AI Summit, as being a proponent of utility-based AI. While utility can be (and has been) applied to many different types of architectures for decades, he has developed a stand-alone architecture based entirely on utility mechanisms. Over the past 8 years, he has continued to improve this method and deployed it to great success in his contract work with a variety of companies. The Infinite Access Utility System was spoken about briefly at the GDC AI Summit in 2013 as his part of a multi-person talk entitled, "Architecture Tricks: Managing Behaviors in Time, Space, and Depth". (You can skip to 33:35 for the beginning of his segment.)
Additionally, he spoke about it at length with Mike Lewis of ArenaNet in the 2015 GDC AI Summit specifically in regard to how it was deployed at ArenaNet for use in the GuildWars 2: Heart of Thorns expansion. (See "Building a Better Centaur: AI at Massive Scale") This 1 hour lecture also shows how the entire architecture works (at the time) as well as tidbits of some of the other technologies that were included in that game. Importantly, he demonstrates via a time-lapse video how the modular data-driven design of the IAUS enables designers to construct unique AI packages for their NPCs in as little as 7 minutes. Additionally, as a result of this modular data-driven system, core behaviors authored by any designer can be added to any character with ease. Because all the behaviors are allowed to "play together" as they are scored, it is simply a matter of the designer selecting which ones the NPC should have at it's disposal.
The IAUS exists as a stand-alone black box that can be installed into a project codebase with minimal work. We have both C++ and C# versions based on the needs to the client. In theory, minus any specific custom language or library issues, this means that this core AI system can be installed on day 1 and work can begin on hooking it up to world information, existing behavior and animation code, and behavior logic can be authored in the tool we have developed for that purpose.
Modular Scalable Influence Map System (Imap)
Much like the IAUS above, our Imap system has been worked on for over 6 years and has been used in a number of shipped titles. Over that time, this architecture has been extended and optimized. However, it's core beneficial use has remained intact and improved upon. It is a general knowledge representation system that allows for analysis of spatial, tactical, strategic, and ecological situations. This is used for NPCs to easily query information about the distribution of dozens... or even hundreds... of other agents in the world on the enemy team, their own team, neutral agents or objects, or any combination of the above to get information about a specific location (e.g. "am I crowded?" or "how much threat am I under right here?") or to find locations where something should be performed (e.g. "where is the safest place to stand?" or "where should I use this area of effect spell?")
As with the IAUS, the Imap system exists a stand-alone black box that can be installed into a project codebase and calibrated to whatever spatial and coordinate system the existing project runs on. Additionally, many of the queries for commonly used information and code for commonly used movement and targeting locations exist already as part of the install. New Imap queries can be completed usually in only a few lines of code. Often in minutes. As planned future work, the system allows for data-driven implementation of these queries so that designers can mix-and-match their own combinations of influence map data for specific behaviors without programmer involvement.
Dave covered an overview of his Imap system in a lecture in the 2018 GDC AI Summit entitled, "Spatial Knowledge Representation through Modular Scalable Influence Maps".
Robust Tagging System
To support the above technologies -- and for other things -- we have developed a robust tagging system. This allows designers to tag objects and NPCs to provide very useful contextual information that the AI can understand.
Text Dialog System
For text based games that do not want repetitive text dialog, we have developed a dialog system that is entirely designer-driven. With it, a designer can specify a near infinite number of parameterized text statements that can then be filled out with relevant information from the game and filtered appropriately for use by different types of characters.
Consult the User's Guide for information on using the wiki software.