LitRPG AI Dungeon Roguelike Powered by GPT-4 + DALLE3

Room generation coming along nicely. Happy to answer questions about how I’m doing it…

I love ElvenLabs.

Only 2 samples of 2 minutes (If I remember correctly) and they replicated my voice really well.

Is this coded in Javascript?
Can I try this?

1 Like

Yeah, they’re pretty slick.

It’s Phaser 3 and Bootstrap 5 on the front end, but there’s some PHP/MYSQL on the backend.

I’ve got another 100 or 200 hours of work, I think, to get it ready, but I hope to have a soft-launch in a couple of weeks. I plan to have a free account type set-up, but people will need to at least register to use it as it will be hooked up to the API.

The free account will likely be one level and just a few rooms… with the option to upgrade to a paid account for $X/month for XX adventures? I’m still working out the details, but I do plan to go the freemium route as long as I can afford it.

If there’s interest after the soft-launch, I’ll likely code a sturdier version (or hire a real coder to do it! haha)… but for now, I’m trying to just launch a MVP quick and dirty (hence the jscript and Phaser…)

Let me know if you’re interested in trying it, and I’ll be sure to send you a link or something. I plan to just launch to a dozen or so people at first to get the kinks/bugs worked out.

2 Likes

I’m interested, sign me up!

When I first heard about GPT, or even LLM’s was in late December.
As soon as I learned and jumped into it I built a very simple pure JS Canvas character over a couple manic-filled days. Davinci still has my heart.

He could walk around, even had duties and logical objectives (he would usually deposit fish in the barrel when he finished fishing). I wrote the back-end in Kotlin. Actually, ChatGPT helped me build a tokenizer for it. I don’t think it was actually correct though :sweat_smile:

I wish I had a gif, the skies would move and it had time cycles!

So, needless to say, I am enthusiastic in trying this out!

1 Like

Impressive! I stuck with the tabletop content for a while, but I love developing games. It’s one of the few “jobs” where I can work 12 hours and it feels like only 2 have passed… and I want to keep going!

Did you ever finish your project? I bet it would be better with a ChatGPT-3.5-turbo backend. Looks slick, though!

I am going to use moderation endpoint and anything untoward will be given an OOC PENALTY (out of character penalty) and they’ll lose experience points in the game. Heh…

2 Likes

Finish? Hah! :smiling_face_with_tear:
Thanks though. It was a lot of fun to build.

I can tell. I admire the consistency and dedication.
Among few others, your project has been one that I love to see the updates for.

There’s nothing that can replace passion and love. Especially in food!

Staying on track. Yes, the moment you decide to open for beta testers.
The G stands for Guinea Pig

1 Like

Passion goes a long way, for sure.

Playing with combat tonight. Game combat is too quick and dynamic to query an LLM during the battle, but I’m thinking it might be great for summarizing the battle information after the fact to tag onto the player’s journal?

Very first test shows promise… with just a copy/paste prompt…

The chilling air grew colder as the player ventured deeper into the dungeon. A sense of unease settled in, accompanied by the knowledge that powerful monsters were lurking ahead. The player couldn’t shake the feeling that these creatures were following a pattern, designed to test their gaming prowess.

Suddenly, three spectral knights emerged from the shadows. The player took a defensive stance, preparing for the oncoming battle. The first attack was aimed at Spectral Knight3, but the player missed, leaving them vulnerable to the knights’ counterattacks.

Spectral Knight1 struck the player, dealing 2 damage and leaving the player with 8 health remaining. The second knight swung its sword, but the player narrowly dodged the attack. However, Spectral Knight3 managed to land a hit, dealing another 2 damage and reducing the player’s health to 6.

Frustrated, the player attempted a different tactic, trying to tickle Spectral Knight3. Unfortunately, the attack was ineffective, leaving the knight’s health unscathed. Spectral Knight1 took advantage of the player’s distraction, striking again and dealing another 2 damage. The player’s health was now down to a meager 4.

Spectral Knight2 lunged for the player, but their attack missed

How does your battle stage happen? Turn-based similar to uhmm… Shining Force?

In my current fantasy filled mind I am just envisioning epic Dall-E scenes. Hmmm…

