Number variable issue in drag and drop interaction.

Apr 05, 2017

I am trying to set up a drag and drop interaction where the learner is given one target, and several objects that could possibly be dropped onto the target.

The objective is to determine a pattern (growth or decay, either linear, quadratic or exponential) and determine either the next step in the pattern, or the initial conditions of the pattern.


The learners are given eight objects that they can interact with, and are allowed to drop any number onto the target. The correct number of objects to place on the target can be anywhere between one and eight.

To track how many objects have been placed, a number variable has been made. This starts at zero. When an object is placed on the target, one is added to the number variable. If an object is taken away from the target (the learner changes their mind and takes one out) one is subtracted from the number variable.

The 'correct' or 'incorrect' feedback layers are made visible by clicking the 'submit' button, which shows the layer conditional on the number variable.

So if the answer is x, then the 'correct' feedback layer will be shown if the number variable == x.
The 'incorrect' feedback layer will be shown id the number variable =/= x. 

Here is where I run into a problem.

While objects that are not interacted with at all will not influence the number variable, if an object is 'bounced' onto the target multiple times (as could happen when someone uses a touch screen and doesn't drag far enough) the number variable keeps going up. The same thing happens if the object is 'bounced' outside of the target- the number goes down.

This could result in the learner receiving the 'incorrect' feedback slide even though the correct number of objects appear to be in the target zone, because the numeric variable has gone out of sync with the number of objects placed onto the target.

How do I resolve this without changing the parameters of the activity? 

I have attached a file with two slides- one where there are two hotspots- a 'drop target' and a 'not drop' that affect the variable, and one where there is a single 'drop target' hotspot, and the numeric variable goes up and down depending on the state of the object (drop correct, or drop incorrect), which is a nicer way of doing things from my point of view.

Both currently display the issue of the numeric variable getting out of sync with the number of objects currently placed on the drop target, if the learner keeps picking up the object and putting it down on the same spot.

2 Replies
Monica Hill

Hi Walt, thanks for the quick response and the example.
My file was made in SL 360, so you might not be able to open it.

From what I can tell, what you have done differently to me is that you have created a true/false variable for each object, that is false as a default and sets to true when the object is dropped on a valid target.

You then use your number variable to count how many of these true/false variables are set to 'true'.

If that number variable is equal to two, you set a object called 'correct' to selected.

I was confused as to what was happening after that until I realised that you have used a multi-choice question type, and made it look like a drag and drop question type. Because of this, you were able to make it work. That is a fantastic workaround and I would not have thought of it myself.


I was directed to use a drag-and-drop question type, set all eight objects with one target as correct, and give each of them a drop correct/ drop incorrect state, enabling this state change to occur before the interaction was submitted.
I have no true/false variables, but I do have a number variable, which is increased by one when an object's state is drop correct, and decreased when the state is drop incorrect.

Somehow, Storyline was deciding that drop correct, drop correct, drop correct on the same object meant that it could add three to my number variable (and so on) even though there was only one object in the target!

I'll give this method a go. I am sure that my team's Learning Designer would rather have a multichoice interaction that behaves like a drag and drop than a buggy drag and drop, or a slider (which was what I was considering converting the activity to).


Thank you.

This discussion is closed. You can start a new discussion or contact Articulate Support.