Skip to content

Creating an npc

Rickard Edén edited this page Oct 5, 2024 · 1 revision

While you can load Silly Tavern cards in the game with load_character, this guide is for if you want them better adjusted for LlamaTale.

For one thing, if the name is long, you may want to shorten it, because right now you need to say full_character_name every time you want to speak to them. (The --gui version of the game supports 'key up' for the last prompt, which helps). I'll add support for 'alias' in an upcoming version. You may want to add a brief description in an "appearance":" " tag. That is what you'll see when you 'look' in a room. "gender":" ", "age":" ", and "occupation":" " are also supported. But occupation doesn't do anything, right now.

Template: {"description": "", "appearance": "", "age": "", "race":"", "occupation":"", "name": "", "personality": "", "aliases":[]}

You can break out what they're wearing with: "wearing":"comma separated list of items"

Likewise you can define something to wield (no stats for now): "wielding":"what"

You can define a 'voice' for the npc with: "example_dialogue":"Inspiration things they might say. Separate each line with '\n\n'"

Characters can have more options to choose from and act more independently with: autonomous=True (defaults to false)

Autonomous npc's can output what they think: output_thoughts=True (defaults to false)

If you want them to follow you when loaded, set: follower=True

LlamaTale can generate some basic skills, spells and equipment for them. It is based on their occupation. Some examples that will trigger this are: 'soldier', 'barkeep', 'peasant', 'healer', 'wizard', 'guard', 'ranger', 'hunter', 'thief', 'rogue', 'villager' Also add parse_occupation=True