text: for receiver in self.agents:            receiver.receive(speaker.name, message)        # 4. increment time        self._step += 1        return speaker.name, messageDefine roles and questâ€‹protagonist_name = "Harry Potter"storyteller_name = "Dungeon Master"quest = "Find all of Lord Voldemort's seven horcruxes."word_limit = 50  # word limit for task brainstormingAsk an LLM to add detail to the game descriptionâ€‹game_description = f"""Here is the topic for a Dungeons & Dragons game: {quest}.        There is one player in this game: the protagonist, {protagonist_name}.        The story is narrated by the storyteller, {storyteller_name}."""player_descriptor_system_message = SystemMessage(    content="You can add detail to the description of a Dungeons & Dragons player.")protagonist_specifier_prompt = [    player_descriptor_system_message,    HumanMessage(        content=f"""{game_description}        Please reply with a creative description of the protagonist, {protagonist_name}, in {word_limit} words or less.         Speak directly to {protagonist_name}.        Do not add anything else."""    ),]protagonist_description = ChatOpenAI(temperature=1.0)(    protagonist_specifier_prompt).contentstoryteller_specifier_prompt = [    player_descriptor_system_message,    HumanMessage(        content=f"""{game_description}