|
Post by chriscrawford on Oct 2, 2016 16:12:22 GMT -8
I have begun work on the verb "disclose". This is a tricky one. It takes the form:
{Subject} {discloses to} {DirObject} that {4Actor} said they think that DirObject has attribute {5ActorTrait} in quantity {6Quantifier} with certainty {7Certainty}.
This is definitely a rather catty thing to say; the subject is violating an implicit confidentiality. Moreover, its purpose is solely to discredit somebody else. Therefore, the choice of 4Actor is rather complicated. It must be one of the three other actors. Should it be a response to an earlier declaration, as in:
"I think that Skordokott is a really nice guy." "Skordokott told me that he thinks that you are a bad person."
Or should it be based on Esteem or Threat? Should an actor try to take out somebody he hates, or somebody who represents a real threat to them?
Perhaps I should try all three possibilities, but then the nature of the disclosure depends on the motivation.
Oof, this is too hard to figure out just now.
|
|
|
Post by chriscrawford on Oct 4, 2016 14:51:42 GMT -8
Well, I think I solved the problem of choosing the actor about whom to disclose something. Here's the script (let's see if the output of the Storytron export function works well here):
Desirable BSum4 Threat ReactingActor CandidateActor BInverse esteem ReactingActor CandidateActor PickUpperIf CausalEventHappened AND3 TopGreaterThanBottom(Number) PastTime CandidateEvent difference ThisTime 2.0 AreSameActor Past4Actor CandidateEvent CandidateActor AreSameVerb PastVerb CandidateEvent declare 0.3 0.0 PickUpperIf CausalEventHappened AND3 TopGreaterThanBottom(Number) PastTime CandidateEvent difference ThisTime 2.0 AreSameActor Past4Actor CandidateEvent CandidateActor AreSameVerb PastVerb CandidateEvent disclose 0.5 0.0
|
|
|
Post by Chris Conley on Oct 5, 2016 8:52:06 GMT -8
is difference(ThisTime, 2.0) meant to be indented under CandidateEvent?
Never mind, I found the mistake. CandidateEvent and difference(ThisTime, 2.0) should each be increased by one indent level in the first PickUpperIf block. I think their indents look a bit off, as well, so:
Desirable BSum4 Threat ReactingActor CandidateActor BInverse esteem ReactingActor CandidateActor PickUpperIf CausalEventHappened AND3 TopGreaterThanBottom(Number) PastTime CandidateEvent difference ThisTime 2.0 AreSameActor Past4Actor CandidateEvent CandidateActor AreSameVerb PastVerb CandidateEvent declare 0.3 0.0 PickUpperIf CausalEventHappened AND3 TopGreaterThanBottom(Number) PastTime CandidateEvent difference ThisTime 2.0 AreSameActor Past4Actor CandidateEvent CandidateActor AreSameVerb PastVerb CandidateEvent disclose 0.5 0.0
|
|
|
Post by chriscrawford on Oct 6, 2016 9:32:10 GMT -8
Thanks for catching that error, Chris. I was counting spaces and miscounted.
I'm working on the next problem: the script for the choice of ActorTrait to disclose. The first question is, should the ReactingActor confine himself to the truth, at least to the extent that 4Actor actually did declare something about DirObject? Or should the ReactingActor just make up whatever he wants? This should somehow be based on the ReactingActor's Honest value as well as the degree to which ReactingActor sees himself as threatened by 4Actor -- and how much ReactingActor wants DirObject to continue to trust him.
This is a good example of just how complex even simple storytelling can become.
I think that the starting point of the solution should be the realization that ReactingActor would never want to say something nice about 4Actor. What's the point of saying "Skodokott told me that he thinks you're just peachy-keen"? That helps ReactingActor in only one way: it increases DirObject's trust in ReactingActor. That's an entirely different motivation.
Perhaps I should split this verb into two verbs: one is used to increase DirObject's trust in ReactingActor, and is only used honestly. The other is used to degrade DirObject's opinion of 4Actor. They would, of course, have to have exactly the same icons, lest they give away ReactingActor's intentions. But this means that the player won't be able to tell the two verbs apart. Well, that scuttled that idea...
OK, so it has to be one verb that can go in two completely different directions. This gives me the willies. I think it best, for the nonce, to abandon the two meanings and revert to the single purpose: to slime somebody.
Which in turn means that we want to say something nasty about 4Actor. But how flagrant should our lie be?
How about this: ReactingActor starts with the truthful value of 5ActorTrait and then lowers it in proportion to his own Honest value, how much he values the continuing trust of DirObject, and how desperate he is to harm 4Actor.
Hmm...
|
|
|
Post by chriscrawford on Oct 7, 2016 8:44:11 GMT -8
I think I've figured out the script for 5ActorTrait. This time I'm going to be smarter and attach it as code:
AcceptableActorTraits AllActorTraitsWhich AND isAura CandidateActorTrait NOT CausalEventHappened AND3 AND4 AreSameActor ReactingActor PastSubject CandidateEvent AreSameVerb disclose PastVerb CandidateEvent AreSameActor ThisSubject PastDirObject CandidateEvent AreSameActor Chosen4Actor Past4Actor CandidateEvent AreSameActorTrait CandidateActorTrait Past5ActorTrait CandidateEvent TopGreaterThanBottom(Number) PastTime CandidateEvent difference ThisTime 1000.0 This merely says: "Consider any Aura Trait that you haven't already revealed in the last 1000 minutes." I just realized, however, that the time limit should not be based on total elapsed time (1000 minutes) but rather on the time since daybreak. In other words, it should be "...haven't already revealed today". I'll fix that. In the meantime, the Desirable script is simple: choose the value you are most confident about:
Conversation: whats new: DirObject: disclose: 5ActorTrait: Desirable
Desirable CorrespondingUActorTrait ReactingActor Chosen4Actor CandidateActorTrait
|
|
|
Post by chriscrawford on Oct 7, 2016 8:48:10 GMT -8
Here's the corrected script that looks back only to the beginning of the day. Note that I erred in assuming that a day is 1000 minutes long in Storytron time; it's 1440 minutes long, as is the real thing.
Conversation: whats new: DirObject: disclose: 5ActorTrait: Acceptable
AcceptableActorTraits AllActorTraitsWhich AND isAura CandidateActorTrait NOT CausalEventHappened AND3 AND4 AreSameActor ReactingActor PastSubject CandidateEvent AreSameVerb disclose PastVerb CandidateEvent AreSameActor ThisSubject PastDirObject CandidateEvent AreSameActor Chosen4Actor Past4Actor CandidateEvent AreSameActorTrait CandidateActorTrait Past5ActorTrait CandidateEvent TopGreaterThanBottom(Number) PastTime CandidateEvent difference ThisTime product StoryDay 1440.0
|
|
|
Post by chriscrawford on Oct 7, 2016 11:36:08 GMT -8
I have raced ahead with the script for 6Quantifier:
Conversation: whats new: DirObject: disclose: 6Quantifier: Desirable
Desirable Suitability CandidateQuantifier Blend CorrespondingPActorTrait ReactingActor Chosen4Actor Chosen5ActorTrait -0.99 BSum Threat ReactingActor Chosen4Actor BInverse esteem ReactingActor Chosen4Actor It seems fairly simple, but I'm worried that I'm getting ahead of myself. Is -0.99 the ideal value? Wouldn't it be better to simply BSubtract the BSUM value from the CorrespondingPActorTrait value? I need to give this more thought.
|
|
|
Post by chriscrawford on Oct 8, 2016 10:52:43 GMT -8
I have finished work on the scripts for selecting the verb "disclose". However, there remains the huge task of writing the scripts for the verbs "declare" and "disclose". Up till now, I have been working on scripts for options using those two verbs -- in other words, the INPUT side of the verbs. Now I must write the scripts for the OUTPUT sides of those verbs. This might be quick, and it might not. I'll just have to see.
|
|
|
Post by chriscrawford on Oct 9, 2016 9:35:09 GMT -8
I just realized that the "declare" verb duplicates the "gossip" verb. This is a great example of how stupid I have been for the last five months. Stupid, stupid, stupid. So now I have to kill one of them. I think that "declare" should go, because it sounds too similar to "disclose". Thus, there will be two verbs: gossip and disclose.
Sheesh.
|
|