<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta name="generator" content=
"HTML Tidy for Windows (vers 1st April 2002 (no joke)), see www.w3.org">
<meta http-equiv="Content-Type" content=
"text/html; charset=windows-1252">
<meta name="ProgId" content="Word.Document">
<meta name="Generator" content="Microsoft Word 9">
<meta name="Originator" content="Microsoft Word 9">
<link rel="File-List" href="./storybrd_files/filelist.xml">
<title>Storyboard documentation</title>

<style type="text/css">
<!--
 /* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {mso-style-parent:"";
        margin:0pt;
        margin-bottom:.0001pt;
        mso-pagination:widow-orphan;
        font-size:12.0pt;
        font-family:"Times New Roman";
        mso-fareast-font-family:"Times New Roman";}
 /* Page Definitions */
@page
        {mso-page-border-surround-header:no;
        mso-page-border-surround-footer:no;}
@page Section1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;
        mso-header-margin:36.0pt;
        mso-footer-margin:36.0pt;
        mso-paper-source:0;}
div.Section1
        {page:Section1;}
-->
</style>
<style type="text/css">
 body.c8 {tab-interval:36.0pt;text-justify-trim:punctuation}
 span.c7 {color:black}
 p.c6 {margin-left:22.5pt;mso-pagination:none;mso-layout-grid-align: none;text-autospace:none}
 p.c5 {margin-left:13.5pt;mso-pagination:none;mso-layout-grid-align: none;text-autospace:none}
 span.c4 {mso-spacerun: yes}
 span.c3 {font-size:10.0pt;font-family:"Courier New"}
 p.c2 {mso-pagination:none;mso-layout-grid-align:none; text-autospace:none}
 span.c1 {font-size:10.0pt;font-family:"Courier New"; color:black}
</style>
</head>
<body lang="EN-US" class='c8'>
<div class="Section1">
<p class="MsoNormal c2"><span class='c1'>Storyboard
documentation</span></p>

<p class="MsoNormal c2"><span class=
'c3'>========================</span></p>

<p class="MsoNormal c2"><span class='c3'>M.U.G.E.N, (c) Elecbyte
2002</span></p>

<p class="MsoNormal c2"><span class='c3'>Documentation for version
2002.04.14</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Updated 27 October
2001</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Contents</span></p>

<p class="MsoNormal c2"><span class='c3'>--------</span></p>

<p class="MsoNormal c2"><span class='c3'>I.<span class=
"c4">&nbsp;&nbsp;</span> Introduction</span></p>

<p class="MsoNormal c2"><span class='c3'>II.<span class=
"c4">&nbsp;</span> Getting started</span></p>

<p class="MsoNormal c2"><span class='c3'>III. How to view
storyboards</span></p>

<p class="MsoNormal c2"><span class='c3'>IV.<span class=
"c4">&nbsp;</span> Storyboard basics</span></p>

<p class="MsoNormal c2"><span class='c3'>V.<span class=
"c4">&nbsp;&nbsp;</span> Testing your storyboard</span></p>

<p class="MsoNormal c2"><span class='c3'>A.<span class=
"c4">&nbsp;&nbsp;</span> SceneDef parameter reference</span></p>

<p class="MsoNormal c2"><span class='c3'>B.<span class=
"c4">&nbsp;&nbsp;</span> Scene parameter reference</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class='c3'>I. Introduction</span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><u><span class='c3'>What is a
storyboard?</span></u></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>A storyboard is a way to
put together animation and music in M.U.G.E.N, usually in the form
of a cutscene.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><u><span class='c3'>What do you use
storyboards for?</span></u></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Storyboards can be used in
M.U.G.E.N to make cutscenes such as the game introduction,
character endings, credits and more.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><u><span class='c3'>Some
terminology</span></u></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>A cutscene is what you
actually see (and hear). An event is point in time to play back a
cutscene. A storyboard refers to the .def file that defines what
you see during a cutscene. Here is an example: during the ending
event, the ending cutscene will be played back. The ending cutscene
uses the ending.def storyboard.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class='c3'>II. Getting
started</span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><u><span class='c3'>Cutscenes
Events</span></u></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>There are several events
that trigger cutscenes. The first set is defined in
data/system.def, and applies to all characters within the game.
This cutscenes in this set are called the "system
cutscenes".</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Game Logo - played back
once when you start M.U.G.E.N</span></p>

