Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: D&D DM Bot Project  (Read 1448 times)

asialsky

  • Bay Watcher
    • View Profile
D&D DM Bot Project
« on: February 24, 2018, 02:46:18 am »

I had multiple scripts I had come up with over time, all of which grew from Command Prompt. Included in this random pile of tools are a random weapon generator, a save/load-to-file test, and a friendly keyword-based AI utility chatbot named Temora. All of these are hand-written batch scripts I wrote because I like to challenge myself. (Self-modifying code is fun to make not crash/corrupt itself!)

http://imgur.com/75ScE06
(Early version of Temora)

https://www.dropbox.com/s/78w941henwhmyfh/Weapon_Generator_Demo.zip?dl=0
(Original goofy weapon generator, before optimizing and worth generation.)

Anyways, I taught Temora a keyword for my weapon gen script, and then it hit me. I've made several simplistic .bat games before, but I hadn't even considered an RPG of large scale. (Previous games include an old escape the room project, "Space Yahtzee," and one I forgot/deleted.) Starting tomorrow, I am going to compile all of my tools, and add a basic story framework. Using variables as simple state flags, it shouldn't be hard to detect player choices. I should have a working "Chapter 1" in a week or two if all goes well.

It's a little ambitious, but I like forcing myself to stick to cmd. I've written a save editor for Exanima in batch, if that tells you anything.

Things I have already:
-Keyword driven engine (I [stab] the [bat].)([ ] is a word it knows)
-Loot table
-Save/Load
-Basic plot
-WAV media player ambient music shuffler
-RNG event tables

Planned:
-Disposition system
-Shopping
-(Possibly)Random level layouts

Is there anything in particular any of you guys would want to see in a project like this? If I can make this work the way I want, I plan to release it as a free PoC game.
« Last Edit: February 24, 2018, 01:04:48 pm by asialsky »
Logged
Off defending the fortress from dragons with a tank, I'm sure.
"All I want is for you to be happy. You won't be happy until I'm happy, so hurry up and shoot the zombies!"

Cathar

  • Bay Watcher
  • Competent Engraver
    • View Profile
    • My shit
Re: D&D DM Bot Project
« Reply #1 on: February 24, 2018, 03:06:22 am »

You have no idea how much I'd like to see this happening. I advise you to take a look at old GMless boardgames/rpgs like Advanced Heroquest to give you some ideas. The ressources are mostly available online.

Stuff I'd like to see in such a project :

• 4 players online
• Permadeath
• Generated bosses and quest objectives
• Towns screens and options between quests

IndigoFenix

  • Bay Watcher
  • All things die, but nothing dies forever.
    • View Profile
    • Boundworlds: A Browser-Based Multiverse Creation and Exploration Game
Re: D&D DM Bot Project
« Reply #2 on: February 24, 2018, 11:38:20 am »

This is cool.  I tried to make a responsive plot generator once but overextended myself and eventually quit (for now).  How does yours work?

asialsky

  • Bay Watcher
    • View Profile
Re: D&D DM Bot Project
« Reply #3 on: February 24, 2018, 11:51:20 am »

You have no idea how much I'd like to see this happening. I advise you to take a look at old GMless boardgames/rpgs like Advanced Heroquest to give you some ideas. The ressources are mostly available online.

Stuff I'd like to see in such a project :

• 4 players online
• Permadeath
• Generated bosses and quest objectives
• Towns screens and options between quests
Online, eh? Can't say I've ever tried making a client/server setup. I'll try, at least.
This is cool.  I tried to make a responsive plot generator once but overextended myself and eventually quit (for now).  How does yours work?
A combination of RNG dice rolls, and clever IF ELSE statements. If you have few main story paths, you can run basic checks to see what NPCs are alive, who likes you enough to speak, etc. I haven't worked out truely dynamic story generation, but that's something I know can be done fairly easily. (I cheat a bit at times. "IF NPC1alive=1 echo Tim: This is the temple of DOOM")

EDIT: For name generation, should I use the naming convention for dwarves, or furries?
Dwarf -> *name* *noun**noun*
Furry -> *name* *adjective**bodypart*

