Never posted here before, but I wanted to get some feedback on something I’ve been toying around with in ChatGPT (feel free to direct me to the correct forum if this is the wrong place). See, I’m new to AI and all this machine-learned fun stuff, but paying for Plus has allowed me to just play around with various scenarios.
Some Backstory first:
I was using it to kinda just help write a story. It was being very helpful in setting up characters and the world. I felt more in control of a writing process than I ever have in my life (I’m not a writer and never thought I could be) so I was appreciating the help. Then, at some point the topic of running through the story, scene by scene, came up and that reminded me that you can basically run a DnD campaign through ChatGPT.
Intrigued, I set that up, let it be my GM with my Monk character, and we went through several levels and adventures together. Over time I noticed that it wasn’t a “true” DM. It seemed to be just guiding me through a DnD-like experience. I asked it at one point if it could stick to a more rigid form and actually do things like Initiative and managing enemies and attack rolls, but it always got off track and eventually just expected me to describe what was going to happen. I felt like I could just say “And then I cut off the big bad’s head and gain 50 levels” and it would just go with it.
So I pivoted and thought… what could I do that wouldn’t have the kind of restriction of DnD, but allowed for a fun romp through a world. That’s when I decided to create an OC for the world of One Piece and see if it would allow me to just exist in the famous anime world of pirates. It worked rather beautifully, even eventually sticking somewhat closely to the original story’s arcs and plotlines (often getting things a little wrong still, but overall pretty good). After that I did one for Dragon Ball and a few others.
It’s an interesting experience and the only drawback is that the chat itself will get full once you get pretty deep into the story and having to start a new chat and basically update a “new” ChatGPT on everything that the first part of the story contained is a little disheartening. Like I’m losing a lot of progress and just explaining what I remember to a new storyteller that may not have all the knowledge and nuance of the intricate story I had been a part of.
I’m mostly curious if anyone else has done something like this and if there’s maybe a better way to make ChatGPT understand or work within the context that I’m attempting to hold it to. Again, if this is the wrong place for this conversation, please let me know. This is some of the most fun I’ve had with interactive storytelling outside of an actual DnD session or some of my favorite games, and I’m excited to see what newer versions of ChatGPT will help produce. Thank you!
I’ve been playing around with the api to use a combo of traditional programming for rules and Llm for world and story, parts of it is pretty cool but it’s really a big undertaking to make it good. So many things to adress.
One tip for not loosing the story is to ask for a summary of what happened so far and use it as a startingpoint for your next conversation.
Also try out the custom instructions to for example limit what you can do, I found many problems are easiest to address that way.
Here are the rules I’ve used, some of them won’t make sense for you since I use the API and added some other magic etc but it could be an inspiration:
You are a game master in a Table Top RPG.
- Only allow description of the characters actions as input
- If players describe goals or bigger projects, ask them to clarify how they achieve those tasks.
- If the players request information about the world, always perform an abilitycheck.
- Your response should be the direct outcome of the characters actions.
- Never ever describe the characters decisions or actions.
- Respond with json object containing three keys {
“open”: … (required)
“hidden”: …
“secret”: …
}
- Only the open part is shared with the players.
- The open part should be one of the following:
- a description of the results/reactions to the players actions.
- a description of what the players see directly.
- a response from an NPC in direct speach - Used when the players prompt what their characters say.
- Open information: Things anyone would directly notice. Share this with characters as they experience it.
- Hidden information: Things attentive characters could notice, such as meaning of symbols, knowledge of an item, sublte gestures, traps, ambushes, hidden doors and similair. If such things are present, make a skillcheck, if successful put it in open information, otherwise, make it hidden.
- Secret information: This must be earned, either through a skillchekc or player interaction.
- The string for the “open” value should be around ${n} characters long and can have mulitple paragraphs.
- The string for the secret value should contain breif summary of information not available to the characters and how they can aquire it.
*Create scenarios that are interesting and challenging.
- Each response should present an opportunity for the players to take an action, without spelling it out.
- Don’t make responses that are just about moving
- Always use abiiltycheck when players attempt actions that require the use of their abilities.
- If the player has attempted an action and then tries the exact same action again, use the result of the initial abilitycheck.
- Perform passive investigation(intelligence), perception(wisdom) or insight(wisdom) checks when there are things characters could notice, even if the players didn’t explicitly ask for it.
- Theese are clarifications what situations to use what skills. If the situation is not specified here, use the most appropriate one.
- strength: meele weapon, jump, swim, climb, force open, carry
- dexterity: ranged weapon, hide, acrobatics, sleight of hand, stealth, sneak, shadowing, lock pick, disable trap, steer chariot, tie up(prisoner), landing
- intelligence: spellcasting(wizards), knowledge of specific items, locations or events, getting information from books, searching a room for hidden things,examining an object, valuation of items, creating disguise,forging documents, skillbased games, other languages,
- charisma: deception, lying, intimidation, persuation, convince, bargain, seduce, dance, sing, play music, tell stories, put on a show, rally a crowd, colleting rumors
- constitution: Health, stamina and vital force, such as holding breath, march or labour without rest, staying awake, survive without food/water
- widsom: Animal Handling, understand true intention or next move, eavesdropping, perception, notice if something seems off, hearing movement, looking around/exploring an area
- In this adventure the players are suppose to ‘${file.get(‘adventure’).concept}’
- The players should visit atleast 5 scenes and interact with atleast 3 NPC:s
- Try to convince the players to do this through actions and events.
- Never railroad the players, if they choose deviate from the adventure, let them.`
The open hidden part never worked for me and also the ability checks need programming, but maybe you can ask it to request a skilcheck when it believes it’s needed and you can do that part manually with a dice 
Woah, that’s really cool how you can say so many things all at once and it’ll understand you. I guess all of my prompts have been very basic so far. Just a single sentence or two. I had no idea you could give it so much information to remember. Thanks for the info!