AI Zone Admin Forum Add your forum
New Loebner Prize Protocol announced

There has been an update to the LPP. The developer has made the code and some documentation available on GitHub.

I’ll add an announcement to the AISB page eventually (

Ask any questions here, and I’ll try to respond, and otherwise I’ll pass them on to the developer.



  [ # 1 ]

Hi Andrew,

I have some remarks about your new protocol:

The version on GITHUB seems to be an alpha-version. There is some syntax errors (some “;” missing in file judge.html, for example), perhaps is it a difference of navigators. Is it really the last version ?

I have written an interface to run bots with the old protocol. Certainly the new protocol is better, however the programmers who have painfully developped theirs bots with the old protocol don’t have time to spend with the new one. This interface can be downloaded here, you can modify it if you want and commit it in the GITHUB.

You should protect your program against HTML characters and JavaScript code. Actually, a confederate or a bot can enter this type of message (to display it on the forum, I have replaced “<” by “[”) :


or, more funny :

[script]if (document.getElementById("robotL")) {document.getElementById("robotL").innerHTLM "Robot Right"document.getElementById("robotR").innerHTLM "Robot Left";}[/script] 

Best regards



  [ # 2 ]


I’ve passed this on to the developer.




  [ # 3 ]

I’ve heard this from the developer.

[Friday 27 Jan]
Many thanks. I’ll update the version on GitHub shortly (I’m surprised my browser allowed me to run the code without the semi-colons, but anyway).

I will also link to the interface.

Finally, with regards to the attack against the system, I agree that it’s a possibility, I ignored it simply because I assumed a benign environment (or rather a controlled one in the context of the contest). I’ll look into fixing this too.

[And then later that day]

“I’ve made the updates (and tested on my machine). If anyone else gives you bug reports, they’d be most useful, as everything is working smoothly on this end.”




  [ # 4 ]

Thanks for the update, Andy. Did you, by chance, also send the developer a link to this thread? It may prove useful for them to have a more direct means of communication with the interested parties here, don’t you think? smile


  [ # 5 ]

Hi Dave,

Would it be appropriate for you to be the moderator of this topic? Or someone else? The forum page says Hugh is the moderator. The sentiment is good, but there should be someone who could be contacted just in case.




  [ # 6 ]

I’m happy to step up to the plate, if the other members agree?


  [ # 7 ]

I think that would be a wonderful idea. Steve, did you want to change it? Or shall I?


  [ # 8 ]

You can change it if you like Dave. Just thought, seeing as I’ve won a couple of Loebners and am already a moderator, I could take on this role too. Shame it’s not under happier circumstances though :(


  [ # 9 ]

I’ve been looking for that particular setting in the admin panel, and haven’t found out where to make the change yet. I may have to ask Erwin about it. Still looking, though.


  [ # 10 ]

Thanks for mentioning this Robby! I’ve just removed Hugh as the moderator of this topic. Thanks Steve, Dave, for thinking along!


  [ # 11 ]

Thanks, Erwin. I appreciate it.


  [ # 12 ]

To run, install node, and the dependencies for the server (, and express, e.g., via npm install etc.), and run node server.js. You should then be able to open the html files in your browser.

Okay, let’s assume I’ve never worked with javascript, servers or sockets. Where can I get all this stuff? I’m assuming this is node. Express? npm? “Dependencies”?


  [ # 13 ]

I must admit, this means little to me either. I may not have time to learn this stuff ready for the contest.


  [ # 14 ]

The “node” that is being referred to is node.js, which is a rather interesting JavaScript library that’s far more versatile and useful than one would expect considering it’s origins and perceived limitations. Node.js has what’s called a “node package manager”, or NPM, which makes installing extensions and libraries (e.g. “dependencies”) easy and convenient. Once you install node.js from the link I’ve provided, you navigate a command prompt to the folder of your choice and use the npm syntax to start installing things. I really don’t know anything more specific than this, however. Don, if you could provide details about where you got that quote from I may be able to shed more light on the subject.


  [ # 15 ]

It’s from the readme:

Okay, so apparently all the mentioned components are included when you install node.js. I used Windows command prompt to install them with the commands “npm express”, “npm” and “npm”, which added a folder “node_modules” that seems to contain them.
Then I ran “node server.js” (using command prompt from the location where I downloaded the server.js file to), and that worked too. As a result the file “controlPanel.html” is now showing a table with judge names, and the buttons to start and end rounds are now functional.

Now, I’ve opened controlPanel.html, confedorate.html and judge.html, but it seems you need to hook up your AI too before messages can be passed back and forth. So I copied confedorate.html to a new file, and in its source code changed “var NAME=“conf0” to “var NAME=“ai0”, changed “abc123” to “abd123” (or whatever you want) and then inside the file server.js I also changed “config.secret[“ai0”]=“abc123”;” to match with “abd123”;”. Then I started a new round with the buttons in controlPanel.html, and now when I type in judge.html the message appears on the other html pages too. Great!

Now I guess I go figure out how to actually send those messages programmatically. I may still end up using Denis’ interface, but the less systems inbetween the better.


 1 2 3 >  Last ›
1 of 4
  login or register to react