At the start of this semester, Rajat, our new programmer and experience designer was handed over the implementation of the user interface. As was mentioned earlier, Dustin was endowed the Creative Good Fund and was able to playtest the existing user interface with the entertainment staff at Give Kids the World. The most important things that we learned from these playtests was that the interface worked and was well received, but the volunteers wanted the ability to select the shows they wanted to play before they actually played them and also they go confused when presented with a lot of options.

I first decided to tackle the new show queue system, which would give the staff running Tom Foolery the ability to select the shows they wanted to play before they actually ran it. Through Creative Good Fund, Dustin developed a better understanding of the Intellectual Property & Mythology of the village, and the needs for daily operation. We used this knowledge to enhance show offerings by developing content that is suitable for various times of the day and events like when Sponsors and VIP’s tour the village. Something Dustin learnt about their operation was that they would always be running the start show and the end show and choose whether or not to run any of the middle shows and a big part of the redesign was to give them that flexibility and freedom to run Tom in any way they wanted.

The show queue system allows the staff to select one of the two start shows, one for daytime operation, the other for nighttime operation; optionally, choose from various middle shows that include various Dance Party shows, a Storytime show and an assortment of Seasonal Content and finally choosing the respective end show for either a daytime or nighttime operation. After the user has made the selection, they will be able to review the show queue selection before they start running through the shows to allow for any changes to be made to the selections.

Some of the other things that we fixed in the user interface was that the previous interface required the user to press next twice to actually play the next dialogue. I changed this interaction to allow the dialogue to be played on a single button press. Since, the interface is built using JavaFX and every page is a new FXML file, I decided to keep each show to it’s own FXML file and refreshing the screen on dialogue change instead of loading a new page every time a new dialogue was loaded like the old system. This helps in optimising the application and reduces any undue load on the system. I also added extra response buttons in Dance Party and Storytime where the staff could choose to add “Yes” to the next dialogue if the guests already know the joke that Tom is performing and this allows him to feel natural, alive and conversant. We also reduced the number of extra responses that Tom had during Storytime so as to make them more manageable for the staff.

On playtesting our interface with the staff at the village we found out that if the staff pressed the button for the next dialogue too soon, Tom would snap to the idle position to start the next animation. To avoid this problem, we decided to fade Tom from its current position to the idle position on the button press in 1.5 seconds. This meant that the staff needs to be aware of the delay between animations and need to press the button about 1.5 seconds before the staff interacting with Tom has finished their dialogue.

by Rajat Gupta

Categories: Weekly Blog