Skip to content

Comment on Show HN: A murder mystery game built on an open-source gen-AI agent framework

Comments

I have to laugh.

First, the j_l button on my _eyboard is not functional so I have to sort out how to words without it.

Second, the characters, when faced with vague questions, will give away pieces of the plot before I discovered them. For example, a doctor let slip the manner of death before I ever saw the body of the deceased. Someone, when questioned vaguely about the "night of the party" first said the deceased died and then when questioned more closely said collapsed.

There's a component of information discovery here that should be rolled out to each character. The doctor should not have information before the discovery of the information.

I'm going to laugh if this is a "Murder on the Orient Express" ending.

I guess in our minds the doctor has already inspected the body before you get there (that's why it's at their house).

Someone, when questioned vaguely about the "night of the party" first said the deceased died and then when questioned more closely said collapsed.

Can you elaborate why you think this is suboptimal? In my mind, this seems consistent with how interrogations go - people make assumptions (he died) until you press them further (oh, I only saw him collapse).

There's a component of information discovery here that should be rolled out to each character. The doctor should not have information before the discovery of the information.

We're actively working on this as part of the framework :)

Thank you for the feedback.

I'm going to write out a short idea...

We need a prompt that is situational, that morphs with interaction.

So we have a prompt provided by python fstrings:

f""" # Actions context could be up here. You would ammend the "reply" section below with "reply with words or an action".

This is a summary of your recent interaction with PLAYER CHARACTER: { self.recent_memory() }

This is how you feel about PLAYER CHARACTER: { self.disposition() }

Your current conversation with PLAYER CHARACTER is: { self.conversation }

Score how the last reply effects you emotionally using this format <some extractable format with a function call>

Replying in a tone consistent with your disposition towards PLAYER CHARACTER, you say: """

self.recent_memory would be a summary of previous discussions and decreasing granularity the farther in time they are. Eventually the content of the memory fades, and only the emotional impact remains.

This could also be applied to general memories, where you would run a prompt through the situation you want the character to remember and then that gets embedded in the emotional/memory and recalled "realistically".

self.disposition would be a short text description of how the character feels about the player's character as well as a scoring mechanism that weights the effect of recent conversations against prior conversations.

Actions could be embedded into the prompt to allow the character to do stuff when so inclined.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.