With the increase of accessibility of AI for both text and art, the implications on the RPG world have been greatly apparent. I have an ongoing 5e game that I run on a Foundry server, but this can also apply to the other variety of TTRPG games out there as well.

I’ve used Stable Diffusion to create character and scene art and it’s allowed me to output high quality visuals for my players. When I’m having a hard time getting out the words I want to say, I’ve pulled up ChatGPT to help me convey the ideas. I’ve also used ChatGPT to fill out random encounter tables, come up with names, and fill out towns for flavoring. There’s still a lot of work involved and I only keep about 5% of anything that’s generated, but I feel like this is a tool that has helped me become a better DM rather than outright replace me entirely.

  • th3raid0r@tucson.social
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    1 year ago

    I use it extensively! Both ChatGPT/GPT4 and StableDiffusion.

    First off, I maintain likely the most flexible fork of the FoundryVTT-AI-Description-Generator. The original was only really compatible with a select few settings, particularly D&D and the author didn’t want to make things more robust for other systems. So I basically exposed the underlying templates and data-structures to the user via the settings UI in an effort to port it over to Stars Without Number. It works pretty well now, and should allow people to get most things working with only the settings page. As soon as I get GPT-4 API access I’ll upgrade it to that and use it more. Here’s the link for anyone interested: https://github.com/th3raid0r/FoundryVTT-AI-Description-Generator

    In my development I learned a lot about how ChatGPT works and the most optimal way to structure my questions. Here’s my main, most important takeaways from the capabilities:

    1. Context is most powerful from most recent word to oldest - that is the AI prefers instructions in the latter part of your prompt more than your former. Especially when using HUGE prompts.
    2. Everything is one-shot. Each subsequent request contains the request and response before it. But in API-land we also have “System” prompts which are invisible (and very useful) - but still add to length.
    3. ChatGPT and GPT4 have very different capabilities in how much context they can hold before it “falls off” so to speak. GPT4 can go quite long before needing reminders.
    4. ChatGPT’s training includes MANY SRD documents already as well as different reddit discussion threads on rules - that being said - it’s not consistent enough to do rules lawyering without plugins.
    5. ChatGPT’s training also includes a lot of reddit narrative threads and questions about famous books. And sometimes even the books themselves can be quoted verbatim (usually stuff that’s in the public domain).
    6. ChatGPT can’t math, or keep count, or speak in turn very well.

    First we tell the bot your system - not necessarily for the rules, but the included setting and details (i.e. D&D is high fantasy and has certain monsters, SWN is a spacefaring sci-fi RPG with entirely different classes, etc.). For my case, I use Stars Without Number, and I quickly came to believe that the Free Rulebook was ingested in ChatGPTs dataset. It wasn’t perfect, but good enough to work with for my purposes.

    I am running a table top roleplaying game. The system is Dungeons and Dragons 5th Edition.

    Then we need to communicate any setting expansions or modification. Definitely make use of names and events to further strengthen the association to the desired setting.

    The universe (or setting) is Dragonlance. Particularly the era immediately after the defeat of the Dragon armies of Ansalon.

    Once that’s out, introduce your party.

    The party consists of 5 mysterious heros:

    1. A Human Paladin by the name of Kaladrian - A devout and zealous servant of…

    2. A Kender Rogue by the name of Parup - A shifty little rogue who’s brilliance is diminished by his own…

    3. A Nother Character by the name of John Doe…

    … and so on …

    Now we’re about half way to actually asking the AI what we want of it, Whoo!

    Then get to their present setting. The specific place or town they’re in, and as much set dressing as you can muster.

    The party is currently located in the great Metropolis of Palanthas - it is a vast, sprawling city with… The people of Palanthas are… The main people of power are… The main problems the city is dealing with are…

    Next we go into a brief last game summary or “current status”.

    In our last adventure, the party successfully did X, which lead to Y and Z occurring… They now have these particular treasures… A party member has died in combat… They successfully did X for Y about the Z…

    Next we go into the party’s present goals and predicaments.

    The party aims to… Unfortunately that’s been complicated because… These party members have differing but parallel goals… These party members have different but conflicting goals. The party’s goals conflict with…

    Now we finally ask ChatGPT what we want:

    Please help me with the following task:

    Create a detailed, fun description of the party entering a crowded local tavern in the bad part of Palanthas. Make sure to communicate to the players that this tavern is NOT the place to start a brawl. Also create a quick roll-table for 10 hooks or leads the party might find here.

    This formatting should be optimal for most things for a few reasons.

    • The instructions are on the bottom, and are thus the most important context.
    • The information is mostly structured from most relevant to least when going backwards.
    • There is plenty of “seed” information about the system and the setting. This should “prime” the AI to give you more relevant output for that setting for a given situation.

    I’ve used this style of prompt with great success. On ChatGPT the AI seems to keep most context for about 5-8 responses or so before worsening in quality. At that point just try to update the more recent summary section before starting a new chat and going from there. On GPT-4 it seems to last pretty long, sometimes surprising me with an accurate character description 20 messages in with it, only having mentioned the character’s appearance in the first message.

    I hope that this approach to ChatGPT prompts helps someone else! I know it certainly helps me!

    I’ll go into my use of Stable Diffusion and combining it with player art in another post…

    • GeneralRetreat@beehaw.org
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      Something else that can help with this too:

      If you’re using Bing, it can read the web page you’ve got open and use that to inform responses as context.

      It can’t read anything that’s gated behind an account like a Google document, but it can read a PDF if you open it in the browser.

      Due to that, I created a single document containing setting info, plot hooks, NPC details, session recaps and party details etc.

      When prompting Bing I’d ask it to refer to the campaign document and that cut out a lot of the parameters I’d otherwise have needed to repeat at the beginning of each chat otherwise.

      It also means it’s got access to a much wider pool of material to iterate on. For example, if I ask it to generate more plot hooks for a particular district in my city-based game, it’d cross reference NPCs and plots from elsewhere in the city, rather than providing a tailored (but generic) output.

  • jay2@beehaw.org
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    No thanks. To me, the entire point of tabletop gaming is to use your own creativity. Both DM’s and players alike.