<p class="MsoNormal c2"><span class='c3'>Game Intro - played back
after the Game Logo</span></p>

<p class="MsoNormal c2"><span class='c3'>Default Ending - played
back after you beat the game with a</span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;&nbsp;&nbsp;</span> character that does not have a
user-defined ending.</span></p>

<p class="MsoNormal c2"><span class='c3'>Credits - played back
after the ending cutscene</span></p>

<p class="MsoNormal c2"><span class='c3'>Game Over - played back if
you choose "No" at the continue screen</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>The next set is specific
to each character, and is define in the character's .def file. For
example, Kung Fu Man's is in chars/kfm/kfm.def. These are known as
the "character cutscenes".</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Character Intro - played
back once when you select your character</span></p>

<p class="MsoNormal c2"><span class='c3'>Character Ending - played
back when you beat the game. The default</span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;&nbsp;&nbsp;</span> ending will not be played back if
this cutscene exists</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><u><span class='c3'>Trying it
out</span></u></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>At the command line,
type:</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> mugen -r kfm</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>This will start the "KFM"
motif (for more information on motifs, please read readme.txt).
Right away, you will see the game logo, followed by the game intro.
After the game intro ends, you will be at the title screen. If you
start Arcade mode and choose Kung Fu Man, his character intro will
be played, and then the fight begins. If you lose the fight and
choose "No" at the continue screen, the game over cutscene is
played and you are returned to the title screen. If you win, Kung
Fu Man's character ending will be played, followed by the ending
credits.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>These are where each of
the storyboard files are in the KFM motif.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Game Logo<span class=
"c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> -
data/kfm/logo.def</span></p>

<p class="MsoNormal c2"><span class='c3'>Game Intro<span class=
"c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> -
data/kfm/intro.def</span></p>

<p class="MsoNormal c2"><span class='c3'>Default Ending<span class=
"c4">&nbsp;&nbsp;</span> - (none)</span></p>

<p class="MsoNormal c2"><span class='c3'>Credits<span class=
"c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>
- data/kfm/credits.def</span></p>

<p class="MsoNormal c2"><span class='c3'>Game Over<span class=
"c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> -
data/kfm/gameover.def</span></p>

<p class="MsoNormal c2"><span class='c3'>Character Intro<span
class="c4">&nbsp;</span> - chars/kfm/intro.def</span></p>

<p class="MsoNormal c2"><span class='c3'>Character Ending -
chars/kfm/ending.def</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>The storyboard filenames
for the system cutscenes are in data/kfm/system.def.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class='c3'>III. How to view
storyboards</span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>To play back a storyboard
file, use MUGEN's -storyboard command-line option. The syntax
is:</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> mugen -storyboard &lt;storyboard
filename&gt;</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>For example, to play back
data/kfm/intro.def, you would type:</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> mugen -storyboard data/kfm/intro.def</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>The storyboard search
directory defaults to data/, so you can omit the "data/" part if
you like. The following will also play back
data/kfm/intro.def:</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> mugen -storyboard kfm/intro.def</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>This feature can be useful
for quickly testing your storyboards as you build them.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class='c3'>IV. Storyboard
basics</span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Here is an example of a
simple storyboard that shows just one picture for 5 seconds. If you
are not already familiar with sprites and animations, please
consult the spr and air docs before continuing.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'>;----------------------------------------------------------</span></p>

<p class="MsoNormal c2"><span class='c3'>[SceneDef]</span></p>

<p class="MsoNormal c2"><span class='c3'>spr = sprite.sff<span
class="c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;Filename of
sprite file to use</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>[Scene 0]</span></p>

<p class="MsoNormal c2"><span class='c3'>; Overlay Anims (from 0 to
9)</span></p>

<p class="MsoNormal c2"><span class='c3'>layerall.pos = 160,120
;Default position for all layers</span></p>

<p class="MsoNormal c2"><span class='c3'>layer0.anim =<span class=
"c4">&nbsp;</span> 0<span class=
"c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;Anim action
number to show</span></p>

<p class="MsoNormal c2"><span class='c3'>; Total time</span></p>

<p class="MsoNormal c2"><span class='c3'>end.time = 300<span class=
"c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;300
ticks = 5 seconds</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>;Animation to
use</span></p>

