Full transcript
0:00Following up on one of my previous
0:01videos, this is my most advanced
0:04character development AI automation tool
0:08that I put together. This is by far one
0:10of the most advanced tools and prompting
0:13methods that I have created so far. It
0:14gets really in-depth on character
0:17development so that you can have those
0:19characters all fleshed out and ready to
0:20go before you start writing your book so
0:23that whether you're using AI or not, you
0:26have a really solid foundation on, you
0:29know, how to differentiate your
0:30characters and, you know, what makes
0:32them quirky, what makes them different
0:35from each other so that especially if
0:36you are using AI, you don't have
0:39characters that all sound the same.
0:41So, in this video I'm going to walk you
0:42through that automation which you can
0:44also get if by joining the Story Hacker
0:46Gold Membership down below. And yeah,
0:48let's get into it. All right, so I am
0:50here in N8N and this is the automation
0:52that I've built that creates your
0:55characters. Now, in the past I had a
0:58another automation that would kind of go
1:00through your characters and your world
1:02building and your outline all in one,
1:04but I found that that was kind of a I
1:07mean it worked, but it required a lot of
1:09a lot of work to be put into the
1:12documents after the fact.
1:14And since then a lot of my prompting
1:16methods have upgraded and things and so
1:18I I thought it was necessary to create
1:20just this one automation for just
1:23characters and then I'll have others
1:24that are just on world building, just on
1:26outlining so that even though they are a
1:28little bit more in-depth, uh if we do it
1:31this way, we're going to have like far
1:33better results at this level
1:36that requires a little bit less of my
1:39own human input after the fact because
1:42it already gets so close to something
1:44that I would like as long as you've
1:46given it correct input in the in the
1:48first place.
1:49So, let's walk through this really
1:51quickly to show you what it does. First,
1:53you submit a form with just any author
1:55notes
1:56that you need. If you hit execute
1:58workflow, it'll pull up this little
2:00thing and all you do is just
2:02input any author notes that you have, if
2:05any.
2:05This is just like I, you know, if you
2:07have like a specific character you want
2:09something
2:10for it to know about, you can put that
2:11in here. You do not need to do this step
2:13at all. I just like having it there just
2:15in case you want to throw in some
2:17additional notes or what have you.
2:20After that, it goes and gets all of the
2:23documents that it needs. So, this is
2:25this automation like the other ones that
2:28I'm building right now are predicated on
2:30having certain templates
2:31for tropes, for your plot, for your
2:35characters, and etc. And so for this
2:38particular automation, I pull in the
2:39automation the documents for tropes,
2:42themes, and characters. And by the way,
2:45if you want to get these yourself, you
2:47can do so in my Story Hacker Gold Group.
2:49I've got all of the templates that I'm
2:51building. So far, I've created 30 of
2:53them. So, here's the one for cozy
2:55mysteries for example. And I've got
2:58first of all this there's this book that
3:00get a little short guide that costs $5
3:03on Amazon,
3:04but you also get individual
3:07templates for each of the different
3:09things for tropes, plot, style,
3:11characters, world building, themes, and
3:13a book description
3:15for like the back of your book and all
3:17of that. And so, this is a key part of
3:20the automations that I'm building right
3:21now. They kind of rely on having
3:23templates like this.
3:25And you can always build your own. You
3:27can go to AI and be like, "Give me a
3:29list of tropes for cozy mysteries." And
3:31that will work to a certain extent, but
3:33these have been very, very carefully
3:35crafted. And so, that's kind of what I'm
3:38doing here. All right, so we pull in at
3:41least three of those templates. We don't
3:42need all of them for this particular
3:44one,
3:45just those three. And then we also pull
3:47in this one here is a document with your
3:49dossier. And this is a
3:53file that I recommend
3:55creating beforehand. This will be
3:57essentially a big list of all the things
3:59you need for your book. And it doesn't
4:01flesh them out or anything. It just
4:03gives you a quick list of like who are
4:04all the characters, who what are all the
4:06world building
4:08elements that we need. That all comes in
4:11the dossier and I have a whole
4:12automation that I did a video about.
4:14That's this automation right here that
4:16helps to create this dossier,
4:18but you can also create your own as well
4:20to work from there. All right, so once
4:23it has all of those documents, we also
4:25want to grab a blank document.
4:28Uh so, actually what you'll need to do
4:30is create a document, make it blank, and
4:34then you grab the ID of that document
4:36and you paste it in here, okay?
4:38And once you've done that,
4:41we then move into the actual automation,
4:43okay? So, first of all, we've got what I
4:46would just call a
4:47token optimization or context
4:50optimization prompt here.
4:53What this does is it uses a very cheap
4:55model, so it's inexpensive, and it goes
4:57through the the trope document here
5:00and condenses it. Now, why do I do this?
5:03It sounds kind of redundant, right?
5:05Well, first of all, this document here,
5:07the tropes document, is very long.
5:10And I don't necessarily want to be
5:11watering down my prompts later on by
5:14always bringing in that really long
5:15document, especially if it sort of
5:17overwhelms and overpowers the rest of
5:19the document. Does that make sense?
5:22So, because I want it to have the
5:24context of the tropes that it needs to
5:26have, but also
5:29maybe not have that be the center focus
5:32of this automation, I'm using a prompt
5:34here. If we can click into this, this
5:37gives it that trope doc and says, "Given
5:39the above list of tropes for this genre,
5:40condense this information to one
5:42sentence per trope in this manner. Trope
5:44name, one sentence explaining the trope.
5:47Next trope name, one sentence explaining
5:49the trope. Continue for each trope."
5:51That's all it is. So, and I'm using a
5:53very inexpensive model so it can quickly
5:55do this. And what this does is it gives
5:57me a quick bulleted list of all the
5:58tropes with a brief explanation of what
6:00they are.
6:01And then I can use that small
6:04list of tropes later in the automation.
6:08And what that does is it cuts down on
6:10the number of tokens that I'm using at
6:12each step in the automation.
6:14And and I do that because I don't think
6:16it needs to know the whole document, at
6:18least for this for these steps. Maybe in
6:20other steps, other automations, we
6:23would,
6:24but we [snorts] don't necessarily need
6:25it for this one. I just want it to have
6:26a general understanding of what all the
6:28tropes are without really worrying too
6:30much about it having like this enormous
6:3210,000-word document that it needs to
6:34parse through in every automation. So,
6:37this is just a good way to save a little
6:38bit of money,
6:39save a little bit of context, and just a
6:43good general practice there. All right,
6:45so I I do things like that to try and
6:48improve these these automations here and
6:50there where I can to try and bring down
6:52the cost cuz you don't always need to
6:54give it a ton of context.
6:57Only some of that context is really
6:59necessary, and having too much can
7:01dilute your prompt. So, this is just one
7:03of those techniques that I use to to
7:05combat that. All right, then this next
7:08two steps here
7:10is this one goes through the dossier
7:13that you created in the previous
7:15automation
7:16and finds the list of all the character
7:19names in that dossier. So, if we look
7:21quickly at the prompt here, it's a
7:23really quick prompt. You are parser
7:24given the above book outline text,
7:26return a JSON array named characters
7:28containing each character listed in the
7:30dossier above. Make sure all the
7:32characters are accounted for and don't
7:33add any new characters. Only output
7:35valid JSON. So, what this does is it
7:37creates a JSON list of all your
7:39characters, right? And then what this
7:42bit of code here, I vibe coded this. I
7:44am not a coder, so I could not really
7:45explain to you what's in this code node.
7:48I'll give you a brief glimpse of it
7:49here.
7:50What it does is it goes through the
7:54output from that previous step and
7:56essentially parses everything out into
7:59your list of character names so that in
8:01the next step,
8:03it can now loop for each one.
8:06So, now if we look at this loop,
8:10what this does
8:12is it starts with the first name on your
8:15list that it created
8:17and then runs through these prompts here
8:21for that specific character.
8:24And then when it has completed this
8:26loop, it loops back around and starts on
8:28the next character on your list and
8:30repeats the same process.
8:33So, this is just a a really fun way to
8:36go through all of your different
8:37characters
8:38and run these prompts on them, okay? So,
8:41essentially what happens, let's say you
8:43have 10 characters in your dossier.
8:45It'll do this loop 10 times and then
8:48when it's done, it'll go and do these
8:49steps right here and I'll get to these
8:51later.
8:52All right, but first of all, let's go
8:53through the three prompts that get
8:56used for every single character from
8:58your dossier. And by the way, let's take
9:00a look at the dossier. Here's an example
9:02of one that I'm working on.
9:04In the dossier, we have
9:08main main cast. So, we have these are
9:11the main characters, one, two, three,
9:12four, five, six of them. And then there
9:14are a bunch of minor characters that are
9:17brought up that are important, but we
9:19don't necessarily need to spend as much
9:20time working on them. So,
9:23this is this is the dossier part of it.
9:25So, this is just a brief description of
9:27each of the characters and the whole
9:29point of this automation we're going
9:30through now is to go through and flesh
9:33these out a lot further. And real quick,
9:35if you want the exact long-form prompts
9:37I use to write books with AI, hit the
9:39Story Hacker link below. The group's
9:41wait-listed right now, but when you
9:42join, I'll email you my full prompt pack
9:44for free. Pop in your email and I'll
9:46send it over. So, if we go back to this
9:48one where it's finding all your
9:50character names, this step here is
9:52essentially scanning through that
9:53dossier, finding that list of names, and
9:56then just listing those names out. All
9:58right? That's why I use a cheat model
10:00for this one because it really doesn't
10:01take a whole lot of compute to figure
10:03that out. All right? So, it'll start
10:06with the first one on the list, which in
10:07this case was this character Cormoric.
10:10All right? Protagonist, the reluctant
10:11guardian, a disgraced former government
10:13sanctioned assassin commander branded
10:15with grace.
10:16Uh he operates from the deep shadows of
10:18the spans to avoid detection. Okay?
10:21So, what happens is I it'll bring that
10:25character's name in here and then start
10:26these three prompts. Let's look at this
10:28first one. Now, I did a whole video
10:30going into this prompt
10:31because it's the long one. So, I won't
10:33go into as much depth here.
10:36Uh but essentially what we do is we pull
10:37in that condensed list of tropes, so not
10:40the whole giant document, but just the
10:42tropes
10:43the the bulleted list.
10:45Uh we do however bring in the whole
10:47document of the character template
10:49because that's important. Um
10:52so, I do bring in the whole document for
10:54that so it understands like what kind of
10:57characters are we looking for in this
10:58genre.
10:59I also bring in the full themes template
11:01because that one's not very big.
11:03Uh and then I have this whole thing
11:04called the slider rubric and this is
11:06what I go into in my other video on this
11:10um on this prompt. But basically I have
11:12sliders for different things. I have
11:14like 15 of them. We have stress to calm
11:17for example that starts at a -10, which
11:20means super stressed.
11:22And then I show the -5, the zero, the
11:25five, and the 10, which is deeply
11:27serene, super calm.
11:30Um and this is just a slider. And what
11:33this prompt does is it helps establish
11:35what is the baseline of the slider. So,
11:37let's say this person is kind of mildly
11:40stressed most of the time.
11:42Then we would have this at say a -2 or 3
11:46um to say he's mildly stressed most of
11:49the time. That would be his baseline.
11:51Um
11:52but as we know these things can you
11:54know, your level of stress or your level
11:56of calm can really shift depending on
11:59the situation that you're in.
12:01And so, we want these that's why I call
12:02these sliders.
12:03Uh we can have a baseline for them, but
12:05they can move depending on the tension
12:07in the scene.
12:08And that's just one of those things that
12:10I want to keep in mind uh for each of
12:13these characters is what is their
12:14baseline and then later on when we're
12:16writing the book we'll actually
12:19determine
12:20are they still at that baseline or have
12:21they moved up or down in some way? And
12:25that'll affect their behavior for that
12:26scene.
12:27All right? So, I have a bunch of these
12:28sliders and explanations on what they
12:31all do. Then I pull in the full contents
12:34of the dossier.
12:36You might wonder why pull in the full
12:37document or the full contents because
12:39you you just need the characters. Well,
12:40that's not exactly true because having
12:43info the small amount of info on the
12:45plot and the world building and
12:46everything in that dossier is also
12:48important for it to have the right
12:50context. And then I pull in all of those
12:52author notes that you may or may not
12:54have added at the beginning.
12:56And then we have these instructions.
12:58And basically what these instructions do
13:00is it says given the above brain dump
13:02information, genre tropes, and story
13:03dossier, I want you to create a fleshed
13:04out character sheet for this specific
13:06character. And then it pulls in the name
13:08of the character here from the previous
13:11steps where they were all parsed out.
13:13Firstly, determine if this character is
13:15a major or minor character in the story.
13:17You can reference the dossier to see if
13:19they are. If this character is a major
13:21character, I want you to generate the
13:23following.
13:24And then I have a whole bunch of stuff I
13:25want it to generate including a physical
13:27description, primary role in the story,
13:29uh Myers-Briggs profile, enneagram, and
13:32Clifton strengths, core motivation,
13:34uh their background,
13:35interesting quirk, their dialogue style,
13:38and then I have them determine the
13:39baseline numbers for all of their slider
13:41levels.
13:42And then information about their
13:44character arc. What's what's that going
13:46to look like in the story?
13:48Uh and then I say, if this character is
13:51a minor character, just output two to
13:52three sentences that give us a brief
13:53understanding of their background and
13:55core desire and their relationship to
13:56the plot.
13:57And then I have some formatting
13:59information about how I want it to
14:00format this and then wrap it up with
14:02only include the asked for details,
14:05character details. Do not add any
14:06preamble commentary or anything other
14:08than what I've asked for above. All
14:09right? Which is kind of a something I
14:12added to almost all of my prompts these
14:13days.
14:14Oh, I should also mention that in the
14:16system message for this I say, this is a
14:18complex task. You are not allowed to
14:19perform at a mediocre level. You are an
14:21expert developmental editor and
14:23storyteller. Having something like this
14:25that says complex task and you are not
14:26allowed to perform at a mediocre level
14:29is actually a decent way to get better
14:31performance out of these models,
14:32especially thinking models. So, that's
14:33just something we add in there. And then
14:36we move into a two-step process. After
14:38this has been generated, we run the
14:41results of this step through a logic
14:44check.
14:45And this one is fairly step
14:47straightforward. I pull in the character
14:50template again, the slider rubric that
14:52we had from before.
14:54Um the dossier, the author notes, as
14:57well as the
14:58uh ex-generated character profile to
15:00check. So, it looks at the character
15:02profile that was generated in the last
15:04step. And then it runs through this
15:06checklist of things that I want it to
15:08check for, specifically looking for any
15:10kind of logical missteps or plausibility
15:14issues like does
15:16it is there anything that's happening
15:18that's like super convenient for this
15:20character that's like serving the story
15:22more than feeling like a regular normal
15:25fleshed out well-rounded character?
15:28Stuff like that it's searching for. So,
15:30it looks through like
15:31is it consistent with the dossier?
15:34Uh cuz I I don't want it to kind of
15:36create something that isn't in line with
15:37the rest of the story, right? So, does
15:40every element align with the character's
15:42role in the dossier? No contradictions
15:44with plot position, relationships, or
15:45story events.
15:47Um same with the author notes if any.
15:50Um
15:51Does it fit with the character template
15:53that we had? Make sure we want to make
15:55sure that it is consistent with the
15:57genre. Same with the personality profile
15:59plausibility here. Do those work? And uh
16:02same with the slider levels here.
16:05Are those a good match for the
16:06character?
16:07Um and then we look at the background
16:09and motivational logic. So, we're
16:11looking at the character's background.
16:14Does this kind of make sense for their
16:15character?
16:16Uh the dialogue style, make sure it
16:18matches the personality profile, the
16:20sliders, and the role. The character
16:22arc, make sure the character arc is
16:23logical and consistent and serves the
16:24overall story.
16:26Uh correctly format formatted using
16:30based on the dossier's prominence. Major
16:32characters should have more information
16:33while minor characters should have just
16:35two to three sentences.
16:37And then just plausibility, no logical
16:38impossibilities. And then we have
16:40information about how to output the
16:42format of that.
16:43And what it does is it creates an
16:44improvement plan.
16:46And then in the next step
16:49we take that improvement plan and
16:51implement it. So, I give it the original
16:53character that was outputted. I give it
16:56the logic check
16:58/ improvement plan.
17:00And say using the text of the original
17:01character in the improvement plan, I
17:02want you to implement the suggestions in
17:04the improvement plan. Only implement the
17:05suggested changes and do not change
17:07anything else about the character sheet.
17:08Reproduce the entire character bio with
17:10the same formatting of the original with
17:12the suggested changes made.
17:14So, it basically goes through and makes
17:15those changes, but doesn't change
17:16anything else. Just makes the the
17:19hyper-targeted things.
17:21Uh and then it adds that to our blank
17:23document that we pulled in earlier. And
17:25then it repeats that for each of the
17:26different characters. Now,
17:29after it's done going through all the
17:30characters, I decided it'd be cool to
17:31have one more little addition that we
17:34add to this. So, after this it'll go and
17:37this limit node is just to tell it to
17:39only do this once.
17:41Otherwise, it'll do this like like if
17:43there were 20 characters, it'll do this
17:45on a loop 20 times. So, this limit just
17:47tells it to do these steps once.
17:51And then I have it get the full
17:52character sheet. So, it pulls in all of
17:54the information about all the characters
17:55that were generated during the loop
17:57process.
17:59And we run this prompt on it called
18:01relationship dynamics.
18:03And what this does, I'll read the prompt
18:05to you. It says given the above list of
18:07characters cuz we pull in the full
18:08character sheet and the dossier,
18:10I want you to create a full relationship
18:12map for all of the character ensemble.
18:14Critical rules, only use info from the
18:16sheet plus the dossier plus logical
18:18inferences.
18:20Uh do not invent new plot details.
18:23And uh base on explicit mentions like
18:26rival to X, roles like protagonist
18:29versus henchman,
18:30overlapping motivations, backgrounds,
18:32slider contrast, high dominance versus
18:34submission implies tension, etc., story
18:37roles.
18:38Cover all characters, majors and minors.
18:40Include sub relationships if relevant.
18:43And then types, friendship, romance,
18:45rivalry, uh family, mentor, mentee,
18:49ally, enemy, neutral, colleague, uh
18:52betrayal potential. Use complex for
18:55mixed.
18:56Strength, strong, deep bond, moderate,
19:00weak, one-sided.
19:01And the direction is this bi-directional
19:03as in mutual or is it A to B one-way uh
19:07such as admiration?
19:08Also incorporate dossier context.
19:12Genre tropes as needed. Output only
19:15valid JSON array of relationships. And
19:18then
19:19uh it shows exactly what this should
19:21look like in the JSON. Now, so that what
19:23this is doing is it's outputting JSON.
19:25So, this might look a little confusing
19:27to a human looking at it unless you
19:29understand JSON.
19:30You don't need to worry about it too
19:31much. This is just something we'll use
19:33later when we are crafting the outline
19:35and everything so that the AI
19:38understands all of the different
19:39relationships between these characters.
19:42Uh but just to just give you a sense of
19:43what this looks like, let's actually go
19:46through in fact we we could uh look at
19:48this whole thing, but let's
19:50quickly go down to the bottom here. You
19:52can see here is the JSON output and
19:55there's different characters. So we have
19:57character A is Rat King Felix. Character
19:59B is Core Moric. The type transactional.
20:02So that's the type of
20:03relationship they have. Their strength,
20:05the strength of the relationship is
20:07weak. So there's not much going on. The
20:09direction is by directional. Evidence,
20:11Felix is a paranoid info broker in the
20:14sewers who likely provides Core
20:15operational intelligence in exchange for
20:17safety or coin.
20:18All right. So just a brief note on the
20:21relationship between these two
20:22characters. Okay? And it might be
20:23stronger or more moderate or something
20:26like that depending on who we're talking
20:28about. Okay?
20:29Then,
20:31let's actually just run through exactly
20:33what this looks like. Here I'll format
20:36this a little bit better so you can
20:39see it. Let's
20:41just come here. I'll paste from
20:43markdown.
20:45All right. So we can see the main
20:46character here is Core Moric. Physical
20:48description, Core possesses a gaunt,
20:50predatory, lean list the result of years
20:51spent scavenging across Ildari in the
20:53Spans.
20:55So we have that whole physical
20:56description. His role in the story is
20:58the protagonist.
20:59The reluctant guardian or the vigilante
21:01anti-hero.
21:03His personality profiles are ISTP for
21:06Myers-Briggs.
21:07His enneagram is six with a wing of
21:10five.
21:11Let's see. Integration note, Core's
21:14natural ISTP independence has been
21:16warped by institutional portrayal into
21:18type six with a wing of five hyper
21:21vigilance. That's interesting it added
21:23that.
21:25That's something I didn't really ask for
21:26but a good note. And then we have
21:28Clifton strengths here.
21:30We know his Core motivation is to
21:32exonerate his conscience. While
21:34superficially driven to find Jace to
21:35prove the government conspiracy, his
21:37deepest desire is to validate that his
21:39refusal to butcher civilians years ago,
21:41the choice that destroyed his life, was
21:43the right one despite the cost. We have
21:46a bit on his background here. A little
21:48bit of a quirk here which I thought was
21:49really cool. Kind of kind of hard to
21:51explain if you don't understand the
21:53physics of the story but that was really
21:55interesting there.
21:57Dialogue style, laconic and terminally
21:59cynical. Core speaks in short clipped
22:01sentences stripped of adjectives
22:02treating conversation as a technical
22:04exchange of information rather than
22:06social bonding. He uses military
22:08shorthand mixed with the gutter slang of
22:09the Spans. Example, Jace is in that lab.
22:12You want to file paperwork, file it
22:14after.
22:16And then here are his slider levels. So
22:18those all of those sliders that I
22:19mentioned before, here is where we get
22:22where he is roughly.
22:24So we have like a negative five for
22:26stressed and calm. That means he's kind
22:28of stressed
22:29most of the time.
22:31But he is positive five for fear to
22:34courage. So he's he's not really a
22:36fearful person. He is more courageous.
22:39Highly suspicious here. This is a
22:42negative 10 for suspicion to trust.
22:45And
22:47deeply introverted as well.
22:49So yeah. So it has all of these things
22:52and these will change throughout the
22:53book but this is just kind of his
22:55baselines.
22:58And then we have this whole information
22:59about his character arc.
23:02Going from how they begin, how they
23:04might have changed by the end, what
23:06pushes them into joining the events of
23:07the plot, their midpoint moment. This is
23:10the moment of the story where this
23:11character starts to take a little bit
23:13more action. And then their climax
23:15moment
23:17which every character has all of these
23:19in a proper story arc even if the story
23:21isn't about them.
23:22The main plot of the story will usually
23:25mirror these character arc of the
23:28protagonist however. So that's just
23:30something to keep in mind there. And
23:32that's kind of what it looks like. And
23:33then we repeat it for each character and
23:35we have all this information about the
23:36character which is all really useful
23:38when we later on need to start writing
23:41with these characters. And that is
23:43essentially the full automation here.
23:46Now as I mentioned, if you want to get
23:47your hands on this automation, these I
23:49am giving away to the people inside of
23:51my membership. So you can check it out
23:53there.
23:54Along with all the other
23:56automations I've made including the the
23:57simple ones but
24:00also these more advanced ones that I'm
24:02working on currently. So that's
24:04interesting to you. Be sure to check
24:05that out in the link down below and I'll
24:07see you there.