Robonk AI Comic Strip Improvements

The software that builds Robonk has been significantly retooled for the next 256 strips. Lots of changes have happened. The rendering of the robot has become more rich, the robot has changed ever so slightly (and gained a new rug), panels are generated entirely in a new version of Bubblematic called Panelmatic (plus Titlematic for generating the title pages), the dating profile database has been reloaded, and there’s mild improvements for the script generation system.

New look and software

Robonk #00200-02

New robot rendering

The robot views are now rendered in POV-Ray, a “high-quality, Free Software tool for creating stunning three-dimensional graphics”. POV-Ray allows for a series of still images to be rendered with lighting effects. Being a command line tool that accepts options arguments, I was able to use PHP-CLI to call for the full series of angles and facial expressions needed to generate the panels for the strip.

Slightly modified robot with a new rug

Robonk (the robot) looks about the same, but there are changes:

  1. The tablet was shortened. It cuts less through the robot’s arm than before.
  2. The mouth and eye whites have been mildly moved from where they were. The eyeballs still stick out.
  3. Tiny changes to body element sizes.

The biggest change is the new rug. Before, it was the workplane in TinkerCAD, and now it’s an “actual” drawn rug.

Panelmatic/Titlematic

  • Main Panels: Originally, the panels were composed in Photoshop with screenshots from TinkerCAD (strips #00000-#000FF). Later (strips #00100-#001FF), strips were created from Bubblematic (which drew the talk bubbles and fade background) and TinkerCAD (robot, chair, and rug) then merged together in Photoshop. The main panels are now generated in a browser-based program called Panelmatic (which was created from the older Bubblematic).
  • Texas Instruments Dataman educational calculatorTitle Panels: Title panels were originally made in Photoshop, using an action to scale and rotate the text on the robot’s tablet for each strip. Now, this is all done via Titlematic, a new tool using a web browser to generate the title panels. The title font for the strip was changed (with inspiration from the Texas Instruments Dataman educational calculator from 1977), the tablet has a new font, and the scene uses a different angle plus updated graphics from POV-Ray.

The biggest change with all of this is that Photoshop and TinkerCAD are no longer needed to generate a comic strip. A big savings in creation time while having an improved look. Using Titlematic is a multiplier (maybe 5x) faster than using Photoshop. Panelmatic also saves a significant amount of time while creating a nicer looping strip, though a chunk of those gains existed with the predecessor (Bubblematic).

Dating profile database reload

The database load was dirty (beyond just the content in the tables) and there was missing data. Everything was rebuilt/reloaded and now there’s more available profiles to draw from, and they’re more complete as well. The next set of strips (#00200-#002FF) will have more usernames on the title panels by percentage than before because the database is more complete.

Script generation

Behind the scenes, the script generation system Robonkers has seen mild improvements, which make everything easier to work with. It rejects a higher percentage of profiles compared to the earlier versions, but there’s more overall profiles to work with because the database reload increased the overall amount of accessible profiles. The character name for the human in the source dialogue is now “human:” rather than “you:”.

In conclusion

Robonk is ready to go for another 256 strips, and this will be the basis for the next 256.

Hello World

Normally, there isn’t a computer-related topic covered in a Robonk comic strip. Today, strip #00200 was an exception.

Robonk #00200

There’s a lot of truth to the saying that “if you have to explain it, it isn’t funny”. Thankfully, some viewers will get the joke, and also, it’s just one strip rather than a series.

Okay, what does it mean?

“Hello, World” is a common starting point for working with a programming language. It was created by Brian Kernighan, who is best known for writing the book The C Programming Language with Dennis Ritchie, creator of the language (and co-creator of UNIX).

Two programming languages, Perl and PHP, are used for the Robonkers system that generates scripts for the comic strips. Below are ways to Hello World in Perl and PHP.

Perl:

print "Hello World\n";

PHP:

<?php 
print "Hello World\n"; 
?>

The escape sequence “\n” in the above examples is for a new line and was popularized by the C programming language.

Robonk AI Comic Books

AI Comic Books

The first 256 strips Robonk book and the two coloring books for adults

Door Key Publishing logoThe first Robonk books are designed, printed, and bound! There’s three books total:

  • The First 256 Strips (#00000-#000FF)
  • Coloring Book for Adults!: #00000
  • Coloring Book for Adults!: #00001

All are self-published under the Door Key Publishing name. “If it’s hilariously awkward, it’s Door Key.”

The First 256 Strips

As the title says, it’s the first 256 strips in the original style. Includes source info for the strips, plus the blog posts from that era are in the back of the book. I never thought I’d write a book, but come to think of it, artificial intelligence (AI) and online dating profiles wrote most of it, not me. There was a chunk of data migration and programming that created the book, with most of the pages completely (or partially) built in PHP using the TCPDF library.

Book structure diagram

Diagram from the book, showing how the strip pages and source pages work

The book features all of the original 256 strips plus the source, which is available at Robonk.com by clicking on “Source” under each comic strip.

Coloring Books for Adults!

AI coloring bookThis was an afterthought. Figured I could make coloring book versions of many of the strips. Wrote some software to convert the panel art into line drawings, then more software to convert the completed panels into pages. Had enough useful strips to make it two volumes. The coloring books are entirely made from strips from the second 256 set (#00100-#001FF) and were built into books by PHP/TCPDF. Each page features one strip (minus the title panel) plus the “Posted in” information from Robonk.com (WordPress) and a QR code with a link to the strip. The books not sent through USPS Media Mail come with red and blue crayons.

What’s next?

There will likely be a compilation book for the second 256 strips at some point, but I’m currently working on the new look and software for strips #00200-#002FF which will debut in early 2022.

Three Years of AI Comic Strips

3 years and 512 completed strips later, Robonk lives on!

Thanks to the Robonk fans.

It’s fun to build out a radical concept as a series. Fun to see that it works. Life is awkward when you’re a dorky guy with an undergraduate degree in communications and you have a comic strip series you don’t write or draw, and here I am. The strangest it got was at a Comic Con last year, where a surprising amount of the reaction to Robonk could be translated to “you ain’t one of us”. Imagine being the outcast to the (often) self-proclaimed outcasts. That happened. Such is life when coming up with the new things. On the upside, creating a new genre of comic strip series is awesome!

Robonk Coloring Book

Preview of the Robonk coloring book look

So what’s ahead for Robonk? A pile of stuff, actually, including…

  • The first Robonk book. It’s done but hasn’t been published yet.
  • Robonk coloring book: That’s right, Robonk coloring book!

Thanks to…

We’re over half way to strip 1,000… …and beyond!

Sunday Comic Strip Test

At the time of writing (January, 2020), Robonk is still three days a week. Every Monday, Wednesday, and Friday there’s a new strip and each one is three panels plus a title panel.

What would a larger Sunday style Robonk look like? I found an AI “conversation” that didn’t split well into multiple day strips but had enough dialogue for a Sunday strip with seven panels plus a title panel. Here it is. There’s no plans at this time for Sunday strips at all, and this strip is the first to not have a Session ID since the alpha level strips back in March, 2017.

Source
 ----------------------------- 
|           D A T A           |
 ----------------------------- 
9645859

SINGLE_FEMALE_SEEKING_MALE (4) Single female, seeking male

Age/Gender: 27F
need someone who can tease me...
150lbs
Height: 5'6"

Want someone who can take control of my body and make me moan with pleasure...

Really like a guy who can be honest about his relationship, whether that means you're single or attached. We are all here for a reason and sometimes it is nice to be able to talk about what we are missing in life. Looking to find one person that I can have fun with on the side, not multiple guys. I am disease and drug free, and expect that you are too!

Would really like to try new experiences. Have some hot things to do on my Bucket List... I have a wild side, and would like to be able to show it...

 ----------------------------- 
|        C H A T L O G        |
 ----------------------------- 
Welcome to your therapy session.
Your therapist's name is Robonk.

Robonk:	Is something troubling you?
you:	need someone who can tease me...
Robonk:	Are such questions much on your mind?
you:	Want someone who can take control of my body and make me moan with pleasure...
Robonk:	Your body and make you moan with pleasure?
you:	Really like a guy who can be honest about his relationship, whether that means you're single or attached.
Robonk:	Have you asked such questions before?
you:	We are all here for a reason and sometimes it is nice to be able to talk about what we are missing in life.
Robonk:	What answer would please you most?
you:	Looking to find one person that I can have fun with on the side, not multiple guys.
Robonk:	Why do you say Looking to find one person that you can have fun with on the side?
you:	I am disease and drug free, and expect that you are too!
Robonk:	Do you know anyone else who is disease and drug free?
you:	Would really like to try new experiences.
Robonk:	Does that have anything to do with the fact that your body and make you moan with pleasure?
you:	Have some hot things to do on my Bucket List...
Robonk:	Why do you say your Bucket List?
you:	I have a wild side, and would like to be able to show it...
Robonk:	Can you elaborate on that?

 ----------------------------- 
|   S C R I P T   N O T E S   |
 ----------------------------- 
SUNDAY 7 PANEL

FORWARD
you:	I want someone who can take control of my body and make me moan with pleasure.
Robonk:	Your body and make you moan with pleasure?

DOWN
you:	I really like a guy who can be honest about his relationship, whether that means you're single or attached.
Robonk:	Have you asked such questions before?

DOWN
you:	We are all here for a reason and sometimes it is nice to be able to talk about what we are missing in life.
Robonk:	What answer would please you most?

DOWN
you:	Looking to find one person that I can have fun with on the side, not multiple guys.
Robonk:	Why do you say looking to find one person that you can have fun with on the side?

FORWARD
you:	I am disease and drug free, and expect that you are too!
Robonk:	Do you know anyone else who is disease and drug free?

HALF
you:	I would really like to try new experiences.

FORWARD
Robonk:	Does that have anything to do with the fact that your body and make you moan with pleasure?

AI Comic Strip Changes : New Look, New Software

Most comic strips evolve. Peanuts did. Dilbert did. Beetle Bailey did. I’m not saying Robonk is in the same league at all. What I am saying is that the cartoonist learns and evolves their strip. That’s a real thing.

Here’s the visual changes to Robonk in the first two years:

Alpha level : Spring 2017

Gotta start somewhere.

v1.0 : First real Robonk strip (#00000)

The robot got its own font. The title panels were massively improved.

v1.05 : (#000B9)

Same basic system as before, but some technique changes were developing. Robonk is generally zoomed in more and the talk bubbles at this point often have elements overlapped on top. Font size was reduced. This was the 177th strip.

v1.5 : (#00100) : The new look

The Robot is generated the same way as with the Alpha level strips (Tinkercad) but…

  • The bubbles have new individual looks for the robot and the human.
  • The human has a new font.
  • The background has a blue fade.
  • The bubbles are created using a newly written (just for Robonk) jQuery/HTML/CSS system called Bubblematic.

Bubblematic makes creating strips much, much faster. I used to spend a large chunk of time building the quote bubbles. Now, Bubblematic handles that quickly and with precision. Automation made the ELIZA AI writing process much more efficient (Robonkers system), and now the drawing side has a custom software tool too.

Here’s a screenshot of Bubblematic v1.0. I normally make prettier interfaces, but this is an inhouse tool for just me and it works nicely as is.

Bubblematic v1.0

Software doesn’t just write Robonk, it also draws the quote bubbles for the comic strip these days.

All the new software has improved the quality and speed of creating new Robonk comic strips. It makes me wonder what it’s like to actually write and draw a comic strip.

Robonkers : How Robonk Comic Strip Scripts Are Now Generated With AI

Robonk is very different from other comic strips. Most notably, it is written by 1960s-style Artificial Intelligence (AI) called ELIZA responding to online adultery dating profiles. The early process was to copy/paste the lines from the dating profiles into ELIZA. This process was notably more labor intensive than desired and time consuming. See the earlier blog entry for an idea of how things were done initially.

The comic strip created by Artificial Intelligence responding to actual online dating profiles.Robonkers is the new script generation system for Robonk. Robonkers allows me to edit profiles before they are fed into ELIZA, and then it runs all the conversations in one go. The resulting text is then manually edited for final scripts.

One of the advantages of running at a crude level early on with copy/paste is having a better idea of what the more advanced next system needed to do and how. After months of using the manual method and seeing what would help the comic strip, building the new system was pretty easy.

There’s still a ton of room for improvement for Robonkers, but as it sits, it’s far nicer than the earlier days using copy/paste. It processes 3000 profiles in about 15 seconds. That’s nice.

Jackalope vs. Jacalope

When you’re using artificial intelligence (AI) to write a bunch of a comic strip series, especially crude 1960s-style AI, it’s going to be awkward. That’s to be expected. There was that one time when the human said (in episode #00063):

Robonk panel 00063-02

…and then Robonk replied back with…

Robonk panel 00063-03

That’s going to happen when dealing with 1960s style AI. The humans have different issues.

The human lines in the Robonk comic strip come from online dating profiles. The humans also error, typically with spelling and punctuation. Here’s an example involving a recent strip. In one place, the human has jackalope spelled as “Jacalope” and of course Robonk repeats the error.

Robonk panel 0006E-01

Later on in the same person’s profile, they correctly spell jackalope:

Robonk panel 0006E-03

Upon further review, the term jackalope shouldn’t be capitalized. So, I’m now going back and correcting this edition of Robonk before posting it on the Robonk facebook page. It’s #0006E and can be seen here at Robonk.com. And yes, jackalope, like Robonk, is a portmanteau.

The Scott Adams Humor Formula

The video The Day You Became a Better Writer — Writing Tips from Dilbert Creator Scott Adams is worth watching from beginning to end. The section about the Humor Formula stood out to me (starts at around 21:30).

Here’s some quotes from Adams that explain the Humor Formula:
“I realized there was a formula to that makes something funny. Specifically, the formula is this: You need at least two of what I call the six dimensions of humor.”

  • Clever: “You recognize clever when you see it. It’s just combining things that people didn’t think you were going to combine, but yet you somehow made it work.”
  • Naughty: “Naughty is usually just sex or bathroom jokes.”
  • Bizarre: “Bizarre just means two things out of place.”
  • Cruel: “Cruelty is a staple in humor. Cruel just means something bad happened to somebody or you said something unkind to somebody. You know cruel when you see it.”
  • Cute: “Cute is usually just kids and animals.”
  • Recognizable: “Humor usually requires that you recognize something about the subject of the joke being like your experience or like yourself. It’s either like somebody you know, like you, but has to be familiar. Something you recognize.”

This quote stood out:
“If you look at the comic strip Calvin and Hobbs, there was a cute kid, and a cute animal, and the animal talked, and sometimes it was a stuffed animal, and sometimes is was a real tiger. So, he had bizarre and cute in every comic. And here’s the key: before he even started writing, he had cute and bizarre covered.”

I won’t audit the comic strip written by artificial intelligence (AI) software and online dating profiles known as Robonk, but I will note that a typical Robonk strip has clever, naughty, and bizarre, at least to some degree. When Robonk debuted in March of this year, a surprise was a person who found Robonk amusing in part because they had a friend with a series of disastrous online dating experiences. For them, it was recognizable. I didn’t think of that possibility, but there it was, at least for part of the audience.

I do recommend watching the whole Scott Adams video. Informative and not excessively long.

When Artificial Intelligence Writes a Comic Strip

The comic strip series Robonk isn’t written by the creator/editor. Instead, text comes from a 1960s-style artificial intelligence (AI) program responding to online dating profiles. So, about half of it is written (or repeated, anyway) by Chatbot-Eliza-1.06 (modded to state the name as Robonk instead of Liz) and the other half comes from humans looking for sexual encounters.

To date, the script process isn’t too sexy, and I’m doing a lot of copy/paste to get things rolling. At some point, I’ll probably automate out the current rough script process, but I’m not there yet. There’ll be some waste in that process because adding punctuation where the humans failed sometimes makes the difference between a script that works and one that doesn’t. Here’s a screenshot of what the process looks like in June of 2017. This work will most likely result in comics in the #00040-#0005F range.

Lots of copying and pasting to create scripts in June 2017.

[Editor’s note (2019-02-01): Script generation became far more automated after the creation of the Robonkers script generation system in the fall of 2018. The post you are reading explains how things were done early on.]  

If you ever wonder what the text was like in and out of the AI, there is a “source” link with every comic and you can see what the software wrote in response to the human.

Robonk #00042

The script in the earlier screenshot ended up becoming Robonk comic strip #00042.

I keep learning from the earlier strips on what works, what doesn’t, and what can be improved. It’s an odd comic strip in that I don’t write anything, so what I do from a narrative perspective is really, really, really limited.

Robonk is a Portmanteau

An obvious question with a new comic strip is what to name the main character. I didn’t have a name out of the gate, so I had to come up with one. I figured it would be nice to have a name that was:

  1. Distinctive
  2. Memorable
  3. Containing a tie-in with robots and/or psychology
  4. Available as a .com domain
  5. Short

I played around with some names based from famous people in the psychology field, but ultimately ended with a combination of two terms, which makes the name a portmanteau. From the Wikipedia page for portmanteau:

A portmanteau (Listeni/pɔːrtˈmæntoʊ/, /ˌpɔːrtmænˈtoʊ/; plural portmanteaus or portmanteaux /-ˈtoʊz/) or portmanteau word is a linguistic blend of words, in which parts of multiple words or their phones (sounds) are combined into a new word, as in smog, coined by blending smoke and fog, or motel, from motor and hotel.

The portmanteau that is Robonk comes from:

  • Robot: The term robot originated from Czech “robota” for ‘forced labor.’
  • Bonk: A common slang term for sex in the 1970s and 1980s was bonk.

Combine Robot and Bonk and the resulting portmanteau is Robonk.

The Throw Rug and Shadow of Robonk

Sending an idea to a friend for some feedback. Throw rug is a go.

A few of the key design decisions made in the first 48 hours of Robonk included:

  1. Use of Tinkercad for the source 3D drawing of Robonk, the chair, and the clipboard.
  2. Use on screen rendering in the edit mode of Tinkercad for screenshots of the “drawings” used in the comic strips.
  3. Having the shadow come off of Robonk.

I was deliberately going for some character in the drawings, and the screenshot method worked there. After all, the land of comic strips isn’t dominated by 100% reality nor perfection, right?! Exactly.

Some of the character of the illustration style that shows through is the odd nature of the throw rug under Robonk’s chair. That is the workplane from Tinkercad, and if you look closely at the far left corner of the rug when it’s visible, you’ll notice the text “Workplane” is present. Pictured below is a closeup from the bottom left corner of frame 03 from strip #00004.

Before taking a screenshot, sometimes I have to resize the workplane so the shadow will be from Robonk rather than his chair. Shouldn’t it be on both? Technically yes, but this is a comic strip. Any time you add manual intervention and verification to a system, you’re asking for the occasional failure. Here’s frame 02 of strip #00007 as originally released:

Here’s the fix that was released later:

Consistency isn’t as critical with Robonk as other projects (commercial or hobby) I’ve worked on, but it’s nice to have things within whatever standards have been set.

Comic Strip Font, Size, and Proportion

Being new the at comic strip game, something I’ve struggled with a bit is fonts, specifically the faces, weights and sizes.

We’ll start with one of the initial five alpha-level strips.

Robonk strip

One of the first five strips. That’s the font I went with for the human and Robonk.

I chose that size and that font and went at it. I received some feedback that a robot font and/or talk bubble might be fun for the robot. I like the cleaner bubble, so that stayed, but after playing with some computer theme fonts, I found a winner. The human’s text got lost a little though, so I bolded it up. Balance achieved.

Did I pick the best font size out of the gate? Probably not. So, time for some trials. This is strip #00000 with the original font size, everything at 90%, and everything at 80%. This is not a perfect trial because with the smaller type, I might have gone with a different line breaks, but it gets across the basic idea all the same.

100%

Pre-release text trial at 100%
(View larger version)

90%

Pre-release text trial at 90%
(View larger version)

80%

Pre-release text trial at 80%
(View larger version)

I decided that 90% was the winner and am going with that. Time will tell whether that was a reasonable decision or not.

A Brief History of Robonk

Brock at Border Town Comic Con 2017

Brock at Border Town Comic Con 2017 in Ontario, Oregon

A friend let me know a Comic-Con was happening over the weekend and wondered if I wanted to go. I thought it would be fun to debut a comic strip that day, but I didn’t have one. So, I created one.

I started working on Robonk around noon on 2017-03-09 and by noon on 2017-03-11 I was debuting the comic on a small strip of a table in Ontario, Oregon. Some people didn’t quite get it, which is to be expected. Those that did really did like it however, and laughing ensued. This was encouraging. Robonk clearly isn’t for everyone.

A lot was created in the first 48 hours, including:

  • 80 scripts. Wanted to see how viable the concept was.
  • A drawing of the Robonk and the chair in CAD software (Tinkercad).
  • Five illustrated strips to show if it could be done. The title panels were less than ideal, but I was learning and you have to start somewhere, right?!
  • Deciding on the name and reserving robonk.com which was available.
  • A single sheet of paper (double sided) with the first five strips to hand out at the Ontario, Oregon event.
Robonk strip

One of the first five strips. Something done on the first pass was focusing on how many words could be used and how many panels were needed. This strip was one of the deliberately extra wordy tests.

As I write this first blog entry, the website is being setup, and there’s a facebook page and a twitter account.

Robonk is still less than a week old. We’ll see how things develop as time moves along. Thanks for coming along on the journey.