<p class="MsoNormal c2"><span class='c3'>[Begin Action
0]</span></p>

<p class="MsoNormal c2"><span class='c3'>0,0, 0,0, -1</span></p>

<p class="MsoNormal c2"><span class=
'c3'>;----------------------------------------------------------</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>A storyboard must always
begin with a [SceneDef] group. Within this group you must specify
the name of the sprite file to use. This sprite file must exist in
the same directory as the storyboard file. The sprite file should
contain all the sprites you need for your storyboard.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>A storyboard is broken up
into scenes. How you choose to divide up your storyboard is up to
you. In the example above, there is only one scene, the [Scene 0]
group. All scenes must begin with a group that looks like [Scene
?], where the question mark (?) can be any identifier string.
Typically, scenes are labeled in numerical order starting from
0.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Scenes are composed of up
to 10 animation objects. Each of these objects exists on its own
layer, and the layers are overlaid on top of each other. Layers are
numbered from 0 to 9, with 0 being at the bottom, and 9 at the top.
For instance, an animation on layer 0 is underneath another on
layer 1, and the animation on layer 1 is under that of layer 2, and
so on. Each animation object must make reference to an animation
action using a "layerX.anim" parameter, where X is the layer
number. Each action must be defined within the same storyboard
file.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>The simple example above
has only one layer. Its drawing position is determined by the value
of the "layerall.pos" parameter, and the action number of the
animation is the value of the "layer0.anim" parameter. In this
case, the action number is 0. Action 0 is defined right after the
[Scene 0] group.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>One important parameter is
"end.time". This is the time to end the scene, measured in ticks.
One tick is equivalent to 1/60th of a second. When one scene ends,
it goes on to show the next. If there are no more scenes, the
storyboard playback ends. In the example, "end.time" is 300 ticks,
which is the same as 5 seconds. Since there is only one scene, the
storyboard ends at the same time.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>The next example will show
a slideshow of pictures, along with a title overlaid on top. Again,
this only has one scene.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'>;----------------------------------------------------------</span></p>

<p class="MsoNormal c2"><span class='c3'>[SceneDef]</span></p>

<p class="MsoNormal c2"><span class='c3'>spr = sprite.sff<span
class="c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;Filename of
sprite file to use</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>[Scene 0]</span></p>

<p class="MsoNormal c2"><span class='c3'>; Overlay Anims (from 0 to
9)</span></p>

<p class="MsoNormal c2"><span class='c3'>layerall.pos = 160,120
;Default position for all layers</span></p>

<p class="MsoNormal c2"><span class='c3'>layer0.anim =<span class=
"c4">&nbsp;</span> 0<span class=
"c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;Anim action
number for slideshow pictures</span></p>

<p class="MsoNormal c2"><span class='c3'>layer1.anim =<span class=
"c4">&nbsp;</span> 1<span class=
"c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;Anim action
number for title</span></p>

<p class="MsoNormal c2"><span class='c3'>; Total time</span></p>

<p class="MsoNormal c2"><span class='c3'>end.time = 600<span class=
"c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;600
ticks = 10 seconds</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>;Animation to use for
pictures</span></p>

<p class="MsoNormal c2"><span class='c3'>[Begin Action
0]</span></p>

<p class="MsoNormal c2"><span class='c3'>0,0, 0,0, 120</span></p>

<p class="MsoNormal c2"><span class='c3'>0,1, 0,0, 120</span></p>

<p class="MsoNormal c2"><span class='c3'>0,2, 0,0, 120</span></p>

<p class="MsoNormal c2"><span class='c3'>0,3, 0,0, 120</span></p>

<p class="MsoNormal c2"><span class='c3'>0,4, 0,0, 120</span></p>

<p class="MsoNormal c2"><span class='c3'><br>
;Animation to use for title</span></p>

<p class="MsoNormal c2"><span class='c3'>[Begin Action
1]</span></p>

<p class="MsoNormal c2"><span class='c3'>1,0, 0,0, -1</span></p>

<p class="MsoNormal c2"><span class=
'c3'>;----------------------------------------------------------</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Note that there are 2
layers now. Layer 0 is used for the slideshow of pictures, and
layer 1 is used for the overlay title. If you imagine the slideshow
to be pictures of your vacation trip, the title might be an image
with text that reads, "My summer vacation".</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>The new "fadein.time" and
"fadeout.time" parameters specify fade-in and fade-out times
respectively, measured in ticks.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>This third example shows
multiple scenes, with screen fades between each scene.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'>;----------------------------------------------------------</span></p>

