Progress Report

I’m sure that it seems to readers of this diary — assuming that there are any — that this project just drags on and on without ever actually making any progress. I certainly feel that way, and it weighs on my morale. However, genuine progress is in fact being made. I present here a demo of a short fragment of action in the game. This represents pretty much everything that the game can do. First, though, a screen shot from mid-game:

Remember, this is shrunken from its original 1600h x 1000v to 1000h x 600v. Here, the upper character, who is actually Gaustusu, is greeting me (Caroonycoorck) a little insincerely. In the lower speech bubble, I am responding by gossiping to Gaustusu that Zubi is… (I have not yet filled in the remainder of the sentence).

I have tooltips operating for all the icons on the screen. I had to set up my own custom tooltip system, as the Java version was not usable with this display. 

On the right side panel, we have representations of what I know about the others. The upper section shows how I feel about Gaustusu. Each of the three feelings (good, honest, powerful) are represented as blue, green, and red spirals. The magnitude of my perception in each of the three dimensions is presented as a quantifier icon. From left to right, they read 0, 0, and -2. Remember, the black square around a circular icon denotes negation. 

Underneath the magnitudes are the uncertainty values, indicated by question marks of different sizes. My uncertainties of the magnitudes are, respectively, -3, -3, and 0.

Note the little left-right arrows just above the display. Clicking on those reverses the direction of feelings; it would show how I believe that Gaustusu feels about me. It’s important to know whether somebody likes, trusts, or fears you. 

The lower grouping of icons presents the same information about Zubi. This permits me to check what I say against what I actually believe. I don’t have to tell the truth, but it’s useful to be consistent.

Here is the progress of the tiny story I was able to play:

2     Once upon a time…
3     Fate start the day
4     Caronycoorck go to Gaustusu's home
5     Caronycoorck greet Gaustusu Powerful negative
6     Gaustusu greet Caronycoorck Honest slightly negative
7     Caronycoorck gossip Gaustusu Zubi Powerful negative half certain, half uncertain
8     Gaustusu I see Caronycoorck
initial Honest of Caronycoorck for Gaustusu : -0.40625572  with uncertainty of -0.8178643   delta = -0.1
final Honest of Caronycoorck for Gaustusu : -0.4262597  with uncertainty of -0.04574921

9     Caronycoorck suggest deal Gaustusu
10     Gaustusu reject Caronycoorck slightly negative
initial Good of Caronycoorck for Gaustusu : 0.33778846  with uncertainty of -0.97324204   delta = -0.2
final Good of Caronycoorck for Gaustusu : 0.12385011  with uncertainty of -0.262545


11     Caronycoorck goodbye Gaustusu Good very negative
12     Fate Fate handles goodbye Gaustusu Caronycoorck
13     Fate wake up next actor Soomesoorreg
14     Soomesoorreg go to Skordokott's home
15     Soomesoorreg greet Skordokott Powerful slightly negative
16     Skordokott greet Soomesoorreg Honest positive
17     Soomesoorreg threaten Skordokott
18     Skordokott defy Soomesoorreg very negative
initial Powerful of Soomesoorreg for Skordokott : -0.3199492  with uncertainty of 0.34359246   delta = 0.09375
final Powerful of Soomesoorreg for Skordokott : -0.2928087  with uncertainty of 0.018517055


initial Good of Soomesoorreg for Skordokott : -0.31197125  with uncertainty of -0.9457568   delta = -0.03125
final Good of Soomesoorreg for Skordokott : -0.3517689  with uncertainty of -0.07791246


19     Soomesoorreg goodbye Skordokott Powerful very negative
20     Fate Fate handles goodbye Skordokott Soomesoorreg
21     Fate wake up next actor Camiggdo
22     Camiggdo go to Koopie's home
23     Camiggdo greet Koopie Powerful slightly negative
24     Koopie greet Camiggdo Honest negative
25     Camiggdo threaten Koopie
26     Koopie what is your goal? Camiggdo
27     Camiggdo goal aura count Koopie Caronycoorck Honest
28     Koopie goal aura count Camiggdo Gaustusu Powerful
29     Camiggdo reject Koopie zero
initial Good of Koopie for Camiggdo : -0.37811977  with uncertainty of -0.7881403   delta = -0.2
final Good of Koopie for Camiggdo : -0.59659  with uncertainty of -0.36707497


30     Koopie goodbye Camiggdo Good very negative
31     Fate Fate handles goodbye Camiggdo Koopie
32     Fate wake up next actor Zubi
33     Zubi go to Gaustusu's home
34     Zubi greet Gaustusu Honest very negative
35     Gaustusu greet Zubi Powerful very negative
36     Zubi threaten Gaustusu
37     Gaustusu defy Zubi very negative
initial Powerful of Zubi for Gaustusu : -0.00392133  with uncertainty of -0.49952376   delta = 0.09375
final Powerful of Zubi for Gaustusu : 0.377927  with uncertainty of -0.18969767

