We play a pretty loose D&D game. Our DM doesn't do too much setting up (because that takes ages) and when we encounter new people, it is up to us to write it all down. This is mainly because we switch between online sessions and in person ones. Even on paper, keeping track of who we have met is hard work, and with the tedious hit edit -> make change -> save change pattern of handouts and character bios, it is even slower. For the basic details, this should be simple, so that's what my script / framework is trying to achieve. The virtual bard tries to take this on by accepting simple commands and doing a lot of the tedious and messy work to keep track of your adventure. For example, in chat you give the command: !c -met Hairy ToeWinkles -r Halfling -c Thief -s male it then does the following: - Creates a new character sheet for Hairy ToeWinkles - Sets Race to Halfling - Sets Class to Rogue (uses its own lookup so classes can be abbreviated) - Sets Sex to Male - Writes in the "Adventure Log" handout (creates if not exists): "The party met [Hairy ToeWinkles], a Male Halfling Thief" This is only a starting point and proof-of-concept. As i work on it, it will handle the following: - Location tracking. Commands that will keep track of where the party is / what stage of the campaign you are at. This will then decorate other commands automatically, so if you have told the Virtual Bard you are on your fifth day in Baldurs gate, it will change it to "While on the 5th day in Baldurs Gate, the party met [Hairy ToeWinkles], a Male Halfling Thief". - Character commands. It maintains context on who you are talking about. You can then add more information such as "!c -i Is the Harper contact -i Masquerading as a Barkeep" and it will add two records into that characters bio. - Per user contexts. It remembers contextual information while running. If you started talking about a character you just met, you can keep talking about them and adding information with subsequent commands until you change it with a "!c -who" or "!c -met" command. Other players can also run their own commands and the context will not overlap. Two people can log information about different or same characters at the same time. My script thus far can be accessed at <a href="https://github.com/finite8/roll20-api-scripts/tree" rel="nofollow">https://github.com/finite8/roll20-api-scripts/tree</a>... (edit: new separate repo from Roll20 API fork so i can write independently. Will merge it in properly as its own seperate versions when ready: <a href="https://github.com/finite8/VirtualBard" rel="nofollow">https://github.com/finite8/VirtualBard</a> ) I have forked the main repo and will keep it there until i am satisfied that a v1 is stable and ready to go. Opinions and input is welcome.