I would love to see some dynamic ambiance. Maybe have GPT compile some musical scores and noises alongside the map. As in, musical scores & noises that you have defined for GPT to understand. For example, GPT could set the song, and the pace of it depending on the intensity of the zone. Could even add some very subtle “clues” to the enemies that could be found.

Groaning for zombies, armor shuffling for knights. Rabbit chirps for the Rabbit of Doom.

Can’t believe that didn’t work!

LOL I have different flavor phrases for damage so light damage is “tickle” and I think that confused GPT-4 lol…

I’ve got a bard tab with human music loops and some sound effects that can be turned off. I do like the idea of dynamic music, though. That’s huge in video games now - music changing automatically as character does something different…

1 Like

I ran this through Dall-E (after doing some TLC)

I bet with some cool animations and sound effects, this could be made to be VERY epic

1 Like

Oh my.

Yes. Yes! Dynamic music is incredible!
One of my favorite games (Outer Wilds) pioneered it PERFECTLY in their expansion: Echoes of the Eye.

Funnily enough, the top comment for the video regards the sound design as well (Skip to 1:05 to witness the dramatic effect). The music actually waits for certain slides to continue

Very cool! I’m aging myself here, but the first game I remember having it was Total Annihilation back in the 90s. Since then, it’s become kind of a staple.

I found a musician I like that has some great loops, but to use industry tools to get dynamic soundtrack is crazy expensive still. I bet an AI will be able to handle it soon, though.

Now, please stop adding to my feature-creep-itis lol

2 Likes

Nice. We’re not allowed to use the DALLE2 exp via API yet, as far as I know, but it does well too…Same prompt…


1 Like

Oh wow… If you didn’t tell me this was Dall-E (or have the signature colors at the corner) I wouldn’t have believed you.

Time is moving so fast. What a ride.

Right? Just a few years ago we were at blurry 256x256 blurry images heh…

I bet I could get it better with a more solid prompt. I think I might have an “add image” button so it doesn’t generate them automatically (they cost $0.016 at the lowest, I believe…) but players could “add image” to rooms or mobs and get more if they want for 2 or 3 credits… pay for me cost and a bit for server/API costs.

Cleaned up the prompt here…


…and one of my “Styles”…


2 Likes

Wow.
Just wow.

So here’s another idea for a feature…
(Just kidding, I think you already have this all on lock)

Now, excuse me.

I have money sitting around, wasting, when I could be generating more Dall-E images

1 Like

Starting to hone-in on better room descriptions… I’m still not sure about length, but this is probably too long if there’s a lot of rooms. I’m also sending a one-shot example to the API to help make sure it’s coherent coming out… getting closer, tho!

ROOM 3 (Huge Normal Bedroom)
As you enter this enormous bedroom, the first thing you notice are the scratch marks on the walls. They trail long and deep, as if something with sharp claws had been frantically trying to escape. Strange noises echo off the walls, making it hard to tell where they are coming from. A monster, perhaps? You can’t be sure, but the constant scratching sound is unnerving. Despite the eerie atmosphere, you can’t help but notice the small obstacles scattered throughout the room. A few overturned dressers here, a toppled bookshelf there - it’s as if someone had been searching for something. Or maybe something had been searching for them. You shiver as the noises grow louder, the scratching turning into a frenzied pounding. This room gives you the feeling that there

1 Like

Maybe a setting for description lengths?

I really liked the description though. I visualized it really well.
Actually, I had to throw on another favorite game of mine’s soundtrack afterwards to satisfy the visualization.

1 Like

Still early days, but chat hooked up and working for an NPC…

Sorry, I completely misread this post.

In this instance it’s not that the game changes the musical score based on the situation. It actually manages the layers. It can occur at any moment and still manage to harmonize with the current soundtrack.

In a vertical layering music system, the music is not captured in a single audio recording. Instead, several audio recordings play in sync with one other. Each layer of musical sound features unique content. Each of the layers represents a certain percentage of the entire musical composition. Played all together, we hear the full mix embodying the entire musical composition. Played separately, we hear submixes that are still satisfying and entertaining for their own sake. The music system can play all the layers either together or separately, or can combine the layers into different sets that represent a portion of the whole mix.

They employ other techniques as well I believe, but this is the one I wanted to demonstrate as it’s such a perfect example of it, not my video, but the game itself. Pioneered was definitely still the wrong word to use.

1 Like