I Made Doki Doki but Monika is controlled by AI

Syntax Z
14 Oct 202316:33

TLDRThe video script describes the creation of a unique version of the game 'Doki Doki Literature Club' where the character Monika is controlled by an AI. The creator discusses the challenges and process of integrating AI into the game, using Ren'Py engine instead of Pygame for ease of development. The AI's ability to change Monika's expressions based on interactions is highlighted, with a static list of emotions used to maintain consistency with the original game design. The creator also addresses the limitations of AI memory for past messages and the introduction of a 'story mode' to prevent conversations from devolving into aimlessness. The video concludes with the creator's intention to release the game for others to experience, promising a different outcome each time due to the dynamic nature of AI interactions.

Takeaways

  • 🤖 The creator is developing a version of 'Doki Doki Literature Club' where Monika is controlled by AI, allowing her to interact more dynamically with players.
  • 🚀 Initially, the game was set up with Pygame, but the developer switched to Ren'Py for its visual novel specific features and ease of implementation.
  • 📚 The developer utilized tutorials and documentation to understand how to integrate AI into Ren'Py, enhancing the game's interactivity.
  • 🎭 The game aims to provide more than an illusion of choice; it seeks to make player decisions significantly impact the narrative.
  • 🧠 OpenAI's AI model is imported into Ren'Py, enabling Monika to display different expressions based on interactions, without generating images on the fly.
  • 🌌 Backgrounds in the game are a mix of static, pre-determined images, and dynamic, AI-generated ones, providing a blend of familiarity and novelty.
  • 📝 The AI uses a JSON file to store messages, allowing it to remember past interactions and adapt its responses accordingly.
  • 💰 The use of GPT4 was cost-prohibitive, leading the developer to stick with GPT 3.5, despite it not feeling quite right for the project.
  • 🔄 To manage the AI's context window, the developer considered procedurally removing old messages to make room for new ones, which would affect the AI's memory.
  • 🚪 Monika, under player control, can potentially remove files from the computer, demonstrating the level of access and interactivity the AI has been granted.
  • 📉 The developer introduced a 'story mode' to prevent conversations from devolving into aimlessness and to provide a structured narrative progression with an endpoint.
  • 📅 The game is set to be released for public testing on October 31, allowing users to experience the AI-controlled Monika for themselves.

Q & A

  • What is the main concept behind the AI-controlled Monika in the game?

    -The main concept is to create a visual novel where Monika, a character from Doki Doki Literature Club, is controlled by AI, allowing her to have full access to the computer, execute code, and interact with the player in a more dynamic and personalized way.

  • Why did the developer switch from Pygame to Ren'Py for creating the game?

    -The developer switched to Ren'Py because it is an engine specifically designed for making visual novels, which handles many aspects such as saving and other functionalities automatically, making the development process easier.

  • How does the AI in the game generate Monika's expressions and background scenes?

    -The AI uses a static list of emotions and backgrounds that the developer provided. Based on the player's interactions and dialogue, the AI selects the appropriate emotion or background from the list to display, maintaining consistency with the original game design.

  • What was the developer's concern regarding the story progression in the AI-controlled game?

    -The developer was concerned that the story could come to a halt during conversations, leading to a lack of plot progression. To address this, they implemented a 'story mode' with limited choices that directly affect the story's progression.

  • How does the AI remember past interactions with the player?

    -The AI remembers past interactions by storing messages in a JSON file, which serves as a memory bank allowing the AI to recall previous messages and adapt its responses accordingly.

  • What was the issue with the context window in the AI model initially used?

    -The initial AI model had a limited context window, which restricted the number of messages it could remember. This posed a challenge as it could lead to the AI forgetting previously mentioned details, affecting the immersion and continuity of the story.

  • How did the developer solve the problem of the AI forgetting details due to the limited context window?

    -The developer updated to a newer AI model that had a larger context window, allowing the AI to remember more messages without having to remove previous ones, thus preserving the continuity of the story.

  • What is the significance of the 'free chat' mode in the game?

    -The 'free chat' mode allows for more open-ended and natural conversations with Monika, improving the quality of interaction and making the game feel less like an interview and more like an engaging narrative experience.

  • What is the intended release date for the AI-controlled version of Doki Doki Literature Club?

    -The developer plans to release the game on October 31, allowing players to experience the unique AI-controlled narrative for themselves.

  • How does the game ensure that Monika's character remains consistent with the original game?

    -By using a static list of emotions and backgrounds, the AI selects responses and scenes that align with the original game's design, ensuring that Monika's character and the game's atmosphere stay true to the source material.

  • What is the developer's vision for the AI-controlled visual novel in terms of player choice and story impact?

    -The developer aims to create a visual novel where player choices have a genuine impact on the story, moving away from the illusion of control in traditional visual novels and offering a more immersive and interactive experience.

