ifmapper 0.9.9 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/HISTORY.txt CHANGED
@@ -1,9 +1,44 @@
1
+ v1.0.0 Bug fixes:
2
+ - Versioning number now reflects v1.0.0 everywhere unlike v0.9.9.
3
+
4
+ Improvements:
5
+ - IFMapper now supports (actually, needs) Fox1.6.
6
+ - IFMapper now supports internationalization to allow writing
7
+ adventures in other languages besides English under Fox1.6
8
+ using Unicode (UTF-8).
9
+ Language can be changed by setting the environment variable
10
+ LC_ALL or by starting IFMapper.rbw like:
11
+
12
+ > ruby IFMapper.rbw -l es
13
+
14
+ Languages currently supported: English (en) and Spanish (es).
15
+ Default is still English.
16
+ To write out Inform or TADS text in other languages, you will
17
+ also need ruby's iconv module (which should now be part of
18
+ both the windows and unix distros)
19
+ To add new languages, go to ifmapper-1.0.0/lib/IFMapper/locales
20
+ and add one for your particular language.
21
+ Then you need to create an UTF-8 Message.rb file.
22
+ If your editor does not support writing out UTF-8 directly,
23
+ you can create a file in another encoding and then convert
24
+ it with an utility like iconv (see example in
25
+ ifmapper-1.0.0/lib/IFMapper/locales/es)
26
+
27
+ - Inform7 writer is now better:
28
+ * It now properly recognizes male/female people a
29
+ tad better.
30
+ * It now tries to avoid tags as much as possible
31
+ to keep Inform7's concept of natural language.
32
+ * It recognizes additional words as potential containers, etc.
33
+ * It now recognizes the 'lit' property in some objects.
34
+ - Bug fixed wrap_text() in all exporters.
35
+
36
+
1
37
  v0.9.9 Improvements:
2
38
  - It is now possible to export maps in Inform 7 new (beta) syntax,
3
39
  albeit the English grammar is still very limited.
4
40
  Just name your map with extension ".inform" instead of ".inf"
5
41
  when saving it or exporting it.
6
- - Bug fixed wrap_text() in all exporters.
7
42
 
8
43
  v0.9.8 Bug fixes:
9
44
  - TADS Exporter was incorrectly recognizing locations with "room" in
data/IFMapper.gemspec ADDED
@@ -0,0 +1,28 @@
1
+ require "rubygems"
2
+
3
+ spec = Gem::Specification.new do |spec|
4
+ spec.name = "ifmapper"
5
+ spec.version = '1.0.0'
6
+ spec.author = "Gonzalo Garramuno"
7
+ spec.email = 'GGarramuno@aol.com, ggarra@advancedsl.com.ar'
8
+ spec.homepage = 'http://www.rubyforge.org/projects/ifmapper/'
9
+ spec.summary = 'Interactive Fiction Mapping Tool.'
10
+ spec.require_path = "lib"
11
+ spec.files = ['IFMapper.rbw'] + ['bin/IFMapper'] +
12
+ ['IFMapper.gemspec'] +
13
+ Dir.glob("lib/IFMapper/*.rb") +
14
+ Dir.glob("lib/IFMapper/locales/*/*.rb") +
15
+ Dir.glob("lib/IFMapper/locales/*/*.sh") +
16
+ Dir.glob("maps/*.ifm") + Dir.glob("maps/*.map") +
17
+ Dir.glob("icons/*")
18
+ spec.description = <<-EOF
19
+ Interactive Fiction Mapping Tool.
20
+ EOF
21
+ spec.add_dependency("fxruby", ">= 1.6.0")
22
+ spec.add_dependency("pdf-writer", ">= 1.1.1")
23
+ spec.extra_rdoc_files = ["HISTORY.txt", "TODO.txt"] +
24
+ Dir.glob("docs/*/*")
25
+ spec.has_rdoc = true
26
+ spec.rubyforge_project = 'ifmapper'
27
+ spec.required_ruby_version = '>= 1.8.0'
28
+ end
data/TODO.txt CHANGED
@@ -1,4 +1,5 @@
1
1
 
2
+ - Make internationalization recognize the OS language directly.
2
3
  - Add SVG output
3
4
  - Do Printing
4
5
  - Cleanup code
@@ -14,7 +14,7 @@
14
14
  Interactive</span> Fiction Mapper</a></font></b></u></p>
15
15
  <p align="center"><font size="4"><b><a href="start.html">by Gonzalo Garramuno</a></b></font></p>
16
16
  <p align="center"><a href="images/IFMapper_main.gif">
17
- <img border="0" src="images/IFMapper_main.gif" width="595" height="447"></a></p>
17
+ <img border="0" src="../images/IFMapper_main.gif" width="595" height="447"></a></p>
18
18
  <p align="center">
19
19
  <a href="file:///C:/MyProjects/rubyforge/html/ifmapper/start.html">A Tool for
20
20
  Mapping Interactive Fiction</a></p>
@@ -193,7 +193,7 @@ window popup with an empty map.</p>
193
193
  <p>&nbsp;</p>
194
194
  <p><b><font size="5" color="#000080"><a name="Using IFMapper">Using IFMapper</a></font></b></p>
195
195
  <p><font size="4"><a name="The Interface">The Interface</a></font></p>
196
- <p><img border="0" src="images/IFMapper_main.gif" width="800" height="600"></p>
196
+ <p><img border="0" src="../images/IFMapper_main.gif" width="800" height="600"></p>
197
197
  <p>The IFMapper interface consists of a menu that allows you to access common
198
198
  operations (open/save maps, change settings, etc), a toolbar with a similar
199
199
  functionality, and one or more windows displaying a map canvas.</p>
@@ -217,7 +217,7 @@ scrollbars around the canvas.<b><font size="4"><br>
217
217
  <p><b><font size="4"><br>
218
218
  <a name="Creating Locations">Creating Locations</a><br>
219
219
  </font></b>
220
- <img border="0" src="images/room_small.gif" align="right" width="342" height="377"><b><font size="4"><br>
220
+ <img border="0" src="../images/room_small.gif" align="right" width="342" height="377"><b><font size="4"><br>
221
221
  </font></b>You create new Locations or Rooms in the map by just clicking on any
222
222
  of those template boxes. The new location will then be given a default name and
223
223
  settings ('New Location').<br>
@@ -255,13 +255,13 @@ from the <b>Map-&gt;Options</b> menu:<br>
255
255
  each new room you create.<b><br>
256
256
  Create on Connection - </b>will allow you to add both the connection and the
257
257
  missing rooms when you click on some connection area in the map.<br>
258
- <img border="0" src="images/connection.gif" align="right" width="332" height="118"><br>
258
+ <img border="0" src="../images/connection.gif" align="right" width="332" height="118"><br>
259
259
  Connections can also be modified similarly to rooms, by clicking twice on them.
260
260
  The connection requester allows you to specify the connection as a free, door,
261
261
  locked or special connection.&nbsp; It also allows you to make the connection
262
262
  travel in a single direction or in both directions.&nbsp; Finally, you can also
263
263
  add text to the connections to indicate that connection takes you Up/Down or In/Out.</p>
264
- <p>Changing the connection to<img border="5" src="images/connection_menu.gif" align="right" width="342" height="241">
264
+ <p>Changing the connection to<img border="5" src="../images/connection_menu.gif" align="right" width="342" height="241">
265
265
  be one way can also be done by just <br>
266
266
  clicking on them several times, without opening the requester.<br>
267
267
  <br>
@@ -281,7 +281,7 @@ Note that there is currently no Undo, so deleted nodes or connections<br>
281
281
  cannot be restored.<br>
282
282
  <br>
283
283
  <font size="4"><br>
284
- <b><a name="Complex Connections">Complex Connections<img border="5" src="images/complex_connection.gif" align="right" width="338" height="308"></a></b></font><br>
284
+ <b><a name="Complex Connections">Complex Connections<img border="5" src="../images/complex_connection.gif" align="right" width="338" height="308"></a></b></font><br>
285
285
  <br>
286
286
  A lot of text adventures have mazes with exits that lead nowhere and exits that
287
287
  change direction from one room to the next. We refer to these as complex
@@ -384,7 +384,7 @@ by doing:</p>
384
384
  &gt; script</b></p>
385
385
  <p>and then specifying the name of the file.<br>
386
386
  <br>
387
- Then, go to IFMapper and go to a map (usually an empty one) and do:<img border="0" src="images/automap.gif" align="right" width="413" height="428"><br>
387
+ Then, go to IFMapper and go to a map (usually an empty one) and do:<img border="0" src="../images/automap.gif" align="right" width="413" height="428"><br>
388
388
  <b>Map-&gt;Automap-&gt;Start</b>. This will pop up a file requester for you to feed
389
389
  IFMapper the name of the transcript.<br>
390
390
  Then, you will be asked thru a requester to select some options.<br>
