Sign In

Workshop: Simple RPG Dialog Animation

1

Workshop: Simple RPG Dialog Animation
article cover animated.png

Overview

I broke the 4th wall in a recent story of mine by providing commentary from another character using dialog windows a bit like RPG games from 𝔜𝔢 𝔒𝔩𝔡𝔢 1990s.

Speech 03 05.png

The response here was quite positive, thanks everyone for your comments and your interest!

This article will step you through my extremely inefficient process.


The Tools

Here are tools used to make those cute graphics:

Civitai's generator

Create some chibi images! I used my usual combo of WAI-ILLUSTRIOUS-SDXL (v14) & People's Works (v8), but I added e_shion's IRIaStyle checkpoint.

The results were usually a bit strange, producing the main character and a chibi version floating nearby. I just nabbed the chibi from the larger image.

chibi cass.png

ClipStudio Paint

ClipStudio is a fantastic image editor that is reasonably priced. I nabbed my Windows license for $18 USD, no subscriptions or gimmicks.

It has robust features that are perfect for digital art. It was designed with manga/comic art in mind, featuring tools to create frames and speech bubbles. I love it!

I used the Border Tool to create the regions within the dialog images. I also used that same tool for Nova's song homage post a while back...

ClipStudio example.png

EZGIF

This is a free site you can use to do basic image manipulation, conversion, or create basic GIF/WEBP animations. I specifically used the WEBP tool to create the dialog progression.

I also cooked up some Python to string together the images but the interface wasn't as clean as EZGIF. I'll post the code if anyone is interested.


Design

I will post the ClipStudio file I made for the dialog shown in the beginning. Feel free to use it, I'm not stingy about it. I encourage you to come up with your own style and design, of course.

Consider how the images will be displayed. On Civitai articles, there is no control over how an image is displayed or how text wraps around it. You get linefeeds above/below the image and it scales to fit the article expanse.

For desktop views, the max width of an article is around 725px. For mobile devices, it is much smaller.

I ended up using 600px width by 130px height.

Bear in mind, if your image is scaled down, your font may become illegible. This looked fine on my desktop, but I couldn't read ANYTHING on my phone.

Speech 01.pngSpeech 01 01 01 A.png

I went with a font called 04b03, you can download it from dafont.com. It is free for personal use.


Steps

The workflow went like this:

Civitai (Generator) ClipStudio (Dialog)EZGIF (Animation)

Unless someone asks for it, I won't belabor you with the nuances of generating the images or working in ClipStudio. If you have ClipStudio, you can dissect the attached template and figure it out.

I created the dialog template to allow multiple scenes to play out. I toggled layer visibility and exported each frame as a PNG. From there, I would just duplicate that dialog file and modify the content for the next dialog animation.

A few animation tricks:

  • The progress count at the bottom right shows the reader where they are in the animation

  • The blinking arrow hints there is more to come so each slide has an "arrow on" and "arrow off" state

Speech 03 05.png

Frame 1 - Frame 1A and Frame 1B

Speech 03 05 01 A.pngSpeech 03 05 01 B.png

Frame 2 - Frame 2A and Frame 2B

Speech 03 05 02 A.pngSpeech 03 05 02 B.png

Once all the images are exported, I pulled them into EZGIF.

image.png

Here are the steps:

  1. Create a copy of each frame. In this case, I had 10 files, so I end up with 20 frames
    1-1-2-2-3-3-4-4-5-5-6-6-7-7-8-8-9-9-10-10

  2. Arrange each pairing of frames so the arrow on/off state is properly shown:
    1-2-1-2-3-4-3-4-5-6-5-6-7-8-7-8-9-10-9-10
    1 & 2 = Dialog #1: arrow on, arrow off
    3 & 4 = Dialog #2: arrow on, arrow off
    Etc…

  3. Set the Delay Time at the bottom to 750ms
    This gives each dialog two arrow blinks across 3 seconds

  4. Under the last frame, set the delay to 3000ms
    This forces a 3 second delay before beginning the dialog loop again

  5. For the other settings:
    Leave Loop Count blank for infinite loopies
    Crossfade is neat but I didn't use it for this, you can designate fade in/out timing between frames
    Don't Stack Frames leave checked unless you're wanting frames underneath to show

  6. Click the Make WebP! button and the image will generate

  7. Save the image locally, then rename the extension from WEBP to PNG

  8. Copy image from local drive to a Civitai article!
    Please note, the Civitai system does NOT like animated PNG for article covers :T


Conclusion

This process was a huge amount of work for the 20+ dialog images used in the story. It was tedious, but worth it! Looking back on it, if I had applied a pixelated effect to the avatars, that would've REALLY sold it.

I'm happy to answer questions or go into further detail, sound off here in the comments.

Also, if you end up making your own dialog animations, toss a link in the comments to get some exposure! I WANNA SEE! :3

support.png

1