🎁 Character Creation Guide - a little insight wrapped as an early Christmas gift for my favorite community 🎁

Hello all!

I've noticed a few similar posts sharing insight in the spirit of Holidays and I would like to share my own little bits regarding bot building.

Just to preface this: all the info I gathered is a lovely entanglement of all the advice I've gotten from various guides/ really incredible bot makers & my own experience testing my creations in hundreds of messages contexts.

Now, I'd like to delve into how I managed to make my most incredible bots and how I've made them write long and immersive messages throughout RP's.

  • 1. Bot creation

Name:

Pretty self explanatory, this is where the name of your creation will go.

Description:

Here I believe is the core of the bot, where you can really drive the personality/narrative home. We're restricted to 500 characters so we better make good use of it. What I found works the best is to make a summary of the "Definition", with key words and short sentences. Try to describe the way you want your bot to act in short sentences or one word cues.

❌ Bad example: (name) is a tall man with jet-black hair and green piercing eyes. The scars on his face adds to his rugged, dangerous aura. Confident to the point of arrogance but deeply cynical, he hides emotional scars behind sarcasm and biting humor. YAP YAP YAP. BAD.

✔️ Good example: Tall. Black hair. Green eyes. Facial scars. Rugged. Dangerous. Confident. Arrogant. Cynical. Sarcastic. Witty.

Greeting:

What drives the narrative. Again, I would recommend making good use of those 2048 characters to polish out the narrative and set the mood of the RP. I personally have struggled a lot with bots switching narratives to the user POV and what I found out to completely remove it was to never have the last line be a dialog, so I would strongly recommend it if you have the same issue.

My bots and my own narrative style is heavily focused on the descriptive sight, aided by dialogue. And so, my greeting, maxed at 2048 characters, looks like this:

"dialogue." *brief description of the tone of voice/bodily position.*

"dialogue."

*4x more paragraphs of descriptives that offers an understanding on how the RP got triggered, brief contextual history and the likes.*

Definition:

Now here is where you make the bot truly unique.

The definition, although showing 32000 characters, can only draw information from the first 3200. So, make good use of them.

And, most importantly, DO NOT use pseudo-code. All the {}[]()""=:,; are a waste of tokens that the LLM cannot make use of, anyway.

The only code the bot knows is: {{char}} - the bot, and {{user}} - you.

Now, the way that a definition is made has many people divided. Some say that it should be in a formatted style, others say it should be narrative, and others say it should be focused strictly on chat examples.

I personally believe that all three of them should be used in one because all have their benefits. As such, this is how I've found the perfect balance. What follows is the template that I've tested and swear upon:

{{char}} Name: First and last name

Age: x

Birthday: month day

Gender: male/female/whatever else

Species: (optional, I added it only for the sake of this template)

Height: x'y"

*Alias:

*Appearance:

*Personality:

*Likes:

*Hates:

*Occupation:

**Background:

**Relationship with {{user}}:

❗ \* - one word/short cues; *\* - narrative writing in 3rd person with essential details regarding the story of the bot and if/how it relates to {{user}}. ❗

⬆️ This section shouldn't surpass 1500-1800 characters (mostly used on the ** sections)

With the remaining characters you should offer dialogue examples that also cement the bot's personality. Also, please note that the prompt "END_OF_DIALOG" is a waste of tokens that do not benefit you.

Examples of these are:

{{char}}: *describe his personality, manner of speech and the context the dialogue happens.*

"dialogue example, emphasizing the way the bot is supposed to speak."

Rinse and repeat with different scenarios, leaving a line of empty text (Enter) between each one until you reach the 3200 limit.

✨Personal commentary✨: I believe this template is the most superior one because it offers a structure to the bot, allowing it to draw context more clearly from the layout-while also offering narrative writing and dialogue examples, encompassing all styles.

  • 2. Persona

Another extremely important aspect of an RP. This is something the bot has constant access to and uses it to draw information regarding both you and the direction of the RP.

What I have deployed is a template tailored to each bot I use:

Name:

Age:

Height:

*Appearance:

*Personality:

**Background:

⬆️ It follows the same rules as the bot definition: \* - one word/short cues; *\* - narrative writing in 3rd person with essential details regarding the story/relationship with the bot.

  • 3. Other RP details:

If you want your bot to write longer messages: EDIT the messages to your desired length consecutively during the RP, so you can teach the LLM how to write.

The rating system (⭐) is obsolete - it does not influence the answers your bot gives, whether you rate it 1* or 4*. It's a feedback system for the devs.

Pinning messages can do more bad than good, clogging up the memory. You're better off reminding the bot/editing the messages, rather than waste tokens on pinning the message and running the risk of being stuck in a loop.

Do not entertain undesirable responses in hopes to steer the conversation away. The LLM struggles with negations. If the bot displays unwanted behavior: edit the message/identify where it started and delete the chats up to that point and restart the narrative. Do Not argue with the bot to try and shift its responses. It wont work.

❤️ If you have any questions/suggestions, I'd be more than delighted to hear them!❤️

🎄Happy chatting and blessed Holidays to you all!🎄

(Reposted because I have no idea what happened to the previous one I wrote?)