DOUBLE EDIT: OP updated with link to my original weapon generator script. It's a toy all of its own.
« Last Edit: February 24, 2018, 01:05:54 pm by asialsky »
Logged
Off defending the fortress from dragons with a tank, I'm sure.
"All I want is for you to be happy. You won't be happy until I'm happy, so hurry up and shoot the zombies!"

Cathar

  • Bay Watcher
  • Competent Engraver
    • View Profile
    • My shit
Re: D&D DM Bot Project
« Reply #4 on: February 24, 2018, 03:33:01 pm »

Online, eh? Can't say I've ever tried making a client/server setup. I'll try, at least.

Don't take this as a do or die request tho - it's just the kind of game I'd like to play with friends. I've been looking for a way to automate the GM myself for quite a long time. I'll be following this project

asialsky

  • Bay Watcher
    • View Profile
Re: D&D DM Bot Project
« Reply #5 on: February 24, 2018, 04:50:06 pm »

Online, eh? Can't say I've ever tried making a client/server setup. I'll try, at least.

Don't take this as a do or die request tho - it's just the kind of game I'd like to play with friends. I've been looking for a way to automate the GM myself for quite a long time. I'll be following this project

It'd be a challenge, for sure. The first iteration is going to be a demo to showcase a singleplayer story. After that, I can gut the code as needed for the main deal. Day 1, and I've got the title screen/player character generation/stat rolling about done. The plan I have for now is a prewritten GM that does everything as if you were playing a typical tabletop RPG. After that, I can cut it back to allow configurable story interactions for custom campaigns.
« Last Edit: February 24, 2018, 04:52:13 pm by asialsky »
Logged
Off defending the fortress from dragons with a tank, I'm sure.
"All I want is for you to be happy. You won't be happy until I'm happy, so hurry up and shoot the zombies!"

FallacyofUrist

  • Bay Watcher
  • Blatant furry. Also a hypnotist.
    • View Profile
Re: D&D DM Bot Project
« Reply #6 on: February 26, 2018, 10:57:26 am »

EDIT: For name generation, should I use the naming convention for dwarves, or furries?
Dwarf -> *name* *noun**noun*
Furry -> *name* *adjective**bodypart*

You could use different systems of name generation for different species.
Logged
Generic Arms Race.

Would you like to play a game of Mafia? The subforum is always open to new players.

asialsky

  • Bay Watcher
    • View Profile
Re: D&D DM Bot Project
« Reply #7 on: February 26, 2018, 03:30:53 pm »

EDIT: For name generation, should I use the naming convention for dwarves, or furries?
Dwarf -> *name* *noun**noun*
Furry -> *name* *adjective**bodypart*

You could use different systems of name generation for different species.
...point taken. Anyways, my beard ran out of alcohol, so coding was replaced with composing ambient music. (I code way more quickly when drunk!) I now have a nice little flute forest theme. Either tonight or tomorrow, depending on when I figure out how I want to handle the interaction system/UI, I should have the first NPC encounter working. Also in the works is random additional NPCs. Let's say I want to "[Look] around for [someone] to [join me] on my quest." They player rolls, and if high enough, the system spits out a fresh NPC.

Just to be clear, those [ ] are NOT typed by the player. I just typed those to show the keywords the AI will probably factor into deciding what you wanted to do.
« Last Edit: February 26, 2018, 03:33:01 pm by asialsky »
Logged
Off defending the fortress from dragons with a tank, I'm sure.
"All I want is for you to be happy. You won't be happy until I'm happy, so hurry up and shoot the zombies!"

Fniff

  • Bay Watcher
  • if you must die, die spectacularly
    • View Profile
Re: D&D DM Bot Project
« Reply #8 on: February 27, 2018, 11:00:11 pm »

Intriguing.
I'd advise checking out the Conjectural Role-playing GM Emulator. It might make a good source of inspiration, considering it's the best solo RPG engine out there and it's free.

bloop_bleep

  • Bay Watcher
    • View Profile
Re: D&D DM Bot Project
« Reply #9 on: February 27, 2018, 11:30:00 pm »

PTW.
Logged
Quote from: KittyTac
The closest thing Bay12 has to a flamewar is an argument over philosophy that slowly transitioned to an argument about quantum mechanics.
Quote from: thefriendlyhacker
The trick is to only make predictions semi-seriously.  That way, I don't have a 98% failure rate. I have a 98% sarcasm rate.