I'm getting serious about a language database for Torn World, and looking closely at what's available. The short answer? Nada. What is available doesn't have the strength and flexibility I need for Torn World.
So, in Ellen's usual little red hen fashion, I'll do it myself, using some of the things I've learned through the crowdfunding of Sketch Fest.
Firstly, I want to make this script available for others, which means coding it separately from the Torn World website. Secondly, I'd like at least token payment for it. I don't need my usual freelance fees (I estimate this would be a $1000 project, at least. Maybe $2000, with some of the features I'm considering...), but I would like something to make it feel worth my time. No one person is going to want to pay that. But more than one person? Well, that's the beauty of crowdfunding...
Start at the End: The Final Product
An administration page (or possibly multiple pages) will enable global settings, such as: do words need to be approved, or are they approved immediately when entered (in case of group project where you want a second set of eyes)? How many drifted sub-languages? Word-length limits? Language rules (allowed blends, etc. - sub-languages will require specified exceptions/changes/drifting rules)? The allowed letters will include letter combinations, and symbols that represent sounds like clicks and hisses. This page (or these pages) will be password protected.
An entry page will allow the entering of new words and editing of existing. 20 or 40 per page seems reasonable - having one word per page seems like a hassle. Each word will have: English translation, new word, part of speech (drop-down), class (drop-down), notes (special information/longer definition) and as many drifted sub-languages as are specified above. When you enter a set of words, it will automatically search the database to make sure you haven't used that word yet, and possibly also find close matches, as well as warn you if you've accidentally broken a rule (but it will only warn you, not fix it for you, because exceptions happen).
Word generation tools would be an expansion option. Possibly with rules that you can specify at the time of generation (so, for example, you can generate verbs, with restrictions on ending, or nouns of a particular class). Gender is not something we utilize at Torn World*, so this option will not be added unless this feature is funded. (You would have to manually make sure that your words had appropriate gender, otherwise.) The word entry page(s) will also be password protected, but may have a different password, so that you could allow a wider group of people to add/suggest words than to control the language.
An approval page will allow you to view un-approved words and approve them.
A public search page will allow you to find words by searching any of the fields. You can list all verbs, for example, or search for the translation of 'can' (which may turn up a verb and a noun), or find out what firolk means in your language, or how it may have drifted in your sub-languages.
A basic search page would find only exact matches. An optional refinement would be to make it find parts of words, too, though not all of them may apply, in case you are looking for a compound word. (In this case, firolk translates to hexball, or six-ball. The database should find rolk = ball, fi(m)- = six AND firolk = hexball, a popular table-top game similar to pool, played on a six-sided table. Possibly there would be the option to add a link to the database, too, since, in the case of Torn World, there would be an article for Firolk!) Pagination is a must on these results.
A public overview page will list the major points of your language (as set on the administration page), point you towards the search page, and maybe display some random words from the database. You'd have the option to view clusters of words, or possibly all (with pagination). Menu options would suggest looking at major types of words available in the database (and maybe count them!).
An expansion option would be a phrase resource that collects and displays common phrases, with their literal translation and expanded meaning.
Another expansion option would be to link it to a database of names to double-check for use when creating a new word.
All pages will be protected from mysql injection attacks and built as simply and as securely as I know how. It will use basic css so that you can customize the look of it to suit your own site.
All donations and participation in the creation process will get you listed on a thank-you page associated with the project, with a link to your site.
Basic: A donation of $5 or more will get you a zipped copy of the final php pages and a blank sql table to use to create your own site using this script. I won't install or trouble-shoot it for you.
Bonus: A donation of $10 or more will get you a zipped copy of the final script and blank sql table, and a banner rotation for your project in my network of sites for 1 year.
Hosted: A donation of $50 or more will get you a banner rotation at my sites for 1 year, and an installed version of the final script, hosted at my site, with 5 years of hosting included. You will receive a subdomain at my site (ie: fredslanguage.ellenmilliongraphics.com),
Hosted Unlimited: A donation of $100 or more gets you an installed version of the script in progress, so you get a functional database almost immediately, and all of the goodies and improvements are added to your system exactly as they are developed. This can be hosted at your site (you will need to provide me ftp and sql logins) or at mine, with perpetual hosting (never expires!). Banner advertising on your site is optional, and you may add a banner to my advertising rotation for 1 year.
If donations reach $1000, the final script becomes freeware, available for anyone to download and use.
The optional features listed above are added based on my enthusiasm, audience participation and funding. If we hit $2000, every option mentioned above will be implemented.
The script will be completed by the end of 2011, as long as total donations are less than $100. (Very likely, it would be much, much sooner, but it's a pretty complex system, and I want loooots of wiggle room for free and nearly-free work.)
The script will be at a usable stage by the end of 2010 and fully completed by February 2011, if total donations reach $500 before the end of October. (Again, could be much sooner, but definitely by then.)
The script will be completed within 6 weeks of total donations reaching $1000. At that point, it becomes a legitimately paid project that I can work into my schedule and give actual priority to.
Don't have money?
I am not a linguist, and I don't play one on TV. I've had to learn a lot about it in self defense, but do not, by any means, consider myself an expert.
If you contribute to discussion of the project and help me test features, iron out language-y wrinkles and generally help out, you can earn a Bonus package without paying a dime. The top TWO non-monetary contributors will receive Hosted packages. Participation is helpful, too!
Discussions are likely to occur here at livejournal, but I may set up a forum or other communication drop point (google group? email announcement list?) by popular request.
What if it doesn't happen?
I will refund all donations in full if something comes up and the project fails. I don't see that happening, but I've had unexpected things come up before - and made things right with the other project participants in every case, you are welcome to ask around. This is a commitment I've already made (to develop this for Torn World, where it's becoming a real necessity), and, in general, I follow through on my projects. Programming is something I do to pay the bills, and it becomes a professional project once money starts coming in on it, not just a happy-fun-speculative-maybe-happens thing.
Questions? Comments? Ideas??
* And to be very honest, I have only the foggiest idea of what gender even is. Did I mention that I wasn't a linguist??