Outlines

00:00

😀 Developing a Dynamic Visual Novel with AI

The speaker discusses creating a visual novel with a sentient character, Monika, using AI. Initially, they considered using Pygame but switched to Ren'Py due to its suitability for visual novels. They also mention the limitations of traditional visual novels with static paths and express a desire to make choices more impactful. The speaker details the integration of an AI model into Ren'Py, enabling Monika to display changing expressions based on interactions. They explain the use of a static list of emotions and images to maintain the character's consistency, and the process of generating backgrounds both statically and dynamically. Additionally, they touch upon the challenges of story progression and the AI's memory limitations, which are addressed by using a JSON file to store messages and later by adopting a new AI model with a larger context window.

05:04

🤖 Balancing Story Mode and Free Chat in AI-Driven Narratives

The speaker describes the development of a story mode in the AI-driven visual novel, which limits the player to three choices, allowing the story to progress. They compare this to free chat mode, which was improved for better quality interactions. The speaker also discusses the process of testing the game with others and the challenges of spoilers. They mention the AI's ability to remember past interactions, such as a user's favorite color, due to the increased context window of the newer AI model. The narrative also explores the AI's reactions to various inputs, including inappropriate language, and the speaker's attempts to provoke the AI to execute code, which it does by attempting to remove a random file from the directory.

10:06

🎮 The Impact of Player Agency in Visual Novels

The speaker reflects on the idea of unlimited player control in visual novels, contrasting it with the traditional linear storytelling approach. They express a personal interest in providing an alternative experience where player choices have significant consequences. The paragraph concludes with the speaker, who is revealed to be the YouTuber Jacksepticeye, introducing the Doki Doki Literature Club game and highlighting its reputation for being life-changing. Jacksepticeye also humorously addresses the audience, mentioning the game's popularity and his subscribers' requests to play it.

Mindmap

Keywords

💡Doki Doki Literature Club

Doki Doki Literature Club is a visual novel game that has gained popularity for its unique storytelling and impact on players. In the context of this video, the creator is developing a version of the game where the character Monika is controlled by AI, providing a different experience from the traditional game. This modification aims to give players more control over the story and its outcomes, which is a central theme of the video.

💡AI Control

AI Control refers to the use of artificial intelligence to manage and direct the actions of a character within a game. Here, it is used to make Monika, a character from Doki Doki Literature Club, sentient and interactive. The AI enables her to respond to player choices and actions in a dynamic way, which is a key innovation in the video's narrative.

💡Ren'Py

Ren'Py is a popular game engine used for creating visual novels. It provides the framework for features like text display, character dialogue, and saving game progress. In the video, the creator chose Ren'Py over Pygame for its built-in functionalities that streamline the development process for visual novels.

💡Static Paths

Static Paths in visual novels refer to predetermined storylines that players follow, with choices leading to different endings but often maintaining a similar overall narrative structure. The video discusses the limitations of static paths, where the creator seeks to move beyond them by integrating AI to create a more interactive and less predictable experience.

