Difference between revisions of "End-user Setup"
m (→Stellar Prospector) |
|||
Line 185: | Line 185: | ||
StellarProspector.Settings.Sector4Intensity = 1.0; | StellarProspector.Settings.Sector4Intensity = 1.0; | ||
* The percentage of intensity of sector four when it is flickered on. 1.0 denotes 100% intensity. | * The percentage of intensity of sector four when it is flickered on. 1.0 denotes 100% intensity. | ||
+ | |||
+ | |||
+ | ===Audio Stimuli Experiment=== | ||
+ | |||
+ | Tones will played at intervals based on the sound delay and max jitter as specified in the config file. | ||
+ | The time between tones is calculated by adding the sound delay to a random number in the range of 0 | ||
+ | to the max specified jitter. The tone is the same each time, but the volume is picked at random from the | ||
+ | volumes specifiend in the config file. | ||
+ | |||
+ | Each time a tone is played, an event is written to the log. See next section for all possible event codes | ||
+ | and formats. | ||
+ | |||
+ | |||
+ | |||
+ | Event Codes | ||
+ | |||
+ | AS_START | ||
+ | |||
+ | AS_TONE_PLAYED Volume=[volume] Tone=[tone # refers to number of volume in config file] | ||
+ | |||
+ | AS_END | ||
+ | |||
+ | |||
+ | |||
+ | Config File Format | ||
+ | |||
+ | AS_SOUND_DELAY = [delay between tones] | ||
+ | |||
+ | AS_MAX_JITTER = [max range of random jitter added to tone time] | ||
+ | |||
+ | AS_MAX_PLAYS = [number of times that tones are each played before test ends] | ||
+ | |||
+ | AS_VOLUME1 = [volume] | ||
+ | |||
+ | AS_VOLUME2 = [volume] | ||
+ | |||
+ | AS_VOLUME3 = [volume] | ||
+ | |||
+ | AS_VOLUME4 = [volume] | ||
+ | |||
+ | AS_SOUND = [80dBl_Right or 80dBlLeft] | ||
+ | |||
+ | Important Notes: | ||
+ | |||
+ | - All spaces in config file are necessary for the program to parse | ||
+ | |||
+ | - Make sure there is no white space after final line | ||
+ | |||
+ | - all volumes must be expressed in double format (must include decimal, ex. 1.0 is correct, 1 will not) | ||
+ | |||
+ | - volumes are calculated as a percentage out of 1.0 out of 80 decibels, scaled linearly (.5 = 50% of 80 dB, .75 = 75% of 80 dB) | ||
+ | |||
==Keyboard Configuration== | ==Keyboard Configuration== |
Revision as of 17:46, 22 February 2009
Each Minigame has a variety of settings that can be configured individually.
Contents
Config
The Config.script file holds general settings. It can be opened with any general text editor, such as Notepad or Vim. Each line ending with a semicolon (;) indicates a command for the game to follow. Lines beginning with two forward slashes (//) are considered comments, and will not be processed. A block comment is a section beginning with (/*) and ending at (*/).
Lab, Home and Debug configurations
The only difference between the lab and the home versions of the game is the config file that is used. The program will automatically use the LabConfig.script file if it exists; otherwise it will use Config.script. To run the program in the lab, simply make certain that the LabConfig.script file is present.
(When the game is being run from within the debugger, a third configuration script, DebugConfig.script, is used.)
These config files will be found in "[Game Install Directory]\Configs\" (Default: "C:\Program Files\Autism Collaborative\Configs\")
See also: Differences in Home vs Lab Configuration
Location
[Installation Directory]\Configs\Config.script (Default: "C:\Program Files\Autism Collaborative\Configs\")
The Global Config.script can be found in the Configs folder under the Autism Collaborative folder -- typically C:\Program Files\Autism Collaborative\Configs\Config.script. This holds global settings that will be applied automatically when the game starts. Individual minigames may have individual configurations specific to those minigames. This individual config file is also called Config.script, and can be found in the Configs folder under the minigame's folder -- typically C:\Program Files\Autism Collaborative\Minigames\[MiniGameName]\Configs\Config.script.
Global
Util.Settings.SetResolution([horizontal],[vertical]);
- Set the screen resolution this game will be played at, for example, Util.Settings.SetResolution(1024,768);
Util.Settings.FullScreen = [true/false];
- Set whether the game window will be fullscreen, for example, Util.Settings.FullScreen = true;
Util.Settings.ParallelPortEnabled = [true/false];
- Set whether codes should be written out the Parallel Port, for example, Util.Settings.ParallelEnabled = true; If not specified, this will default to False.
Util.Settings.ParallelPort = ParallelPort.Port1;
- Set which Parallel Port codes should be written to, if enabled. Valid values are Port1, Port2, and Port3. Defaults to Port1.
Util.Settings.SetScreenDimensions([Width], [Height], [Distance]);
- Width is the width of the display, in centimeters. Height is as height of the display, in centimeters. Distance is the distance between the display and the viewer's eyes, in centimeters. For the dot coherence phase of Maritime Defender, the dots are based on the size of the visual display as it appears to the player. For example, Util.Settings.SetScreenDimensions(8.5, 6.25, 24.0);
Maritime Defender
MaritimeDefender.Settings.DotsPerSquareRadian = [Number]; MaritimeDefender.Settings.DotsPerSquareDegree = [Number];
- For the dot coherence phase, the dots are based on the size of the visual display as it appears to the player. This sets the density of the dots as they appear on the screen. Either measure, radians or degrees, may be used. For example, MaritimeDefender.Settings.DotsPerSquareRadian = 10000.0;
MaritimeDefender.Settings.DotsPerRadian = [Number]; MaritimeDefender.Settings.DotsPerDegree = [Number];
- Specify the dot density as the number of dots within a circular patch of screen space with a diameter of one radian or degree of visual angle as it appears to the user.
MaritimeDefender.Settings.NumberDots = [Number];
- Override the above settings, specifying exactly the number of dots that should be drawn on the screen. This setting is optional.
MaritimeDefender.Settings.DotDiameter = System.Math.PI / 1028;
- Affects the average size of the coherence dots in terms of radians.
MaritimeDefender.Settings.DotSpeed = System.Math.PI / 16;
- Affects how fast the coherence dots appear to move across the screen in terms of radians per second.
MaritimeDefender.Settings.DotLifeSpan = 4 / 60.0;
- How long each dot exists on the screen. 4 / 60.0 reflects 4 frames on a 60 hertz display.
MaritimeDefender.Settings.DotRefreshDelay = 1;
- Additional Delay in seconds between each dot test, for the EEG readings. This is in addition to a random jitter of, by default, between 0 and 150ms; this jitter is controlled by the DotRefreshDelayJitter.
MaritimeDefender.Settings.DotRefreshDelayJitter = 0.15;
- A random amount of jitter between 0 and [value] seconds will added to the DotRefreshDelay so that the time between two successive coherence trials is not constant. The default is 0.15 of a second, or 150 milliseconds.
MaritimeDefender.Settings.DotResponseWait = 0.5;
- The duration of time in seconds immediately after a trial with no response in which late responses can be excepted.
MaritimeDefender.Settings.DotTrialLength = 2;
- The average duration of a dot test trial in seconds.
MaritimeDefender.Settings.SetPhaseQueue(2, "IdentityTest, 1, Shooter, 3, DotTest, 140, Shooter, 3, DotTest, 140, Shooter, 3, DotTest, 140, Shooter, 1, Boss, 0");
- The game phases for Maritime Defender. A list of pairs, a name and a value. Currently, the Game must start with an IdentityTest phase. The Shooter value is how many wormholes must be opened and ships identified in order to move on to the next Phase. The DotTest value is how many dot trials will take place during that phase, where a trial may be a motion of dots, or an absence of motion.
MaritimeDefender.Settings.HaveNonCoherentTrials = false;
- Whether NonCoherentTrials should be included. If false, there will be coherent motion to the left or right for every trial.
Stellar Prospector
StellarProspector.Settings.StimulusWaitMax = 1500f;
- The maximum amount of time in milliseconds before a stimulus must appear after the offset of the previous stimulus.
StellarProspector.Settings.StimulusWaitMin = 500f;
- The minimum amount of time in milliseconds before a stimulus can appear after the offset of the previous stimulus.
StellarProspector.Settings.DistractorWaitMax = 10000f;
- The maximum amount of time in milliseconds before a distractor must appear after the offset of the previous distractor.
StellarProspector.Settings.DistractorWaitMin = 2000f;
- The minimum amount of time in milliseconds before a distractor can appear after the offset of the previous distractor.
StellarProspector.Settings.DistractorLifeMax = 10000f;
- The maximum amount of time in milliseconds that a distractor can live for after it has been created.
StellarProspector.Settings.DistractorLifeMin = 2000f;
- The minimum amount of time in milliseconds that a distactor must live for after it has been created.
StellarProspector.Settings.StimulusLifeMax = 6000f;
- The maximum time in milliseconds that a stimulus can be displayed.
StellarProspector.Settings.StimuliPerCueMin = 1;
- The minimum number of stimuli that must appear before the cued sector can change.
StellarProspector.Settings.StimuliPerCueMax = 1;
- The maximum number of stimuli that can appear before the cued sector must change.
StellarProspector.Settings.MaxProgress = 100;
- The amount of progress needed to completely finish the game. This is in arbitrary units.
StellarProspector.Settings.PeripheralProgress = 5;
- The maximum amount of progress the player can receive from correctly responding to peripheral stimuli. In the same arbitrary units as max progress.
StellarProspector.Settings.ProgressLostPerMiss = 1;
- The amount of progress lost anytime an incorrect response is given
StellarProspector.Settings.CentralStimulusProgressDrain = 1;
- Amount of progress drained every 2 seconds during a central stimulus
StellarProspector.Settings.UseFlickering = true;
- Determines whether or not to use flickering
StellarProspector.Settings.AutoCalculateFlickering = true;
- Whether the frames on/off and intensities of the flickering effect are automatically calculated by the frequency or are just taken from the manually set values.
StellarProspector.Settings.CenterHertz = 6.67;
- The rate at which the center sector flickers per second
StellarProspector.Settings.CenterOnFrames = 4;
- How many frames (out of 60 frames per second) in a row does the center sector remain flickered on
StellarProspector.Settings.CenterOffFrames = 5;
- How many frames (out of 60 frames per second) in a row does the center sector remain flickered off
StellarProspector.Settings.CenterIntensity = 1.25;
- The percentage of intensity of the center sector when it is flickered on. 1.0 denotes 100% intensity.
StellarProspector.Settings.Sector1Hertz = 8.57;
- The rate at which sector one flickers per second
StellarProspector.Settings.Sector1OnFrames = 3;
- How many frames (out of 60 frames per second) in a row does sector one remain flickered on
StellarProspector.Settings.Sector1OffFrames = 4;
- How many frames (out of 60 frames per second) in a row does sector one remain flickered off
StellarProspector.Settings.Sector1Intensity = 1.33;
- The percentage of intensity of sector one when it is flickered on. 1.0 denotes 100% intensity.
StellarProspector.Settings.Sector2Hertz = 10;
- The rate at which sector two flickers per second
StellarProspector.Settings.Sector2OnFrames = 3;
- How many frames (out of 60 frames per second) in a row does sector two remain flickered on
StellarProspector.Settings.Sector2OffFrames = 3;
- How many frames (out of 60 frames per second) in a row does sector two remain flickered off
StellarProspector.Settings.Sector2Intensity = 1.0;
- The percentage of intensity of sector two when it is flickered on. 1.0 denotes 100% intensity.
StellarProspector.Settings.Sector3Hertz = 12;
- The rate at which sector three flickers per second
StellarProspector.Settings.Sector3OnFrames = 2;
- How many frames (out of 60 frames per second) in a row does sector three remain flickered on
StellarProspector.Settings.Sector3OffFrames = 3;
- How many frames (out of 60 frames per second) in a row does sector three remain flickered off
StellarProspector.Settings.Sector3Intensity = 1.5;
- The percentage of intensity of sector three when it is flickered on. 1.0 denotes 100% intensity.
StellarProspector.Settings.Sector4Hertz = 15;
- The rate at which sector four flickers per second
StellarProspector.Settings.Sector4OnFrames = 2;
- How many frames (out of 60 frames per second) in a row does sector four remain flickered on
StellarProspector.Settings.Sector4OffFrames = 2;
- How many frames (out of 60 frames per second) in a row does sector four remain flickered off
StellarProspector.Settings.Sector4Intensity = 1.0;
- The percentage of intensity of sector four when it is flickered on. 1.0 denotes 100% intensity.
Audio Stimuli Experiment
Tones will played at intervals based on the sound delay and max jitter as specified in the config file. The time between tones is calculated by adding the sound delay to a random number in the range of 0 to the max specified jitter. The tone is the same each time, but the volume is picked at random from the volumes specifiend in the config file.
Each time a tone is played, an event is written to the log. See next section for all possible event codes and formats.
Event Codes
AS_START
AS_TONE_PLAYED Volume=[volume] Tone=[tone # refers to number of volume in config file]
AS_END
Config File Format
AS_SOUND_DELAY = [delay between tones]
AS_MAX_JITTER = [max range of random jitter added to tone time]
AS_MAX_PLAYS = [number of times that tones are each played before test ends]
AS_VOLUME1 = [volume]
AS_VOLUME2 = [volume]
AS_VOLUME3 = [volume]
AS_VOLUME4 = [volume]
AS_SOUND = [80dBl_Right or 80dBlLeft]
Important Notes:
- All spaces in config file are necessary for the program to parse
- Make sure there is no white space after final line
- all volumes must be expressed in double format (must include decimal, ex. 1.0 is correct, 1 will not)
- volumes are calculated as a percentage out of 1.0 out of 80 decibels, scaled linearly (.5 = 50% of 80 dB, .75 = 75% of 80 dB)
Keyboard Configuration
Keyboard bindings are stored in a separate file, also specific to each minigame. For example, the keyboard bindings for the ColonySim could be found at [Installation Directory]\testkeybindings.txt (Default: "C:\Program Files\Autism Collaborative\testkeybindings.txt"). It is stored as a list of in-game events, each followed by the action that triggers it.
Quit Escape
- Trigger the Quit event when Escape is pressed.
PlaceBuilding Left mouse
- Trigger the PlaceBuilding event when the Left Mouse Button is pressed.
ZoomInStop OemPlus released
- Trigger the ZoomInStop event when the Plus Key is released.
Logging
The current default path for the log file is in the Application Data folder. The exact location will vary depending on the operating system installed.
Vista: C:\Users\[WindowsLoginName]\Documents\Roaming\Autism Collaborative\
XP: C:\Documents and Settings\[WindowsLoginName]\My Documents\Autism Collaborative\
The documentation for the building placement log for the Colony Simulation can be found here -> Building_Placement_Log_Specification.