AI Zone Admin Forum Add your forum

NEWS: survey on 3000 US and UK consumers shows it is time for chatbot integration in customer service!read more..

Questions, bugs and issues in the new Loebner Prize protocol

Hi, I am helping Steve Worswick prepare for the 2017 finals by adapting our AIML program, LoebnerAB, to support the new Loebner prize protocol.

I’ve read through the threads here with interest.  I wanted to start a new thread to highlight specific bugs and technical questions about the application.  I have tried communicating directly with the developer and so far received no response.  I’m also unable to see where we can report issues on the github repository at

One confusion right off the bat is that the old Loebner Prize Protocol is called “Loebner Prize Protocol” and the new protocol is also called “Loebner Prize Protocol”.  So we decided to call the new one “Roar Inn” which is an anagram of the program author’s name, Nir Oran. It also sounds like the name of an English pub.

I found two bugs in the current release of the code.

1. server.js: in handleControlMessage the value roundNumber is not undefined.  This can be fixed by changing the value to currentRound.

2. The documentation for the message topic says that the message body is in a field named “content” but judge.html and confederate.html are looking for “contents” (plural).

In general the program is not very well behaved.  It seems to crash frequently and easily.  I also don’t see any code for logging conversations.  There is a function “recap” that will “send all messages sent so far in the round to the client” but that’s only one side of the log.  Given the program’s propensity to crash, I would hope that it at least saves the state of conversations completed up to crash-time.


  [ # 1 ]

I think you should persist in contacting members of the AISB directly with these issues, as the developer hasn’t been responsive on this forum. Possibly you aren’t using the developer’s correct mail address because his surname is spelled with an “e”. replace “monkey” with the appropriate symbol below:
n.oren monkey
Otherwise you could try contacting Andrew Martin, Ed Keedwell, or the designated loebner prize email address on

Dave Morton successfully posted an issue earlier on


  [ # 2 ]

Oh thanks Don.  I may have had the name wrong, and now I have to changed my anagram! 

I made our LoebnerAB program include a radio button so we can select between the “classic LPC” and the “new LPC”. That’s why I wanted a different name for the new protocol.

I did eventually find the “New Issue” button on github and I"ve submitted my issues there.  Two more to add:

1. When the judge scroll pane is full, it does not scroll to the bottom when new text is entered.

2. Starting a new round does not clear the judge text panes.

- These may also apply to the confederate pane.  I haven’t tested it yet.



  [ # 3 ]

Professor Wallace,

Isn’t Steve lucky with college professors helping Mitsuku adapt

the LoebnerAB to support the new Loebner prize protocol?

Here is my interface design help:

Two radio buttons, ‘“classic LPC” and the “new LPC”’,

should be labeled: ‘“classic LPP” and the “new LPP”’

Or, “message-mode” and “character-mode” to support other chatbot contests.


  [ # 4 ]

Oren has been responsive to issue reports posted on his github site.

He’s fixed the issues I posted here.

The protocol he’s using is not the plain vanilla sockets supported by most languages.  It’s a higher level construct called Socket.IO that is really only supported by Javascript.  I did find a Java library to run it, but I imagine this exercise is similarly challenging in C++ and other languages.  I eventually found a Java client for Socket.IO at

What is not well documented is that this library has several dependencies: I got it to work when I included these JAR files:



  [ # 5 ]

Many thanks to Nir Oren for responding to the issue requests and making the LPP2 application more reliable.

I played around with the CSS and made a few changes to the <div> elements to make a the Judge panel look more like an SMS application (see attachment).

I don’t know whether they can use this for the contest, but it might help make the interface a little more visually appealing, in case there are press around the contest snapping pics.


  [ # 6 ]

Um… Rich? Did you forget to attach the screenshot? Just curious. smile


  [ # 7 ]

I tried it and it looks a lot better than the official one:


  [ # 8 ]

Looks a bit like Skype. It may be a tiny bit frivolous-looking, but I think it would be just fine, especially if there will be reporters and/or photographers about. smile


  [ # 9 ]

It may also be nice if the human confederates got to see the same thing, and I’m sure it wouldn’t be difficult to set up.


  [ # 10 ]

Looks good Richard.
If you publish the CSS I will try or add it in.


  [ # 11 ]
Merlin - Sep 10, 2017:

Looks good Richard.
If you publish the CSS I will try or add it in.

Thanks, Merlin.  I hope my attachment works this time. 

The basic solution was found in answer #1 here:

I modified the <div> elements that Nir’s code appends to the scrollpanes, added one style element to messagepaneL and messagepaneR, and modified the author’s css slightly to deal with margins inside the scroll pane.  Other than that, it’s basically just the CSS from StackOverflow on top of Nir’s Javascript and HTML. 

Like Dave said, it should be straightforward to adapt for the confederate panel as well.

Update: for some reason I am unable to load an attachment.  If you want the code please email me at .(JavaScript must be enabled to view this email address) or perhaps Steve will host it for us.



  [ # 12 ]

Here is the new judge.html file:

Please feel free to grab a copy. Any press/media tend to take pictures of the judge’s screens. They are not allowed in the separate room with the humans and chatbots until after the contest, so I wouldn’t bother amending it for that, apart from giving them both a consistent look and feel.


  [ # 13 ]

That consistent look and feel goes a long way toward providing a sense of professionalism and attention to detail, Steve, so I think that if one page gets the upgrade, then all should, including the control panel. I’ll try to find the time this next week to incorporate these changes (and others) to my fork of the LPP2, and submit a pull request to the main gitHub repository.

By the by, I can’t help but notice that in Google Chrome (and Firefox, too) the judge’s page seems to be a bit broken. Here’s a screen capture.

If you wish, I’ll see what’s gone wrong and apply a fix.


  [ # 14 ]

If I recall, that ‘broken’ layout in FireFox only appears if you start the judge file without the server or controlpanel running.

Looks nice, Richard. I’m all for improvements to the presentation, as by nature it is pretty boring to watch people type text in a box. I also think this version is more readable.


  [ # 15 ]

Yes the judge.html looks like crap unless server.js is running.  That’s one more thing we could fix—maybe next year.


 1 2 > 
1 of 2
  login or register to react