What is a Character?
In Emochi, a Character
is an AI prompt written for the express purpose of roleplay - it's structured in a way that instructs the AI model to write as a character, and stay in-character.
When creating a Character
, there are 5 sections you must fill in: the Name
, Definition
, Short Introduction
, Enhancements
, Tags
, and Welcome Message
. You may also decide to fill in the section underneath, labelled Additional Information
.
This guide will teach you how to make use of all of them.
Creating Your First Character
To create a Character
prompt, first click the +
button in the bottom menu.
Then, select the Character
button from the popup.
Here, you will be creating your first character.
Reference vs. Cover Images
In the first box, you are able to choose if you’d like to upload reference images or a cover image.
If you have a general idea of what you’d like your character to look like, but the images you currently have don’t quite match what you’re looking for, you can choose to upload up to 20 of those images as references and have a new one generated for you.
Alternatively, you can choose to upload your own cover image, without the need to generate a new one.
Note: Any images uploaded will have to be cropped to fit the 1:1 ratio!
Short Prompts
This is where you can include information about your character to have their details generated! Additionally, if you decided not to include reference images or a cover image for your character, you can instead prompt an appearance here.
By default, Emochi takes a prompt that you’ve written and generates your entire character for you (including their cover image, if you choose not to upload one). However, after the character is generated, you are still given full control of the character and may edit any and all aspects if you wish to do so!
Style
Beneath the Short Prompts
box is the Style
selection. If you chose to have a cover image generated for your character, this is where you can choose the art style of that cover image.
Choosing a Character
Once you’ve filled out the relevant boxes (in this case, the Cover Image
and the Short Prompts
box), you can hit the Generate
button at the bottom to have your character generated.
If one of the characters catches your eye, you can then select it and hit Next
to continue. Otherwise, you can press the Back
button and return to the previous page. The information you had entered will be saved, so you can edit and re-generate as many times as you need!
Note: If you have a detailed summary of your character, the taglines may be similar or the same! However, details of the character will still be different, so even if they all look the same, you can still select one at a time to take a closer look!
If one of the characters catches your eye, you can select that character by tapping on it, and then selecting the Next
button at the bottom.
If you take a closer look at the character and find that it isn’t to your liking, you can go back by selecting the cross button at the top-right, which will take you back to the previous page with all of the other generated characters still intact!
Similarly, if you find that you don’t like any of the generated characters, you can select either the cross button at the top-right again or the Back
button at the bottom to return to the previous screen and try again. The information you previously entered will be saved, so you can go back and re-generate your character as many times as you like!
Writing Your Character
Your selected character may not have the details that you were looking for. That’s alright! On this page, you are given full-rein of your character’s information.
For the Name
, Definition
, and Short Introduction
, you can edit the information simply by tapping on each section.
Character Enhancements
A character’s ‘enhancements’ form the bulk of the character - their Personality
, Background
, and the Scenario
in which chats with the user will take place. Here, you can also choose a Voice
for your character.
Personality
Beginning with the Personality
, you can tap on the section to open up a menu similar to the following:
The AI may have already generated a personality type for your character, but regardless, you can edit to your heart’s content by selecting the pencil icon in the top-right corner of your selected Personality
.
Alternatively, you can start from scratch using the Custom Personality
button at the bottom of the screen.
Regardless of if you decided to start from scratch or edit an existing Personality
, you should be taken to a screen similar to this:
Here, you can edit the Name
of your character’s personality type, along with its Description
.
Writing a Character’s Personality
The character’s personality can be one of the most difficult parts of a character prompt to write. Some use pseudo-code, others simply describe their character in prose. As such, this guide will be covering the most widely-used or widely-known formats.
W++
Arguably one of the most popular formats on sites that centre around character prompts exclusively, W++ is a form of pseudo-code that was originally written for the Pygmalion 6B model. Nowadays, however, Pygmalion 6B is generally known to be ‘outdated’, and the limitations that were once on that model have become less restrictive in most widely-used models today. Simply-put, most models are now built differently.
To begin with, W++ was written for Pygmalion 6B because, unlike most recent models, Pygmalion 6B struggled to ‘comprehend’ character information written in simple prose. Through experimentation, users found that categorising said information was much more effective, and was also simply easier to write than full paragraphs of prose.
As such, W++ was created and spread throughout the community.
Here’s a brief example of the W++ formatting:
As you can see, this format describes our character, Roderick, who is an anxious university student who aspires to become a writer.
Note the use of brackets and quotation marks in particular: each category encompasses relevant traits, and each trait is encompassed by quotation marks and separated by plus signs. The Personality
and Mind
categories also contain the exact same information, reinforcing the character’s baseline personality traits for the AI.
While the categorisation can be helpful for the ease of writing the prompt, the overuse of punctuation and duplication of information can also be a waste of tokens. There are better, more effective ways to convey this information, which is why W++ is usually not recommended for writing characters anymore.
Square Bracket Format
While similar to W++ (and also developed for Pygmalion), Square Bracket Format (SBF) is a much more token-efficient method of categorising character traits.
If we take our character information from the W++ format, we can convert it into SBF like so:
As you can see, the extra brackets at the beginning and the end of the information block have been removed, as well as the quotation marks otherwise encompassing each trait.
In comparison to W++’s 204 tokens, SBF comes out at 153 tokens, despite containing, quite literally, the exact same information. Therefore, if categorising a character’s traits or saving on a character’s tokens is a must, SBF is one that is best suited for your prompt.
PList
Similar to W++ and SBF, PList is a format that categorises a character’s traits. This time, however, it aims to mimic the structure of Python lists, hence the name.
Similar to SBF, categories are encompassed by square brackets. Unlike SBF, however, each trait is separated by commas (,) instead of plus signs (+). However, this can be limiting for more complex descriptions, which require the use of commas to expand upon the topic while keeping traits connected:
Traits such as this would be difficult to keep in one sentence without the use of commas or additional punctuation.
Prose
One of the most universally-accepted formats is prose. Simply put, paragraphs and sentences, with no special symbols or brackets. This is also the format that would be effective for the most models - LLMs are mainly trained on prose, not code or forms of pseudocode (unless under different circumstances). Therefore, they should respond best to prompts that are similar to their training data - namely, paragraphs and sentences like so:
When writing with prose, it is advised to reinforce important personality traits with a character’s past - for example, here’s a paragraph emphasising Rod’s romantic and empathetic traits:
Ali:Chat
Originally written by .alicat (opens in a new tab) on Discord, the Ali:Chat format capitalises on the use of example dialogue to describe the character, while simultaneously reinforcing the character’s ‘voice’/speaking style. In short, the Ali:Chat format involves either the user character or an ‘interviewer’ character asking questions. For example:
These questions can range from the character’s personality, to their backstory, and can even encompass smaller details like their hobbies or interests. A downside to this format, however, is the token usage. While it is arguably one of the best formats for writing characters (since it provides examples of how the character talks/acts directly to the model), it can be extremely token heavy depending on the style of the responses being given.
As such, some choose to supplement the Ali:Chat format with shorter categorisation-type formats, such as SBF or PList.
Regardless, once you’re finished writing, you can select Save
and Select
your character’s custom or edited personality type.
Background
The Background
section is similar to the previous - this time, however, you can decide your character’s past, outlining their skills, origin, and provide any additional information to supplement their Personality
. Overall, however, it’s recommended to use the same format that you used for the character’s Personality
section, for consistency.
Like before, you can simply select your edited or custom Background
to use it.
Scenario
The Scenario
is where you can set the scene if it’s not already done so in the character’s Welcome Message
or Personality
. However, since it’s a permanent section in the context, it’s generally not recommended to include the current circumstances. For example, a roleplay with the example character, Rod, may start at the cafe in the middle of the user’s shift. However, if the roleplay continues for long enough, the plot may develop and that setting may change - the user’s shift might end, and they would then leave the cafe to go home.
As such, the best practice is often to provide minimal information in the Scenario
. This is despite the auto-generated scenario likely being similar to a Welcome Message
.
Voice
Here, you can choose from a list of pre-made voices for your character to use when text-to speech is enabled.
By selecting the play button on a selected voice, you can also listen to a brief demo.
Welcome Message
The character’s Welcome Message
will be what starts off every chat that every user has with the character. It should set the scene, introduce the character, and tell the user what role they have in the story (if you’re setting their role for them).
The key to writing a good greeting is to write what you want from the AI. Since the Welcome Message
is the very first message in the chat, the AI will be looking to that Welcome Message
as an example of how to write. So, if you’re expecting very long messages from the AI with lots of detail in the scenery, the character’s perspective, etc, that’s what you’d write.
Tags
This is how most people will find your character. Make sure to add whichever Tags
would describe your character and/or their purpose.
Additional Information
Example Conversations
function similarly to a character’s Welcome Message
- they help shape the ‘voice’ of a character (writing style, response length, etc), but with much less influence. While it’s helpful for the AI to ‘learn’ how the character speaks through these examples, it usually results in the AI mistaking these examples as ‘memories’ - for example, if one of the examples involves the character having a conversation with the user, the AI may ignore smaller anecdotes about the character and the user having never spoken to each other before, simply because that conversation is already in the context.
The Example Conversations
are also permanently placed in the context - as such, it can be a waste of tokens to include them when they don’t already expand upon the character or their personality, especially since the character’s Welcome Message
exerts much more influence on the writing style the AI adopts for the roleplay.
As such, if you’re going to include Example Conversations
in your character, the best practice may be to adopt the Ali:Chat format outlined above - that being, to only include examples that expand on otherwise complicated or overlooked traits in the character’s Personality
.
When you select the Example Conversation
section, you will be met with a screen like this:
By selecting the empty message bubble, you can type in your character’s first message in this example - it can start with the default Welcome Message
, or it can drop in the middle of a different conversation. In this case, it’s the latter.
After selecting the Add
button at the bottom-right of the message bubble, the text will then save. From here, you can select Add A Conversation
to add another message bubble - this time, from You
.
This process can be completed as many times as you like - alternating between messages from ‘you’ and the character until you have enough for an example conversation that the AI can then draw from.
Once you’re done, you can select Save
at the bottom to return to the previous screen.
Finally, if there’s any other information that may not have fitted into any of the previous sections, you can optionally add it in the last box.
Once you’re finished with your character, you can then select Next
to proceed.
Character Preview
This is where you can get a look at how your character will appear to other people.
In the Welcome Message
section, you can select the audio icon in the top-left to listen to your character’s chosen voice reading the message. You can also select Test Play
at the bottom to try out your new character.
Here, you will be taken to your character’s chat screen, where you can test your character by talking to them yourself. To return, select the arrow icon at the top-left.
All the way at the bottom is the Public Access
setting. With this setting on, anyone can find and interact with your character. Alternatively, you can switch it off if you’d like to remain as the only person with access.
Once you’re done checking over your character’s information and testing them, you can then scroll to the bottom and hit Publish
to finish your character!