Skip to content

Commit

Permalink
Updated documentation.
Browse files Browse the repository at this point in the history
  • Loading branch information
borgar committed Jun 25, 2011
1 parent 03ea548 commit d710400
Showing 1 changed file with 22 additions and 38 deletions.
60 changes: 22 additions & 38 deletions README.md
@@ -1,62 +1,47 @@
# Orðavinda # Orðavinda


Orðavinda is a simple JavaScript word game. Given a set of 6 letters, the Orðavinda is a simple JavaScript word game. Given a set of 6 letters, the
player must find as many correct words as possible before time runs out. In player must use them to find as many valid words as possible before time
order to qualify to play the next level, the player must guess at least one runs out. In order to qualify to play the next round, the player must guess
of the 6 letter word combinations. at least one of the 6 letter word combinations.


The game is written as an entry to [Þú átt orðið][1], a contest in creating The game is written as an entry to [Þú átt orðið][ordid], a contest in creating
solutions exploiting the Icelandic declension dictionary ([BÍN][2]). As such solutions exploiting the Icelandic declension dictionary ([BÍN][bin]). As such
it is icelandic-centric but can with minimal effort be made to work with other it is icelandic-centric but can with minimal effort be made to work with other
languages. languages.






## The Game ## The Game


The game must be run from a web server to work as it fetches levels via an The game must be run from a web server to work as it fetches levels via an
Ajax request. The game is comprised of 3 parts: Ajax request. The game logic is comprised of 3 parts:


* `vinda.js` - The main game logic. * `vinda.js` - The main game logic.
* `utils.js` - JavaScript utility functions. * `utils.js` - JavaScript utility functions.
* `vinta.sounds.js` - Sound extensions for the game. * `vinta.sounds.js` - Sound extension for the game.


The game requires [jQuery][3] JavaScript library to run. Additionally the The game requires [jQuery][jq] JavaScript library to run. Additionally the
[Soundmanager2][4] library is needed to enable sound support. [Soundmanager2][sm2] library is needed to enable sound support.


The levels have been cut down to a single demonstration level. You will need The levels have been cut down to a single demonstration level. You will need
to build a level collection using the tools provided. to build a level collection using the tools provided.




## Why are the sounds not included?

The sounds are not essential to the gameplay and take an unreasonable amount
of space. Also, including a one more library with yet another license
complicated things unnecessarily.

### How to add sounds:

1. Download [Soundmanager2][4].
2. Copy `soundmanager2.js` and `soundmanager2.swf` into the game directory.
3. Create the folder `sound` and copy some mp3 sfx files into it.
4. Edit `vinda.sounds.js` to reflect correct mp3 filenames.
5. Uncomment the sound script references in `index.html`.




## Why are the levels not included? ## Why are the levels not included?


The current license for *BÍN* does not allow redistribution or relicensing of The current license for [BÍN][bin] does not allow redistribution or relicensing of
the data under an open license. This may change in the future, in which case the data under an open license. This may change in the future, in which case
the levels will be bundled with source. the levels will be bundled with source.


You currently need to opt-in to the BÍN license and download it for yourself, You currently need to opt-in to the BÍN license, download it for yourself,
and build the levels with the tools provided. Users are urged to adapt the and then build the levels with the tools provided. Users are urged to adapt the
game for more languages buy building levels for other dictionaries. game for more languages buy building levels for other dictionaries.


### How to build the levels: ### How to build the levels:


1. [Download and unzip the *BÍN* data][6]. Specifically: `SHsnid.csv.zip` 1. [Download and unzip the *BÍN* data][bindata]. Specifically: `SHsnid.csv.zip`


2. Run `filter_bin.py` on `SHsnid.csv` to produce a manageable filtered 2. Run `filter_bin.py` on `SHsnid.csv` to produce a manageable filtered
subset of the dictionary: subset of the dictionary:
Expand All @@ -66,7 +51,7 @@ game for more languages buy building levels for other dictionaries.
3. Run `build_levels.py` on the output to produce the levels. 3. Run `build_levels.py` on the output to produce the levels.


`$ python build_levels.py dictionary.txt` `$ python build_levels.py dictionary.txt`

a
The output will be a large collection of JSON files, each one The output will be a large collection of JSON files, each one
representing a single level, written to the `game/level` directory. representing a single level, written to the `game/level` directory.


Expand All @@ -76,14 +61,13 @@ game for more languages buy building levels for other dictionaries.
## Licence ## Licence


The game and all it's parts not specifically marked as such are licensed with The game and all it's parts not specifically marked as such are licensed with
the [GPL free software licence][5]. the [GPL free software licence][gpl].





[1]: http://ordid.is/forsida/
[2]: http://bin.arnastofnun.is/
[3]: http://jquery.com/
[4]: http://www.schillmania.com/projects/soundmanager2/
[5]: http://www.gnu.org/licenses/gpl-3.0.html
[6]: http://bin.arnastofnun.is/gogn/


[ordid]: http://ordid.is/forsida/
[bin]: http://bin.arnastofnun.is/
[jq]: http://jquery.com/
[sm2]: http://www.schillmania.com/projects/soundmanager2/
[gpl]: http://www.gnu.org/licenses/gpl-3.0.html
[bindata]: http://bin.arnastofnun.is/gogn/

0 comments on commit d710400

Please sign in to comment.