Word Lists

From GCompris
Revision as of 13:11, 15 May 2013 by Karin (talk | contribs) (Simple Letters (Typing letters) level design)
Jump to: navigation, search

Activities that use Word Lists

There are several activities that use the Word List format:

  • Wordsgame (/computer/keyboard/wordsgame)
  • Simple Letters (/computer/keyboard/gletters)
  • Reading-h and Reading-v (/reading/readingh and /reading/readingv)
  • Hangman /reading/hangman

We will first explain how the file format works, then take you through the level design.

Format

A word list looks like this:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<GCompris>
<Wordlist name="default-en" description="Default English (Canada)" locale="en">
<level value="1" speed="150" fallspeed="7000" sublevels="10">
I
a
am
...
</level>
<level value="2">
able
also
army
aunt
baby
...
</level>
</Wordlist>
</GCompris>

And this is what the tags mean:

  • Wordlist: Some general information about the file
    • name: this is identical to the file name (withouth the .xml at the end)
    • description: Add the name of your language here
    • locale: This needs to be the ISO code for your locale (same as the name of the .po-file)


  • level: Create a <level>...</level> tag for each new level
    • value: The number of the level, starting from 1. You can have as many levels as you want, but make sure you don't miss a number!


The remaining attributes of the level-tag are optional and used in Wordsgame and Simple Letters only. Use these if you feel that words/letters are dropping too fast or if higher levels get too long or lower levels too short - some languages will need more levels than English in order to teach everything!

  • level
    • speed: How fast new words appear
    • feelspeed: How fast the words drop
    • sublevels: How many words will have to be typed correctly in order to solve the level

Simple Letters (Typing letters) level design

This game drops letters o the screen that the child has to type before the reach the ground. So, what you will provide here is the alphabet of your language rather than whole words. However, we use the Word List format for this, because it lets you control which letters to teach at which level, according to the needs of your language. Also, you can use multigraphs (sounds that consist of more than one letter, for example sh in English or sch in German for the sound /ʃ/). The game has an uppercase and a lowercase mode (set with Configuration while you play the game). So, you will need to provide two files:

src/gletters-activity/resources/gletters/default-<locale>.xml
src/gletters-activity/resources/gletters/upper-<locale>.xml

If your language doesn't distinguish between upper- and lowercase letters, pease feel free to 'misuse' these two modes to fit your needs. If you do that, you will need to adjust your translation of the level configuration in the .po-file accordingly.

When teaching new letters, you can use the sublevels attribute to make sure that all letters in a level are presented: Here's an example from the gd locale:

<level value="10" sublevels="12">
bh
ch
dh
fh
gh
mh
ph
sh
th
ll
nn
rr
</level>

Word list level design

Here are some level design suggestions for you. Of course, you can do as best fits your language!



Providing a General word list

To get started, you can provide a single word list file for your locale named: src/readingh-activity/resources/wordsgame/default-XX.xml Where XX is your target locale. You can pick the english file from our git repository to get an up to date example.

If you provide only one word list, please note that all words must be chosen to be simple in your language; don't necessary translate the English. Also, it is important to make sure that these words can be written with your keyboard in one key (no alt gr stuff or compose key). We will explain more about fine-tuning word lists for different activities below.

In order to be useful, this list must contain about 1000 words. If you can, pick the words from a school children book or wiktionary.

There should be at least 5 level sections which contain:

Here is the format description:
Level Word Length
1 < 4 and very easy to type
2 = 4 or < 4 not so easy
3 = 5
4 = 6
5 > 6

There are currently three activities that use this word list:

/computer/keyboard/wordsgame
/reading/readingh and /reading/readingv
/reading/hangman

You can provide separate word lists for them if your language has characters that are more complicated to type and that you would wish to teach. We recommend that you provide a separate list for the Hangman activity in any case, which basically just means reversing the levels.




Wordsgame (Typing words)

This is a typing game. Unless your language has characters that are difficult to type, just follow the rules layed out above for English. If your language has letters that require more keystrokes than simple letters, it is best to keep these letters out of the lower levels. Create a level higher up that will introduce them with some shorter words, then start to mix. Keep the words with complicated letters in them shorter than the other words, and keep in mind that they also require more thinking, not just more keystrokes! The number of levels is flexible, so if there are complicated letters to learn, you can create as many levels as you need to introduce them.


Example:
Level Word Length
1 2 - 3 simple letters
2 = 4 simple letters
3 = 5 simple letters
4 = 6 simple letters
5 2 - 3 accented letters
6 = 4 - 5 accented letters
7 = 7 - 14 simple letters, 5 - 10 accented letters


Reading

In this game, words on the same level should have the same length. Just follow the rules layed out above for the general word list, except that you can have letters in there that are complicated to type. This is a reading activity, so typing doesn't matter here.

Hangman

For Hangman, take your reading list and reverse the letters. Short words are harder than long words in hangman! Remove all words that are longer than 10 letters, because they won't fit the screen.

Note that this game supports complex letters, e.g. <sh> makes a single sound in English, so you could design the game to have a button with "sh" on it if you want. The letter buttons are defined in the PO-File. The PO-File also provides an option for keyboard shortcuts for complex letters. For example, if I have both "s" and "sh", if I type <s>, "s" gets selected. However, I could define "sh=S" in the PO-File, so when I type uppercase <S>, "sh" gets selected.