Random Language Generator

A Program to Generate Constructed Languages
and assign one of several writing systems
by Ted Reynolds

Random Language Generator Main Screen

Introduction

This program has been a labor of love for more than the past 16 years. I have worked on it from time to time as my interest waxed and waned. And now having finally reached the point where I feel it is useful, I am doing its first public release. Note, though, the program is not where I think it is complete, just it can be used to generate your own unique languages. And as my interest is at a major waning stage, I wanted to get it out before my interest was completely gone to see if there are any more folks out there who find it fun and useful. Thus I am releasing it to see how much interest there is and if I can get any encouragement to continue development or get help developing it.

Once an a priori language is generated this program can also translate from English to said language, showing both the pronunciation and written forms, as seen in the left image below - a language generator program wouldn't be very useful without this ability IMHO. You can also just transliterate, if that is what you want, to see what english looks like in the chosen writing system as in the right image below. The same two sentences are translated or transliterated.

RLG Translation Dialog  RLG Transliteration example

Features

  • Generates a language based on rules you set
  • Uses syllable patterns and Part of speech rules to generate the words
  • Syllable patterns can be simple or complex
  • Syllable patterns can be set to change in the words or be the same for the word
  • Part of speech changes can be prefixes or suffixes or change the first or last syllable of the base word
  • Many preset writings systems can be used for generated languages
  • Settable maximum syllables in generated words
  • Instructions on how to use these and other features contained in the download
  • Can use Stangord Part Of Speech tagger during translation
  • Can build a directory dynamically during translation

Known issues

A list of things wrong with the program that I know of:

  • Occasionally will generate a word one syllable longer than set maximum
  • Does not handle abbreviations during translations - will cause translation to crash
  • Does not use base word when building dictionary durng translation
  • Does not parse sentences so that word order can be changed
  • English is the only input language
  • Structure of the code currently does not follow any standard - this doesn't cause problems with how well the program runs
  • Will occasionally give 'null' as the translation of a word

Future

Here's a list of things I was thinking on adding in the future:

  • Add sentence parsing for word order changes
  • Add other languages for input language
  • Add better base word calculation during translation/dictionary building
  • Create stand-alone translator for each generated language when saved

How to Contribute

If you want to see further development on this program you can either encourage my continued work by:

  • Contribute financially via paypal me
  • Contribute financially via Venmo - preferred they do not currently take a fee!
or doing some of the Java development youreself by downloading the sourcecode linked below.

Downloads

Compiled Code

Source Code

RandomWordsII.zip

RandomWordsII-Source.zip

Installation

Prerequisite: Java 8 (JRE or JDK 1.8) Java 9 and later handle fonts differently and are not recommended.

 
  • Unzip the files from the downloaded file to a directory of your choosing
  • Do whatever is necessary on your platform of choice (Windows, Linux, Mac) to install the font LCS-constructorII.ttf
  • Do what is needed on your platform of choice to run a java program in a .jar file by double clicking on it