<p class="MsoNormal c2"><span class='c3'>[SceneDef]</span></p>

<p class="MsoNormal c2"><span class='c3'>spr =
sprite.sff</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>[Scene 0]</span></p>

<p class="MsoNormal c2"><span class='c3'>; Fade
parameters</span></p>

<p class="MsoNormal c2"><span class='c3'>fadein.time = 30<span
class="c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;30 ticks
(0.5 seconds) for fade-in</span></p>

<p class="MsoNormal c2"><span class='c3'>fadeout.time = 30<span
class="c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;30 ticks for
fade-out</span></p>

<p class="MsoNormal c2"><span class='c3'>; Overlay Anims (from 0 to
9)</span></p>

<p class="MsoNormal c2"><span class='c3'>layerall.pos =
160,120</span></p>

<p class="MsoNormal c2"><span class='c3'>layer0.anim =<span class=
"c4">&nbsp;</span> 0</span></p>

<p class="MsoNormal c2"><span class='c3'>; Music</span></p>

<p class="MsoNormal c2"><span class='c3'>bgm = mysong.s3m<span
class="c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;Filename
for music</span></p>

<p class="MsoNormal c2"><span class='c3'>; Total time</span></p>

<p class="MsoNormal c2"><span class='c3'>end.time = 120</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>;Animation to use for
scene 0</span></p>

<p class="MsoNormal c2"><span class='c3'>[Begin Action
0]</span></p>

<p class="MsoNormal c2"><span class='c3'>0,0, 0,0, -1</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>[Scene 1]</span></p>

<p class="MsoNormal c2"><span class='c3'>; Fade
parameters</span></p>

<p class="MsoNormal c2"><span class='c3'>fadein.time = 30<span
class="c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;30 ticks
(0.5 seconds) for fade-in</span></p>

<p class="MsoNormal c2"><span class='c3'>fadeout.time = 30<span
class="c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;30 ticks for
fade-out</span></p>

<p class="MsoNormal c2"><span class='c3'>; Overlay Anims (from 0 to
9)</span></p>

<p class="MsoNormal c2"><span class='c3'>layerall.pos =
160,120</span></p>

<p class="MsoNormal c2"><span class='c3'>layer0.anim =<span class=
"c4">&nbsp;</span> 10</span></p>

<p class="MsoNormal c2"><span class='c3'>; Total time</span></p>

<p class="MsoNormal c2"><span class='c3'>end.time = 120</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>;Animation to use for
scene 1</span></p>

<p class="MsoNormal c2"><span class='c3'>[Begin Action
10]</span></p>

<p class="MsoNormal c2"><span class='c3'>10,0, 0,0, -1</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>[Scene 2]</span></p>

<p class="MsoNormal c2"><span class='c3'>; Fade
parameters</span></p>

<p class="MsoNormal c2"><span class='c3'>fadein.time = 30<span
class="c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;30 ticks
(0.5 seconds) for fade-in</span></p>

<p class="MsoNormal c2"><span class='c3'>fadeout.time = 30<span
class="c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;30 ticks for
fade-out</span></p>

<p class="MsoNormal c2"><span class='c3'>; Overlay Anims (from 0 to
9)</span></p>

<p class="MsoNormal c2"><span class='c3'>layerall.pos =
160,120</span></p>

<p class="MsoNormal c2"><span class='c3'>layer0.anim =<span class=
"c4">&nbsp;</span> 20</span></p>

<p class="MsoNormal c2"><span class='c3'>; Total time</span></p>

<p class="MsoNormal c2"><span class='c3'>end.time = 120</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>;Animation to use for
scene 2</span></p>

<p class="MsoNormal c2"><span class='c3'>[Begin Action
20]</span></p>

<p class="MsoNormal c2"><span class='c3'>20,0, 0,0, -1</span></p>

