Skip to content
Gankro edited this page Sep 10, 2012 · 25 revisions

Dialog is the text spoken between characters, or in general alerts.

Table of Contents

Creating Dialog

Every new dialog "prompt" starts with an @. The rest of the text after the @ designates a bunch of information about the dialog. For the sake of brevity, we will call the information following the "@" symbol the "prefix."

@! is a generic information dialog. No character animations, no special formatting. It is used mainly to add text to narrative dialog boxes, etc.

For example, if you want to have an Angry Karkat speaking in grey text, type "@CGAngry". This will give the font colouring of CG (carcinoGeneticist) with the CGAngry animation.

Note: by default we have always used the first two initials of a character's internet handle to designate the dialog text style. In order to avoid conflicts (due to the unending creation of new characters) we're introducing an additional option:

@Karkat_Angry will do everything above. Everything *before* the underscore will determine formatting. Otherwise it's like normal and will play the Karkat_Angry animation.

If you want to add a new character, you can do so by editing "FontEngine.js" and adding a character in the prefixColours using this format "name or tag : "Hex Color Value"". An example would be "aradia : "#a10000"".

There are additional parameters that can be added to the prefix:

@Karkat_Angry~image1 will display the image resource named "image1" in the top left corner of the dialog box.

@Karkat_Angry%image1 will change the image used for the dialog box to the image resource named "image1".

@Karkat_Angry:extraInformationHere will store the extra information provided, which may be used for custom dialog boxes.

Note: Prefix text cannot contain spaces.

These three may combined into:

@Karkat_Angry~background%box:#sweetPost. The ~ and % are not order specific, however Karkat_Angry must be first and : must be last.

New lines will be ignored as in all markup, while \n will be parsed as an actual new line. Usually you'll want two of these in a row.

If a single dialog is too damn big to fit in one box, it will automatically be trimmed and continued in another. Currently we don't do any clever whitespace trimming so you might do this by accident!

Other formatting tricks:

  • _blahblah blabbyity blah_ : will come out underlined. If a second underscore is not found, all following text will be underlined until the next @.
  • #FF00AA blahblah blabbity blah##: will colour all the enclosed text accordingly. If no closing ## is found, then all following text will be coloured until the next @.
  • / will escape the character following it. This is useful when you actually want to have markup symbols, such as #'s and _'s. To include / in the text, you must use //.

Where does this go?

Dialog text needs to be written in the .xml file of the level in which the dialog occurs. So, you would open wandertest.xml, and write:

 <Character name='vriska'>
   <Action name='talk' command='talk'>
      @vriska_idle HELLO I AM A PRETTY TEST DIALOG. DO YOU LIKE ME? WHY DON'T YOU LIKE ME???
      @vriska_idle I'm sure you really do like me.
      @nepeta_idle No I really don't like you. In fact I loathe you with to an unimaginable degree. I would rather you never existed at all!
      @vriska_idle YES YOU DO.
  </action>
 </character>

Examples

Conversation between two characters:

  @vriska_idle HELLO I AM A PRETTY TEST DIALOG. DO YOU LIKE ME? WHY DON'T YOU LIKE ME???
  @vriska_idle I'm sure you really do like me.
  @nepeta_idle No I really don't like you. In fact I loathe you to an unimaginable degree. 
   I would rather you never existed at all!
  @vriska_idle YES YOU DO.

[![Image](resources/vriskadialogue.png)]File:resources/vriskadialogue.png File:resources/nepetadialogue.png

Narration Dialogue Box

  @! You got a boondollar!

Menu dialogue example