It looks like you're new here. If you want to get involved, click one of these buttons!
Title: The Island of Doctor Wooby
Author: Ryan Veeder
Language: Inform 7
Developed: 2015
Play link: https://rcveeder.net/wooby/
In this text adventure, written for a virtual pet-themed game jam, the player visits an island populated by tiny felt dinosaurs. The dinosaur dolls are generated with different legs, necks, spikes or no spikes, teeth or no teeth...
This was all based on real dolls I had sewn, and given names like "Teggisaurus," "Dagadagadon," and "Mustadopagus." I wanted the generated dinosaurs to have generated names that were recognizable both as pseudo-baby talk and as dinosaur names.
(An extremely long commentary on the full dinosaur generation process is available for anyone interested.)
It strikes me that, in order to come across as stereotypical baby talk, the "roots" here run fairly long ("boofa," "smoosha"). When more than half of generated names contain more than one of these roots, I think you run into a lot of names that are too long to be, strictly speaking, cute.
A possible angle for discussion: Where else have you seen nonsense words generated to fit in a specific aesthetic? Do strategies for creating different "looks" for words have anything in common?
To name the current test subject:
let tempname be text;
let namecomponents be a random number between 1 and 2; [First randomize the number of "roots" that will be in the name. Right now it's 50% one root, 50% two roots.]
if a random chance of 1 in 6 succeeds:
increment namecomponents; [Now the distribution is 41.667% one root, 50% two roots, and 8.333% three roots. A dinosaur with three roots in its name turns out to be fairly inconvenient, so we will tone that third option down a little..]
if namecomponents is 3:
if a random chance of 2 in 3 succeeds:
now namecomponents is 2; [Sow now we're looking at 41.6% one roots; 55.6% two roots; 2.8% three roots.]
if namecomponents is 1:
choose a random row in Table of Long Name Suffixes;
now tempname is "[suffix entry]"; [A name with only one root requires a long suffix, since something like "Goomus" doesn't look dinosaury enough.]
otherwise:
if a random chance of 1 in 2 succeeds:
choose a random row in Table of Long Name Suffixes;
now tempname is "[suffix entry]";
otherwise:
choose a random row in Table of Short Name Suffixes;
now tempname is "[suffix entry]";
choose a random row in table of name roots;
now tempname is "[root entry][tempname]";
decrement namecomponents;
if namecomponents is greater than 0:
choose a random row in table of name roots;
now tempname is "[root entry][tempname]";
decrement namecomponents;
if namecomponents is greater than 0: [Instead of repeating a loop until namecomponents reaches 0 like a real programmer would, why not write out all possible steps]
choose a random row in table of name roots;
now tempname is "[root entry][tempname]";
decrement namecomponents;
Now the species name of the current test subject is "[tempname]" in title case;
now the printed name of the current test subject is "[tempname]" in title case. [The player can change the printed name of a dinosaur with a command like >NAME BUGGOBOGADON ALFIE.]
Table of Name Roots
root
"boofy"
"woofy"
"daga"
"boo"
"doo"
"goo"
"zoo"
"ruffy"
"smooshi"
"woobo"
"wooba"
"wooby"
"boofa"
"ragga"
"muffy"
"libby"
"zaka"
"bitty"
"itty"
"licky"
"grabby"
"buggy"
"buggo"
"dugga"
"duggo"
"grabbo"
"flippy"
"frumpa"
"smoosha"
"smooshy"
"darno"
"darmi"
"lecko"
"steggy"
"teggy"
"tyra"
"bumpo"
"humba"
"wumba"
"dunda"
"dooga"
"booga"
"boogy"
"oogy"
"wicky"
"slibba"
"normo"
"olly"
"goli"
"boli"
"doli"
"garda"
"cappy"
"pulla"
"wedder"
"veeda"
"josie"
"denny"
"dinky"
"rosy"
"ratty"
"hatty"
"chatty"
"darpo"
"poppy"
"gooby"
"linto"
"quibbo"
"bumpi"
"slibbi"
"gardi"
"veedi"
"denno"
"dinko"
"goobo"
"lizza"
"lizzo"
"harry"
"harpo"
"groucho"
"gummo"
"chico"
"zeppo"
"boga"
"goba"
"bago"
"gabo"
"dizzi"
"dizzo"
Table of Short Name Suffixes
suffix
"don"
"dax"
"nus"
"mus"
"rax"
"lus"
"lops"
Table of Long Name Suffixes
suffix
"saurus"
"dactyl"
"raptor"
"daptor"
"gaptor"
"zaptor"
"pitus"
"ceratops"
"cephalus"
"mimus"
Comments
lostpoets has some very aesthetic nonsensical words to describe the different categories of things -https://lostpoets.xyz/
I also think of poetry - https://www.poetryfoundation.org/poems/42916/jabberwocky comes to mind
@rcveeder I love the dedication to the sound of baby talk. I wonder if it wouldn't be useful to bring in a similar generator for comparison at this point, or rather set of generators, namely the ppg256, which share a certain construction ethos.
For example:
perl -le 'sub b{@_=unpack"(A2)*",pop;$_[rand@_]}sub w{" ".b(cococacamamadebapabohamolaburatamihopodito).b(estsnslldsckregspsstedbsnelengkemsattewsntarshnknd)}{$_="\n\nthe".w."\n";$_=w." ".b(attoonnoof).w if$l;s/[au][ae]/a/;print;$l=0if$l++>rand 9;sleep 1;redo} #Rev2'
Although, their "nonesense" tends to be more in the appearance of bigrams and trigrams in the code, rather than output. Still, they share at least the aspect of generating content out of syllables.
Actually, the piece that seems most in concert with this, might be @aparrish 's work Pincelate which is implemented in the Nonsense Laboratory.
I should mention I once created a similar generator, but it created names for Web 2.0-style apps. Their names weren't entirely nonsensical, but their services were. Nonetheless, I think any of them would have been in the running for some serious VC.
This is great to see! In my Inform interactive fiction Ad Verbum, from 2000, a child challenges you to a turn-basd game where you have to say more dinosaur than him.
SPOILER!
The child knows a lot of dinosaur names. Ad Verbum implements a dinosaur name discriminator, and you can win — and are expected to win — by making up fake plausible-sounding dinosaur names, which he will accept as legitimate.
This was before Wikipedia!
I'd love to see what the criteria for dinosaurish names in Ad Verbum are. In Doctor Wooby the saurianness seems to rely mostly on the suffixes and secondarily on the "root" segments being (almost) all trochees.
This will disappoint you @rcveeder but here it is!
The logic is simple and yet the Inform 6 is inelegant! You just have to say something ending in “saur” or “saurus” and not repeat the last fake name you said.
Awesome work with Doctor Wooby, @rcveeder, and Ad Verbum @nickm !
Sadly, it's not online anymore, yet I couldn't help recalling the online game 'Technosphere', by Jane Prophet, Gordon Selley, and Mark Hurry (from the 90s, there were 3 different versions). Also archived here on v2.nl.
I could find only images of the creatures, but, if my memory doesn't fail me, the name of the creatures was also a hybrid composition of different names... maybe a deeper search of webarchives can bring the names of these creatures back to life