Mabinogi World Wiki is brought to you by Coty C., 808idiotz, our other patrons, and contributors like you!!
Want to make the wiki better? Contribute towards getting larger projects done on our Patreon!

Mabinogi World Wiki:Game Script Guide

From Mabinogi World Wiki

To return to the Editor Hub, click here.

Introduction

Hello, and welcome to the guide for script formatting!

This guide describes how to format game scripts.

Over the years, Nexon has added more to the game in terms of functionality, secret lines, conditional text and such, so this guide seemed to be a good way for any contributor to add in lines and keep continuity.

Text formatting

Beyond simply capturing the text, a few things must be taken in account before starting to format a script:

  • Don't stick with the in-game breaking of text when it comes to character lines. Instead, make use of breaks to identify entire 'pages' of text. As an example, G1 text uses a line break as such:
  1. It must have been difficult to find on the snowy slopes of Sidhe Sneachta,
  2. but somehow you found it.

Instead, the text should look like this:

  1. It must have been difficult to find on the snowy slopes of Sidhe Sneachta, but somehow you found it.
  • When a typo occurs, use the {{sic}} template next to the typoed word and report those mistakes to the Nexon staff, while mentioning the specific quest involved and where it occurs, so they get fixed.

Page coding

If you are unfamiliar with wiki page coding, here's a handy table for you to use:

Code What it does How to use it with scripts
<br> Adds a line break Add after NPC name and use to separate individual text 'pages'. Use double breaks for context lines that use (situational text like this.), before and after.
'''Bold Text''': Triple ' Boldens text for emphasis and easier reading. Easily available through the Advanced formatting bar on the editing page. Always bold NPC names to indicate who is the speaker. Example:

Duncan
Once again, welcome to Tir Chonaill.
''Italic Text'': Double ' Changes the text into italic format. Easily available through the Advanced formatting bar on the editing page. Use when inserting text that isn't outright a part of the script, but inserted for context purposes. More information will follow to detail this.
(Character Name) The placeholder for when the player is referred to by name. *Note: The square brackets [ ] are to be avoided because of potential mediawiki syntax issues with the wiki as a whole.
== Header == Creates a section on the page. Segment each quest with these. Use three = to mark shadow missions.
{{GenerationScript}} The template for linking to the previous and next generation in line. When creating a new script, make sure to edit the template to add the new entry. Put at the top of the page.
{{For|explanations and advice on quest completion|PAGENAMEHERE}} Adds a redirect to the main quest content Put above the table of contents, and below the GenerationScript template.
__TOC__ Adds a Table of Contents Put below the GenerationScript template, if the script is a part of the main storyline.
[[File:(Generation) (2-digit number) (IMAGENAMEHERE).png]] Adds a picture in the page. Use when an image is used as a part of the conversation. See here for a directory. If you add a new image that is not currently on the wiki, use the following format: Generation (Number) - Image blurb.png. Example: Generation 01 - Black Pass.png Also make sure to categorize the image by adding the proper category within any of those in Category:Story Images in the file description.
{{Color|(colorname)|colored text}} easy template to color text a certain color. Use when in-game text uses color. Red, Blue and Green are common uses. If text appears yellow in-game, use the Goldenrod color instead to make it more visible on wiki's white backdrop. For the same reason, if green text occurs, Bolden it.
{{NavboxStoryline}} Adds the Storyline Navigation box to the page. Use at the bottom of all script and storyline quest pages. This will create an easier navigation through all story content.

Full example of a starting script

{{GenerationScript}}
{{For|explanations and advice on quest completion|Generation 1 : Advent of the Goddess}}
__TOC__
== The Snowy Hills of Sidhe Sneachta ==

Immediately under the header goes the quest description, followed by two breaks:

 ''You will find the road to Sidhe Sneachta on the way to Alby Dungeon, north of town. An earring was lost while making a snowman. Can you look for it? - Duncan -''

Two breaks are to be put before and after the blurb that describes the actions. Note that the text is in italics because it isn't an explicit part of the storyline itself; it instead describes the actions taken in-game for the script reader.

