Release Notes 2021-2

Back to Table of Contents

Full Release

New Features

SE Sandbox integration

The SE Sandbox was integrated into GIFT for this release. With this integration comes a new instance of Unity and a new Unity scenario that is coupled with a few GIFT Courses and GIFT real-time assessments (DKFs) component. To see this integration in action please refer to STE SE Sandbox Team Exemplar Course.

This screenshot shows the SE Sandbox course object that was added to the GIFT Course Creator allowing authors to drag-n-drop SE Sandbox activity into the course flow.

This screenshot shows the SE Sandbox landing page where you select which scenario to load.

This screenshot shows the SE Sandbox role selection page where you select which role to play in the scenario.

This screenshot shows the SE Sandbox in-game environment for the Exemplar Forest scenario instance.


Game Master improvements

Summative Assessment Scoring Dialog

The Game Master Past Session now allows the user to change the summative assessment scores of real time assessment (DKF) concepts for a specific session. This provides an opportunity to create summative assessment scores for concepts that use observed assessment conditions which have no way to automatically calculate an overall score. The dialog can be used to change the automated overall assessments that GIFT determined based on rules defined in the DKF. This is the first version of this dialog and there are plans to improve it for the next release of GIFT.

Weapon Fire and Detonations

Weapon fire and detonations now show up on the Game master map as colored circles. Yellow represents that a entity was hit and gray that nothing was hit (a miss). There will also be a fire line drawn between the weapon fire location and detonation location.

GIFT Messages changed from JSON to Protobuf syntax

Since the first GIFT release, all GIFT messages sent between GIFT modules over ActiveMQ message bus where defined using JSON. The codec classes in GIFT/src and the ICD Wiki page were maintained with the JSON structure including the JSON string keys used to extract the various objects/values. One issue with using JSON is that it can consume more memory than other more compressed message definition approaches. GIFT writes all the GIFT messages in a GIFT course to a log file for that course. In order to lower the size of these session log files and lower the memory usage with GIFT messages, the GIFT messages were changed to protobuf (.proto files). See the updated ICD wiki page for this and future releases for new and updated .proto files. The GIFT messages .proto files are located in GIFT\config\protobufMessages. GIFT log files now have the suffix of '.protobuf.bin' instead of '.log'.

Converting binary GIFT session logs to human readable files

Before the change to protobuf, the GIFT session logs were written as mainly JSON which allowed users to open the GIFT session logs in programs such as NotePad++. Now this is not possible. To get this same functionality there is a script called protobufBinaryToHumanReadable.bat that will create this human readable file. It can be accessed at GIFT\output\domainSessions and GIFT\scripts\dev-tools. To use it simply drag and drop your GIFT .protobuf.bin session log file onto the .bat file. A new .log file will be created for you.

Fire Team Rate of Fire Condition improvement

The Fire Team Rate of Fire DKF condition was improved since it was introduced in the last GIFT release. In the previous version of this condition assessments were done over the weapon fires that happened since the last assessment. Meaning that for each author defined window of time (1,2,3,4 or 5 minutes), only the weapon fire in that window of time was considered for the calculation. This prevented events that were short in time from being assessed properly (i.e. the suppress enemy task only lasted for 45 seconds). This new version allows the author to specify when the first assessment should happen (e.g. 30 seconds since the condition started) and how often after that assessment should future assessments happen (e.g. every 5 seconds). In addition the logic now includes all weapon fire events in its assessment calculations. There is still ongoing discussion on whether further improvements are needed such as knowing which weapon system is firing/not-firing and whether more recent weapon fire events should have higher weight than those in the past.

xAPI statements

Building upon improvements from the last GIFT release, GIFT produces even more xAPI statements. Recent changes involve:
  • new xAPI statement for GIFT environment adaptation (e.g. change time of day to midnight)
  • chain of custody in statements (i.e. provide a reference back to the GIFT instance that created the statement, e.g. IP address, GIFT version, GIFT build date, GIFT folder path, etc.)
  • bookmarks/notes
  • team member assignments to learners (e.g. squad leader is played by mhoffman)

