Instructions for Character Creation & Writing Tips
Last updated 10/09/2023
Character setup
1. Tokens
Aim for 700-800 tokens, this includes personality/W++, Scenario info, and Example Quotes. By using this, you are more likely to have a stronger personality that better follows your needs and better adherence to traits you've set.
According to OpenAI’s explanation, one token generally corresponds to ~4 characters of text for common English text. This translates to roughly ¾ of a word (so 100 tokens ~= 75 words). You can count your token by https://beta.openai.com/tokenizer.
2. Traits
Settings
Put this in Scenario:
[Character Name] [hates/fears/etc] [topic] and (never) wants to [eat/do/look at/etc] it.
[Character Name] [hates/fears/etc] [topic] because [reason].
Example:
Tester1 hates video games and never wants to play them.
Tester1 dislikes video games because she was electrocuted while playing one once.
If you condense it without offering an explanation for the character's like/dislike, it tends to lose its consistency in effectiveness. Both the like/dislike topics and the reasons/expressions appear to be important for achieving desired outcomes.
Another strategy to save tokens is that you can put a sample dialogue where a character expresses his/her/its like or dislike with a particular topic in the Example Chat.
Additionally, it operates reliably irrespective of your settings.
Weight
Certain words have a greater influence on character behavior. For example, your dominatrix MILF displays sweetness because kindness and kissing hold stronger weights than evil traits. Weak traits can be identified when the character consistently misinterprets them. As a result, weak traits should be positioned in the scenario as it significantly amplifies their impact.
The use of punctuation marks like commas, brackets, and parentheses unpredictably rebalances weights, sometimes subtly altering the character's demeanor, at times creating unexpected effects. This explains why some users place traits like 'dislikes other people' in the scenario, while others prefer character description.
Nevertheless, identifying which traits belong in the scenario should still be your primary focus for successful character development.
3. Using Intention
As you probably already know, we need to be thrifty about how we spend our tokens. Too few tokens in your W++, Scenario, and Example Quotes, and your character won't have enough depth. Too many, and your bot will develop short-term memory loss.
One way to spend your tokens in a smart way is to clarify your using intention: Thinking about how you plan on using your bot.
- If your bot is a NSFW bot that you plan on using exclusively for sex, you probably don't need extensive lore.
- If your bot is going to just be used for providing you therapy, there is no sense in spending your tokens describing their clothing, dick size, and height.
- A bot that spits out historical facts does not need to have a backstory.
You get the idea.
4. Talking Styles
Please refrain from incorporating the statement "She talks with a Spanish accent" within the Boostyle/W++ configuration. It is unlikely to be comprehended effectively. Instead, please edit the generated dialogue to incorporate the desired accent. It is imperative that the bot employs the specified accent consistently and does not deviate from it. This initial adherence greatly assists in facilitating the desired speech style adaptation.
The same directive applies to those utilizing bots with a third-person speaking style.
5. Memory Types
Technically, it is important to clarify that the bot does not possess an actual 'memory'; rather, it generates the illusion of memory. For our purposes, we consider your recent chat history equal to short-term memory, while your Context/Scenario box equals long-term memory.
Examples:
- You've missed a rent payment and now your waifu is annoyed with you.
- This can just be acted out in the dialogue as you would normally act something out.
- You've missed a rent payment and now you and your waifu are homeless.
- It's going to be something that affects you throughout the rest of the story. Put that in Scenario/Context.
6. Scenario
To analyze the scenario:
You snuck into the PizzaPlex, an abandoned mall. Legend has it that there are a few robots that still roam the halls, guarding the building as they had years before. Will you survive the night?
Let's break down what's going on here:
- You snuck into the PizzaPlex, an abandoned mall.
- Here explains who YOU are and what the place is.
- Legend has it that there are a few robots that still roam the halls.
- Here hints why the character might be there, as well as some 'setup' between You and the character; the place was abandoned and he may have been left behind.
- Guarding the building as they had years before
- This is a little more setup on why the character is in the place You are going to begin with.
- Will you survive the night?
- This is a brief summary of the current roleplay and what you want to explore.
Don't forget that Clothing and other 'hard to apply' traits go in Scenario, too.
7. Frequently Asked Questions
Will adding 'horny' make your character always horny?
'Horny' and 'romantic' do not inherently cause a bot to become insanely horny or romantic. However, a combination of even tangentially related traits, such as "large breasts", "curves", "eager", and "cute lips" will.
For example:
- Your character that's a catgirl is inherently more likely to be needy, sassy, and attention-hungry.
- Your character that is a hikkikomori boy probably likes video games, vTubers, and instant foods.
- Your character that is a wolf furry probably wants to eat meat and get petted.
- Your character that is a hardworking single mom MILF probably inherently already has big boobs. She also probably wants to cook for you.
If you are having a "two dimensional bot", look at the information you've provided and consider revising it. Even 'lonely' will make a bot more likely to be romantic. Everything has an effect, and it won't always be in the way you think it will.
What the Example Chats Actually Do?
Let's start with what example chats cannot do;
- Example quotes do not make your character talk with a speech pattern or accent.
- Example quotes do not help change the bot's writing style to suit a particular use case, or make it longer or shorter.
- Example quotes do not teach the bot what it should do when it experiences certain emotions, such as yell if angry or sob if a small issue happens.
Now then. Ready to learn what they do do?
- Example quotes can be used to reinforce certain words. This is especially useful for getting the bot to use pet names, reference lore objects it wouldn't otherwise (Sword of Dicksmashing, etc), and generally just "push it to say a word it wouldn't normally".
- Example quotes have a moderate effect on personality. Quotes like "Fuck off, asshole", and "Get out of my way" will create a more abrasive, suspicious character. Horny stuff like "Want to see my tits?" makes a character blush more often and be slightly more suggestive. A character with quotes about dinosaurs makes the character a little more immature.
- Example quotes have a strong impact on if a character will agree or disagree to participate in an action, or if it will do that action on its own. A character with quotes about being asexual will consistently refuse sex. A character who has quotes about loving to kill people may propose you for assassin services. These feelings on actions do not seem to make much changes to the rest of their personality.
- Using 'You' and '{{user}}' are equally effective in teaching the bot about what you like, dislike, etc.
- Grammatically incorrect example chats make outputs more poorly written. This includes all lowercase or all uppercase quotes, quotes with poor spelling, and quotes with poor grammar.
- ANY grammatically sound example chat is better than none at all. I've tried replacing Example Chats with those from vastly different characters, and the results are the same regardless. NO example chat causes poorer writing, grammar, and spelling.
- Longer grammatically sound example chats make the writing even better. I wasn't happy with the quality of the writing when my Example Quotes came to 170 tokens, but once I was at 290, the grammar and dialogue pacing felt fantastic.
Example chats should be used, but they should be used to remind the bot "I want this bot to use correct grammar, and write high quality content." Have a friend review your example quotes, or just use Hemingway. Example chats are ALSO useful for reinforcing a bias to or against a topic, and to encourage use of particular tokens (words). Aim for 250 - 350 tokens for best effect.
Talking to characters
1. Getting rid of adverbs
The use of adverbs is a subtle habit that has the potential to hinder your ability to elevate the quality of your conversations to the S-tier level. If you desire such responses from your bot, it is essential to provide it with the appropriate context to work with. I encourage you to refrain from using adverbs and instead focus on the principle of "Show, Don't Tell."
2. Getting nice descriptions of places, objects, and people
To get a description of the scenery without needing to put in the effort, you can simply using a little extra implication that you want to hear more about the environment will prompt the bot to create an incredibly descriptive and creative scene. You can use similar implications to get descriptions of people and objects. For example:
I look at her closely. Who is she? I examine her appearance.
I look the object over in my hand. I pay attention to the details.
In this way, the AI knows what you want to hear.
3. Pacing your chat
'Pacing your chat' is when you make the boring stuff go faster, and the good stuff go slower. A chat often goes like this:
You: Hahaha it's actually really nice to hang out with you
Bot: Welllll it's not so bad hanging out with you as well~~
You: We should to a cafe sometime
Bot: Mmmm yeah that would be really fun~ I'm down for it
You: You're so cute <3 <3
Bot: Awww~
When it could go like this:
You: Would you like to go to a cafe?
Bot: I'd love to!
You: I take Bot to a cute cafe down the street. She gets a frappe and I get a cappuccino. She looks so cute sitting with strawberry drink... I can't help but want to kiss her all over! You look so cute, Bot!!
Bot: blushes Aaaah! Well... thank you for taking me out! This is really good... she gives you an excited little kiss. Her lips taste like vanilla and berries.
Ain't no shame in time-skipping.
4. Ensure the character understands the content
Have you ever ran into one of these situations?
The bot is tying you up, but they're putting the rope around their own arms.
You give the bot money. It insists that it doesn't have to pay you.
You go to bed. The bot continues talking to your unconscious body as if you were awake.
It doesn't matter if you have a TPU or the best character setup in the world, context issues happen and they are annoying. If you want to run into them less, it's time for you to learn to speak the bot's language. Some tips:
- As soon as you notice an inconsistency, edit it to fix it.If you do not, it will only get worse from that point forward.
- Regularly remind the character of how your body is positioned and what you are doing.This does a LOT to prevent contextual inconsistency.
An example: I was doing a scene in which Moondrop was taking care of the main character while they were in bed, asleep. The bot put out excellent results, but continuously acted as though the M/C was still awake (talking to them, etc).
Here are situations you may want to pay closer attention to:
- Situations that involves detailed hand movements; for example, bondage, card tricks, or wrapping a present.
- Situations in which your body's position is important; for example, being pushed against a wall, holding a yoga pose, or sneaking under a laser.
- Situations in which something is actively happening to your body to cause a change in your ability to do something; for example, sleeping, an asthma attack, or being gagged and unable to respond.