<p class="MsoNormal c2"><span class=
'c3'>;----------------------------------------------------------</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>There is a "bgm" parameter
in the first scene. This plays back a music file "mysong.s3m" at
the start of the scene, and that music will continue playing until
the end of the storyboard. In this case, mysong.s3m should be
placed in the same directory as the storyboard file.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>For full details on the
parameters for Scenes and SceneDefs, see the sections titled
"SceneDef parameter reference" and "Scene parameter reference"
below.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class='c3'>V. Testing your
storyboard</span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>This section covers some
tips for testing your storyboard.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>You may find pausing and
framestepping useful when you play back your storyboard. The pause
and framestep buttons are Pause and Scroll Lock on your keyboard
respectively. These key are enabled only if MUGEN is running in
debug mode. You are not advised to use the pause function if your
storyboard has animations synchronized to the music, as pausing may
disrupt synchronization.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>When you write a long
storyboard with many scenes, you may like to skip over completed
scenes to view your newer ones. To do this, add a line to your
SceneDef group:</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c5"><span class='c3'>[SceneDef]</span></p>

<p class="MsoNormal c5"><span class='c3'>spr = sprite.sff<span
class="c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> ;Filename of
sprite file to use</span></p>

<p class="MsoNormal c5"><span class='c3'>startscene = 0<span class=
"c4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>
;&lt;-- line added</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Change the 0 to whatever
scene number you would like to start your storyboard at. For
example, if you are working on the 10th scene, and you would like
to skip the first 9 scenes during testing, enter the number 10.
Note that skipping a scene will cause the music in that scene not
to be played back.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class='c3'>A. SceneDef parameter
reference</span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Required
parameters:</span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> spr = <i>filename</i> (string)</span></p>

<p class="MsoNormal c6"><span class='c3'>This is the filename of
the sprite (.sff) file to use in the<span class="c4">&nbsp;</span>
storyboard.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Optional
parameters:</span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> startscene = <i>scene_number</i>
(int)</span></p>

<p class="MsoNormal c6"><span class='c3'>This parameter is used
mainly for testing purposes. If specified, the first
<i>scene_number</i> scenes will be skipped. Valid values are from 0
to the total number of scenes minus 1. If omitted, defaults to
0.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class='c3'>B. Scene parameter
reference</span></p>

<p class="MsoNormal c2"><span class=
'c3'>====================================================================</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Please note that time is
measured in ticks, where 60 ticks is equal to one second. Take note
that some optional parameters have default values that depend on
the scene number. For example, if the "clearcolor" parameter is
omitted, it will have a different default value on the first scene,
compared to if it was omitted on following scenes.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Required
parameters:</span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> end.time = <i><span class='c7'>t</span></i>
<span class='c7'>(int)</span></span></p>

<p class="MsoNormal c6"><i><span class='c3'>t</span></i> <span
class='c3'>is the time to end the scene, measured in ticks relative
to the starting time of the scene. If there is another scene after
the current one, it will start when the current scene ends.
Otherwise, the whole storyboard will end.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Basic optional
parameters:</span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> fadein.time = <i><span class=
'c7'>duration</span></i> <span class='c7'>(int)</span></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> fadein.col = <i>r</i>,<i>g</i>,<i>b</i>
(int,int,int)</span></p>

<p class="MsoNormal c6"><i><span class='c1'>duration</span></i>
<span class='c1'>is the length of time (measured in ticks) to fade
the screen in, at the start of the scene. Note that fadein.time
does not affect the ending time of the scene.</span> <i><span
class='c3'>r</span></i><span class='c3'>,<i>g</i>,<i>b</i> <span
class='c7'>represents the R,G and B values of the starting fade
color. Valid values for <i>duration</i> are from 0 (no fade) to the
value of end.time. Valid values for the</span>
<i>r</i>,<i>g</i>,<i>b</i> <span class='c7'>triplet are 0,0,0 (fade
from black) and 255,255,255 (fade from white) only. Other fade
colors are currently not supported. If omitted, <i>duration</i>
defaults to 0 (no fade) and <i>r,g,b</i> to 0,0,0 (fade from
black).</span></span></p>

<p class="MsoNormal c2"><span class='c1'><span class=
"c4">&nbsp;</span></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> fadeout.time = <i><span class=
'c7'>duration</span></i> <span class='c7'>(int)</span></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> fadeout.col = <i>r</i>,<i>g</i>,<i>b</i>
(int,int,int)</span></p>

<p class="MsoNormal c6"><span class='c3'>Similar to the fadein
parameters, except this fades the scene out.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> clearcolor = <i>r</i>,<i>g</i>,<i>b</i>
(int,int,int)</span></p>