@@ -0,0 +1,120 @@
1
+ <html xmlns:v="urn:schemas-microsoft-com:vml"
2
+ xmlns:o="urn:schemas-microsoft-com:office:office"
3
+ xmlns:w="urn:schemas-microsoft-com:office:word"
4
+ xmlns="http://www.w3.org/TR/REC-html40">
5
+
6
+ <head>
7
+ <meta http-equiv=Content-Type content="text/html; charset=windows-1252">
8
+ <meta name=ProgId content=Word.Document>
9
+ <meta name=Generator content="Microsoft Word 11">
10
+ <meta name=Originator content="Microsoft Word 11">
11
+ <link rel=File-List href="index_archivos/filelist.xml">
12
+ <link rel=Edit-Time-Data href="index_archivos/editdata.mso">
13
+ <!--[if !mso]>
14
+ <style>
15
+ v\:* {behavior:url(#default#VML);}
16
+ o\:* {behavior:url(#default#VML);}
17
+ w\:* {behavior:url(#default#VML);}
18
+ .shape {behavior:url(#default#VML);}
19
+ </style>
20
+ <![endif]-->
21
+ <title>Interactive Fiction Mapper</title>
22
+ <!--[if gte mso 9]><xml>
23
+ <o:DocumentProperties>
24
+ <o:Author>Gonzalo</o:Author>
25
+ <o:LastAuthor>Gonzalo</o:LastAuthor>
26
+ <o:Revision>2</o:Revision>
27
+ <o:TotalTime>1</o:TotalTime>
28
+ <o:Created>2006-06-24T09:13:00Z</o:Created>
29
+ <o:LastSaved>2006-06-24T09:14:00Z</o:LastSaved>
30
+ <o:Pages>1</o:Pages>
31
+ <o:Words>54</o:Words>
32
+ <o:Characters>300</o:Characters>
33
+ <o:Lines>2</o:Lines>
34
+ <o:Paragraphs>1</o:Paragraphs>
35
+ <o:CharactersWithSpaces>353</o:CharactersWithSpaces>
36
+ <o:Version>11.5606</o:Version>
37
+ </o:DocumentProperties>
38
+ </xml><![endif]--><!--[if gte mso 9]><xml>
39
+ <w:WordDocument>
40
+ <w:HyphenationZone>21</w:HyphenationZone>
41
+ <w:ValidateAgainstSchemas/>
42
+ <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
43
+ <w:IgnoreMixedContent>false</w:IgnoreMixedContent>
44
+ <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
45
+ <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
46
+ </w:WordDocument>
47
+ </xml><![endif]--><!--[if gte mso 9]><xml>
48
+ <w:LatentStyles DefLockedState="false" LatentStyleCount="156">
49
+ </w:LatentStyles>
50
+ </xml><![endif]-->
51
+ <style>
52
+ <!--
53
+ /* Style Definitions */
54
+ p.MsoNormal, li.MsoNormal, div.MsoNormal
55
+ {mso-style-parent:"";
56
+ margin:0cm;
57
+ margin-bottom:.0001pt;
58
+ mso-pagination:widow-orphan;
59
+ font-size:12.0pt;
60
+ font-family:"Times New Roman";
61
+ mso-fareast-font-family:"Times New Roman";}
62
+ p
63
+ {font-size:12.0pt;
64
+ font-family:"Times New Roman";
65
+ mso-fareast-font-family:"Times New Roman";}
66
+ @page Section1
67
+ {size:595.3pt 841.9pt;
68
+ margin:70.85pt 3.0cm 70.85pt 3.0cm;
69
+ mso-header-margin:35.4pt;
70
+ mso-footer-margin:35.4pt;
71
+ mso-paper-source:0;}
72
+ div.Section1
73
+ {page:Section1;}
74
+ -->
75
+ </style>
76
+ <!--[if gte mso 10]>
77
+ <style>
78
+ /* Style Definitions */
79
+ table.MsoNormalTable
80
+ {mso-style-name:"Tabla normal";
81
+ mso-tstyle-rowband-size:0;
82
+ mso-tstyle-colband-size:0;
83
+ mso-style-noshow:yes;
84
+ mso-style-parent:"";
85
+ mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
86
+ mso-para-margin:0cm;
87
+ mso-para-margin-bottom:.0001pt;
88
+ mso-pagination:widow-orphan;
89
+ font-size:10.0pt;
90
+ font-family:"Times New Roman";
91
+ mso-ansi-language:#0400;
92
+ mso-fareast-language:#0400;
93
+ mso-bidi-language:#0400;}
94
+ </style>
95
+ <![endif]-->
96
+ <meta http-equiv=Content-Language content=en-us>
97
+ </head>
98
+
99
+ <body lang=ES link=blue vlink=blue style='tab-interval:35.4pt'>
100
+
101
+ <div class=Section1>
102
+
103
+ <p align=center style='text-align:center'><b><u><span style='font-size:18.0pt'><a
104
+ href="start.html">Interactive Fiction Mapper</a></span></u></b></p>
105
+
106
+ <p align=center style='text-align:center'><b><span style='font-size:13.5pt'><a
107
+ href="start.html">de Gonzalo Garramuno</a></span></b></p>
108
+
109
+ <p align=center style='text-align:center'><a href="images/IFMapper_main.gif"><span
110
+ style='text-decoration:none;text-underline:none'><img border=0 width=595
111
+ height=447 id="_x0000_i1025" src="../images/IFMapper_main.gif"></span></a></p>
112
+
113
+ <p align=center style='text-align:center'><a href="index.html">Una herramienta
114
+ para Mapear Ficci�n Interactiva</a></p>
115
+
116
+ </div>
117
+
118
+ </body>
119
+
120
+ </html>
@@ -0,0 +1,1282 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
+ <html xmlns:v="urn:schemas-microsoft-com:vml" 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">
3
+ <head>
4
+
5
+ <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
6
+
7
+ <meta name="ProgId" content="Word.Document">
8
+
9
+ <meta name="Generator" content="Microsoft Word 11">
10
+
11
+ <meta name="Originator" content="Microsoft Word 11">
12
+
13
+ <link rel="File-List" href="start_archivos/filelist.xml">
14
+
15
+ <link rel="Edit-Time-Data" href="start_archivos/editdata.mso">
16
+ <!--[if !mso]>
17
+ <style>
18
+ v\:* {behavior:url(#default#VML);}
19
+ o\:* {behavior:url(#default#VML);}
20
+ w\:* {behavior:url(#default#VML);}
21
+ .shape {behavior:url(#default#VML);}
22
+ </style>
23
+ <![endif]-->
24
+
25
+
26
+ <title>Interactive Fiction Mapper</title>
27
+ <o:smarttagtype namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="place"></o:smarttagtype><!--[if gte mso 9]><xml>
28
+ <o:DocumentProperties>
29
+ <o:Author>Gonzalo</o:Author>
30
+ <o:LastAuthor>Gonzalo</o:LastAuthor>
31
+ <o:Revision>7</o:Revision>
32
+ <o:TotalTime>408</o:TotalTime>
33
+ <o:Created>2006-06-24T09:15:00Z</o:Created>
34
+ <o:LastSaved>2006-06-25T05:10:00Z</o:LastSaved>
35
+ <o:Pages>1</o:Pages>
36
+ <o:Words>3972</o:Words>
37
+ <o:Characters>21848</o:Characters>
38
+ <o:Lines>182</o:Lines>
39
+ <o:Paragraphs>51</o:Paragraphs>
40
+ <o:CharactersWithSpaces>25769</o:CharactersWithSpaces>
41
+ <o:Version>11.5606</o:Version>
42
+ </o:DocumentProperties>
43
+ </xml><![endif]--><!--[if gte mso 9]><xml>
44
+ <w:WordDocument>
45
+ <w:SpellingState>Clean</w:SpellingState>
46
+ <w:GrammarState>Clean</w:GrammarState>
47
+ <w:HyphenationZone>21</w:HyphenationZone>
48
+ <w:ValidateAgainstSchemas/>
49
+ <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
50
+ <w:IgnoreMixedContent>false</w:IgnoreMixedContent>
51
+ <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
52
+ <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
53
+ </w:WordDocument>
54
+ </xml><![endif]--><!--[if gte mso 9]><xml>
55
+ <w:LatentStyles DefLockedState="false" LatentStyleCount="156">
56
+ </w:LatentStyles>
57
+ </xml><![endif]--><!--[if !mso]><object
58
+ classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id=ieooui></object>
59
+ <style>
60
+ st1\:*{behavior:url(#ieooui) }
61
+ </style>
62
+ <![endif]-->
63
+
64
+ <style>
65
+ <!--
66
+ /* Font Definitions */
67
+ @font-face
68
+ {font-family:Wingdings;
69
+ panose-1:5 0 0 0 0 0 0 0 0 0;
70
+ mso-font-charset:2;
71
+ mso-generic-font-family:auto;
72
+ mso-font-pitch:variable;
73
+ mso-font-signature:0 268435456 0 0 -2147483648 0;}
74
+ /* Style Definitions */
75
+ p.MsoNormal, li.MsoNormal, div.MsoNormal
76
+ {mso-style-parent:"";
77
+ margin:0cm;
78
+ margin-bottom:.0001pt;
79
+ mso-pagination:widow-orphan;
80
+ font-size:12.0pt;
81
+ font-family:"Times New Roman";
82
+ mso-fareast-font-family:"Times New Roman";}
83
+ a:link, span.MsoHyperlink
84
+ {color:blue;
85
+ text-decoration:underline;
86
+ text-underline:single;}
87
+ a:visited, span.MsoHyperlinkFollowed
88
+ {color:blue;
89
+ text-decoration:underline;
90
+ text-underline:single;}
91
+ p
92
+ {mso-style-link:"Normal \(Web\) Car";
93
+ mso-margin-top-alt:auto;
94
+ margin-right:0cm;
95
+ mso-margin-bottom-alt:auto;
96
+ margin-left:0cm;
97
+ mso-pagination:widow-orphan;
98
+ font-size:12.0pt;
99
+ font-family:"Times New Roman";
100
+ mso-fareast-font-family:"Times New Roman";}
101
+ span.NormalWebCar
102
+ {mso-style-name:"Normal \(Web\) Car";
103
+ mso-style-locked:yes;
104
+ mso-style-link:"Normal \(Web\)";
105
+ mso-ansi-font-size:12.0pt;
106
+ mso-bidi-font-size:12.0pt;
107
+ mso-ansi-language:ES;
108
+ mso-fareast-language:ES;
109
+ mso-bidi-language:AR-SA;}
110
+ span.SpellE
111
+ {mso-style-name:"";
112
+ mso-spl-e:yes;}
113
+ span.GramE
114
+ {mso-style-name:"";
115
+ mso-gram-e:yes;}
116
+ @page Section1
117
+ {size:595.3pt 841.9pt;
118
+ margin:70.85pt 3.0cm 70.85pt 3.0cm;
119
+ mso-header-margin:35.4pt;
120
+ mso-footer-margin:35.4pt;
121
+ mso-paper-source:0;}
122
+ div.Section1
123
+ {page:Section1;}
124
+ /* List Definitions */
125
+ @list l0
126
+ {mso-list-id:316419006;
127
+ mso-list-template-ids:-2064082016;}
128
+ @list l0:level1
129
+ {mso-level-number-format:bullet;
130
+ mso-level-text:\F0B7;
131
+ mso-level-tab-stop:36.0pt;
132
+ mso-level-number-position:left;
133
+ text-indent:-18.0pt;
134
+ mso-ansi-font-size:10.0pt;
135
+ font-family:Symbol;}
136
+ @list l0:level2
137
+ {mso-level-tab-stop:72.0pt;
138
+ mso-level-number-position:left;
139
+ text-indent:-18.0pt;}
140
+ @list l0:level3
141
+ {mso-level-tab-stop:108.0pt;
142
+ mso-level-number-position:left;
143
+ text-indent:-18.0pt;}
144
+ @list l0:level4
145
+ {mso-level-tab-stop:144.0pt;
146
+ mso-level-number-position:left;
147
+ text-indent:-18.0pt;}
148
+ @list l0:level5
149
+ {mso-level-tab-stop:180.0pt;
150
+ mso-level-number-position:left;
151
+ text-indent:-18.0pt;}
152
+ @list l0:level6
153
+ {mso-level-tab-stop:216.0pt;
154
+ mso-level-number-position:left;
155
+ text-indent:-18.0pt;}
156
+ @list l0:level7
157
+ {mso-level-tab-stop:252.0pt;
158
+ mso-level-number-position:left;
159
+ text-indent:-18.0pt;}
160
+ @list l0:level8
161
+ {mso-level-tab-stop:288.0pt;
162
+ mso-level-number-position:left;
163
+ text-indent:-18.0pt;}
164
+ @list l0:level9
165
+ {mso-level-tab-stop:324.0pt;
166
+ mso-level-number-position:left;
167
+ text-indent:-18.0pt;}
168
+ @list l1
169
+ {mso-list-id:518082848;
170
+ mso-list-template-ids:614105614;}
171
+ @list l1:level1
172
+ {mso-level-number-format:bullet;
173
+ mso-level-text:\F0B7;
174
+ mso-level-tab-stop:36.0pt;
175
+ mso-level-number-position:left;
176
+ text-indent:-18.0pt;
177
+ mso-ansi-font-size:10.0pt;
178
+ font-family:Symbol;}
179
+ @list l2
180
+ {mso-list-id:758019445;
181
+ mso-list-template-ids:-639329502;}
182
+ @list l2:level2
183
+ {mso-level-number-format:bullet;
184
+ mso-level-text:o;
185
+ mso-level-tab-stop:72.0pt;
186
+ mso-level-number-position:left;
187
+ text-indent:-18.0pt;
188
+ mso-ansi-font-size:10.0pt;
189
+ font-family:"Courier New";
190
+ mso-bidi-font-family:"Times New Roman";}
191
+ @list l2:level3
192
+ {mso-level-number-format:bullet;
193
+ mso-level-text:\F0A7;
194
+ mso-level-tab-stop:108.0pt;
195
+ mso-level-number-position:left;
196
+ text-indent:-18.0pt;
197
+ mso-ansi-font-size:10.0pt;
198
+ font-family:Wingdings;}
199
+ @list l3
200
+ {mso-list-id:1801650636;
201
+ mso-list-template-ids:875438174;}
202
+ @list l3:level1
203
+ {mso-level-tab-stop:36.0pt;
204
+ mso-level-number-position:left;
205
+ text-indent:-18.0pt;}
206
+ @list l3:level2
207
+ {mso-level-number-format:bullet;
208
+ mso-level-text:o;
209
+ mso-level-tab-stop:72.0pt;
210
+ mso-level-number-position:left;
211
+ text-indent:-18.0pt;
212
+ mso-ansi-font-size:10.0pt;
213
+ font-family:"Courier New";
214
+ mso-bidi-font-family:"Times New Roman";}
215
+ @list l3:level3
216
+ {mso-level-number-format:bullet;
217
+ mso-level-text:\F0A7;
218
+ mso-level-tab-stop:108.0pt;
219
+ mso-level-number-position:left;
220
+ text-indent:-18.0pt;
221
+ mso-ansi-font-size:10.0pt;
222
+ font-family:Wingdings;}
223
+ @list l3:level4
224
+ {mso-level-tab-stop:144.0pt;
225
+ mso-level-number-position:left;
226
+ text-indent:-18.0pt;}
227
+ @list l3:level5
228
+ {mso-level-tab-stop:180.0pt;
229
+ mso-level-number-position:left;
230
+ text-indent:-18.0pt;}
231
+ @list l3:level6
232
+ {mso-level-tab-stop:216.0pt;
233
+ mso-level-number-position:left;
234
+ text-indent:-18.0pt;}
235
+ @list l3:level7
236
+ {mso-level-tab-stop:252.0pt;
237
+ mso-level-number-position:left;
238
+ text-indent:-18.0pt;}
239
+ @list l3:level8
240
+ {mso-level-tab-stop:288.0pt;
241
+ mso-level-number-position:left;
242
+ text-indent:-18.0pt;}
243
+ @list l3:level9
244
+ {mso-level-tab-stop:324.0pt;
245
+ mso-level-number-position:left;
246
+ text-indent:-18.0pt;}
247
+ ol
248
+ {margin-bottom:0cm;}
249
+ ul
250
+ {margin-bottom:0cm;}
251
+ -->
252
+ </style><!--[if gte mso 10]>
253
+ <style>
254
+ /* Style Definitions */
255
+ table.MsoNormalTable
256
+ {mso-style-name:"Tabla normal";
257
+ mso-tstyle-rowband-size:0;
258
+ mso-tstyle-colband-size:0;
259
+ mso-style-noshow:yes;
260
+ mso-style-parent:"";
261
+ mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
262
+ mso-para-margin:0cm;
263
+ mso-para-margin-bottom:.0001pt;
264
+ mso-pagination:widow-orphan;
265
+ font-size:10.0pt;
266
+ font-family:"Times New Roman";
267
+ mso-ansi-language:#0400;
268
+ mso-fareast-language:#0400;
269
+ mso-bidi-language:#0400;}
270
+ </style>
271
+ <![endif]-->
272
+
273
+ <meta http-equiv="Content-Language" content="es">
274
+ <!--[if gte mso 9]><xml>
275
+ <o:shapedefaults v:ext="edit" spidmax="3074"/>
276
+ </xml><![endif]--><!--[if gte mso 9]><xml>
277
+ <o:shapelayout v:ext="edit">
278
+ <o:idmap v:ext="edit" data="1"/>
279
+ </o:shapelayout></xml><![endif]-->
280
+ </head>
281
+
282
+
283
+ <body style="" lang="ES" link="blue" vlink="blue">
284
+
285
+
286
+ <div class="Section1">
287
+
288
+ <p style="text-align: center;" align="center"><span class="SpellE"><b><u><span style="font-size: 18pt; color: navy;">Interactive</span></u></b></span><b><u><span style="font-size: 18pt; color: navy;"> <span class="SpellE">Fiction</span> <span class="SpellE">Mapper</span> (<span class="SpellE">IFMapper</span>)
289
+ </span></u></b><b><span style="font-size: 18pt; color: navy;">de Gonzalo <span class="SpellE">Garramu&ntilde;o</span></span></b></p>
290
+
291
+
292
+ <p style="text-align: center;" align="center"><b><u><span style="font-size: 13.5pt; color: navy;">Manual del Usuario</span></u></b></p>
293
+
294
+
295
+ <ol start="1" type="1">
296
+
297
+ <li class="MsoNormal" style=""><a href="#Introduction">Introducci&oacute;n
298
+ </a>
299
+ <ul type="circle">
300
+
301
+ <li class="MsoNormal" style=""><a href="#What_are_Interactive_Fiction_Games">Qu&eacute; son los Juegos de Ficci&oacute;n
302
+ Interactiva<span class="GramE">?</span></a></li>
303
+
304
+ <li class="MsoNormal" style=""><a href="#What_is_IFMapper">Qu&eacute; es <span class="SpellE">IFMapper</span>?</a></li>
305
+
306
+ <li class="MsoNormal" style=""><a href="#Features_of_IFMapper">Caracter&iacute;sticas de <span class="SpellE">IFMapper</span></a>
307
+ &nbsp;</li>
308
+
309
+
310
+ </ul>
311
+ </li>
312
+
313
+
314
+ <li class="MsoNormal" style=""><a href="#Installation">Instalaci&oacute;n</a>
315
+ <ul type="circle">
316
+
317
+ <li class="MsoNormal" style=""><a href="#Lo_que_necesitar%E1s">Lo que necesitar&aacute;s</a></li>
318
+
319
+ <li class="MsoNormal" style=""><a href="#D%F3nde_obtener_las_cosas"><span class="SpellE"><span style="" lang="EN-GB">D&oacute;nde</span></span><span style="" lang="EN-GB"> <span class="SpellE">obtener</span> <span class="SpellE">las</span> <span class="SpellE">cosas</span></span></a><span style="" lang="EN-GB"><o:p></o:p></span></li>
320
+
321
+ <li class="MsoNormal" style=""><a href="#Installing_from_a_zip_file">Instalando desde un archivo <span class="SpellE">zip</span></a></li>
322
+
323
+ <li class="MsoNormal" style=""><a href="#Installing_or_Upgrading_using_rubygems">Instalando o Haciendo un <span class="SpellE">Upgrade</span> usando <span class="SpellE">rubygems</span></a>
324
+ &nbsp;</li>
325
+
326
+
327
+ </ul>
328
+ </li>
329
+
330
+
331
+ <li class="MsoNormal" style=""><a href="#Starting_IFMapper">Arrancando
332
+ <span class="SpellE">IFMapper</span></a>
333
+ &nbsp;</li>
334
+
335
+ <li class="MsoNormal" style=""><a href="#Using_IFMapper">Usando
336
+ <span class="SpellE">IFMapper</span></a>
337
+ <ul type="circle">
338
+
339
+ <li class="MsoNormal" style=""><a href="#The_Interface">La Interfaz Gr&aacute;fica</a></li>
340
+
341
+ <li class="MsoNormal" style=""><a href="#Navigation">Navegaci&oacute;n</a></li>
342
+
343
+ <li class="MsoNormal" style=""><a href="#Creating_Locations">Creando Localidades</a></li>
344
+
345
+ <li class="MsoNormal" style=""><a href="#Creating_Connections">Creando Conexiones</a></li>
346
+
347
+ <li class="MsoNormal" style=""><a href="#Deleting_Rooms_or_Connections">Borrando Localidades y Conexiones</a></li>
348
+
349
+ <li class="MsoNormal" style=""><a href="#Complex_Connections">Creando Conexiones Complejas</a> </li>
350
+
351
+ <li class="MsoNormal" style=""><a href="#Moving_Rooms_in_Map">Moviendo Localidades</a></li>
352
+
353
+ <li class="MsoNormal" style=""><a href="#Dealing_with_Multiple_Sections">Trabajando con <span class="SpellE">M&uacute;ltiples</span>
354
+ Secciones</a></li>
355
+
356
+ <li class="MsoNormal" style=""><a href="#Buscando">Buscando
357
+ </a></li>
358
+
359
+ <li class="MsoNormal" style=""><a href="#Preferences">Preferencias
360
+ </a></li>
361
+
362
+ <li class="MsoNormal" style=""><a href="#Saving_and_Loading_Maps">Grabando y Cargando Mapas</a></li>
363
+
364
+ <li class="MsoNormal" style=""><a href="#Saving_and_Loading_Maps">Clausurando Mapas</a></li>
365
+
366
+ <li class="MsoNormal" style=""><a href="#Mapping_Games_from_Transcripts_%28Automapp">Creando Mapas
367
+ Autom&aacute;ticamente desde Transcripciones (<span class="SpellE">Mapeado</span>
368
+ Autom&aacute;tico)</a>
369
+ <ul type="square">
370
+
371
+ <li class="MsoNormal" style=""><a href="#How_does_the_automapper_distinguish_loca">C&oacute;mo funciona el <span class="SpellE">Mapeado</span> Autom&aacute;tico</a></li>
372
+
373
+ <li class="MsoNormal" style=""><a href="#Limitations_on_Automapping">Limitaciones del <span class="SpellE">Mapeado</span>
374
+ Autom&aacute;tico</a>
375
+ &nbsp;</li>
376
+
377
+
378
+ </ul>
379
+ </li>
380
+
381
+
382
+
383
+ </ul>
384
+ </li>
385
+
386
+
387
+ <li class="MsoNormal" style=""><a href="#Creating_a_new_Inform/TADS3_game">Creando un nuevo juego para TADS3
388
+ o <span class="SpellE">Inform</span></a>
389
+ &nbsp;</li>
390
+
391
+ <li class="MsoNormal" style=""><a href="#Appendix">Ap&eacute;ndices</a>
392
+ <ul type="circle">
393
+
394
+ <li class="MsoNormal" style=""><a href="#I_am_new_to_Interactive_Fiction._What_ga">Soy nuevo en esto de la
395
+ Ficci&oacute;n Interactiva.&nbsp; <span style="" lang="EN-GB">&iquest;<span class="SpellE">Qu&eacute;</span> <span class="SpellE">juegos</span> me
396
+ <span class="SpellE">recomend&aacute;s</span>?</span></a><span style="" lang="EN-GB"><o:p></o:p></span></li>
397
+
398
+ <li class="MsoNormal" style=""><a href="#Contacting_the_Author">Contactando al Autor</a></li>
399
+
400
+
401
+ </ul>
402
+ </li>
403
+
404
+
405
+ </ol>
406
+
407
+
408
+
409
+
410
+ <p><a name="Introduction"><b><span style="font-size: 18pt; color: navy;">Introducci&oacute;n</span></b></a></p>
411
+
412
+
413
+ <p><a name="What_are_Interactive_Fiction_Games"></a><b>&iquest;Qu&eacute; son los Juegos de
414
+ Ficci&oacute;n Interactiva?</b></p>
415
+
416
+
417
+ <p class="MsoNormal" style="">Son
418
+ juegos de aventuras, que usualmente contienen poco o nada de gr&aacute;ficos pero usan
419
+ prosa para describir localidades, eventos y, con suerte, una buena
420
+ historia.<span style="">&nbsp; </span>El primer juego de ficci&oacute;n
421
+ interactiva fue creado a finales de 1970 y se lo conoce como <span class="SpellE">Adventure</span> (o <span class="SpellE">Colossal</span> Cave), si
422
+ bien el g&eacute;nero reci&eacute;n se convirti&oacute; en popular y desarroll&oacute; la mayor&iacute;a de sus
423
+ convenciones con la creaci&oacute;n de <span class="SpellE">Infocom</span> en los a&ntilde;os
424
+ 80.<br>
425
+
426
+ Si nunca han jugado un juego de ficci&oacute;n interactiva, tal vez la mejor
427
+ comparaci&oacute;n es que son una versi&oacute;n m&aacute;s adulta de &ldquo;Calabozos y Dragones&rdquo; o de
428
+ los libros infantiles de &ldquo;Elige tu Propia Aventura&rdquo;.<br>
429
+
430
+ Como las novelas, la ficci&oacute;n interactiva ha evolucionado hacia diferentes
431
+ estilos, g&eacute;neros y niveles de interactividad.<span style="">&nbsp;
432
+ </span>Hoy por hoy pueden encontrarse aventuras desarrolladas en idiomas como <span class="GramE">Ingl&eacute;s</span>, Espa&ntilde;ol, Italiano, Alem&aacute;n, etc.<br>
433
+
434
+ Vea la secci&oacute;n: &ldquo;<a href="#I_am_new_to_Interactive_Fiction._What_g">Soy nuevo
435
+ en esto de la Ficci&oacute;n Interactiva.&nbsp; &iquest;Qu&eacute; juegos me <span class="SpellE">recomend&aacute;s</span>?</a></p>
436
+
437
+
438
+ <p><a name="What_is_IFMapper"></a><b>&iquest;Qu&eacute; es <span class="SpellE">IFMapper</span>?</b><br>
439
+
440
+ <br>
441
+
442
+ <span class="SpellE">IFMapper</span> es una herramienta para ayudar con el mapeo
443
+ de los juegos de ficci&oacute;n interactiva.&nbsp; Como estos juegos dependen
444
+ principalmente de descripciones textuales y por lo general usan los puntos
445
+ cardinales para navegar por el juego, es relativamente f&aacute;cil perderse.&nbsp; En
446
+ los viejos tiempos, los jugadores usaban papel cuadriculado para dibujar sus
447
+ mapas, usando rect&aacute;ngulos y l&iacute;neas para mostrar cada localidad y sus salidas.&nbsp;
448
+ <span class="SpellE">IFMapper</span> es <span class="SpellE">b&aacute;sicamente</span>, la
449
+ <span class="SpellE">versi&oacute;n</span> del siglo 21 de esa misma pr&aacute;ctica.<br>
450
+
451
+ Aunque <span class="SpellE">IFMapper</span> es principalmente una herramienta de
452
+ mapeo, puede ser tambi&eacute;n utilizada como herramienta de dise&ntilde;o en las primeras
453
+ etapas de desarrollo de nuevos juegos (para los lenguajes de aventuras <span class="SpellE">Inform</span> o TADS3).</p>
454
+
455
+
456
+ <p><a name="Features_of_IFMapper"><b>Caracter&iacute;sticas de </b></a><span class="SpellE"><span style=""><b>IFMapper</b></span></span><span style=""></span></p>
457
+
458
+
459
+ <ul type="disc">
460
+
461
+ <li class="MsoNormal" style=""><span style="" lang="EN-GB">Multi-<span class="SpellE">plataforma</span>
462
+ (Windows, Linux, OSX)<o:p></o:p></span></li>
463
+
464
+ <li class="MsoNormal" style="">Interfaz gr&aacute;fica simple</li>
465
+
466
+ <li class="MsoNormal" style="">Conexiones Complejas
467
+ (conexiones que vuelven sobre s&iacute; mismas o conectan dos localidades
468
+ remotas)</li>
469
+
470
+ <li class="MsoNormal" style="">Conexi&oacute;n de localidades
471
+ remotas usando un algoritmo A*</li>
472
+
473
+ <li class="MsoNormal" style="">Soporte de la rueda del
474
+ rat&oacute;n para acercarse o alejarse del mapa</li>
475
+
476
+ <li class="MsoNormal" style="">Paneo del mapa usando el
477
+ bot&oacute;n medio del <span class="SpellE">rat&oacute;n</span></li>
478
+
479
+ <li class="MsoNormal" style="">Localidades pueden listar
480
+ objetos y tareas.</li>
481
+
482
+ <li class="MsoNormal" style="">Numeraci&oacute;n autom&aacute;tica de
483
+ las localidades.</li>
484
+
485
+ <li class="MsoNormal" style="">Edici&oacute;n de <span class="SpellE">multiples</span> mapas en simult&aacute;neo.</li>
486
+
487
+ <li class="MsoNormal" style="">Facilidad para mover
488
+ localidades con las flechas del teclado</li>
489
+
490
+ <li class="MsoNormal" style="">Escrito en un lenguaje de <span class="SpellE">scripting</span> simple y bueno (<span class="SpellE">Ruby</span>)</li>
491
+
492
+ <li class="MsoNormal" style="">Impresi&oacute;n a <span class="SpellE">Acrobat</span> PDF</li>
493
+
494
+ <li class="MsoNormal" style="">Puede leer y grabar
495
+ archivos IFM</li>
496
+
497
+ <li class="MsoNormal" style="">Puede leer y grabar
498
+ archivos de c&oacute;digo fuente de <span class="SpellE">Inform</span>/TADS3</li>
499
+
500
+ <li class="MsoNormal" style="">Los mapas pueden ser
501
+ clausurados para evitar su modificaci&oacute;n por error</li>
502
+
503
+ <li class="MsoNormal" style="">B&uacute;squeda <span class="SpellE">interactive</span> de palabras en localidades, objetos o
504
+ tareas</li>
505
+
506
+ <li class="MsoNormal" style="">Puede <span class="SpellE">mapear</span>
507
+ juegos autom&aacute;ticamente desde transcripciones similares a las de <span class="SpellE">Infocom</span>, <br>
508
+
509
+ aun cuando est&aacute;s jugando.</li>
510
+
511
+ <li class="MsoNormal" style=""><span style="" lang="EN-GB">Gratis<br>
512
+
513
+ &nbsp;<o:p></o:p></span></li>
514
+
515
+ </ul>
516
+
517
+
518
+ <p><a name="Installation"></a><span class="SpellE"><span style=""><b><span style="font-size: 18pt; color: navy;" lang="EN-GB">Instalaci&oacute;n</span></b></span></span><span style=""></span><span style="" lang="EN-GB"><o:p></o:p></span></p>
519
+
520
+
521
+ <p><b><span style="" lang="EN-GB"><a name="Lo_que_necesitar&aacute;s"></a>Lo <span class="SpellE">que</span>
522
+ <span class="SpellE">necesitar&aacute;s</span></span></b><span style="" lang="EN-GB"><o:p></o:p></span></p>
523
+
524
+
525
+ <p>Para usar <span class="SpellE">IFMapper</span>, <span class="SpellE">necesit&aacute;s</span>
526
+ tener el <span class="SpellE">language</span> de programaci&oacute;n <span class="SpellE">Ruby</span>
527
+ instalado y <span class="SpellE">FXRuby</span>.&nbsp; <span class="SpellE">IFMapper</span>
528
+ fue originalmente desarrollado para <span class="SpellE">corer</span> bajo ruby1.8
529
+ y <span class="SpellE">FXRuby1</span>.2, pero es compatible con versiones
530
+ posteriores, too.<br>
531
+
532
+ Para imprimir documentos PDF, necesitar&aacute;s el m&oacute;dulo PDF<span class="GramE">::<span class="SpellE">Writer</span></span> de <span class="SpellE">Austin</span> <span class="SpellE">Ziegler</span>.</p>
533
+
534
+
535
+ <p><span class="SpellE"><b><span style="" lang="EN-GB"><a name="D&oacute;nde_obtener_las_cosas"></a>D&oacute;nde</span></b></span><b><span style="" lang="EN-GB"> <span class="SpellE">obtener</span> <span class="SpellE">las</span> <span class="SpellE">cosas</span></span></b><span style="" lang="EN-GB"><o:p></o:p></span></p>
536
+
537
+
538
+ <p>Si tu <span class="SpellE">platforma</span> es Windows, lo <span class="SpellE">major</span>
539
+ es que te bajes el <span class="SpellE">One</span>-<span class="SpellE">Click</span>
540
+ <span class="SpellE">Ruby</span> <span class="SpellE">Installer</span> de:<br>
541
+
542
+ <a href="http://rubyforge.org/projects/rubyinstaller/">http://rubyforge.org/projects/rubyinstaller/</a></p>
543
+
544
+
545
+ <p>Este instalador viene con la &uacute;ltima <span class="SpellE">version</span> estable
546
+ de <span class="SpellE">ruby</span> y tambi&eacute;n con la &uacute;ltima versi&oacute;n de <span class="SpellE">fxruby</span>.&nbsp; <span class="SpellE"><span style="" lang="EN-GB">Viene</span></span><span style="" lang="EN-GB"> <span class="SpellE">tambi&eacute;n</span> con <span class="SpellE">rubygems</span> (<span class="SpellE">vea</span> <span class="SpellE">rubygems</span>
547
+ <span class="SpellE">m&aacute;s</span> <span class="SpellE">adelante</span>).<o:p></o:p></span></p>
548
+
549
+
550
+ <p>Si tu plataforma es Linux o OSX, puede que necesites <span class="SpellE">compiler</span>
551
+ <span class="SpellE">ruby</span> desde su c&oacute;digo fuente (note que OSX actualmente
552
+ viene con <span class="SpellE">ruby</span> <span class="SpellE">pre</span>-instalado,
553
+ pero una <span class="SpellE">version</span> vieja), aunque puede que quieras
554
+ navegar por la <span class="SpellE">web</span> para buscar un <span class="SpellE">ruby</span>
555
+ <span class="SpellE">pre</span>-compilado para tu plataforma.&nbsp; Para<span style="" lang="EN-GB"> <span class="SpellE">detalles</span>
556
+ en <span class="SpellE">c&oacute;mo</span> <span class="SpellE">compilar</span> ruby, <span class="SpellE">vea</span>:<o:p></o:p></span></p>
557
+
558
+
559
+ <p><a href="http://www.rubygarden.org/ruby?RubyOnMacintosh"><span style="" lang="EN-GB">http://www.rubygarden.org/ruby?RubyOnMacintosh</span></a><span style="" lang="EN-GB">
560
+ </span><a href="http://www.rubygarden.org/ruby?RubyOnLinux"><span style="" lang="EN-GB">http://www.rubygarden.org/ruby?RubyOnLinux</span></a><span style="" lang="EN-GB"><o:p></o:p></span></p>
561
+
562
+
563
+ <p>Luego de obtener un <span class="SpellE">ruby</span> que <span class="SpellE">function</span>,
564
+ deber&iacute;as proceder a instalar <span class="SpellE">FXRuby</span>.&nbsp; Puedes
565
+ hacer esto f&aacute;cilmente si primero instalas <span class="SpellE">rubygems</span> (lo
566
+ que recomiendo) o sin usar <span class="SpellE">rubygems</span>.&nbsp; Si quieres
567
+ usar <span class="SpellE">rubygems</span>, proceda a la secci&oacute;n "Usando <span class="SpellE">Rubygems</span>".</p>
568
+
569
+
570
+ <p><span class="SpellE">FXRuby</span> puede bajarse desde:<br>
571
+
572
+ <a href="http://www.fxruby.org">http://www.fxruby.org</a></p>
573
+
574
+
575
+ <p>Tras instalar <span class="SpellE">fxruby</span>, estar&aacute;s listo para instalar y
576
+ correr <span class="SpellE">IFMapper</span>.</p>
577
+
578
+
579
+
580
+
581
+ <p><a name="Installing_from_a_zip_file"><b>Instalando desde un archivo </b></a><span class="SpellE"><span style=""><b>zip</b></span></span><span style=""></span><b><o:p></o:p></b></p>
582
+
583
+
584
+ <p>Tras instalar <span class="SpellE">ruby</span> y <span class="SpellE">FXRuby</span>
585
+ correctamente, puedes bajar el archive <span class="SpellE">zip</span> de <span class="SpellE">IFMapper</span> desde:</p>
586
+
587
+
588
+ <p><a href="http://rubyforge.org/projects/ifmapper"><span style="" lang="EN-GB">http://rubyforge.org/projects/ifmapper</span></a><span style="" lang="EN-GB"><o:p></o:p></span></p>
589
+
590
+
591
+ <p>Use <span class="SpellE">unzip</span>, <span class="SpellE">winzip</span> u otra
592
+ utilidad de descompresi&oacute;n de <span class="SpellE">zips</span> para abrir el
593
+ archivo.&nbsp; Todas las filas se encontrar&aacute;n dentro de un directorio llamado <span class="SpellE">IFmapper</span>.&nbsp;&nbsp; Estar&aacute;s as&iacute; en condiciones de
594
+ arrancar el <span class="SpellE">IFMapper</span>.</p>
595
+
596
+
597
+ <p>Si quiere grabar archivos PDF desde <span class="SpellE">IFMapper</span>, deber&aacute;s
598
+ instalar la librer&iacute;a PDF<span class="GramE">::<span class="SpellE">Writer</span></span>.&nbsp;
599
+ <span class="SpellE"><span style="" lang="EN-GB">Puedes</span></span><span style="" lang="EN-GB"> <span class="SpellE">hacer</span> <span class="SpellE">esto</span> <span class="SpellE">usando</span> <span class="SpellE">rubygems</span>
600
+ o <span class="SpellE">baj&aacute;ndola</span> <span class="SpellE">manualmente</span> <span class="SpellE">desde</span>:<o:p></o:p></span></p>
601
+
602
+
603
+ <p><a href="http://rubyforge.org/projects/ruby-pdf/"><span style="" lang="EN-GB">http://rubyforge.org/projects/ruby-pdf/</span></a><span style="" lang="EN-GB"><o:p></o:p></span></p>
604
+
605
+
606
+ <p><span style="" lang="EN-GB">&nbsp;<o:p></o:p></span></p>
607
+
608
+
609
+ <p><a name="Installing_or_Upgrading_using_rubygems"><b>Instalando o Haciendo </b></a><span class="SpellE"><span style=""><b>Upgrades</b></span></span><span style=""><b> con <span class="SpellE">rubygems</span></b></span></p>
610
+
611
+
612
+ <p><span class="SpellE">Rubygems</span> es un controlador de librer&iacute;as de <span class="SpellE">ruby</span> que ayuda con la instalaci&oacute;n autom&aacute;tica de cualquier
613
+ librer&iacute;a y las dependencias que <span class="SpellE">IFMapper</span> pueda tener.&nbsp;
614
+ <span class="SpellE">Rubygems</span> viene <span class="SpellE">pre</span>-instalado
615
+ con el <span class="SpellE">One</span>-<span class="SpellE">Click</span> <span class="SpellE">Installer</span> para Windows.&nbsp; Para otras <span class="SpellE">platformas</span>, puedes obtenerla desde:</p>
616
+
617
+
618
+ <p><a href="http://rubyforge.org/projects/rubygems/"><span style="" lang="EN-GB">http://rubyforge.org/projects/rubygems/</span></a><span style="" lang="EN-GB"><o:p></o:p></span></p>
619
+
620
+
621
+ <p>Una vez que <span class="SpellE">rubygems</span> est&aacute; instalado, puedes abrir
622
+ una consola de <span class="SpellE">windows</span> o una ventana de <span class="SpellE">shell</span> y correr:</p>
623
+
624
+
625
+ <p><span style="font-family: &quot;Courier New&quot;;" lang="EN-GB">&gt;
626
+ <span class="GramE">gem</span> install -r <span class="SpellE">ifmapper</span></span><span style="" lang="EN-GB"><o:p></o:p></span></p>
627
+
628
+
629
+ <p>Esto bajar&aacute; la &uacute;ltima <span class="SpellE">version</span> de <span class="SpellE">ifmapper</span>, as&iacute; como todas las librer&iacute;as que <span class="SpellE">ifmapper</span> necesite para correr (en caso de que no est&eacute;n
630
+ instaladas en tu sistema).&nbsp; Si no tienes <span class="SpellE">fxruby</span>
631
+ instalado, se instalar&aacute; para usted.&nbsp; En sistemas <span class="SpellE">Unix</span>,
632
+ puede que a&uacute;n as&iacute; tengas que compilarlo manualmente.</p>
633
+
634
+
635
+ <p><span class="SpellE">IFmapper</span> (y sus librer&iacute;as) ser&aacute;n colocadas dentro
636
+ de tu directorio de instalaci&oacute;n de <span class="SpellE">ruby</span>. <span style="">&nbsp;</span><span class="SpellE"><span style="" lang="EN-GB">Por</span></span><span style="" lang="EN-GB"> <span class="SpellE">ejemplo</span><span class="GramE">:</span>
637
+ </span><span style="font-family: &quot;Courier New&quot;;" lang="EN-GB">C:/ruby/lib/ruby/gems/1.8/gems/ifmapper-{VERSION}</span><span style="" lang="EN-GB"><o:p></o:p></span></p>
638
+
639
+
640
+ <p><span style="" lang="EN-GB">&nbsp;<o:p></o:p></span></p>
641
+
642
+
643
+ <p><a name="Starting_IFMapper"></a><span class="SpellE"><span style=""><b><span style="font-size: 18pt; color: navy;" lang="EN-GB">Arrancando</span></b></span></span><span style=""><b><span style="font-size: 18pt; color: navy;" lang="EN-GB"> <span class="SpellE">IFMapper</span></span></b></span><span style=""></span><span style="" lang="EN-GB"><o:p></o:p></span></p>
644
+
645
+
646
+ <p>Una vez instalado, puedes correr <span class="SpellE">IFMapper</span> ya sea <span class="SpellE">cliqueando</span> sobre el archivo <span class="SpellE">IFMapper.rbw</span>
647
+ dentro del directorio de <span class="SpellE">ifmapper</span> o, invocando <span class="SpellE">IFMapper.rbw</span> desde cualquier <span class="SpellE">shell</span>
648
+ o consola.</p>
649
+
650
+
651
+ <p><span class="SpellE">Assumiendo</span> que todo est&aacute; instalado correctamente, ver&aacute;s
652
+ la pantalla principal de <span class="SpellE">IFMapper</span> con un mapa vac&iacute;o.&nbsp;</p>
653
+
654
+
655
+ <p><a name="Using_IFMapper"><b><span style="font-size: 18pt; color: navy;">Usando
656
+ </span></b></a><span class="SpellE"><span style=""><b><span style="font-size: 18pt; color: navy;">IFMapper</span></b></span></span><span style=""></span></p>
657
+
658
+
659
+ <p><a name="The_Interface"><span style="font-size: 13.5pt;">La Interfa</span></a><span style="font-size: 13.5pt;">z Gr&aacute;fica</span></p>
660
+
661
+
662
+ <p><img id="_x0000_i1025" src="../images/IFMapper_main.gif" border="0" height="600" width="800"></p>
663
+
664
+
665
+ <p>La interfaz de <span class="SpellE">IFMapper</span> consiste de un <span class="SpellE">menu</span> que permite acceder a operaciones comunes (cargar/grabar
666
+ mapas, cambiar <span class="SpellE">seteos</span>, <span class="SpellE">etc</span>),
667
+ una barra de herramientas con funcionalidad similar, y una o m&aacute;s ventanas
668
+ mostrando una p&aacute;gina de un mapa.</p>
669
+
670
+
671
+ <p><span class="SpellE">IFMapper</span> te permite editar <span class="SpellE">multiples</span>
672
+ mapas simult&aacute;neamente.<br>
673
+
674
+ Cada mapa puede tener varias &ldquo;secciones&rdquo;, para as&iacute; mantener diferentes partes o
675
+ cap&iacute;tulos de los juegos organizados.<br>
676
+
677
+ Note que estas secciones tienen poco que ver como se hace la impresi&oacute;n del mapa
678
+ ya que dos secciones pueden terminar impresas juntas si entran en una p&aacute;gina o
679
+ una secci&oacute;n puede pasar a estar dividida en m&uacute;ltiples p&aacute;ginas por su tama&ntilde;o.</p>
680
+
681
+
682
+ <p>Cuando arranques <span class="SpellE">IFMapper</span> por primera vez, ver&aacute;s
683
+ un mapa vac&iacute;o que muestra una grilla donde las localidades y las conexiones
684
+ pueden ser creadas.
685
+ &nbsp;</p>
686
+
687
+
688
+ <p><a name="Navigation"><b><span style="font-size: 13.5pt;">Navegaci&oacute;n</span></b></a></p>
689
+
690
+
691
+ <p>Use su rat&oacute;n para la navegaci&oacute;n. Si su rat&oacute;n soporta una rueda giratoria, &eacute;sta
692
+ puede ser usada para acercarse o alejarse del mapa f&aacute;cilmente.<br>
693
+
694
+ Para panear alrededor del mapa, use el <span style="">&nbsp;</span><b>Bot&oacute;n
695
+ Medio del Rat&oacute;n</b> o, alternativamente, <b>ALT + El Bot&oacute;n Izquierdo del Rat&oacute;n</b>
696
+ (Estas teclas imitan el funcionamiento de Maya y 3dmax, ambos <span class="SpellE">softwares</span> populares de 3d).&nbsp; Puedes tambi&eacute;n moverte
697
+ por el mapa usando las barras de <span class="SpellE">scroll</span> que se
698
+ encuentran en los bordes del mapa.</p>
699
+
700
+
701
+ <p><b><span style="font-size: 13.5pt;"><br>
702
+
703
+ <a name="Creating_Locations">Creando Loca</a>lidades
704
+ </span></b><!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600"
705
+ o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f"
706
+ stroked="f">
707
+ <v:stroke joinstyle="miter"/>
708
+ <v:formulas>
709
+ <v:f eqn="if lineDrawn pixelLineWidth 0"/>
710
+ <v:f eqn="sum @0 1 0"/>
711
+ <v:f eqn="sum 0 0 @1"/>
712
+ <v:f eqn="prod @2 1 2"/>
713
+ <v:f eqn="prod @3 21600 pixelWidth"/>
714
+ <v:f eqn="prod @3 21600 pixelHeight"/>
715
+ <v:f eqn="sum @0 0 1"/>
716
+ <v:f eqn="prod @6 1 2"/>
717
+ <v:f eqn="prod @7 21600 pixelWidth"/>
718
+ <v:f eqn="sum @8 21600 0"/>
719
+ <v:f eqn="prod @7 21600 pixelHeight"/>
720
+ <v:f eqn="sum @10 21600 0"/>
721
+ </v:formulas>
722
+ <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
723
+ <o:lock v:ext="edit" aspectratio="t"/>
724
+ </v:shapetype><v:shape id="_x0000_s1026" type="#_x0000_t75" alt="" style='position:absolute;
725
+ margin-left:433pt;margin-top:0;width:256.5pt;height:282.75pt;z-index:1;
726
+ mso-wrap-distance-left:0;mso-wrap-distance-right:0;mso-position-horizontal:right;
727
+ mso-position-horizontal-relative:text;mso-position-vertical-relative:line'
728
+ o:allowoverlap="f">
729
+ <v:imagedata src="../images/room_small.gif"/>
730
+ <w:wrap type="square"/>
731
+ </v:shape><![endif]--><!--[if !vml]--><img src="../images/room_small.gif" v:shapes="_x0000_s1026" align="right" border="0" height="377" width="342"><!--[endif]--><b><span style="font-size: 13.5pt;">
732
+ </span></b>Puedes crear localidades en el mapa simplemente <span class="SpellE">cliqueando</span>
733
+ en cualquiera de los rect&aacute;ngulos de gu&iacute;a. La nueva localidad ser&aacute; otorgada un
734
+ nombre b&aacute;sico (&lsquo;Nueva Localidad&rsquo;) y estar&aacute; vac&iacute;a.<br>
735
+
736
+ Cada localidad agregada recibe autom&aacute;ticamente un n&uacute;mero, basado en su orden de
737
+ creaci&oacute;n.<br>
738
+
739
+ Para modificar el nombre o propiedades de una localidad, puedes <span class="SpellE">cliquear</span> dos veces sobre ella y una caja de datos aparecer&aacute;
740
+ para permitirte hacerlo.<br>
741
+
742
+ Si quieres que dicha caja de datos aparezca tan pronto como crees una nueva
743
+ localidad, puedes activar <b style="">Mapa-&gt;Opciones-&gt;Editar
744
+ al Crear</b>.</p>
745
+
746
+
747
+ <p>Esta caja de edici&oacute;n de localidades tiene opciones para marcar el cuarto
748
+ como oscuro y para agregar una lista de objetos presentes en la habitaci&oacute;n.<br>
749
+
750
+ A medida que juegas un juego, puede que quieras tambi&eacute;n listar las acciones que
751
+ necesitas realizar en la localidad para progresar en el juego (proveyendo as&iacute;
752
+ de un sistema rudimentario de ayuda o soluci&oacute;n para el juego).<br>
753
+
754
+ La caja de edici&oacute;n puede ser dejada abierta para r&aacute;pidamente editar varias
755
+ localidades.</p>
756
+
757
+
758
+ <p>Adem&aacute;s de usar el <span class="SpellE">mouse</span>, puedes usar el teclado
759
+ num&eacute;rico con la tecla de &ldquo;Bloque Num&eacute;rico&rdquo; (<span class="SpellE">Num</span> <span class="SpellE">Lock</span>) activado y as&iacute; usar los n&uacute;meros del <b>1 al 9</b> para
760
+ crear una nueva localidad en la direcci&oacute;n apropiada.&nbsp;</p>
761
+
762
+
763
+ <p><span style="" lang="EN-GB">&nbsp;</span><b><span style="font-size: 13.5pt;" lang="EN-GB"><br>
764
+
765
+ <a name="Creating_Connections"></a><span class="SpellE"><span style="">Creando</span></span><span style="">
766
+ <span class="SpellE">Conexiones</span></span></span></b><span style=""></span><span style="" lang="EN-GB"><o:p></o:p></span></p>
767
+
768
+
769
+ <p>Puedes crear conexiones entre localidades <span class="SpellE">cliqueando</span>
770
+ en las <span class="SpellE">areas</span> alrededor de los rect&aacute;ngulos del mapa. Dependiendo
771
+ de d&oacute;nde exactamente <span class="SpellE">cliquees</span>, una conexi&oacute;n simple ser&aacute;
772
+ creada entre ambas localidades.<br>
773
+
774
+ <br>
775
+
776
+ En su configuraci&oacute;n de comienzo, puedes <span class="SpellE">cliquear</span> para
777
+ crear una conexi&oacute;n en un &aacute;rea del mapa donde no existan a&uacute;n localidades. <span class="SpellE">IFMapper</span> proceder&aacute; a crear las localidades faltantes
778
+ autom&aacute;ticamente, adem&aacute;s de la conexi&oacute;n.<br>
779
+
780
+ <br>
781
+
782
+ Note que puede cambiar el comportamiento de c&oacute;mo las localidades y las conexiones
783
+ son creadas desde el men&uacute; de <b>Mapa-&gt;Opciones</b>:<br>
784
+
785
+ <b>Conexi&oacute;n Autom&aacute;tica - </b><span style="">&nbsp;</span><span class="SpellE">crer&aacute;</span> una conexi&oacute;n a la localidad previa desde cada nueva
786
+ localidad que crees.<b><br>
787
+
788
+ Crear al Conectar &ndash; </b>te permitir&aacute; agregar tanto la conexi&oacute;n como las
789
+ localidades faltantes cuando <span class="SpellE">cliqu&eacute;es</span> en un &aacute;rea de
790
+ conexi&oacute;n en el mapa.<br>
791
+
792
+ <!--[if gte vml 1]><v:shape id="_x0000_s1027" type="#_x0000_t75" alt=""
793
+ style='position:absolute;margin-left:418pt;margin-top:0;width:249pt;height:88.5pt;
794
+ z-index:2;mso-wrap-distance-left:0;mso-wrap-distance-right:0;
795
+ mso-position-horizontal:right;mso-position-horizontal-relative:text;
796
+ mso-position-vertical-relative:line' o:allowoverlap="f">
797
+ <v:imagedata src="../images/connection.gif"/>
798
+ <w:wrap type="square"/>
799
+ </v:shape><![endif]--><!--[if !vml]--><img src="../images/connection.gif" v:shapes="_x0000_s1027" align="right" border="0" height="118" width="332"><!--[endif]--><br>
800
+
801
+ Las conexiones pueden ser tambi&eacute;n modificadas en forma similar a las
802
+ localidades, <span class="SpellE">cliqueando</span> dos veces sobre una de ellas.
803
+ <br>
804
+
805
+ La caja de datos de la conexi&oacute;n te permite especificar la conexi&oacute;n como una
806
+ conexi&oacute;n libre, como una puerta, como una puerta con llave o como una conexi&oacute;n
807
+ especial.&nbsp; <br>
808
+
809
+ Tambi&eacute;n te permite hacer que la <span class="SpellE">conexion</span> sea
810
+ unidireccional o en ambas direcciones.&nbsp; Finalmente, puedes agregar texto
811
+ en las conexiones para indicar Subir/Bajar o Entrar/Salir.</p>
812
+
813
+
814
+ <p>Hacer que la conexi&oacute;n sea unidireccional puede hacerse tambi&eacute;n <span class="SpellE">cliqueando</span> sobre ella varias veces en sucesi&oacute;n, sin
815
+ necesidad de abrir la caja de edici&oacute;n.<!--[if gte vml 1]><v:shape id="_x0000_s1028"
816
+ type="#_x0000_t75" alt="" style='position:absolute;margin-left:433pt;
817
+ margin-top:0;width:256.5pt;height:180.75pt;z-index:3;mso-wrap-distance-left:0;
818
+ mso-wrap-distance-right:0;mso-position-horizontal:right;
819
+ mso-position-horizontal-relative:text;mso-position-vertical-relative:line'
820
+ o:allowoverlap="f">
821
+ <v:imagedata src="../images/connection_menu.gif"/>
822
+ <w:wrap type="square"/>
823
+ </v:shape><![endif]--><!--[if !vml]--><img src="../images/connection_menu.gif" v:shapes="_x0000_s1028" align="right" border="5" height="241" width="342"><!--[endif]--><br>
824
+
825
+ <br>
826
+
827
+ Finalmente, seleccionando una conexi&oacute;n y usando el bot&oacute;n derecho del rat&oacute;n te
828
+ da acceso a un <span class="SpellE">menu</span> de contexto que te permite invertir
829
+ la direcci&oacute;n de una conexi&oacute;n o trasladar la conexi&oacute;n hacia otra salida de una
830
+ de las localidades.</p>
831
+
832
+
833
+
834
+
835
+
836
+
837
+
838
+
839
+
840
+
841
+ <p><b><span style="font-size: 13.5pt;"><br>
842
+
843
+ <a name="Deleting_Rooms_or_Connections">Borrando Localidades o Conexiones</a></span></b><span style=""></span><br>
844
+
845
+ <br>
846
+
847
+ Para borrar una localidad o <span class="SpellE">conexion</span>, selecci&oacute;nela primero.
848
+ Luego, presione la tecla de borrado <span class="GramE">( <span class="SpellE">Supr</span></span>
849
+ o <span class="SpellE">Delete</span> o <span class="SpellE">Backspace</span> ).<br>
850
+
851
+ Note que por ahora no hay un comando de Deshacer, por lo que las habitaciones o
852
+ conexiones borradas no pueden recuperarse.<br>
853
+
854
+ <br>
855
+
856
+ <span style="font-size: 13.5pt;"><br>
857
+
858
+ <a name="Complex_Connections"><b>Conexiones Complejas</b></a></span><!--[if gte vml 1]><v:shape
859
+ id="_x0000_s1029" type="#_x0000_t75" alt="" style='position:absolute;
860
+ margin-left:427pt;margin-top:0;width:253.5pt;height:231pt;z-index:4;
861
+ mso-wrap-distance-left:0;mso-wrap-distance-right:0;mso-position-horizontal:right;
862
+ mso-position-horizontal-relative:text;mso-position-vertical-relative:line'
863
+ o:allowoverlap="f">
864
+ <v:imagedata src="../images/complex_connection.gif"/>
865
+ <w:wrap type="square"/>
866
+ </v:shape><![endif]--><!--[if !vml]--><img src="../images/complex_connection.gif" v:shapes="_x0000_s1029" align="right" border="5" height="308" width="338"><!--[endif]--><span style=""></span><br>
867
+
868
+ <br>
869
+
870
+ Muchas aventuras de texto tienen laberintos con salidas que no llevan a ning&uacute;n
871
+ lado y salidas que cambian su direcci&oacute;n de una localidad a otra. Nos referimos
872
+ a estas conexiones como conexiones complejas.<br>
873
+
874
+ Para crear conexiones complejas, <span class="SpellE">tipee</span> la letra <b>'x'</b>
875
+ o use la funci&oacute;n del men&uacute; <span class="SpellE"><b>Edit</b></span><b>-&gt;Agregar
876
+ Conexi&oacute;n Compleja</b>. Luego, <span class="SpellE">clique</span> en una salida de
877
+ la primera localidad a conectar y luego en la salida de la segunda localidad. </p>
878
+
879
+
880
+ <p><span class="SpellE">IFMapper</span> intentar&aacute; calcular el camino en el mapa
881
+ que te lleva desde la salida de la primera localidad a la salida de la segunda.
882
+ </p>
883
+
884
+
885
+ <p>Si quiere salir del modo de agregar una <span class="SpellE">connexion</span> compleja,
886
+ puede presionar la tecla de ESC en cualquier momento. <br>
887
+
888
+ <br>
889
+
890
+ Para que una conexi&oacute;n compleja ocurra, el camino entre ambas localidades debe
891
+ estar &lsquo;libre&rsquo; de otras localidades que se interpongan. <span style="">&nbsp;</span><span class="SpellE">IFMapper</span> tambi&eacute;n
892
+ tratar&aacute; de evitar que diversos caminos complejos se crucen, pero a&uacute;n as&iacute; lo
893
+ permitir&aacute;.<br>
894
+
895
+ Para crear salidas que no van a ning&uacute;n lado, puedes crear una <span class="SpellE">connexion</span> compleja <span class="SpellE">cliqueando</span> dos
896
+ veces sobre la misma salida o usando <b style="">CTRL
897
+ + Bot&oacute;n Izquierdo del Rat&oacute;n </b>sin necesidad de entrar en el modo de agregar conexiones
898
+ complejas. <br>
899
+
900
+ <br>
901
+
902
+ <b><span style="font-size: 13.5pt;"><br>
903
+
904
+ <a name="Moving_Rooms_in_Map">Moviendo Localidades en el Map</a>a</span></b><br>
905
+
906
+ <br>
907
+
908
+ Cuando construyas mapas grandes de juegos complejos, probablemente te encontrar&aacute;s
909
+ en la necesidad de mover las localidades. Para hacerlo, selecciona las
910
+ localidades que quieras mover usando <b>CTRL+Bot&oacute;n Izquierdo del Rat&oacute;n </b>sobre
911
+ ellas, y luego usa las teclas de las flechas del cursor para mover las
912
+ habitaciones una unidad de grilla a la vez.<br>
913
+
914
+ Puedes usar tambi&eacute;n <b>SHIFT+Bot&oacute;n Izquierdo del Rat&oacute;n</b> y mantenerlo
915
+ apretado para dibujar una caja alrededor de varias localidades a seleccionar. <br>
916
+
917
+ Si hay conexiones entre las localidades que <span class="SpellE">moves</span> y
918
+ las que no, <span class="SpellE">IFMapper</span> seguir&aacute; recalculando nuevos
919
+ caminos para las conexiones a medida que <span class="SpellE">mov&eacute;s</span> las
920
+ habitaciones.<br>
921
+
922
+ Note que las conexiones complejas pueden a veces &ldquo;fallar&rdquo; debido a quedar
923
+ bloqueadas. En esos cases, ver&aacute;s que la conexi&oacute;n queda r&iacute;gida y se vuelve roja.
924
+ &nbsp;</p>
925
+
926
+
927
+ <p><a name="Dealing_with_Multiple_Sections"><b><span style="font-size: 13.5pt;">Trabajando
928
+ con M&uacute;ltiples Secciones</span></b></a></p>
929
+
930
+
931
+ <p>Algunos juegos de aventuras pueden ser bien grandes y estar divididos en cap&iacute;tulos.&nbsp;
932
+ En esos casos, puede que quieras aprovechar la opci&oacute;n de <span class="SpellE">IFMapper</span>
933
+ de crear varias secciones del mapa.&nbsp; Esto mantendr&aacute; a tu mapa organizado y
934
+ puede que te ayude a imprimirlo m&aacute;s tarde.</p>
935
+
936
+
937
+ <p><span class="SpellE"><span class="GramE"><span style="" lang="EN-GB">Puedes</span></span></span><span class="GramE"><span style="" lang="EN-GB"> <span class="SpellE">crear</span> o <span class="SpellE">borrar</span> <span class="SpellE">secciones</span> <span class="SpellE">desde</span> <span class="SpellE">los</span> menus de <span class="SpellE"><b>Mapa</b></span><b>-&gt;<span class="SpellE">Secciones</span>-&gt;<span class="SpellE">Crear</span> <span class="SpellE">Secci&oacute;n</span></b> y <br>
938
+
939
+ <span class="SpellE"><b>Mapa</b></span><b>-&gt;<span class="SpellE">Secciones</span>-&gt;<span class="SpellE">Borrar</span> <span class="SpellE">Secci&oacute;n</span>.</b></span></span><span style="" lang="EN-GB"><o:p></o:p></span></p>
940
+
941
+
942
+ <p>Para moverte de una secci&oacute;n a otra, puedes usar las flechas localizadas en
943
+ la parte derecha de la barra de herramientas o las opciones del men&uacute; <span class="SpellE">der</span> <b>Mapa-&gt;Secciones-&gt;Pr&oacute;xima/Previa Secci&oacute;n.</b></p>
944
+
945
+
946
+ <p><br>
947
+
948
+ <b><span style="font-size: 13.5pt;"><a name="Buscando"></a>Buscando</span></b><br>
949
+
950
+ <br>
951
+
952
+ Puedes buscar palabras en las localidades, lista de objetos, tareas o
953
+ descripciones de la secci&oacute;n activa o en todo el mapa, usando el <span class="SpellE">pseudo</span> lenguaje llamado &ldquo;expresiones regulares&rdquo;.<br>
954
+
955
+ La b&uacute;squeda es interactiva, como en <span class="SpellE">Emacs</span>, lo que
956
+ significa que mientras escribes, las localidades que tienen una coincidencia se
957
+ seleccionan autom&aacute;ticamente.<br>
958
+
959
+ El n&uacute;mero de coincidencias para el mapa y la secci&oacute;n se muestra en la barra de
960
+ estatus.<br>
961
+
962
+ Puedes usar los botones de Pr&oacute;xima/Previa Coincidencia para centrar la vista
963
+ del mapa sobre cada localidad que coincide (y autom&aacute;ticamente cambiar de secci&oacute;n
964
+ si est&aacute;s buscando cosas en todo el mapa).<br>
965
+
966
+ <br>
967
+
968
+ <br>
969
+
970
+ <a name="Preferences"><b><span style="font-size: 13.5pt;">Preferenc</span></b></a><b><span style="font-size: 13.5pt;">ias</span></b><br>
971
+
972
+ <br>
973
+
974
+ <span class="SpellE">IFMapper</span> te permite cambiar y <span class="SpellE">setear</span>
975
+ las preferencias para cada mapa (colores, opciones de edici&oacute;n, <span class="SpellE">etc</span>). Puedes grabar tus preferencias para que as&iacute; <span class="SpellE">IFMapper</span> arranque con esos <span class="SpellE">seteos</span>
976
+ al crear mapas nuevos.<br>
977
+
978
+ <br>
979
+
980
+ <br>
981
+
982
+ <a name="Saving_and_Loading_Maps"><b><span style="font-size: 13.5pt;">Grabando y
983
+ Cargando Mapas</span></b></a></p>
984
+
985
+
986
+ <p>Para grabar un mapa que est&aacute;s editando, puedes ir a <b>Archivo-&gt;Grabar</b>
987
+ o <b>Archivo-&gt;Grabar Como</b>.&nbsp; El formato propio de los mapas de <span class="SpellE">IFMapper</span> es el formato .<span class="SpellE">map</span>, que
988
+ es un archivo binario.&nbsp; Este formato graba todas las preferencias de tu
989
+ mapa <span class="SpellE">asi</span> como todas las conexiones y descripciones de
990
+ las localidades.<br>
991
+
992
+ <st1:place w:st="on"><span style="" lang="EN-GB">Para</span></st1:place><span style="" lang="EN-GB"> <span class="SpellE">cargar</span> <span class="GramE">un</span> <span class="SpellE">mapa</span>, <span class="SpellE">puedes</span>
993
+ user <span class="SpellE"><b>Archivo</b></span><b>-&gt;<span class="SpellE">Abrir</span></b>.&nbsp;
994
+ </span>Adem&aacute;s del formato propio de <span class="SpellE">IFMapper</span>, el
995
+ software tambi&eacute;n soporta otros formatos populares de la comunidad de Ficci&oacute;n
996
+ Interactiva.&nbsp; <span class="SpellE">IFMapper</span> puede leer:<br>
997
+
998
+ - archivos .<span class="SpellE">ifm</span> (<span class="SpellE">Dave</span> <span class="SpellE">Chapeski's</span> IFM, una herramienta de <span class="SpellE">mapeado</span>/soluci&oacute;n
999
+ de <span class="SpellE">Unix</span>)<br>
1000
+
1001
+ - archivos .<span class="SpellE">gmp</span> (mapas de <span class="SpellE">GUEmap</span>,
1002
+ un software comercial de <span class="SpellE">mapeado</span> para Windows)<br>
1003
+
1004
+ - archivos .<span class="SpellE">inf</span> <span style="">&nbsp;</span>(C&oacute;digo fuente de Inform6)<br>
1005
+
1006
+ - archivos .t3m o .t <span class="GramE">( <span class="SpellE">Makefile</span></span>
1007
+ o C&oacute;digo fuente de TADS3 )</p>
1008
+
1009
+
1010
+ <p><br>
1011
+
1012
+ <a name="Locking_Maps"><b><span style="font-size: 13.5pt;">Clausurando Mapas</span></b></a><br>
1013
+
1014
+ <br>
1015
+
1016
+ Una vez que termines una aventura, puedes clausurar el mapa para su distribuci&oacute;n.<br>
1017
+
1018
+ Puedes hacerlo <span class="SpellE">llendo</span> a <b>Mapa-&gt;Datos del Mapa</b>
1019
+ y <span class="SpellE">cliqueando</span> en el <span class="SpellE">switch</span>
1020
+ de &ldquo;Lectura Solamente&rdquo; y luego asegurarse de grabar el mapa como archivo .<span class="SpellE">map</span> (El formato nativo de <span class="SpellE">IFMapper</span>).<br>
1021
+
1022
+ Hacer que el mapa sea de lectura solamente no te permitir&aacute; editar el mapa (y as&iacute;
1023
+ prevendr&aacute;s accidentalmente mover o cambiar las descripciones de las localidades
1024
+ por error).<br>
1025
+
1026
+ Cuando se lee un archivo IFM, el modo de &ldquo;Lectura Solamente&rdquo; se activa autom&aacute;ticamente,
1027
+ ya que se asume que estos mapas fueron creados y finalizados con otro software.
1028
+ <br>
1029
+
1030
+ Si necesitas modificarlos, desactive el <span class="SpellE">mode</span> de &ldquo;Lectura
1031
+ Solamente&rdquo; en la caja de Datos del Mapa.<br>
1032
+
1033
+ <br>
1034
+
1035
+ <b><span style="font-size: 13.5pt;"><br>
1036
+
1037
+ <span class="SpellE">Mapeando</span> Juegos desde sus Transcripciones (Mapeo
1038
+ Autom&aacute;tico)<a name="Mapping_Games_from_Transcripts_(Automapp"></a>
1039
+ </span></b><br>
1040
+
1041
+ La forma en que el mapeo autom&aacute;tico funciona es que leer&aacute; un archivo de <span class="SpellE">transcripci&oacute;n</span> o historia de tu juego, e intentar&aacute;
1042
+ interpretarlo para generar localidades y conexiones (&iexcl;a&uacute;n cuando est&aacute;s todav&iacute;a
1043
+ jugando al juego!).<br>
1044
+
1045
+ <br>
1046
+
1047
+ Para usar el mapeo autom&aacute;tico, ve a tu juego y comienza una <span class="SpellE">transcripci&oacute;n</span>.
1048
+ <span class="SpellE"><span style="" lang="EN-GB">Usualmente</span></span><span style="" lang="EN-GB"> <span class="SpellE">esto</span> se <span class="SpellE">hace</span> con:<o:p></o:p></span></p>
1049
+
1050
+
1051
+ <p><b><span style="" lang="EN-GB">&gt; <span class="GramE">verbose</span><br>
1052
+
1053
+ &gt; script</span></b><span style="" lang="EN-GB"><o:p></o:p></span></p>
1054
+
1055
+
1056
+ <p>Y luego especificando el nombre de un archivo.<br>
1057
+
1058
+ <br>
1059
+
1060
+ Luego, ve al <span class="SpellE">IFMapper</span> y en un mapa (usualmente uno
1061
+ vac&iacute;o) corre:<!--[if gte vml 1]><v:shape id="_x0000_s1030" type="#_x0000_t75"
1062
+ alt="" style='position:absolute;margin-left:539.5pt;margin-top:0;width:309.75pt;
1063
+ height:321pt;z-index:5;mso-wrap-distance-left:0;mso-wrap-distance-right:0;
1064
+ mso-position-horizontal:right;mso-position-horizontal-relative:text;
1065
+ mso-position-vertical-relative:line' o:allowoverlap="f">
1066
+ <v:imagedata src="../images/automap.gif"/>
1067
+ <w:wrap type="square"/>
1068
+ </v:shape><![endif]--><!--[if !vml]--><img src="../images/automap.gif" v:shapes="_x0000_s1030" align="right" border="0" height="428" width="413"><!--[endif]--><br>
1069
+
1070
+ <b>Mapa-&gt;Mapeo Autom&aacute;tico-&gt;Comenzar</b>. </p>
1071
+
1072
+
1073
+ <p>Esto abrir&aacute; una ventana donde debes indicar a <span class="SpellE">IFMapper</span>
1074
+ el nombre de tu archivo de <span class="SpellE">transcripci&oacute;n</span>.</p>
1075
+
1076
+
1077
+ <p>Luego, se abrir&aacute; una ventana de opciones.<br>
1078
+
1079
+ Las opciones permiten indicar c&oacute;mo se va a identificar cada localidad como &uacute;nica.
1080
+ <span style="">&nbsp;</span>El mapeo autom&aacute;tico puede determinar si
1081
+ est&aacute;s en una nueva localidad ya sea comparando la descripci&oacute;n del lugar (lo
1082
+ est&aacute;ndar) o comparando s&oacute;lo el encabezado de la localidad. Juegos que tienen
1083
+ localidades con encabezados repetidos (usualmente, laberintos) se beneficiar&aacute;n
1084
+ de ser identificados por su descripci&oacute;n mientras juegos que cambian la
1085
+ descripci&oacute;n de las localidades frecuentemente o tras varias visitas puede que
1086
+ se <span class="SpellE">mapeen</span> mejor usando s&oacute;lo los encabezados.&nbsp; <span class="SpellE">Notese</span> que <span class="SpellE">pod&eacute;s</span> cambiar de un
1087
+ modo a otro en cualquier momento del juego.<br>
1088
+
1089
+ Otra opci&oacute;n te permite indicar de qu&eacute; tipo de <span class="SpellE">transcripci&oacute;n</span>
1090
+ se trata.<span style="">&nbsp; </span>La mayor&iacute;a de juegos utilizan
1091
+ el formato Cl&aacute;sico aunque algunos juegos viejos de <span class="SpellE">Infocom</span>
1092
+ (<span class="SpellE">Witness</span> y <span class="SpellE">Moonmist</span>) tienen
1093
+ su propio formato. </p>
1094
+
1095
+
1096
+ <p><span class="GramE"><span style="" lang="EN-GB">Y <span class="SpellE">eso</span> <span class="SpellE">es</span> <span class="SpellE">todo</span>.</span></span><span style="" lang="EN-GB"> </span>Inmediatamente, deber&iacute;as ver
1097
+ a <span class="SpellE">IFMapper</span> trabajar y comenzar a crear localidades y
1098
+ conexiones. <br>
1099
+
1100
+ Si contin&uacute;as jugando al juego y el comando de <span class="SpellE">transcripci&oacute;n</span>
1101
+ <span class="SpellE">permanence</span> activo, <span class="SpellE">IFMapper</span>
1102
+ continuar&aacute; <span class="SpellE">mapeando</span> el juego en forma interactiva.<br>
1103
+
1104
+ Esto funciona muy bien para juegos que corren bajo <span class="SpellE">WinFrotz</span>,
1105
+ por ejemplo, aunque otros int&eacute;rpretes no agregan el texto al archive de <span class="SpellE">transcripci&oacute;n</span> en forma inmediata, lo que lleva a un <span class="SpellE">mapeado</span> menos interactivo (con esos int&eacute;rpretes,
1106
+ probablemente debas <span class="SpellE">tipear</span> varios comandos antes de
1107
+ que el archivo de <span class="SpellE">transcripci&oacute;n</span> sea actualizado).</p>
1108
+
1109
+
1110
+ <p>Adem&aacute;s de intentar extraer las localidades y tus movimientos, el mapeo autom&aacute;tico
1111
+ tambi&eacute;n intentar&aacute; extraer los objetos visibles en cada habitaci&oacute;n, a trav&eacute;s del
1112
+ monitoreo de tus <span class="SpellE">commandos</span> de &lsquo;<span class="SpellE">get</span>&rsquo;
1113
+ o &lsquo;<span class="SpellE">take</span>&rsquo; y recordando d&oacute;nde fue encontrado cada
1114
+ objeto por primera vez, para as&iacute; agregarlo a la localidad correspondiente.</p>
1115
+
1116
+
1117
+ <p><span class="SpellE">Notese</span> que, en cualquier momento del mapeo autom&aacute;tico,
1118
+ es posible acceder a la ventana de propiedades del mapeo autom&aacute;tico para as&iacute;
1119
+ cambiar las preferencias.<br>
1120
+
1121
+ <br>
1122
+
1123
+ <a name="How_does_the_automapper_distinguish_loca"><b><span style="font-size: 13.5pt;">&iquest;C&oacute;mo hace el mapeo autom&aacute;tico para distinguir localidades?</span></b></a><br>
1124
+
1125
+ <br>
1126
+
1127
+ Como hemos mencionado el mapeo autom&aacute;tico leer&aacute; todo el texto de la <span class="SpellE">transcripci&oacute;n</span> del juego, tratando de encontrar las
1128
+ descripciones de las localidades.&nbsp; <span style="" lang="EN-GB">No solo <span class="SpellE">las</span> <span class="SpellE">respuestas</span>
1129
+ a <span class="SpellE">los</span> <span class="SpellE">comandos</span> de <span class="SpellE">movimiento</span>.
1130
+ </span>Esto se hace as&iacute; para que los comandos de <span class="SpellE">teleportaci&oacute;n</span>
1131
+ (como las palabras m&aacute;gicas) o los eventos especiales que trasladan a tu
1132
+ personaje funcionen correctamente. <br>
1133
+
1134
+ Las localidades son determinadas al encontrar el encabezado de las mismas (un texto
1135
+ donde todas las palabras de <span class="GramE">mas</span> de cuatro letras est&aacute;n
1136
+ en may&uacute;sculas &ndash; al menos en el modo cl&aacute;sico&mdash;o donde el texto sigue el formato
1137
+ especificado, como el caso de <span class="SpellE">Witness</span>/<span class="SpellE">Moonmist</span>). <br>
1138
+
1139
+ El p&aacute;rrafo que sigue al encabezado se asume que es la descripci&oacute;n del lugar.<br>
1140
+
1141
+ Dependiendo de tus <span class="SpellE">seteos</span>, el <span class="SpellE">mapeador</span>
1142
+ autom&aacute;tico tomar&aacute; m&aacute;s en cuenta la descripci&oacute;n de la localidad o el encabezado
1143
+ para determinar si cierta localidad ya ha sido visitada.<br>
1144
+
1145
+ <br>
1146
+
1147
+ <br>
1148
+
1149
+ <a name="Limitations_on_Automapping"><b><span style="font-size: 13.5pt;">Limitaciones
1150
+ del Mapeo Autom&aacute;tico</span></b></a><br>
1151
+
1152
+ <br>
1153
+
1154
+ Aunque el mapeo autom&aacute;tico es muy poderoso, tiene limitaciones que debes estar
1155
+ al tanto.<br>
1156
+
1157
+ Primeramente, funciona &oacute;ptimamente con juegos escritos en lenguaje Ingl&eacute;s.<br>
1158
+
1159
+ Segundo, deber&iacute;as intentar usar el <span class="SpellE">mapeado</span> autom&aacute;tico
1160
+ con transcripciones hechas siempre en modo <span class="SpellE">verborr&aacute;gico</span>
1161
+ (<span class="SpellE">verbose</span>). De ese modo, el <span class="SpellE">mapeado</span>
1162
+ autom&aacute;tico puede utilizar la descripci&oacute;n de la localidad para desambiguar una
1163
+ localidad de otra, en vez de utilizar s&oacute;lo el encabezado.<br>
1164
+
1165
+ Si tu juego est&aacute; en el modo normal o corto (<span class="SpellE">brief</span>),
1166
+ el <span class="SpellE">mapeado</span> autom&aacute;tico podr&iacute;a confundirse e interpretar
1167
+ una localidad ya visitada como una nueva localidad.<br>
1168
+
1169
+ Incluso en modo <span class="SpellE">verborr&aacute;gico</span>, el mapeo autom&aacute;tico
1170
+ puede aun as&iacute; confundirse si la descripci&oacute;n de un lugar cambia dr&aacute;sticamente (como
1171
+ la casa demolida en <span class="SpellE">Hitchhiker's</span> <span class="SpellE">Guide</span>
1172
+ <span class="SpellE">to</span> <span class="SpellE">the</span> <span class="SpellE">Galaxy</span>).<br>
1173
+
1174
+ El mapeo autom&aacute;tico tambi&eacute;n puede ser de no mucha ayuda en casos de laberintos
1175
+ donde todas las localidades poseen la misma descripci&oacute;n y encabezado o en casos
1176
+ donde las salidas se eligen al azar (caso <span class="SpellE">Adventure</span>/<span class="SpellE">Colossal</span> Cave).<br>
1177
+
1178
+ Algunos juegos no siguen las convenciones de <span class="SpellE">Infocom</span>
1179
+ de utilizar encabezados antes de describir la localidad (por ejemplo, <span class="SpellE">FailSafe</span>). <span class="SpellE"><span class="GramE"><span style="" lang="EN-GB">Estos</span></span></span><span class="GramE"><span style="" lang="EN-GB"> <span class="SpellE">juegos</span> no <span class="SpellE">pueden</span> <span class="SpellE">mapearse</span> en forma <span class="SpellE">autom&aacute;tica</span>.</span></span><span style="" lang="EN-GB">
1180
+ </span>Finalmente, el algoritmo de posicionado de localidades utilizado en el <span class="SpellE">mapeador</span> autom&aacute;tico no es excepcional y puede dar a lugar a
1181
+ mapas con muchas rutas entrecruzadas o a localidades posicionadas en forma m&aacute;s
1182
+ lejana de lo necesario.<span style="">&nbsp; </span>Recuerde, sin
1183
+ embargo, que puedes ayudar al <span class="SpellE">mapeador</span> autom&aacute;tico
1184
+ manualmente moviendo o quitando localidades mientras est&aacute;s jugando el juego.<br>
1185
+
1186
+ Si por alg&uacute;n motivo el <span class="SpellE">mapeador</span> autom&aacute;tico no detecta
1187
+ una localidad autom&aacute;ticamente, puedes tambi&eacute;n, en cualquier momento, manualmente
1188
+ agregar esa localidad y el <span class="SpellE">mapeador</span> autom&aacute;tico pasar&aacute;
1189
+ a tener conocimiento de ella. <br>
1190
+
1191
+ <b>
1192
+ </b><b><span style="font-size: 13.5pt;">Creando un Nuevo Juego <span class="GramE">(
1193
+ <span class="SpellE">Inform</span></span>/TADS3 <a name="Creating_a_new_Inform/TADS3_game"></a>)</span></b><br>
1194
+
1195
+ <br>
1196
+
1197
+ <span class="SpellE">IFMapper</span> ahora permite grabar un mapa como c&oacute;digo
1198
+ fuente de <span class="SpellE">Inform</span> o TADS3.<br>
1199
+
1200
+ Esto significa que <span class="SpellE">pod&eacute;s</span> utilizar a <span class="SpellE">IFMapper</span> para f&aacute;cilmente crear el esqueleto b&aacute;sico para un nuevo
1201
+ juego. <br>
1202
+
1203
+ Con <span class="SpellE">IFMapper</span>, <span class="SpellE">pod&eacute;s</span> colocar
1204
+ los objetos, los personajes y las localidades con sus puertas y salidas.&nbsp; Luego
1205
+ puedes escribir la descripci&oacute;n de cada localidad.<br>
1206
+
1207
+ Para hacer esto, aseg&uacute;rate de activar el mostrar las descripciones de las
1208
+ localidades con:</p>
1209
+
1210
+
1211
+ <p><b>Mapa-&gt;Representaci&oacute;n Visual-&gt;Descripci&oacute;n de la Localidad</b></p>
1212
+
1213
+
1214
+ <p>Puedes luego escribir todas las descripciones de todas las habitaciones y
1215
+ sus objetos en forma manual. <span style="">&nbsp;</span>Luego, una
1216
+ vez que tu mapa est&aacute; terminado, <span class="SpellE">pod&eacute;s</span> usar:<b><br>
1217
+
1218
+ <br>
1219
+
1220
+ Archivo-&gt;Exportar-&gt;Exportar a <span class="SpellE">Inform</span><br>
1221
+
1222
+ Archivo-&gt;Exportar-&gt;Exportar a TADS3
1223
+ </b><br>
1224
+
1225
+ Estas opciones crear&aacute;n un grupo de archivos de c&oacute;digo fuente de <span class="SpellE">Inform</span> o TADS3 (un archivo por secci&oacute;n del mapa), que
1226
+ puedes compilar <span class="SpellE">inmediamente</span> y comenzar a jugar.<br>
1227
+
1228
+ Obviamente, en juego real, los archivos .<span class="SpellE">inf</span> o .t que
1229
+ obtienes de <span class="SpellE">IFMapper</span> son solo un esqueleto, ya que
1230
+ tendr&aacute;s que programar la l&oacute;gica de tu juego.</p>
1231
+
1232
+
1233
+
1234
+
1235
+ <p><a name="Appendix"><b><span style="font-size: 18pt; color: navy;">Ap&eacute;ndi</span></b></a><b><span style="font-size: 18pt; color: navy;">ces</span></b></p>
1236
+
1237
+
1238
+ <p class="MsoNormal" style=""><span style="font-weight: bold;">Soy nuevo en esto de la Ficci&oacute;n Interactiva.&nbsp; &iquest;Qu&eacute; juegos
1239
+ me recomend&aacute;s?</span><a name="I_am_new_to_Interactive_Fiction._What_ga"></a><span style="" lang="EN-GB"><br>
1240
+
1241
+
1242
+ </span>Si <span class="SpellE">habl&aacute;s</span> ingles y <span class="SpellE">pod&eacute;s</span>
1243
+ obtener una copia (a trav&eacute;s de <span class="SpellE">Lost</span> <span class="SpellE">Treasures</span> <span class="SpellE">of</span> <span class="SpellE">Infocom</span>
1244
+ o similar), creo que <span class="SpellE">Wishbringer</span> de <span class="SpellE">Infocom</span> es probablemente uno de los juegos introductorias m&aacute;s
1245
+ lindos. <br>
1246
+
1247
+ Sus puzzles no son tan dif&iacute;ciles y son adem&aacute;s bastante l&oacute;gicos.<br>
1248
+
1249
+ Una vez que hayas ganado, <span class="SpellE">pod&eacute;s</span> probar con <span class="SpellE">Planetfall</span>, que tiene uno de los personajes m&aacute;s amado de
1250
+ cualquier juego de aventura.<br>
1251
+
1252
+ Asumiendo que no puedas obtener estos viejos juegos de <span class="SpellE">Infocom</span>,
1253
+ <span class="SpellE">City</span> <span class="SpellE">of</span> <span class="SpellE">Secrets</span>
1254
+ de <span class="SpellE">Emily</span> Short es un muy lindo juego <span class="SpellE">introductorio</span> y una de las aventuras m&aacute;s pulidas que jam&aacute;s
1255
+ haya visto.<br>
1256
+
1257
+ <span class="SpellE">Dreamholder</span> de <span class="SpellE">Andrew</span> <span class="SpellE">Plotkin</span> es tambi&eacute;n un juego <span class="SpellE">introductorio</span>
1258
+ que te ayuda con los comandos al comenzar el juego. N&oacute;tese, sin embargo, que
1259
+ los puzzles de ese juego no son f&aacute;ciles de resolver. <br>
1260
+
1261
+ <span style="font-size: 18pt;">
1262
+ </span><a name="Contacting_the_Author"><span class="NormalWebCar"><span style="font-size: 13.5pt;">Contactando al Autor</span></span></a><br>
1263
+
1264
+ <br>
1265
+
1266
+ Actualmente, se me puede contactar a trav&eacute;s de:</p>
1267
+
1268
+
1269
+ <p><span class="SpellE"><span class="GramE">ggarra</span></span> @ dominio</p>
1270
+
1271
+
1272
+ <p>(Donde el "dominio" es <span class="SpellE"><span class="GramE">advancedsl.com.ar</span></span><span class="GramE"> )</span><br>
1273
+
1274
+
1275
+ &nbsp;</p>
1276
+
1277
+
1278
+ </div>
1279
+
1280
+
1281
+ </body>
1282
+ </html>