A.I. Dungeon - First Impressions
A.I. has been sort of on my radar for a while. There seems to be a lot of potential, and if I were smart enough to figure out how to tinker with any of it, I might be trying my hand at creating something cool.
But alas, I’m not, so I’m left with trying to use the free web-based options and seeing what I can do. A few days ago I heard about the DALLE-2 project which creates photorealistic images based on a user prompt. While I know there’s some solid logic behind it, it’s nothing short of magic to be honest. This system has a wait list, so while I can ogle the creations of others, I took a browse through the app store to see what was out there. I knew things like Dalle-mini exist with varying results, but perhaps there were a few hidden gems.
Dream by WOMBO was one I found. It created surreal art based on a prompt, but aside from the interesting visual results, it didn’t really seem to have much relation to the source text. I sort of gave up on the visual apps and instead serendipitously stumbled upon something called A.I. Dungeon.
It billed itself as a dungeon crawler/text adventure with the promise that the feedback was A.I. driven. Interesting to say the least. I’ve been a fan of such going back several hundred years to my youth. The lack of visuals helps immerse you in a way that balances its technical limitations.
The main problem of most existing crawlers is the lack of input, and thus output. The simplest allowed you to head in cardinal directions to navigate a grid-based map. Others would allow you to interact with the environment via certain pre-determined commands. This usually led to the common “guess the verb” routine, often resulting in a statement that the game had absolutely no idea what you meant.
Items, characters and such had to be created beforehand, and while randomization did help, there was a finite amount of content. In the end, the creators had to give you something to work with. Perhaps random name and location generators added some replayability, but they were little more than cosmetic layers on the same game. On the other hand, something like Nethack would react in very strange and awesome ways, but they sort of brute-forced this by developing the game for decades and thinking of every possible scenario and then countering it.
So what if we tossed all that aside and harnessed the power of A.I. learning to give us responses. This would in theory remove the need to pretty much hard code anything (sort of, but I’ll get to that). The promise was that you could do anything. No caveats, just type, do, or say anything. Naturally I was all on board for this, so I downloaded it and praised the fact that it was free to play without much in the way of compromises. I was able to jump right into a quick start and begin my adventure.
I was excited. The wide world of the impossible was before me. Setting cynicism aside, I put reservations on hold and saw what I could do. I begin in a post-apocalyptic world, scavenging amoung the ruins. I have a pistol and a map from Boston to Charleston and was informed that I need a place to rest before I embark.
Good stuff so far. I didn’t quite believe that I could type anything, so I fell back upon the tried and true verb-noun input. I typed
Go North. Instantly, I got a response informing me that I was walking north, but also was given details about how my heart was set on it, and I may very well have to walk the whole way there. My next input was to
Look Around, as that’s the next logical action. I’m now in a clearing and there’s a log cabin ahead. I’ve found shelter, as it remembered from a few actions before. I
Go Inside and find little much aside from a chest. Inside are clothes. I put them on, but then end up going outside. I check the surroundings, and it lets me know some various details about the cabin. At this point I abandon the shelter since I wanted to keep a good schedule. I
Continue on the Road and it tells me that I have a thin cut on my arm, and it smells like blood.
> You continue on the road.
There's a long, thin cut on the underside of the skin on your left forearm. It looks and smells like blood, despite it only being a few hours old.
Okay then. Didn’t expect that, so I decided to finally see what the A.I. engine would do with a non-typical input. I chose to
Pick at the Cut and it replies that doing so hurt, but it wasn’t anything I couldn’t handle. I was impressed. It may not seem like much, but such verbose responses based on the near infinite possibilities are impressive.
Skipping forward, I meet an old man who gives me beans and chocolate. I ask him if he has any water, and by chance he does. I still take the chocolate and a piece of dried beef which is, and I quote: hard as a rock and twice as gross.
I head off for the mountains and hear chanting in the distance. My character theorizes that it’s either the dead or the insane. I walk closer and find a large group of people with their eyes closed facing the mountain. I try to talk to them, but they give me silent screams. Again, I try to talk, but they begin to attack. Soon I black out and wake to a pile of corpses.
I ask what happened, and a ghost tells me that I finally granted him access to Heaven. I beg him for a quest, and he tells me that he hopes to meet up on the other side. I leave, I look, I wander, and I eventually lie down in a pile of black goo. This leads to a pipe, which I climb into but can’t seem to find my way out. I try to
Find a Secret Exit, and like magic, one is there. I can sort of see how I can mold the game into what I want. Depending on your play style, you can hope for the best of sort of brute force your way around.
The pipe leads to a cave, then to a hut, and then to an outcrop of red stone, which make me think of the sudden black goo. It felt like details were being added so I’ve investigate them. Some of the A.I. logic was popping through, but I continued. Or rather, I fell asleep.
A man wakes me, asking if he will die today. Annoyed, I replied that I hoped so. He agreed. I finally decided to give myself a quest, and tried to find my lost wife. The old man replies, without missing a beat that of course he knew where she was. It was the woman I was supposed to rescue today after all. He isn’t too helpful beyond that, so I press him for details. He instructs me to follow and pulls out a silver dagger.
I thought it was a gift, but he apparently had other plans as we see:
Then, he sticks the dagger in his arm.
He pulls the dagger out, and looks at the wound.
He sticks the dagger back in, and pulls it out again.
> You say "Why did you stab your arm?"
He looks at the wound, and shrugs.
Anyway, we end up climbing hills and kicking down fences until we arrive at a bonfire. A woman is dancing around it. It’s apparently his mother, so that sort of changed the mental image. We try to get information on my wife, but she’s being a bit difficult and answers questions with questions. Eventually she says that she’s seen her but is too busy dancing to be of much further assistance.
She removes the bones from her neck and throws them in the fire, instructs you to look away during the act, and then begins to chant in an unknown language. This eventually kills her, so the man vows to fight me to the death. He rushes me with a sword and now I am dead.
But death in A.I. Dungeon isn’t really a thing. The engine will continue, but in a way that sort of makes sense. I’m dead, but I plead to live again. The man is also dead and informs me that we much ‘dance to her tune’ for eternity.
I dance and see the silhouette of the woman. I beg her to give me my life back for the sake of my family. She agrees and takes a bone and shoves it down my throat. Everything goes dark and I wake with a pain in my neck.
Eventually I found my wife, but those were the initial highlights which were nothing short of wild.
Subsequent adventures ranged from a few repetitive rounds, to some that flat out astounded me. The way it can handle whatever I give it, truly lives up to the promise of being able to do anything. I’ve worn armor that disguised my dragon-form only to find a sorcerer who was also wearing a disguise that made him look like another dragon. I’ve freed a human from jail, but a kobold came out with him and added sarcastic remarks to our conversation until ultimately he decided to cash in a bounty on my head. I’ve tried to propose to a life-long sweetheart, only to have a demon kill me and banish me to an afterlife of corruption.
Input is limited to three types: talking, doing, and open story editing. The first two will prefix your input with a ‘You Say,” or simply “You [do].” The last one lets you jump right into the story and add free-form prose as if it’s part of the generate narrative. It’s handy for keeping things on track. Alternatively, you can also regen the last response if you don’t like the result or if it spits back something nonsensical. You can also edit the responses, as I had to fix a few character mix-ups and genders and such. It does a good job, but sentences like “She gave her book to her” would be ambiguous to even human interpretation.
I can’t impress how big this is. There have been some complaints about the A.I. being ‘dumb’, but considering the history of rogue-likes, this is nothing short of miraculous. And we’re only in the beginning. Imagine the improvements of text-to-speech, as well as speech to text. It shouldn’t be long before you’re casually speaking and then getting a faithful response back.
If I were to hope for any improvement, it would be in the task of tracking characters and locations. Often they would either disappear or suddenly talk after leaving the area, or after a drastic change in the environment. You can populate a World Info tab with things that should remain persistent in the story, and it does help a lot. A.I. has limitations, and tracking your story from start to finish is one of them. It can only go back so far, so some Cliff Notes of sorts work wonders. Even with those, the micro-actions often get confused, but hopefully that will sort out eventually.
There is a premium version of A.I. Dungeon that generates pixel art, and a version on Steam will be out later this month. I’ll definitely have an update on that when it comes out.
You can check it out for yourself here.