<p class="MsoNormal c6"><span class='c3'>This is the color to clear
the screen with before drawing each tick. If <i>r</i> is set to -1,
the screen will not be cleared. If omitted on the first scene,
<i>r</i> defaults to -1. If omitted on successive scenes,
<i>r,g,b</i> defaults the previous scene's values. For instance, if
you set clearcolor to 0,0,0 in the first scene, you do not need to
specify the parameter for successive scenes if you would like them
all to use the same color values.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> layerall.pos = <i>x,y</i> (int,int)</span></p>

<p class="MsoNormal c6"><span class='c3'>This is the default
position to draw all animations. If omitted on the first scene,
defaults to 0,0. If omitted on successive scenes, the value
defaults to that of the previous scene's. Note that this parameter
does not affect background objects.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> layer<i>X</i>.anim = <i>actionno</i>
(int)</span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> layer<i>X</i>.offset = <i>offx</i>,<i>offy</i>
(int,int)</span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> layer<i>X</i>.starttime = <i>t</i>
(int,int)</span></p>

<p class="MsoNormal c6"><span class='c3'>If <i>actionno</i>
specified, the animation with action number <i>actionno</i> will be
shown. If this parameter is omitted, no animation will be
drawn.</span></p>

<p class="MsoNormal c6"><i><span class='c3'>X</span></i> <span
class='c3'>is the layer priority of the animation. For example, an
animation with <i>X</i> = 0 will be drawn below another with
<i>X</i> = 1. Valid values for <i>X</i> are from 0 to 9.</span></p>

<p class="MsoNormal c6"><i><span class='c3'>offx</span></i><span
class='c3'>,<i>offy</i> is the x,y position offset to draw the
animation at. The values of this parameter are added to those of
the "layerall.pos" parameter to determine the drawing position.
This defaults to 0,0 if omitted.</span></p>

<p class="MsoNormal c6"><i><span class='c3'>t</span></i> <span
class='c3'>is the time to start drawing the animation object. If
omitted, it defaults to 0.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> bgm = <i>filename</i> (string)</span></p>

<p class="MsoNormal c6"><span class='c3'>If specified, the music
file named <i>filename</i> will begin to play at the start of the
current scene. If omitted on the first scene, no BGM will play. If
omitted on successive scenes, the BGM from the previous scene will
continue to play. If <i>filename</i> is an empty string, the BGM
currently being played will be stopped. The BGM file should be
placed in the same directory as the storyboard file.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> bgm.loop = <i>loop</i> (boolean)</span></p>

<p class="MsoNormal c6"><span class='c3'>Set <i>loop</i> to a
non-zero to make the background music loop, 0 to prevent looping.
The default value is 0.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'>Advanced optional
parameters:</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> window = <i>x1,y1,x2,y2</i>
(int,int,int,int)</span></p>

<p class="MsoNormal c6"><span class='c3'>This defines the drawing
window of the storyboard. <i>x1,y1</i> are the x,y coordinates of
the upper left of the window, while <i>x2,y2</i> represents the
lower right. Anything drawn outside this window will not be seen.
Note that this parameter does not affect the drawing window of
background-type objects. If omitted on the first scene, the values
will default to the full size of the screen. If omitted on
successive scenes, the values will default to the those of the
previous scene's.</span></p>

<p class="MsoNormal c2"><span class=
'c3'><![if !supportEmptyParas]>&nbsp;<![endif]></span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;</span> bg.name = <i>bgname</i> (string)</span></p>

<p class="MsoNormal c6"><span class='c3'>If this parameter is
specified, you can make use of a background object. <i>bgname</i>
is a string prepended to your background definition groups. For
example, if <i>bgname</i> is "Scene04bg", then your background
definition group must be named "Scene04bgDef", and the following
background elements must begin with "Scene04bg". data/kfm/intro.def
and data/kfm/credits.def are examples that use this parameter. Note
that background objects are not affected by the "window" parameter.
All elements of a background objects are drawn underneath all
"layer<i>X</i>" animation objects, with the exception of elements
with the "layer" parameter set at 1.</span></p>

<p class="MsoNormal c2"><span class='c3'><span class=
"c4">&nbsp;&nbsp;&nbsp;</span></span></p>
</div>
</body>
</html>