initial Good of Zubi for Gaustusu : -0.31794107  with uncertainty of 0.08908516   delta = -0.03125
final Good of Zubi for Gaustusu : -0.3796777  with uncertainty of 0.011382608

38     Zubi goodbye Gaustusu Powerful very negative
39     Fate Fate handles goodbye Gaustusu Zubi
40     Fate wake up next actor Koopie
41     Koopie go to Soomesoorreg's home
42     Koopie greet Soomesoorreg Honest positive
43     Soomesoorreg greet Koopie Powerful very negative
44     Koopie threaten Soomesoorreg
45     Soomesoorreg defy Koopie very negative
initial Powerful of Koopie for Soomesoorreg : -0.5575365  with uncertainty of -0.40898216   delta = 0.09375
final Powerful of Koopie for Soomesoorreg : -0.55180794  with uncertainty of -0.011681328

initial Good of Koopie for Soomesoorreg : 0.58279747  with uncertainty of -0.7230443   delta = -0.03125
final Good of Koopie for Soomesoorreg : 0.562606  with uncertainty of -0.07235939

46     Koopie goodbye Soomesoorreg Powerful very negative

47     Fate Fate handles goodbye Soomesoorreg Koopie
48     Fate wake up next actor Skordokott
49     Skordokott go to Zubi's home
50     Skordokott greet Zubi Powerful very negative
51     Zubi greet Skordokott Good negative
52     Skordokott threaten Zubi
53     Zubi what is your goal? Skordokott
54     Skordokott goal aura count Zubi Camiggdo Powerful
55     Zubi goal aura count Skordokott Soomesoorreg Honest
56     Skordokott reject Zubi negative
initial Good of Zubi for Skordokott : -0.67767394  with uncertainty of 0.28552693   delta = -0.2
final Good of Zubi for Skordokott : -0.7422718  with uncertainty of 0.12498299

57     Zubi goodbye Skordokott Good very negative
58     Fate Fate handles goodbye Skordokott Zubi
59     Fate wake up next actor Gaustusu
60     Gaustusu go to Koopie's home
61     Gaustusu greet Koopie Honest negative
62     Koopie greet Gaustusu Honest negative
63     Gaustusu threaten Koopie
64     Koopie defy Gaustusu very negative
initial Powerful of Gaustusu for Koopie : -0.42699647  with uncertainty of -0.58564925   delta = 0.09375
final Powerful of Gaustusu for Koopie : -0.4233774  with uncertainty of -0.006634957

initial Good of Gaustusu for Koopie : 0.47191036  with uncertainty of -0.94213176   delta = -0.03125
final Good of Gaustusu for Koopie : 0.463036  with uncertainty of -0.029046677


65     Gaustusu goodbye Koopie Powerful very negative
66     Fate Fate handles goodbye Koopie Gaustusu
67     Fate wake up next actor Caronycoorck
68     Caronycoorck go to Skordokott's home
69     Caronycoorck greet Skordokott Powerful very negative
70     Skordokott greet Caronycoorck Honest very negative
71     Caronycoorck suggest deal Skordokott
72     Skordokott reject Caronycoorck very negative
initial Good of Caronycoorck for Skordokott : -0.57724667  with uncertainty of -0.07724488   delta = -0.2
final Good of Caronycoorck for Skordokott : -0.6073092  with uncertainty of -0.011876082

This is a condensed listing of the activity that took place in the story. Most lines begin with the clock time of the event. In this scaled-down version of the SWAT technology, only one event can take place per clock tick. Each event is presented in a shorthand version. There’s also some telemetry from the story telling me how the algorithms are working. The first of these begins with “Initial Honest…” and states the initial value of her perceived Honest value for Gaustusu: -0.40625572  ± -0.8178643. This means that she doesn’t trust Gaustusu much and she’s quite certain of her assessment. However, after Gaustusu gives her an evasive response (“I see…”), she realizes that he’s holding out on her, so her distrust of him increases to -0.4262597  ± -0.04574921. The decrease in trust looks about right to me, but the change in her uncertainty strikes me as much too large. Obviously, the algorithm needs further tuning. That’s what I’ve been working on lately, which is why I have the telemetry printed out. 

Notice also that actors always respond to a threat with defiance. This is obviously an algorithm that needs correction.

There is some other material in the storyworld that is not presented here. For example, actors can now intelligently assess the costs and benefits of a deal proposal. That’s important. 

That’s where I stand right now. It’s obvious that an enormous amount of work remains to be done, which is quite disheartening. On the other hand, this is already well beyond anything that anybody else has accomplished with interactive storytelling, so I suppose I shouldn’t feel so demoralized.