khanat-opennel-code/code/ryzom/common/data_leveldesign/leveldesign/world_editor_files/class_doc/script_guidelines.html
2010-05-06 02:08:41 +02:00

349 lines
13 KiB
HTML

<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns:st1="urn:schemas-microsoft-com:office:smarttags"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 10">
<meta name=Originator content="Microsoft Word 10">
<link rel=File-List href="script_organisation_files/filelist.xml">
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
name="place"/>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Boris Boucher</o:Author>
<o:LastAuthor>Alexandre Mandryka</o:LastAuthor>
<o:Revision>143</o:Revision>
<o:TotalTime>477</o:TotalTime>
<o:Created>2003-07-18T07:59:00Z</o:Created>
<o:LastSaved>2004-06-07T13:23:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Words>537</o:Words>
<o:Characters>2959</o:Characters>
<o:Company>nevrax</o:Company>
<o:Lines>24</o:Lines>
<o:Paragraphs>6</o:Paragraphs>
<o:CharactersWithSpaces>3490</o:CharactersWithSpaces>
<o:Version>10.2625</o:Version>
</o:DocumentProperties>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:HyphenationZone>21</w:HyphenationZone>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
</xml><![endif]--><!--[if !mso]><object
classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id=ieooui></object>
<style>
st1\:*{behavior:url(#ieooui) }
</style>
<![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
{font-family:"MS Mincho";
panose-1:2 2 6 9 4 2 5 8 3 4;
mso-font-alt:"\FF2D\FF33 \660E\671D";
mso-font-charset:128;
mso-generic-font-family:roman;
mso-font-format:other;
mso-font-pitch:fixed;
mso-font-signature:1 134676480 16 0 131072 0;}
@font-face
{font-family:"\@MS Mincho";
mso-font-charset:128;
mso-generic-font-family:modern;
mso-font-pitch:fixed;
mso-font-signature:-1610612033 1757936891 16 0 131231 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0cm;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"MS Mincho";}
h1
{mso-style-next:Normal;
margin-top:12.0pt;
margin-right:0cm;
margin-bottom:3.0pt;
margin-left:0cm;
mso-pagination:widow-orphan;
page-break-after:avoid;
mso-outline-level:1;
font-size:16.0pt;
font-family:Arial;
mso-font-kerning:16.0pt;}
h2
{mso-style-next:Normal;
margin-top:12.0pt;
margin-right:0cm;
margin-bottom:3.0pt;
margin-left:0cm;
mso-pagination:widow-orphan;
page-break-after:avoid;
mso-outline-level:2;
font-size:14.0pt;
font-family:Arial;
font-style:italic;}
a:link, span.MsoHyperlink
{color:blue;
text-decoration:underline;
text-underline:single;}
a:visited, span.MsoHyperlinkFollowed
{color:purple;
text-decoration:underline;
text-underline:single;}
@page Section1
{size:612.0pt 792.0pt;
margin:72.0pt 90.0pt 72.0pt 90.0pt;
mso-header-margin:35.4pt;
mso-footer-margin:35.4pt;
mso-paper-source:0;}
div.Section1
{page:Section1;}
/* List Definitions */
@list l0
{mso-list-id:913125170;
mso-list-template-ids:1863486296;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:36.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1
{mso-list-id:950821114;
mso-list-type:hybrid;
mso-list-template-ids:-1326565372 67895297 67895299 67895301 67895297 67895299 67895301 67895297 67895299 67895301;}
@list l1:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:36.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Symbol;}
@list l1:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:72.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l1:level3
{mso-level-tab-stop:108.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l1:level4
{mso-level-tab-stop:144.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l1:level5
{mso-level-tab-stop:180.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l1:level6
{mso-level-tab-stop:216.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l1:level7
{mso-level-tab-stop:252.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l1:level8
{mso-level-tab-stop:288.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l1:level9
{mso-level-tab-stop:324.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l2
{mso-list-id:1218324858;
mso-list-template-ids:-532875970;}
@list l2:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:36.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l3
{mso-list-id:2003463183;
mso-list-template-ids:1938951774;}
@list l3:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:36.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
ol
{margin-bottom:0cm;}
ul
{margin-bottom:0cm;}
-->
</style>
<!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";}
table.MsoTableGrid
{mso-style-name:"Table Grid";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
border:solid windowtext 1.0pt;
mso-border-alt:solid windowtext .5pt;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-border-insideh:.5pt solid windowtext;
mso-border-insidev:.5pt solid windowtext;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";}
</style>
<![endif]-->
</head>
<body lang=FR link=blue vlink=purple style='tab-interval:36.0pt'>
<div class=Section1>
<h1><span lang=EN-US style='color:#FF6600;mso-ansi-language:EN-US'>Script organization
reference document<o:p></o:p></span></h1>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'><o:p>&nbsp;</o:p></span></p>
<h2><st1:place><span lang=EN-US style='color:#999999;mso-ansi-language:EN-US'>Mission</span></st1:place><span
lang=EN-US style='color:#999999;mso-ansi-language:EN-US'> script elements:<o:p></o:p></span></h2>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'>The mission
script is based on a linear execution of steps containing actions and
objectives.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span lang=EN-US
style='mso-ansi-language:EN-US'>Variables </span></b><span lang=EN-US
style='mso-ansi-language:EN-US'>are used when a script will use several occurrences
of the same element. That greatly helps in case one wants to modify the value
of this element without having to find any of its occurrences in the script.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'>Variables
are <a href="var_creature.html">var_creature</a>, <a href="var_faction.html">var_faction</a>,
<a href="var_group.html">var_group</a>, <a href="var_item.html">var_item</a>, <a
href="var_npc.html">var_npc</a>, <a href="var_place.html">var_place</a>, <a
href="var_quality.html">var_quality</a>, <a href="var_quantity.html">var_quantity</a>
and <a href="var_text.html">var_text</a>.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span lang=EN-US
style='mso-ansi-language:EN-US'>Steps</span></b><span lang=EN-US
style='mso-ansi-language:EN-US'> are primary elements of a mission script that
usually contain one objective and a list of actions to be executed before and
after the completion of the objective. Steps are <a href="step.html">step</a>, <a
href="step_any.html">step_any</a>, <a href="step_dyn_chat.html">step_dyn_chat</a>,
<a href="step_failure.html">step_failure</a>, <a href="step_if.html">step_if</a>
and <a href="step_ooo.html">step_ooo</a>.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span lang=EN-US
style='mso-ansi-language:EN-US'>Actions</span></b><span lang=EN-US
style='mso-ansi-language:EN-US'> are elements that are executed punctually,
with no input from the player. They usually set conditions, or modify game
variables like the amount of money the player has, or his inventory, or to have
an impact on the script execution.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'>Actions are
<a href="add_compass.html">add_compass</a>, <a href="ai_event.html">ai_event</a>,
<a href="bot_chat.html">bot_chat</a>, <a href="fail.html">fail</a>, <a
href="jump_to.html">jump_to</a>, <a href="learn_action.html">learn_action</a>, <a
href="recv_fame.html">recv_fame</a>, <a href="recv_item.html">recv_item</a>, <a
href="recv_money.html">recv_money</a>, <a href="set_constrains.html">set_constrains</a>,
<a href="system_msg.html">system_msg</a> and <a href="teleport.html">teleport</a>.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span lang=EN-US
style='mso-ansi-language:EN-US'>Objectives</span></b><span lang=EN-US
style='mso-ansi-language:EN-US'> are elements that wait for conditions to be
fulfilled by the player. The script is blocked until the objective is either
completed or failed, in regard of the mission conditions.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'>Objectives
are <a href="buy.html">buy</a>, <a href="cast.html">cast</a>, <a
href="craft.html">craft</a>, <a href="do_mission.html">do_mission</a>, <a
href="escort.html">escort</a>, <a href="forage.html">forage</a>, <a
href="give_item.html">give_item</a>, <a href="give_money.html">give_money</a>, <a
href="kill.html">kill</a>, <a href="loot.html">loot</a>, <a href="sell.html">sell</a>,
<a href="skill.html">skill</a>, <a href="talk_to.html">talk_to</a>, <a
href="target.html">target</a> and <a href="visit.html">visit</a>.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'><o:p>&nbsp;</o:p></span></p>
<h2><st1:place><span lang=EN-US style='color:#999999;mso-ansi-language:EN-US'>Mission</span></st1:place><span
lang=EN-US style='color:#999999;mso-ansi-language:EN-US'> branches:<o:p></o:p></span></h2>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'>A mission
script branch is implicitly ended by an end instruction that implies the
completion of the mission and displays a default success phrase.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'>There are
two special steps that produce script branches: <a href="step_if.html">step_if</a>,
and <a href="step_dyn_chat.html">step_dyn_chat</a>.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'>According
to the conditions, one branch is selected for execution, and the script
continues linearly from that point.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'>At any
point, a <a href="jump_to.html">jump_to</a> can alter the linear script execution
and move to any other step, on the same branch, or on a different one.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'>Failure is dealt
with <a href="step_failure.html">step_failure</a> steps and the <a
href="fail.html">fail</a> action.<o:p></o:p></span></p>
</div>
</body>
</html>