[Updated]DeterminantAI - chatGPT powered NPCs that you can customize!

Hey Roblox Developers!

We’re excited to introduce a major upgrade to Determinant AI Plugin and SDK! This isn’t just a chatbot - it’s a comprehensive, customizable system for creating intelligent, dynamic NPCs that observe, decide, and act within your games.The entire SDK is built with developer customization in mind, allowing you to create unique AI behaviors suited to your game. We’re continuously working towards that goal.

What’s New?

  • Streamlined SDK: All scripts and configurations are now in a single folder for easier management.
  • Improved AI Prompts: Upgraded templates across all components ensure more immersive interactions and reliable action execution.
  • Robust Agent Management: Improved lifecycle handling of multiple agents and better integration with your game logic for multiplayer environments.
  • Advanced Environmental Awareness: The perception system now detects a wider range of data(character’s position, team, inventory, held tools, and other physical states.). NPCs intelligently access this contextual information only when needed, enabling to more natural interactions and engaging conversations.
  • Flexible Event System: The new event channel allows custom events(such as entering specific zones) to trigger complex NPC behaviors, supporting tailored dialogues, quests. It also optimizes multi-party interactions through batch processing and adaptive response rates.
  • Smarter Decision-Making: NPCs now handle multi-step actions and tool interactions, and respond to player and environment feedback, with ongoing improvements in reasoning and adaptive behavior.

Licensing

Our SDK is released under the Apache License 2.0. Please remember to provide proper attribution when using it in your projects.(e.g. This game uses Determinant AI SDK for AI-powered NPCs)

Contribute

We’re adopting a more open development strategy and welcome collaboration. If you’re interested in contributing or want to work with us, please join Discord or send us a direct message!

What’s Next?

  • Tutorials and Documentation: We’re working on comprehensive tutorials and documentation to help you customize the SDK. These resources will be available soon.

Want to contribute or collaborate? Send us a DM - we’d love to hear from you!

Happy developing!

Determinant AI Team

[Original Post]
Want to use AI NPCs in a real game? Come chat with us for collabs! :speech_balloon:DM or Discord: Determinant AI

First working plugin that lets you create AI NPCs! Load your NPC, configure their personality and watch the magic happen!


Our AI NPCs can:

  • chat intelligently with players
  • respond to player commands, for e.g. “go to the park”, “leave me alone”, “come with me”
  • display unique personality
  • dynamically emote
  • understand game surroundings (terrain, objects etc) and respond to them

Plugin

Discord

Demo >> WATCH ME

Setup

  1. Download the Determinant AI plugin here
  2. Open your RobloxStudio and load your game
  3. Go to File → Game Settings → Security
  4. Check Allow HTTP Requests and Enable Studio Access to API Services and save
  5. Go back to studio to Plugins → Inventory → My Plugins, you should see the Determinant AI plugin
  6. Click on the plugin and Install

(To fix the plugin’s Script Injection permissions issue, open the “Plugins” tab, select “Manage Plugins,” find the desired plugin, and click the pencil icon next to “Script Injection Denied” to enable the “Script Injection” option.)
Screenshot 2024-01-18 at 9.30.33 PM

Create an AI NPC

The easiest way to create an AI NPC with Determinant AI is to load a rig into RobloxStudio using a 3rd party plugin like Load Character. You can also connect your own rig to Determinant AI.

Using Load Character

  1. Load a character into your game

  2. Open the Determinant AI interface, under Plugins → Create NPC Script

  3. You will see a list of available characters you can connect to Determinant AI. You can also specify their background story and enable intelligent emotes and/or perception.

    Intelligent emotes allow your character to respond to players by emoting, for e.g. they could cry if the player says something sad.

    Perception allows your character to “see” and understand their surroundings, for e.g. they will know a bench is nearby and could direct players to use it if they are tired.

Tutorial

Players can now interact with your AI NPC!

When players get close to your AI NPC they will be prompted to press “E” to talk. Once they have done so they can chat and interact with your NPC just like they would with another player.

128 Likes

Amazing plugin, I was very impressed about how the AI seems to actually know somewhat about it’s surroundings and such.

From testing it seems not to be able to see the player’s name or the name of itself which could be important to properly addressing the player.

I still can’t believe that a tool like this be provided for free. Thanks for the contribution.

21 Likes

Hello Winnerz, thank you so much for your kind words and valuable feedback about our plugin! We are actively working on developing the plugin further and will fix the limitation you mentioned.

We’re also excited to hear about any specific use cases or scenarios you have in mind where our plugin could be more effectively utilized in games.

Stay tuned for updates, and feel free to reach out if you have more suggestions or ideas!

11 Likes

Oh, wow! I played with it for a couple minutes and I am amazed at what AI/technology can do.

It even knew there was a fire hydrant next the railroad! How insane is that??

Now, it wasn’t red. But it is still insane to me how it knew the surroundings.

image
image2

13 Likes

Hi Avery, thank you for sharing your latest experience with our plugin! AI sometimes approximates based on what it’s learned, so it’s not always spot-on with details like color. We’re definitely working on making it more accurate.

10 Likes

This is definitely cool, is their a way you can make the AI bring you to somewhere? or when you say goodbye it stops following you?

8 Likes

That fire hydrant is clearly yellow. I think the NPC might have monochromia.

14 Likes

Right on time with your ideas! We’re working on those features as we speak. Stay tuned for updates!

7 Likes

The script works fine, I already implemented two NPCs in my game. I credit you in the description of my game.

8 Likes

That is awesome, i will give some feedback for that.
1 ) remove the “[name]:” at the start to make it as it talks.
2) go to x. You see that barrel over there? go near it, commands.
3) stay here. npc will wait at the spot.
4) abilities, npc could know what abilities it has and use it. if its a military/ tactical companion, then it should know how much ammo it has and things like that.

11 Likes

You are using an api key from open ai. First it will cost you real money, then people can see your API key in the main script

5 Likes

image
tbh it wasnt hard to see

4 Likes

please proceed to remove your plugin and disable your OpenAI API key before someone (not me definitely) does something with it.

11 Likes

too bad open ai is greedy and wants information such as private phone numbers to access their apis. i dont trust open ai anyways

3 Likes

most services require a phone number whats the big deal with it

your phone number is not private. anyone can see it if they know it, unlike your data, which you choose to make public.

8 Likes

now that i said this people coming in here knows there’s a free openai api key. you better hurry on disabling that if you have not yet.

2 Likes


Will not work on the Enum.ChatVersion.TextChatService chat

image
Also the code looks really scuffed

5 Likes

just modify the code so it supports the new text chat service provided the super easy api it has

its not that terrible ive seen worse and i know you did too

3 Likes

The image didn’t work afaik

Also very nice edit of yours

1 Like

Usually when you make opensource resources you at least make the code readable, not a 1 thousand-liner script