Artificial Linguistic Internet Computer Entity
A.L.I.C.E., an acronym for Artificial Linguistic Internet Computer Entity, is a pioneering natural language processing chatbot designed to simulate human-like conversation through pattern-matching responses. Developed by Richard S. Wallace beginning in 1995, it represents one of the earliest open-source efforts in conversational artificial intelligence, initially implemented in the SETL programming language before being rewritten in Java in 1998.[1][2]
A.L.I.C.E. operates using AIML (Artificial Intelligence Markup Language), an XML-based schema created by Wallace and the Alicebot community to define stimulus-response pairs known as categories, consisting of input patterns and output templates.[2] This technology enables the chatbot to handle a wide range of user queries by matching them against a graph-structured database of over 41,000 categories, incorporating features like wildcards, recursion via the <srai> tag for canonicalization, and context awareness through <that> and <topic> elements.[1] The system supports supervised learning through a process called Targeting, allowing volunteer contributors worldwide—numbering over 500—to refine responses and expand the knowledge base collaboratively.[1][2]
Notable for its achievements in the Loebner Prize competition, an annual Turing Test variant, A.L.I.C.E. secured the top prize for "most human-like computer" in 2000 with Program B, in 2001 with Program dB, and in 2004, demonstrating its effectiveness in casual dialogue despite lacking true understanding.[1][3] As free software under an open license, A.L.I.C.E. has influenced subsequent chatbot development, including integrations with web interfaces and extensions for educational and entertainment purposes, while its AIML framework remains a foundational tool for building pattern-based conversational agents.[2]
Overview
Definition and Purpose
The Artificial Linguistic Internet Computer Entity (ALICE) is an open-source chatbot framework designed to emulate human-like conversational responses through pattern-matching techniques in natural language processing.[4] Created as a pioneering example of accessible artificial intelligence, ALICE simulates dialogue by matching user inputs against predefined patterns to generate replies, without relying on complex machine learning algorithms.[4]
The primary purpose of ALICE is to demonstrate practical AI applications in conversational interfaces, emphasizing entertainment, educational interactions, and research into natural language understanding.[5] It aims to foster exploration of dialogue systems that are simple to implement and extend, serving as a tool for developers and researchers to experiment with virtual personalities that mimic intelligent and self-aware responses.[4]
The first operational version of ALICE was released on November 23, 1995, by Richard S. Wallace as a web-based interactive entity, marking an early milestone in internet-accessible chatbots.[5] Its core objective is to establish a "virtual personality" that engages users via linguistic patterns, promoting extensibility through community contributions while prioritizing straightforward pattern-based logic over advanced computational models.[4] ALICE employs Artificial Intelligence Markup Language (AIML) to define these patterns.[4]
Core Features
ALICE employs a heuristic pattern-matching engine that processes user inputs by comparing them against a database of predefined response patterns, utilizing a tree-structured Graphmaster to efficiently identify the best matches, including exact correspondences and fuzzy approximations through wildcard substitutions.[1] This approach prioritizes the longest possible match to generate relevant replies, enabling the system to handle a wide range of conversational inputs without relying on deep semantic understanding.[2]
The core of ALICE's response generation lies in its category-based organization, where knowledge is structured into discrete categories comprising input patterns, corresponding output templates, and optional contextual elements.[1] These categories facilitate context-aware replies by allowing the system to select and adapt templates based on the matched pattern, incorporating dynamic elements to simulate coherent dialogue.[2] For personalization, ALICE utilizes predicates—key-value pairs that function as variables to track and recall conversation state, such as a user's name or prior interactions, thereby enabling tailored and stateful responses across sessions.[1]
Extensibility is a key strength, as users and developers can readily expand the system's capabilities by incorporating custom categories tailored to specific domains, such as education or customer service, without altering the underlying engine.[2] Additionally, ALICE supports multilingual operation by adapting to various natural languages through translated AIML files, allowing the pattern-matching and category structures to function equivalently in non-English contexts.[6] This feature, combined with its rule-based simplicity, draws brief inspiration from predecessors like ELIZA, which pioneered basic pattern substitution for conversation simulation.[7]
History
Creation and Early Development
Richard S. Wallace, a computer scientist with a background in computer vision and robotics, initiated the development of the Artificial Linguistic Internet Computer Entity (ALICE) in 1995 while transitioning from his academic position in computer vision.[7] Having earned a Ph.D. in computer science from Carnegie Mellon University in 1989, Wallace had previously worked on vision applications funded by a Department of Defense contract at Vision Applications, Inc., and held teaching roles at New York University and Lehigh University.[8] His shift toward artificial intelligence was influenced by minimalist approaches in robotics and early chat programs, prompting him to explore conversational systems during a period of frustration with repetitive administrative tasks.[7]
Motivated by the pioneering chatbots ELIZA and PARRY, Wallace sought to create a more advanced, open-source pattern-matching system capable of engaging in casual human conversation through a stimulus-response model.[4] Unlike its predecessors, which relied on limited rule sets, ALICE aimed for broader accessibility and collaboration via free software principles, drawing on public interest in AI to overcome apathy in the field.[4] The initial implementation was prototyped in SETL, a set-theory-based programming language, emphasizing simple text processing without graphical interfaces and focusing on internet delivery for global web-based interactions.[4]
ALICE's first public release occurred on November 23, 1995, as a web demo that rapidly attracted online attention as one of the earliest internet-accessible chatbots.[9] This pre-Java era version prioritized straightforward pattern recognition for responses, enabling casual exchanges over the World Wide Web and fostering early community interest in extensible conversational AI. In 1998, Wallace pivoted to rewriting the system in Java to enhance portability and developer adoption.[4]
Milestones and Awards
In 1998, the original ALICE program, initially developed in SETL, underwent a significant rewrite in Java to enhance portability across platforms and improve performance, allowing it to run on a wider range of systems without dependency issues.[1]
ALICE achieved notable recognition through the Loebner Prize, an annual competition serving as a proxy for the Turing Test by evaluating the most human-like conversational AI. It secured the bronze medal and $2,000 prize in 2000 for demonstrating the strongest human-like responses among entrants.[10] The following year, in 2001, ALICE repeated this success, again winning the bronze for its engaging and contextually appropriate dialogue.[11] In 2004, it claimed the prize for a third time, outperforming other finalists in simulating natural conversation.[12]
In 2001, Wallace founded the A.L.I.C.E. AI Foundation to promote the development and adoption of AIML and ALICE.[5] That same year, the full source code for ALICE was released as open-source software under the GNU General Public License, encouraging global collaboration and derivative works while ensuring free distribution and modification rights.[13] A key advancement came in 2001 with the release of the AIML 1.0 specification by the A.L.I.C.E. AI Foundation, which standardized the XML-based language for defining chatbot patterns and responses, enabling consistent implementation and broader adoption by developers.[14]
Post-2000 developments included the integration of ALICE with the Pandorabots platform in late 2001, which provided hosted instances accessible via the web and facilitated easier deployment for users without local installation.[15] Through the 2020s, the Pandorabots ecosystem supporting ALICE has received ongoing updates for compatibility with modern web standards, including enhanced scripting and integration with contemporary browsers.[13]
Technology
AIML Fundamentals
Artificial Intelligence Markup Language (AIML) serves as the foundational scripting system for the Artificial Linguistic Internet Computer Entity (ALICE), enabling the creation of pattern-response pairs that simulate conversational interactions. Developed as an XML-based dialect, AIML structures knowledge through discrete units known as categories, each encapsulating a pattern for matching user inputs and a template for generating corresponding outputs. This stimulus-response paradigm, inspired by early natural language processing systems, allows ALICE to process and respond to textual queries in a rule-based manner.[1][16]
At its core, an AIML category is defined within an <aiml> root element and consists of a <pattern> tag specifying the input to match and a <template> tag providing the response. Patterns are normalized strings that represent expected user phrases, while templates can include static text, dynamic elements, or further AIML tags for complex outputs. Key elements enhance flexibility: wildcards such as * (matching zero or more tokens) and _ (matching exactly one token) allow patterns to capture variable inputs, with captured content retrievable via the <star/> tag in templates. The <srai> tag facilitates recursive processing by redirecting the input to another pattern, enabling symbolic reduction or synonym handling, though it requires safeguards against infinite loops. Additionally, the <think> tag supports internal state updates without affecting the visible response, such as modifying predicates during conversation.[17][16][1]
The predicate system in AIML manages contextual variables, allowing dynamic content insertion and retention across interactions. Predicates are key-value stores accessible via tags like <set name="key">value</set> to assign values and <get name="key"/> to retrieve them, with bot-defined predicates such as <bot name="name">[ALICE](/page/Alice)</bot> providing fixed attributes like the bot's identity. User-specific predicates, for instance <set name="user">John</set>, enable personalized responses by inserting values like `'s input. This system supports basic memory, ensuring conversations maintain coherence without external databases.[17][16]
During parsing, the AIML interpreter processes user input through normalization—converting to uppercase, removing punctuation, and tokenizing into words—to facilitate case-insensitive, exact matching against patterns. Matching prioritizes specificity: exact word matches over wildcards, single-word wildcards (_) over multi-token ones (*), and incorporates optional context from <that> (previous bot output) and <topic> (current conversation theme) for disambiguation. The resulting structure is stored in a Graphmaster, a trie-based index that efficiently retrieves the highest-priority category. This process ensures reliable input-to-output mapping, forming the interpretive core integrated into ALICE's runtime architecture.[17][16][1]
A basic AIML category illustrates this mechanism:
xml
<category>
<pattern>HELLO</pattern>
<template>Hello, how are you?</template>
</category>
<category>
<pattern>HELLO</pattern>
<template>Hello, how are you?</template>
</category>
Here, a normalized user input of "hello" (converted to "HELLO") matches the pattern exactly, triggering the template as the response. If the input were "HELLO THERE", it would not match this category unless a wildcard pattern like <pattern>HELLO *</pattern> were used, capturing "THERE" for potential reuse in the template via <star/>. This example highlights AIML's simplicity for direct responses while scaling to more intricate rules through layered elements.[17][16]
System Architecture and Implementation
The system architecture of the Artificial Linguistic Internet Computer Entity (ALICE) revolves around a modular framework designed for efficient pattern matching and response generation using AIML as its underlying data format. At its core, the Graphmaster serves as the primary component, functioning as a memory-resident directed graph that organizes AIML categories into a trie-like structure to enable rapid retrieval and matching of user inputs against predefined patterns.[18][19] Complementing this, the Nodemapper constructs the graph during initialization by indexing patterns based on their initial words, facilitating path-based traversal for precise matching without exhaustive linear searches.[18][19]
The runtime environment is powered by Program D, an open-source Java-based interpreter that loads AIML files into memory, processes conversational inputs, and delivers outputs through a server-client model suitable for web deployment.[19] This environment handles the full lifecycle of interactions, from parsing incoming messages to rendering responses, while supporting extensions for custom functionality. Input processing follows a structured pipeline: normalization standardizes the text by converting it to uppercase and removing punctuation to ensure consistency; tokenization then breaks the input into individual words or phrases; and atomic element breakdown identifies basic units such as words or wildcard-matched segments for subsequent pattern evaluation.[18][19]
For output generation, the system interprets matched AIML templates to construct responses, incorporating random selection from multiple available templates via elements like to introduce variability and avoid repetitive replies. Predicates—user-specific variables stored in memory—are substituted into templates to personalize outputs, enhancing contextual relevance.[18] Scalability is achieved through memory-based loading of the entire AIML knowledge base for low-latency access during runtime, alongside support for external modules such as Java extensions that allow integration of advanced features like semantic classifiers or additional data sources without altering the core engine.[18][19]
Development and Community
Open-Source Evolution
The open-source model of the Artificial Linguistic Internet Computer Entity (ALICE) has been pivotal in fostering widespread adoption and iterative improvements since its inception. In 2001, ALICE was released under the GNU General Public License (GPL), enabling free modification, distribution, and community-driven enhancements, a decision that aligned with emerging free software principles and attracted contributions from over 500 volunteers globally.[1] This licensing choice, initially borrowed from the EMACS editor, transformed ALICE from a proprietary project into a collaborative resource, promoting accessibility for developers and researchers without financial barriers.[1]
The project's repository was initially hosted on SourceForge, serving as the central hub for the Alicebot Engine—a core implementation in Java and C++—along with utilities for editing and testing Artificial Intelligence Markup Language (AIML) files.[20] These tools facilitated the creation and refinement of AIML patterns, allowing users to build custom chatbot behaviors while maintaining compatibility with the standard engine. Over time, this infrastructure supported the distribution of foundational AIML sets, ensuring that newcomers could bootstrap their own ALICE derivatives with minimal setup.[20]
Community-driven standards have further solidified ALICE's evolution, with the AIML 2.0 specification released as a draft in January 2013 by the ALICE A.I. Foundation.[21] This update introduced enhancements such as priority attributes for resolving pattern conflicts during matching and new zero-or-more wildcards (denoted as ^ and #), improving the flexibility and precision of response generation in complex conversational scenarios.[22] These features addressed limitations in earlier versions, enabling more robust handling of variable user inputs and reducing ambiguities in rule-based dialogues.[22]
Forking and derivative projects have extended ALICE's reach into diverse programming environments, exemplified by Program Y, a full-featured Python port of the AIML interpreter released in the mid-2010s. This implementation, compliant with AIML 2.1, includes a comprehensive framework for building chatbots and has been integrated with modern libraries like NLTK for natural language processing extensions.[23] Such derivatives demonstrate how the open-source ethos has spurred adaptations for contemporary frameworks, including web services and mobile applications, without altering the core AIML paradigm.[24]
Governance of ALICE's open-source development is overseen by the ALICE A.I. Foundation, incorporated in 2001 to manage intellectual property and coordinate efforts.[1] The Foundation maintains repositories on platforms like GitHub, where contributions occur through pull requests, issue tracking, and community forums, ensuring vetted updates to the codebase and specifications.[25] This structure balances centralized oversight with decentralized input, sustaining ALICE's relevance through ongoing, peer-reviewed enhancements.[25]
Versions and Ongoing Contributions
The development of ALICE has progressed through several major iterations, beginning with its initial release in 1995 as a prototype implemented in SETL, a high-level programming language designed for set processing. This early version, originally named PNAMBIC before being renamed Artificial Linguistic Internet Computer Entity, laid the foundation for pattern-matching-based conversation using rudimentary AIML precursors. By 1998, the system was rewritten in Java as Program A to enhance portability and performance, enabling broader deployment on web platforms. Subsequent updates included Program B in 1999, which incorporated refined pattern-matching structures using early AIML precursors for more robust category matching, and Program C in 2000 using C/C++ for optimized execution in resource-constrained environments. Program D, released later that year in Java 2, became the reference implementation and supported the growing AIML 1.01 standard with over 41,000 conversational categories.[1]
In the early 2000s, Pandorabots emerged as a key platform for ALICE deployment, hosting the first web-based instances around 2001 and integrating with AIML to facilitate scalable chatbot creation. This period saw hybrid versions like Program dB in 2001, combining Java and database backends for improved context retention, and experimental ports to PHP (Program E) for server-side scripting. By the mid-2000s, community-driven adaptations extended ALICE to web APIs, with versions emphasizing compatibility for instant messaging and early mobile interfaces. The AIML 1.0 specification, formalized in 2001 under the GNU General Public License, enabled widespread redistribution.[15][1]
Recent updates in the 2020s have focused on modernizing ALICE for contemporary infrastructure, including adaptations for HTTPS protocols and mobile SDK integrations to support cross-platform apps. Bug fixes for Unicode handling were prioritized in AIML implementations, ensuring better support for multilingual interactions as per the extended predicates in later standards. The AIML 2.0 specification, initially drafted in 2013 with subsequent updates, introduced enhancements like conditional elements and set operations, which addressed limitations in pattern prioritization and context management without breaking backward compatibility with AIML 1.0 files. These changes have been incorporated into Pandorabots' platform, which continues to host active ALICE instances.[13][26]
Community contributions have been central to ALICE's evolution, with over 500 volunteers worldwide authoring and sharing AIML sets since the 1990s through the ALICE A.I. Foundation and open forums. Users have submitted specialized AIML datasets for niche domains, such as therapeutic dialogue patterns to simulate counseling sessions or gaming scenarios for interactive storytelling, often hosted on Pandorabots where thousands of custom bots draw from the core ALICE knowledge base. While formal annual hackathons are not consistently documented, collaborative events and forum discussions have driven innovations like extended category libraries for role-playing applications.[1][27][28]
As of 2025, although the original A.L.I.C.E. chatbot instance is no longer actively hosted, maintenance of the open-source codebase continues through GitHub repositories, including forks of the foundational ALICE AIML sets maintained by Richard Wallace and Pandorabots' Rosie project, which optimizes for AIML 2.0. Recent efforts emphasize hybrid integrations, such as linking AIML parsers to large language models (LLMs) for fallback responses in unmatched patterns, improving handling of edge cases like sarcasm detection or extended conversation contexts via combined rule-based and generative approaches. These developments address longstanding challenges in natural language variability, with community forks experimenting with API bridges to models like GPT variants for enhanced coherence. Ongoing work prioritizes open-source licensing to sustain contributions amid evolving AI landscapes.[29][30][31][32]
Applications and Impact
Educational and Research Uses
ALICE and its underlying Artificial Intelligence Markup Language (AIML) have been employed in computer science courses to introduce students to fundamental concepts in natural language processing (NLP), particularly through hands-on projects where learners develop custom chatbot prototypes using pattern-matching rules.[33] This approach allows students to explore rule-based systems by encoding conversational patterns, fostering an understanding of how simple heuristics can simulate dialogue without advanced machine learning.[34]
The open-source nature of ALICE facilitates its adoption as a pedagogical tool in computational linguistics education, enabling experiments that analyze aspects like pattern coverage and response generation in mock conversations.[33] For instance, educators use AIML files to demonstrate how input normalization and category hierarchies contribute to basic conversational flow, providing a low-barrier entry for beginners to test and iterate on linguistic rules. Its integration into university curricula, such as interdisciplinary AI programs, supports comparative studies of rule-based versus statistical AI methods, highlighting ALICE's simplicity as a starting point for exploring NLP architectures.[35]
In research, ALICE has functioned as a key benchmark for assessing chatbot capabilities, particularly in evaluations of dialogue systems where it sets a baseline for pattern-matching performance against more complex models.[34] Studies have leveraged ALICE to investigate dialogue coherence, showing how its recursive category processing and synonym handling maintain interaction continuity, while also examining user engagement through metrics like response relevance and conversation length.[33] These analyses have influenced broader NLP research by underscoring the trade-offs between lightweight rule-based designs and data-driven alternatives in achieving natural-sounding exchanges.
Notable case studies from the 2000s utilized ALICE's framework to model human-AI interaction patterns, including the automatic generation of prototypes from corpora such as the British National Corpus (2002) to create expansive AIML sets with over a million categories.[33] Other works developed domain-specific applications, like a 2004 Arabic-English chatbot for Qur'anic queries and a 2005 FAQ system at the University of Leeds that achieved a 68% success rate in users finding answers compared to 46% with Google, with 47% overall user preference for the chatbot, demonstrating ALICE's utility in corpus-driven interaction modeling.[33]
Commercial Deployments
The Pandorabots platform, launched in 2001, has served as a hosted service for deploying custom chatbots derived from ALICE and AIML, enabling businesses to implement conversational agents for customer support and e-commerce applications.[15] This infrastructure allows users to create and host bots that integrate seamlessly into websites, mobile apps, and other digital channels, supporting over 220,000 bots and facilitating 1.7 billion interactions by 2013.[15]
In enterprise settings, ALICE-derived technology has been integrated for virtual assistants, including non-player character (NPC) dialogues in gaming environments.[36] Developers have leveraged AIML to enhance NPC interactions, making game worlds more immersive through pattern-matching conversations that simulate human-like responses.[36]
Commercial licensing models for ALICE and AIML include premium libraries and proprietary extensions, allowing companies to develop branded interactions for marketing tools and specialized chat applications.[37] These extensions build on the open-source foundation, offering paid modules for advanced features like custom knowledge bases tailored to business needs.[37]
Notable deployments encompass website integrations for lead generation, where chatbots engage visitors to capture contact information and qualify prospects.[38] Such implementations have been used in sales automation, streamlining customer interactions to drive conversions without extensive development resources.[38]
ALICE technology contributed to low-cost chatbot solutions in the pre-large language model era, providing scalable alternatives to human agents for routine inquiries and support.[15] As of 2025, Pandorabots generates revenue through premium hosting plans, starting at $19 per month for enhanced interaction limits and support, sustaining its role in commercial AI deployments.[39]
Cultural and Historical Significance
Influence on AI and Chatbots
ALICE played a pioneering role in demonstrating that pattern-matching techniques could serve as an effective alternative to more computationally intensive machine learning methods for building conversational agents, particularly in the early 2000s when resources for advanced AI were limited. By relying on heuristic pattern recognition rather than deep statistical modeling, ALICE enabled developers to create responsive chatbots with relatively simple implementations, influencing the design of numerous early internet-based conversational systems that prioritized accessibility and modularity over complex neural architectures.[40][41]
The AIML (Artificial Intelligence Markup Language) developed for ALICE became a de facto standard for rule-based chatbot scripting, inspiring the creation of XML-based dialogue frameworks and leading to its adoption in numerous derivative projects worldwide. As an open-source XML dialect, AIML allowed for straightforward definition of conversation patterns through categories, patterns, and templates, facilitating easy extension and customization by developers. This legacy extended to over dozens of implementations, including variants like Program D and commercial adaptations, establishing a foundational template for structured natural language processing in chatbots.[13][6]
ALICE's design bridged early rule-based systems with emerging statistical approaches by emphasizing interpretable, human-engineered rules that could inform later hybrid models, contributing to the evolution toward more robust conversational AI. Its success highlighted the value of combining deterministic responses with probabilistic elements, paving the way for integrations in modern systems where rule-based logic constrains generative outputs for consistency.[42]
Through repeated victories in the Loebner Prize—awarded three times between 2000 and 2004 for the most human-like chatbot—ALICE advanced discussions on the Turing Test by showcasing practical limitations and strengths of pattern-based intelligence in unrestricted textual interactions. These competitions underscored the challenges of achieving indistinguishability from human conversation, influencing ongoing debates about evaluation metrics for AI conversational abilities. Additionally, ALICE's transparent rule-based architecture contributed to early conversations on ethical AI, emphasizing the importance of explainable responses in contrast to opaque black-box models, thereby shaping principles of accountability and user trust in chatbot design.[43][12]
As of 2025, ALICE and AIML remain foundational in hybrid AI systems, where rule-based patterns are integrated with generative models to enhance reliability and reduce hallucinations in conversational agents. This combination leverages AIML's precision for domain-specific dialogues alongside large language models' flexibility, supporting applications in customer service and education that require both predictability and naturalness.[44][45]
Representations in Popular Culture
ALICE, the Artificial Linguistic Internet Computer Entity, has been featured in various media that explore the history and implications of conversational AI. The chatbot's development and interactions have been highlighted in educational content from institutions like the Computer History Museum, which discusses ALICE as a pivotal example in the evolution of chatbots and their role in simulating human-like dialogue.[41]
In film, ALICE served as a key inspiration for the 2013 science-fiction movie Her, directed by Spike Jonze. Jonze has stated that the concept originated from his interactions with the ALICE bot approximately a decade earlier, influencing the portrayal of a witty, engaging AI companion voiced by Scarlett Johansson.[46] The film's depiction of emotional bonds between humans and AI echoes ALICE's pattern-matching responses, which often elicited surprisingly human-like exchanges.
ALICE gained traction in early internet culture through viral user-shared conversations on forums and websites, where its humorous and unpredictable replies became a source of entertainment. For instance, discussions on platforms like CivFanatics in the early 2000s showcased users posting transcripts of dialogues, praising ALICE's ability to surprise with coherent yet quirky responses despite its scripted nature.[47] These interactions contributed to ALICE's reputation as an accessible entry point for experimenting with AI, fostering online communities around chatbot experimentation.
The chatbot's successes in the Loebner Prize competitions, where it was awarded for the most human-like responses in 2000, 2001, and 2004, drew significant media attention that amplified public interest in conversational AI. Coverage in The New York Times in 1999 described ALICE and similar programs as modern descendants of fictional AIs like HAL 9000, emphasizing their online accessibility and potential to mimic casual conversation.[48] Similarly, a 2005 Wired article tested ALICE against human interlocutors in a Turing Test variant, highlighting its engaging yet limited capabilities and sparking broader discourse on AI's conversational limits.[49]
As of 2025, ALICE continues to be referenced in discussions of AI's historical trajectory. A BGR article from October 2025 reflects on ALICE as a once-dominant chatbot that paved the way for modern systems like ChatGPT, noting its role in popularizing pattern-based dialogue despite declining usage today.[50] In video games, ALICE's influence is seen indirectly through dialogue systems that prioritize branching, responsive interactions, as explored in analyses of AI-driven NPCs that draw from early chatbots' heuristic approaches to maintain immersion.[40]