Themes for Language, Graphics, and Sounds

The basic purpose of themes is to make the system as flexible as possible on the lowest levels of design. User interface activities should all be separated out by designed so that new versions of the user interface can be developed by anyone without modifying the application engine. 

Much of the language is driven by the gnowledge content that is, the questions that make up the game. That content is developed and loaded into the application. That content can also include its own images at any level. But developers could develop alternative versions of their content that is selected by the theme chosen by the user. 

App Engine  --> Theme --> Gnowledge content ---> User Experience
                               ^                      ^
                      Theme File         Gnowledge File  


 However, certain aspects of language and its appearance are part of the application engine itself. For example, what the application says when an answer is correct or incorrect. Graphics, sounds, and animations that are also part of the user experience should be part of the theme package. This "meta" information lies outside the gnowledge content. This means it must be driven by another set of files. These files define the "theme", that is, the look and feel, of the application environment. A basic English theme with standard terms would be part of the application, but that basic file could be replaced by alternative versions. 

For example, the terms and images used for the Reward Systems, might be very different for different application and users. Points might be tracked as coins in one application and as points in another. Various "powerups" might be called by different names depending on the experience the developer wanted. 

Langauge Themes

Different themes could be in different languages, apart from the language of the application. Basic theme 

Content Themes

Themes can be created by the content developers and associated with their content. For example, an application that teaches astronomy might use a very different theme than one that teaches Egyptian history. 

User Themes 

Themes might also be chosen by the users. This is especially important for younger players. For example, young boys might choose a sports theme with sports types rewards for learning a given type of gnowledge while young girls might choose a flower them for the same application content.