﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Millisecond Forums » Millisecond Forums » Inquisit 6  » Dynamic Positioning of Response Options</title><generator>InstantForum 2017-1 Final</generator><description>Millisecond Forums</description><link>https://forums.millisecond.com/</link><webMaster>Millisecond Forums</webMaster><lastBuildDate>Thu, 16 Apr 2026 10:08:54 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: Dynamic Positioning of Response Options</title><link>https://forums.millisecond.com/Topic38746.aspx</link><description>&lt;blockquote data-id="38745" class="if-quote-wrapper" unselectable="on" data-guid="1743447131149" contenteditable="false" id="if_insertedNode_1743447129938"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="38745" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="38745" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="38745" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;jmaram - 3/31/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-38745"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;Hello!&lt;br/&gt;&lt;br/&gt;We are designing a task where a user selects a location (1–4), receives new information, and then continues choosing until they reach a final outcome. Each location corresponds to a single trial, and based on their choice, they branch to a different trial.&lt;br/&gt;&lt;br/&gt;I would like to randomize the order of the four location options across trials (e.g., sometimes displayed as locations 1 3 5 7, other times as 3 5 7 1, etc.). However, it seems that each position requires manually defining text elements with specific x and y coordinates. Instead of hardcoding every possible combination (a text element describing location 1 at position 1, location 1 at position 2, location 1 at position 3, etc), is there a way to dynamically assign location labels to predefined positions within a trial? There are 20 possible locations and 4 possible positions on the screen, and within a trial, I would like to ideally only set the order of locations.&lt;br/&gt;&lt;br/&gt;Any guidance for further efficiency is greatly appreciated! Thank you!&lt;a class="if-quote-goto quote-link" href="#" data-id="38745"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Position attributes take variables and you can assign these dynamically as needed, e.g. sampling x/y coordinates from lists /ontrialbegin. &lt;br/&gt;&lt;br/&gt;[code]&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;20%, 40%, 60%, 80%,&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;20%, 40%, 60%, 80%&lt;br/&gt;)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list y&amp;gt;&lt;br/&gt;/ items = (&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;45%, 45%, 45%, 45%,&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;55%, 55%, 55%, 55%&lt;br/&gt;)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;/ selectionmode = list.x.currentIndex&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ aY = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;/ bY = 0%&lt;br/&gt;/ cX = 0%&lt;br/&gt;/ cY = 0%&lt;br/&gt;/ dX = 0%&lt;br/&gt;/ dY = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = values.aY &lt;br/&gt;/ erase = false&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = values.bY &lt;br/&gt;/ erase = false&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text c&amp;gt;&lt;br/&gt;/ items = ("C")&lt;br/&gt;/ hPosition = values.cX&lt;br/&gt;/ vPosition = values.cY &lt;br/&gt;/ erase = false&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text d&amp;gt;&lt;br/&gt;/ items = ("D")&lt;br/&gt;/ hPosition = values.dX&lt;br/&gt;/ vPosition = values.dY &lt;br/&gt;/ erase = false&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ ontrialbegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.x.reset();&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aY = list.y.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bY = list.y.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.cX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.cY = list.y.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.dX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.dY = list.y.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusFrames = [1=clearscreen, a, b, c, d]&lt;br/&gt;/ inputDevice = mouse&lt;br/&gt;/ validresponse = (a, b, c, d)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-4 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;You can find numerous other examples of this by searching the forum.&lt;br/&gt;</description><pubDate>Mon, 31 Mar 2025 19:07:06 GMT</pubDate><dc:creator>Dave</dc:creator></item><item><title>Dynamic Positioning of Response Options</title><link>https://forums.millisecond.com/Topic38745.aspx</link><description>Hello!&lt;br/&gt;&lt;br/&gt;We are designing a task where a user selects a location (1–4), receives new information, and then continues choosing until they reach a final outcome. Each location corresponds to a single trial, and based on their choice, they branch to a different trial.&lt;br/&gt;&lt;br/&gt;I would like to randomize the order of the four location options across trials (e.g., sometimes displayed as locations 1 3 5 7, other times as 3 5 7 1, etc.). However, it seems that each position requires manually defining text elements with specific x and y coordinates. Instead of hardcoding every possible combination (a text element describing location 1 at position 1, location 1 at position 2, location 1 at position 3, etc), is there a way to dynamically assign location labels to predefined positions within a trial? There are 20 possible locations and 4 possible positions on the screen, and within a trial, I would like to ideally only set the order of locations.&lt;br/&gt;&lt;br/&gt;Any guidance for further efficiency is greatly appreciated! Thank you!</description><pubDate>Mon, 31 Mar 2025 18:54:34 GMT</pubDate><dc:creator>jmaram</dc:creator></item></channel></rss>