The Experiment Generator is designed to allow easy setup of both online and offline experiments. The design of the software is based around plugins, that is the main program does very little, most of the functionality is delegated to plugins. Due to security restrictions the online version only has the supplied basic demo plugins, but we intend to add to these in the future. For offline use, or deployment from your own web server, developers are free to implement custom plugin components for their own experiments.
In order to setup a basic web experiment you will need:
Once the above components are prepared, the experiment can be run by passing the URL of your properties file to a php script called launch3.php. The URL should be called parameter config, and an additional parameter exten=false is also required (although not currently used). For example:
A simple configuration program is provided for setting up your properties file. The setup program can be run from here: setup program. Once the experiments file is produced, copy it to the same web folder.
An example properties file is shown below:
files=list.txt initialiser=empty.properties pairs=false ratingGUI=experiment.examples.ImageRadioPanel randomiser=experiment.examples.SimpleRandom infoMessage=This is the start of the experiment outputFile=https://docs.google.com/spreadsheet/formResponse?formkey=dFdOdndPNWU1MHlRNkRqX1JKSi1rZ0E6MA&ifq jars= trials=0 displayPanel=experiment.examples.ImageDisplayPanel infoPanel=experiment.examples.SimpleInfoPanel
The "pairs" setting allows forced choice type experiments, where two of the selected DisplayPanel are displayed side by side for each trial. This will usually require some kind of specialised randomiser to select suitable pairs of stimuli.
The options for the different components are described in the following sections.
InfoPanel - displays basic instructions and gathers information from the subject.
DisplayPanel - displays the stimulus (e.g. image, 3d model or morph) to the subject.
RatingGUI - gathers data from the user e.g. via radio buttons or a slider.
Randomiser - used to control randomisation of the data.