Skip to content

Drawing Conclusions is a collaborative drawing game that has been created for research. πŸ‘©β€πŸŽ¨πŸŽ¨πŸ‘¨β€πŸŽ¨

Notifications You must be signed in to change notification settings

wallscope-research/drawing-woz

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

46 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Drawing Conclusions: A Collaborative Drawing Game

πŸ‘©β€πŸŽ¨πŸŽ¨πŸ‘¨β€πŸŽ¨.

This drawing game has been created for research use so can be hosted locally and you keep all of the data where hosted. If you use this game in your research, please cite... tbc.

Originally created for a collaboration between the UCL Vocal Communication Laboratory and Heriot-Watt University's Interaction Lab.

Below you will find a short game guide and then instructions on how to run the game. The code has been commented in detail for reusability.

Guide:

This game requires three people. Two players and a moderator (likely yourself, running the experiment). These three roles from now on are referred to with the following titles:

  • Narrator - the player that chooses the picture to be drawn and describes this drawing to the artist (without using the object name of course).
  • Artist - the player that listens to the narrator and draws following their instructions.
  • Moderator - the researcher that monitors the game.

The Artist can guess what they are drawing so their correct guess is the aim of the game. In other words, the Narrator wants to help the artist guess what picture the narrator chose by giving clear instructions.

The moderator oversees this and can supervise if necassary. The game ends when the moderator deems the guess to be close enough to the correct answer. The players then switch roles and play continues.

Each player can choose a voice to represent them, this can be controlled if needed and can also be run as a Wizard of Oz experiment.

Example Game

Let's jump into a game. You can see that each player has chosen there voice and the Narrator is describing a house (very easy example). The narrator has instructed the artist to draw a big square and is now instructing them to "now put a big triangle on top":

Narrator view

The artist does this and then guesses "Arrow":

Artist guessing incorrectly

The moderator sees (and hears) this so informs the players that they should continue. You can also see that the moderator can see the drawing, the voice choices, the target picture and the most recent guess:

Moderator view

A little further into the game, the artist guesses correctly:

Artist guessing correctly

The game is ended by the moderator and the players switch roles. This is just a short round as a house is very easy to draw. The data from this round is stored in a csv:

Game data

Only the artist's guesses are recorded but they do have a limited number of voice interactions. They can say one of three things:

  1. Could you please repeat that?
  2. Can you clarify?
  3. Ok, What's next?

Installation and Setup

To run this code the first time: Make sure you have node and npm installed on your machine.

  1. Clone this repository.
  2. Open the cloned directory in your terminal.
  3. Replace the accountID and password in config.json with your Cereproc credentials.
  4. Run: npm install
  5. Run: node server.js
  6. Open Player 1 (Narrator) running at: http://localhost:3000/?id=1
  7. Open Player 2 (Artist) running at: http://localhost:3000/?id=2
  8. Open Player 3 (Moderator) running at: http://localhost:3000/?id=3

To start the game again just follow steps 2, 5, 6, 7, and 8.

Notes

Each player chooses their voice at the beginning of each round. These voices are from Cereproc's TTS. The code can be changed to integrate with another TTS of course.

The canvas is inspired by Daniel Shiffman ("The Coding Train")

About

Drawing Conclusions is a collaborative drawing game that has been created for research. πŸ‘©β€πŸŽ¨πŸŽ¨πŸ‘¨β€πŸŽ¨

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 99.4%
  • HTML 0.6%