From Abulafia Random Generator Wiki
Jump to navigation Jump to search

How Do I Use Abulafia?

Abulafia exists to give you cool ideas. Sometimes you need something as simple as a Fantasy Name. Maybe you need a whole Tavern. Maybe you need interesting Treasure. Abulafia wants to help.

Step 1: Find a Generator

You need to find the page on Abulafia that can give you what you want. You can browse down from the list on the Main Page, try the Search box on the left, or browse the Full List of available random generators. If you didn’t find what you were looking for, maybe you can help create it (See below!).

Step 2: Get Results

Most pages on Abulafia are random generators; they will give you new results from their seed ideas every time you refresh them. So, once you find a random generator that can give you what you’re looking for, open up a text file and copy/paste interesting results you get from Abulafia into it (you’ll want them later for whatever fiction you’re working on). Hit the ‘Refresh’ button in your browser and you’ll get a whole new set of results from the same generator.

That’s it! Go play with Abulafia!

How Do I Help Abulafia?

You help Abulafia when you contribute little bits of your ideas as fodder for Abulafia’s random generators. Because Abulafia is a type of wiki, anyone may edit the pages here to contribute ideas, or create new random generators to serve your needs.

Signing Up

Abulafia requires editors to have an account as an anti-spam measure, nothing more. Abulafia does not use your email address for anything other than password reminders, and your information won’t be sold, rented, loaned, pimped, or abused.

The first time you try to edit a page (by clicking on the edit tab at the top of the page), Abulafia will prompt you to login or create an account. Once you have an account, you’ll be allowed to edit pages and contribute to Abulafia.

Adding to an Existing Generator

Abulafia has lots of generators, but most are the work of only one or two authors, and that limits their imagination. Luckily you came along! Behind the edit button, generators on Abulafia are mostly just lists consisting of a relative probability and a possible result. Take, for example, part of the MonsterParts tables that lists possible preservation substances:

2,salt packing
2,pickling fluid
2,clear gelatin
2,clear syrup

2,salt packing
2,pickling fluid
2,clear gelatin
2,clear syrup

So we see that right now, brine, alcohol, and oil are the most popular choices for substances in which to preserve Monster Parts. But wait – no formaldehyde? Let’s add it to the list! Click ‘edit’, then just type it in, assigning it a relative probability (right →):

Click the ‘Save Page’ button at the bottom, and you’re done. It’s now part of the possibilities for that generator. You might not see it for awhile, even clicking refresh as fast as the page reloads – some generators have millions of total possibilities, and part of the fun is seeing what comes up each time, even if it doesn’t include the options you just added. Eventually, it’ll be selected as part of a result.

So, find a generator that you think you might be able to contribute some new ideas to, click ‘edit’, and start adding your ideas to the lists there. Be courteous and try to respect the generator’s original intent by keeping your relative probabilities reasonable and your contributions on-topic.

That’s the simplest way to contribute to Abulafia. There’s lots more, but that’ll get you started.

Calling Subtables

For most generators, you will have several subtables. For example, many name generators consist of lists of male first names, female first names, and surnames. A main table may have occasion to include results called from one of its own subtables. This is done by putting the subtable name in square brackets, like [subtable]. For example:

1,[malefirst] [surname]
1,[femalefirst] [surname]




Results from the called table take the place of the tablename itself, but other formatting, such as the space between tablenames, will continue to be present in the final results.

Additionally, generators on Abulafia are able to incorporate results from any subtable on ANY generator. This is done using the format [Page Name.subtable]. Here is my Pseudo-Beatle Names main table, substituting in results from the first names available on SGNP cowboys, but keeping the surnames table as above:

1,[SGNP cowboys.malefirst] [surname]
1,[SGNP cowboys.femalefirst] [surname]

Easy, right? If you don't know the names of the subtables on a page you're hoping to incorporate, go to the page, 'Edit', and see what they're called.

Modifying output

Sometimes, when output is used within a phrase, the stock output may need to be modified. For example, output from a table used at the beginning of a sentence would need to be capitalized; inside a sentence, it would not. For these situations, the solution is a MediaWiki extension, the ParserFunctions. Of the available options for this extension, most commonly used will likely be the ucfirst command which, when used like {{ucfirst:aardvark}}, yields Aardvark.

For more advanced functions, like choosing proper articles (‘a’ or ‘an’ based on the next word), and plural-izing strings, custom Templates are needed. See Template:Plural and Template:Article for use of these Templates.

If you’d like to design your own advanced templates to handle these or other text-manipulations, MediaWiki’s documentation on extended ParserFunctions or StringFunctions may be useful.


  • When previewing articles, the preview lags one edit cycle behind the generated content. Preview twice to preview the latest content.
  • Shorter can be better in Abulafia: shorter lines within the files maximizes the recombinant potential of each text snippet.
  • Mediawiki supports full UNICODE, so if it helps, symbols/dingbats can be used (Quick NPC uses ♀, ♂, etc.)
  • Subtables expected to be referenced externally needn’t be named overly specifically since all refs to external gens include the filename; thus, in an “Animal” gen, a subtable for fuzzy animals needn’t be named “fuzzyAnimal”—“fuzzy” alone will do (it’ll be invoked by “Animal.fuzzy”).
  • Read Help:Categorisation so you can categorize your creations consistently.
  • Keep periods out of your page titles, as they break generators.
  • Search for existing tables before creating a new one - the generator you want to create may already exist and you can add to it instead. Search for both the singular and plural form of words, as the search function treats these as completely different words. You can also use * as a wildcard character.
  • The #replace parser function has a 30-character limit on both the string being searched for and the string to replace it with.

Code Comments

Table comments are far too rare and underused in Abulafia; a few well-placed ones can go a long way. MediaWiki comment tags work within tables, but you can also use entries with probabilities of 0 (eg. "0,Note what I did here"). Probability of zero means it will never return, and is an effective way of documenting how the table should work.

Here is a more detailed example

0, This is my main table
1,option one
1,opt. B
1,option 3

0, this is a subtable; it will show up 25% of the time when called above

See Also