For your projects that don't just "fake" AI
Game devs often use a sort of "fake" AI system, the idea being that doing just enough to convince the user that the AI is "real" is good enough. And it often is. But what if you want to use a more complex, robust AI personality system that can be used in any kind of project--games, office applications, concierge systems, and pretty much anything else? What if you don't just want to give or take a few points from some arbitrarily determined variable like, well, "LikesMe"? What if you want a system that takes care of not only whether the NPC "likes" me more or less, but also takes into account all the other kinds of personality factors that go with "liking" someone and also whether liking this person makes the NPC that little bit more kind to others? And does this on its own, behind the scenes? Then you'll want the Extreme AI Personality Engine.
Extreme AI (available in full and light versions) enables developers to create personalities for non-player characters that evolve during the course of a game based on interactions and events. Based on the five-factor model of personality, Extreme AI breathes life into your NPCs. Note that Extreme AI is "live" during the gameplay itself; NPCs' personalities are modified on the fly as they interact with players, other NPCs, and even the world around them.
*Version Note* Extreme AI version 3.0 is out now! It is currently available through our Order page. If you have ExAI v2, you can upgrade to version 3 for free (until 1 April 2020). Please contact us with your order receipt/invoice number and we'll give you the appropriate voucher.
A character's personality changes are individualized; that is, her attitude toward the entity causing the change is changed more than her attitude in general, and she will remember these feelings about that entity (and others) throughout the game. This "attitudinal memory" helps the NPC act realistically; if she is a shopkeeper, she may begin as generally neutral, no real like or dislike for her customers. If a player comes in often and is always nice to her, always polite, her attitude toward that player will change significantly, and her overall feelings towards new
customers will skew slightly as well (although not nearly as much). Conversely, if another player starts coming in and is always nasty to her, her attitude toward that second player will change significantly in the opposite direction, and her overall feelings toward strangers will adjust back toward her original feelings (or get worse; she may feel slightly betrayed by her own feelings)--but her attitude toward the first player will continue to be significantly positive.
Extreme AI can be used in any type of game to tie an NPC's reactions to an underlying personality: RPGs are the most obvious, but the engine can be used in a sports management game to guide the reactions of non-player managers or team members, or in a similar fashion in a game like Civilization, or in a number of other situations. It can be integrated with many other Unity assets, including Rival Theory's RAIN (see our
YouTube video demonstrating this using two minotaurs).
The Extreme AI engine is based in part on nearly seven years of research not only into the Five Factor model itself, but also into the correlation between the underlying facets and our 39 chosen emotions/attributes/response types, and into the elasticity of the facets of human personality over time. Our return result range is similar to that used in the actual NEO PI-R test used to rate people using the Five Factor model.
NPC queries return the character's actual strength of response, based on her personality at that time, how she feels about the person/place/thing with which she is interacting, and taking into account human variability (that is, an exact response is not 100% predictable, as when a generally stubborn person decides to not be quite so stubborn this one time). The variability is not just a random occurrence; it, too, is based on personality factors.
The full version of Extreme AI includes advanced methods allowing the developer to examine a character's raw response type values, the underlying facet values, and individualized adjustments vs specific players and other NPCs, both in-game and through the editor.
We are happy to help customize the engine for use in your game (this may require an additional fee, depending on the extent of customization). Please
contact us for more details.
Extensions to the current Extreme AI will add to the ... well, extremeness! We are developing ways for characters to remember key events and the people and things involved ... and comment upon them! Memories can trigger emotional responses as well.
The "Light" version of Extreme AI has much of the same functionality as the full version, including the ability to save personalities and use the engine in a published game. The Light version differs in the following ways: 11 editable personality emotions/attributes/response types (instead of 39); 14 preset personalities (instead of 28); no user-created presets; and none of the advanced methods mentioned above. Users of Extreme AI Light can upgrade to the full version at any time, and the money you paid for Light will be applied toward your purchase of the full version!
Contact us for more information.
You can order Extreme AI through the
Unity Asset Store or on our
Order page. You can also check out the
User Manual and the
Quick Start guide before buying.
New in ExAI version 3:
- Saves using Save() and SaveAndInit() of multiple characters at once are much
faster—you can save 60+ characters in a couple of seconds or less. (Note that in-game
use of the characters is still nearly instantaneous, as they work entirely within memory
during the course of the game and are only saved when you wish them to be, such as
at a save point)
- Fine-grained save controls: You can now (if you wish) save only a character’s facet
values table or only the adjustments the character has with other "players".
- There is now a stand-alone version available (for Windows) that can be run entirely
outside the Unity Editor (available separately, but free if you’ve already bought the
Unity version)
- Note that the v3 character files are somewhat different from those in earlier versions, and therefore you will need to use the Converter Tool to update old characters
to the new system. (This process is described in Appendix A of the User Manual, and also in the
Conversion pdf included with the package.)
Bundle Note: You can also bundle Extreme AI (full version) and RealMemory and receive a discount! See our
Order page for more info. (
Contact us if you already own the full version of Extreme AI and you wish to purchase RealMemory; we'll apply the discount for you as well!)
You cannot currently buy the bundle on Unity's Asset Store. This is due to a change in the way they require me to upload packages. If you own the v2 bundle, you can still upgrade to ExAI v3 for free, though--just email us!
Like the Extreme AI Personality Engine, RealMemory gives your NPCs a chance to be a little more human, react in human-like ways, and provide your players with a more immersive game experience. With RealMemory, your NPCs have human-like memory systems, complete with short-term and long-term memories. They can remember, forget, and distort memories, suddenly remember a "forgotten" bit of information when given contextual clues, and react to emotionally charged memories. They can also store short "stories" as simple memories to supplement the STM and LTM systems.
Think of an NPC at the scene of a crime, having just witnessed a murder. With RealMemory, the NPC will be able to remember some of the events more than others, some items more clearly, some with great emotion, not remember some clues at all, and misremember others. And different witnesses will remember events and things differently. "No, really, I'm SURE he had orange hair and a moustache!" "He couldn't have. I remember his face being as smooth as a fresh sheet of ice." And so forth.
RealMemory bases some of its algorithms on NPC personality traits, so ideally you should have a personality engine like Extreme AI to pass on those values. (Note that you can get the personality engine at a discount if you have RealMemory!) If you do not pass any personality values to RealMemory, it will use default values and, while still working, won't be customized to each character in quite the same way.
Some specific things you can do with RealMemory:
- Give NPCs short-term memories that can store a limited amount of information that decays or is strengthened and moved into the long-term memory in ways similar to human STM
- Remember in LTM any number of memory concepts, tied together into related concepts and properties thereof; for example, "Jeffrey" is a memory concept that is part of the overarching concept "person" and has "eyes" that are "green" (or are they "blue"?)
- Give memories emotional ties
- Distort memories
- "Forget" (lose access to) memories
- Use contextual clues to "jog" an NPC's memory
- Associate stories with memory concepts
- And more!
You have control
As with our other products, we try to give you as much control over the actual processes occurring as you might want, from allowing the NPC's mind to churn on its own to using only the bits you like. If you don't want to use the short-term memory functions, that's fine--you can inject memories directly into the LTM. If you'd like some memories to be stored permanently, with no distortion or obfuscation, that's fine, too. And at its simplest, you could choose to use only the Stories a character knows and not individual memories. But if you want the NPC's mind to run on its own, from STM to LTM to forgetfulness and distortion to everything else, you can have it run more-or-less automatically. You do need to provide the information to the STM (you have to be the NPC's senses, more or less), and you tell the NPC how often to perform "maintenance checks" on her memory (as she cannot tell whether days or years have passed in the game world since her last check, unless your game is continuously in real time), but otherwise the processes can work on their own.
You can order RealMemory through our
Order page. You can also check out the
User Manual and the
Quick Start guide before buying.
Bundle Note: You can also bundle Extreme AI (full version) and RealMemory and receive a discount! See our
Order page for more info. (
Contact us if you already own RealMemory and wish to purchase ExAI; we'll apply the discount for you as well!)
You cannot currently buy the bundle on Unity's Asset Store. This is due to a change in the way they require me to upload packages. If you own the v2 bundle, you can still upgrade to ExAI v3 for free, though--just email us!
Following are links to papers I've written on Extreme AI. They are available both on this site and on arXiv.org.
- "NPCs as People, Too: The Extreme AI Personality Engine" - From the abstract: "PK Dick once asked "Do Androids Dream of Electric Sheep?" In video games, a similar question could be asked of non-player characters: Do NPCs have dreams? Can they live and change as humans do? Can NPCs have personalities, and can these develop through interactions with players, other NPCs, and the world around them?" Obviously my answer is "Yes!" Download from this site or from arXiv.org
- "NPCs Vote! Changing Voter Reactions Over Time Using the Extreme AI Personality Engine" - From the abstract: "Can non-player characters have human-realistic personalities, changing over time depending on input from those around them? And can they have different reactions and thoughts about different people? Using Extreme AI, a psychology-based personality engine using the Five Factor model of personality, I answer these questions by creating personalities for 100 voters and allowing them to react to two politicians to see if the NPC voters' choice of candidate develops in a realistic-seeming way, based on initial and changing personality facets and on their differing feelings toward the politicians (in this case, across liking, trusting, and feeling affiliated with the candidates)." Download from this site or from arXiv.org