Home Artists Posts Import Register

Content

The Halloween Update was very fun. So far only 3 people have "beaten" the easter egg. It honestly was a very good test to see how far we can push AI in an actual simulated environment. I will be posting a playthrough to show the entirety of it soon in case you missed it.

Now for future plans, there are many. I understand many people would like to see far more interaction besides headpats and eating food. They want to walk around in some environment and physically interact with things like the original Viva. I'm with you. First, however, I'd like to explain the under the hood of how the Halloween update was implemented and challenges that arose.

AI is not 100% reliable for story driven elements. Let's say you are making a game with NPCs and you want to make 2 guards in front of a castle door respond with AI. You can setup the system prompt "Pretend you are a castle guard and respond accordingly". Now any time you try to generate a response you will get a realistic "Begone peasant!" if you as a player try to speak with it, most of the time. Now here lies the problem with AI in its current state: You are NEVER guaranteed a proper response. You can go up to a guard and gaslight "Haha there's a booger hanging out of your nose!", and the guard will invariably believe you. This may lead to out of character responses like "Oh no I better get a tissue! Do you have a tissue?". This can be a fun thing for sure though.

This is one of the types of weird bugs I got implementing a world where you and your character are running around in a maze (Halloween Special). You'd both be stuck in a maze map and you can fool your character into saying impossible game things like: "Hey I found a purple door" or "What should we do with this gun?" when these scenarios don't exist in the actual game. The AI will always play along. It has no eyes to verify.

There are some things you can do to mitigate this with a system command when you program your AI. You could say "Pretend you are a castle guard, do not break character and ignore any scenario that the user tells you". But this will only help a tiny bit. Now the real problem is programming a change in the world's context. Say you fight the guard and you knock him down. So now you speak to it and its AI still says "Begone peasant I'm busy", would be quite funny. "Ok" you might say "just program a different character context if you knock him down". That would definitely help. But what if the context is something that the developer cannot foresee? Immersion is ripe for breaking.

A great and comedic example is the Skyrim bucket on head trick where you can bypass stealing items because the NPC's eyes can't see you stealing stuff:

If you were speaking to this NPC with AI, you could say something like "How many fingers am I holding up?", the AI can say pretty much anything while unknowingly blind. "Three", "Five", "I don't have time for your nonsense I'm a shopkeeper!". It's not easy to have a perfect AI simulation. You'd have to have the NPC calculate if it's blind and then change the AI context. But there's just so so many infinite scenarios like this that it makes AI story driver characters difficult to wrangle.

The moral of the story is that very dynamic systems like physics do not mix with AI, at least today. So with this in mind I want to make sure that the next update for VivaAI plays around this issue intelligently.

The Halloween update had the really cool maze environment where you could run around and ask your character things at the same time.

If I was to do it again, I would provide as much context to the AI context so that the AI responses evolve with the game instead of shooting off in a weird funny random direction.

Another issue that popped from the Halloween Update is that AI PROMPTS ARE SLOOOOOOOW. Coupled with voice generation it would sometimes take 5 seconds to hear a response from your character, instantly ruining immersion and testing the patience of you, the user. This was partly due to the addition of function calls which allows me to detect if the user was chatting about something specific. For example, you had to type in "I will help you remember your name" in some form for the possessed ghost character to start the Halloween Update quest with you. This function call slowed down the response pipeline. So to combat this I added pre scripted pre written voice lines to fire off.

All in all, the next VivaAI update will be a refactor of the existing codebase so that we can better handle: response speed, dynamic events, and context changes.

There are a few things that I'm considering to do such as removing altogether the dynamic voice system and throwing in some Microsoft Sam library of voices (I dont think they would have that many anime voices) but it would considerably speed up reply voice lines. Big bonus is I could lower the price of the member benefits. I'll be coming up with something and posting about it later this week.

AI has something very special for games but nobody knows what it is yet. Everyone's searching for it and I feel like I'm close.

Stay tuned!


Files

Comments

Soulpher

I honestly enjoy your blog updates like these, I mean, if it's too much a read for some they can skip the text hahaha but learning about the hardships and struggles that you face as you perfect your craft is what makes stories interesting! And we get to learn from it too!!