In addition a GIFT xAPI profile is now available.

To see the latest visit xAPI Statements.

Learner State across courses

In all previous releases of GIFT not much about the learner was shared across courses. Most of the learner state was built while in a GIFT course. There was some logic to share attributes (e.g. Grit) classification from a survey but even that logic was limited. Now with the help of a connected LRS (e.g. Learning Locker), GIFT initializes a learner state with historical records. When you take a course you may notice a slight delay, which is when GIFT is retrieving and building this state. The now cached learner state will stay in memory for 24 hours after the last time you were in a course in order to alleviate this delay upon starting the next course. Now learners are asked if they would like to skip scored surveys and adaptive courseflow course objects based on the learner state information GIFT has at the moment, either from within or outside of that course execution.

Survey improvements

The ability to include media in a survey has been greatly improved. In the past authors could only upload an image file and show that inline in the survey. Now users can upload any media type, or any file for that matter and that file is placed in the course folder (It counts toward your personal workspace disk quota when in cloud). Videos, images and audio files will automatically be shown inline in the rendered webpage with any appropriate player widget necessary. If another file type is given a hyperlink will be shown allowing the browser to handle the delivery of that file type (e.g. a hyperlink for a pdf might open that pdf in the browser while a hyperlink for a zip would download that zip). This was also applied to the summarize and highlight passage remediation activities as part of ICAP in the adaptive courseflow and training application course objects.

Note: the drop down widget for picking images for surveys is being deprecated due to this work. That widget allowed any user access to any other users uploaded image.

Course sharing

Take Course permission

Added a new course sharing permission type that prevents a user from opening the course in the course creator. This can be useful for students assigned to take a course or when you don't want a user to see the answers to a test/quiz.

Bulk sharing of courses

Now owners of courses and managers of published courses can add/remove multiple shared users at once. In the past the share dialogs only allowed manipulating the share setting of one user at a time. To share with multiple new users at once simply upload a properly formatted csv file. Visit the updated share dialogs for more guidance.


  • Courses on the take a course page can now be accessed on the Published Course page allowing for report generation and data extraction.
  • Add authorable option to make Question bank and Adaptive courseflow course objects Mandatory
  • using relative paths when possible during GIFT builds and starting logic to avoid command too long type errors
  • fixed location based DKF Task start trigger not firing when in a multiple learner DKF
  • fixed issue where course tiles on the take a course page were missing recommended/refresher icons when the course used course concepts
  • changes to third parties:
    • updated tincan to version 1.1.2
    • updated Jetty to version 9.4.41
    • added GRPC
    • added Guava
    • added Open Census
    • added Perfmark

Test Procedures

Over the years we have collected a series of official test procedures for various parts of GIFT. We try to keep these procedures up to date with the latest user interface changes. We also create new ones as needed. Feel free to use these as a step by step guide to learn about how you can use GIFT.

2021-2 Test

newShareOptions.Capture.PNG View (64.4 KB) Hoffman, Michael, 10/25/2021 11:08 AM

SESandbox.Object.Capture.PNG View (80.9 KB) Hoffman, Michael, 10/25/2021 11:10 AM

fireTeamRateOfFireNew.PNG View (160 KB) Hoffman, Michael, 10/25/2021 11:42 AM

summativeAssessmentDialog.PNG View (514 KB) Hoffman, Michael, 10/25/2021 11:48 AM

ingame.SESandbox.png View (1.19 MB) Hoffman, Michael, 10/29/2021 10:23 AM

landing.SESandbox.PNG View (65.4 KB) Hoffman, Michael, 10/29/2021 10:23 AM

roleSelection.SESandbox.PNG View (1.6 MB) Hoffman, Michael, 10/29/2021 10:23 AM

2021-2 Test (7.37 MB) Hoffman, Michael, 06/15/2022 01:17 PM