WVAviator / lorecraft

Generate and play AI adventure games. Built with Rust/Tauri and TypeScript/React/Tailwind.
1 stars 0 forks source link

Character creation and management #11

Closed WVAviator closed 8 months ago

WVAviator commented 8 months ago

During game creation, a character designer ai should generate character profiles for any key characters devised by the game architect, and based on the plot consider adding addition non-critical characters.

Characters should be deemed as shallow or detailed interactable. Shallow characters can potentially use a cheaper ai model like babbage. Detailed characters either provide critical plot points, or have the ability to give or trade items with the player. This would require the model to have higher reasoning and generate responses in yaml.

When a player chooses to interact with a character, a new popup will appear overlaying the usual game screen. This popup will show a close up image of the character, and be a "chat window" of sorts. The player will talk directly to the character.

If the character is a detailed character and wishes to trade or take an item from the player, an italicized message will show in the chat window saying "character wishes to trade x for your y. Do you accept (yes or no)?" Or something like that.

For each character profile generated during game creation, a detailed description of the character, including their location, should be generated for the level designer to use. An image should be generated. If the character is detailed, a list of that characters inventory should be included. Most importantly, a prompt should be generated for the character. This is the prompt that will be provided to the model that will act as the character directly. Shallow character prompts can be simple and to the point, appended with basic instructions. Detailed prompts must also include the suggested format with examples. The examples will need to be particularly vague.

When providing a prompt to a character actor, not only should the generated prompt (which should include details on character personality, how to interact with the player) be included, but also instructions for formatting (for detailed characters only) but also information about the player's inventory, appearance, attributes, and previous conversations.