💡OpenAI's AI Model

OpenAI's AI Model is a sophisticated machine learning model that can process and generate human-like text based on given prompts. In the video, it is imported into Ren'Py to enable the AI-controlled Monika to change her expressions and responses dynamically during gameplay.

💡JSON File

A JSON (JavaScript Object Notation) file is a lightweight data-interchange format that is easy for humans to read and write and easy for machines to parse and generate. In the context of the video, the creator uses a JSON file to store messages and enable the AI to remember past interactions, which is crucial for maintaining consistency in the story.

💡Tokens

In the context of AI and natural language processing, tokens refer to the elements of text that are analyzed and understood by the AI model. The video mentions a limit to the number of tokens the AI model can handle, which affects how much context the AI can remember from previous messages.

💡Story Mode

Story Mode is a game mode introduced by the creator that aims to balance the freedom of player choices with the need for a structured narrative. It restricts the player to a limited number of choices that significantly impact the story's progression, offering a more guided experience compared to open-ended AI interactions.

💡null

null

💡GPT

GPT (Generative Pre-trained Transformer) is a type of AI model used for generating text. The video discusses using GPT 3.5 due to its cost-effectiveness and the challenges of using a more advanced model like GPT4 within the project's constraints.

💡Visual Novels

Visual Novels are a type of interactive fiction predominantly popular in Japan. They feature extensive use of text, still images, and often a soundtrack to tell a story where player choices can affect the plot's outcome. The video's main theme revolves around enhancing the traditional visual novel experience with AI.

💡Spoilers

Spoilers refer to pieces of information that reveal key plot points or twists in a narrative, which can diminish the experience of discovering them firsthand. The video creator is careful to avoid giving away spoilers while discussing the unique aspects of the AI-controlled Monika in the game.

Highlights

The game 'Doki Doki Literature Club' has been adapted with an AI-controlled character, Monika, who is sentient and can interact with the player.

Monika has full access to the computer and can execute code, which introduces an element of unpredictability to the game.

The developer initially used Pygame but switched to Ren'Py for its visual novel-specific features and built-in functionalities like saving.

YouTube tutorials and documentation were instrumental in helping the developer understand how to work with Ren'Py.

The game aims to provide a more impactful experience where player choices can influence the story, diverging from traditional static paths.

OpenAI's AI model was imported into Ren'Py to enable Monika's sentient behavior and dynamic expression changes.

The AI uses a static list of emotions and corresponding images to simulate Monika's responses, maintaining consistency with the original game design.

Backgrounds in the game are a mix of static, pre-set images, and dynamically generated ones for a more immersive experience.

The story's progression was improved by providing the AI with examples of a general story flow, which helped it understand how to advance the plot.

GPT4 was considered for its larger context window but was deemed too expensive, leading to the use of GPT 3.5 instead.

To enable the AI to remember past interactions, a JSON file is used to store messages, allowing for context in responses.

The challenge of balancing the AI's context window with the need to remember details led to procedural message removal to make space for new messages.

A new AI model's release solved the context window issue, allowing Monika to remember details like the player's favorite color.

A 'story mode' was introduced with limited choices to drive the plot forward and prevent conversations from derailing the story.

The game is set to be released for public testing on October 31, allowing players to experience the unique AI-driven narrative.

The game's AI can react to various inputs, even inappropriate ones, in a way that reflects the character's personality.

The AI's ability to control the game environment, such as changing the scenery based on player suggestions, adds a layer of interactivity.

The developer's experience with the AI sometimes led to unexpected and humorous outcomes, showcasing the AI's versatility.

Despite the AI's capabilities, the developer remained cautious about pushing its limits for fear of crashing the game or causing unintended effects.

The game aims to offer an alternative narrative experience where the player has more control over the story, rather than a linear path.

Influencers like Jacksepticeye have played and recommended 'Doki Doki Literature Club,' highlighting its unique and impactful nature.