<br><br>
''(You follow Duncan's words and head to the snowy hills of Sidhe Sneachta, where you find the lost earring embedded into a snowman. You head back to deliver the lost earring.)''
<br><br>
'''Duncan'''<br>
Good job...you did it. Let's see...yup, this is the right earring. Well done. <br>
It must have been difficult to find on the snowy slopes of Sidhe Sneachta, but somehow you found it.

Again, the text in italics here comes from its purpose for the reader. The NPC's name is boldened, and the text follows one 'page' of dialogue regardless of how the line breaks are inputted into the game.

General text formatting

(Use italic text within parentheses when you are adding a description of a cutscene or of what the Milletian is doing in relation to the story, but without relevant text. Same for the Quest information at the start of a new quest.)

(Use the brackets normally as they show on-screen.)

For shadow missions: use bolded text with the prefix

> On-Screen text: 

to help differentiate what is happenning for the reader.

> On-Screen text: Oh no!

Text-specific coding

For specific parts of the script, a few different things are mentioned for smoother readability.

Text with the player answering a specific thing instead of the box simply saying 'continue' should appear as such:

<br><br>
> Prompt: '''The milletian's answer goes here'''
<br><br>

Then add in the script that occurs then for that specific prompt. For a 'continue' box, do not keep an account of it and instead use the <br> breaks as usual.

The spoiler header

Sometimes, specific dialogue will only occur if a condition is met, or some NPCs can have extra dialogue that otherwise does not affect the main script. These should be put under a Spoiler header. The code for it is as such:

{{HiddenTextHeader
|Title=Insert Title of Text Here
|StyleFrame=margin: 0.2em 300px 2em 1.2em;
|Width=800px
}}

{{HiddenTextFooter}}
  • The |Title segment is where the mention of the text would go.
  • Don't change the StyleFrame.
  • For specific dialogue which requires a condition to be met, use the Pan Speech Bubble Sticker.png Pan speech bubble sticker image. To make it fit within the header, use a size of 20px.
{{HiddenTextHeader
|Title=[[File:Pan Speech Bubble Sticker.png|20px]] This is for secret dialogue that needs a condition!
|StyleFrame=margin: 0.2em 300px 2em 1.2em;
|Width=800px
}}
For example, requiring the player to wear a certain outfit or title.
{{HiddenTextFooter}}

If you have more hidden choices within one, you can play with the |Width parameter to make the second box fit within the first. 600px is a decent size for a second header.


This is how the code looks:

{{HiddenTextHeader
|Title=This is an example!
|StyleFrame=margin: 0.2em 300px 2em 1.2em;
|Width=800px
}}
This requires code within the code.
{{HiddenTextHeader
|Title=This is an example within the example!
|StyleFrame=margin: 0.2em 300px 2em 1.2em;
|Width=600px
}}
Make sure you don't get too lost!
{{HiddenTextFooter}}
{{HiddenTextFooter}}

Branches

A Branch is when multiple prompts are given for the player to choose from. Some of them require the player does not choose anything and instead plays on a timed response.

Do not put text the player has to go through to continue the story under a spoiler. Instead, put all other optional text under a spoiler each, with the optional dialogue being first. Here's an example:

> Prompt: Not Yet or I will go.


> Prompt: I will go.

(Text goes here)

Here is another example:

> '''Prompt: Choice 1''' or '''Choice 2'''
{{HiddenTextHeader
|Title= Choice 1
|StyleFrame=margin: 0.2em 300px 2em 1.2em;
|Width=800px
}}
Choice 1 text
{{HiddenTextFooter}}
{{HiddenTextHeader
|Title= Choice 2
|StyleFrame=margin: 0.2em 300px 2em 1.2em;
|Width=800px
}}
Choice 2 text
{{HiddenTextFooter}}
(Common text after all branch-specific text or the one branch that will make the story advance is over comes here)
<br>
...

Don't add spaces between spoiler headers, or breaks before and after them. The space they generate on their own is sufficient enough for the script.

Images

You can refer to This category for artwork previously uploaded that you can find in a script.

  • If the artwork is new, refer to the same category for the name conventions around story images.


When inserting an image, use the following code:

<br><br>
[[File:IMAGENAME.png|250px]]<br>
(Text here)

Shadow Missions

Starting from chapter 3, Shadow missions as a part of the storyline started to become more and more prevalent. While the early ones may not have much to provide in terms of story, chapter 5 and onwards develop on those through giving NPCs spoken chat bubbles and on-screen messages, for instance.

  • For Shadow missions that do not have much to mention, it can be resumed in a single italicized line.
  • Use a third-tier header (3 =) to mark Shadow missions by name. Example: === Shadow Mission: Holy Barrier ===
  • Screen color changes or unwritten context should be made mention of as italicized bracket text.
  • Some flavor text can be added, as the gestures within the game can sometimes be more limiting to what the story is attempting to convey. The important thing is to be as objective to what is happenning as possible.
    • Example:
''(The screen flashes red.)''
<br><br>
''(You hold your head in pain.)''
  • When a character uses the regular chat bubble, mention it with their name.
    • Randomized quotes can be rearranged to make more sense next to one another.
    • Example:
<br><br>
'''Duncan (Chat Bubble)''' <br>
...?
<br><br>
  • Use the following text to write down text that is brought up to the player via a method other than the usual text box/NPC dialogue.
    • You can include both the big header text and smaller, centered text on the screen with this.
    • If the on-screen text and the dialogue box show the same exact text, the dialogue box is to be privileged and the on-screen message is not to be written.
    • If a mix of on-screen text and dialogue is used, sort the on-scren text dialogue to make the most sense for the reader, either before or after the dialogue box contents.

Example:

<br><br>
> '''On-Screen Message: Text Here'''
<br><br>


To mark the end of the mission, insert a (MISSION END) before resuming with the script.