<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7416527731872632017</id><updated>2012-01-29T01:21:44.269+01:00</updated><category term='sonido'/><category term='retro'/><category term='proyectos'/><category term='python'/><category term='software'/><category term='salidas'/><category term='previews'/><category term='gráficos'/><category term='gente'/><category term='ac'/><category term='parsing'/><category term='PSI'/><category term='cronicas'/><category term='soliloquios'/><category term='humor'/><category term='estadísticas'/><title type='text'>Informate tú</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>67</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-5803231419278192474</id><published>2012-01-23T14:04:00.004+01:00</published><updated>2012-01-29T01:21:44.520+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retro'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>QIX</title><content type='html'>Estaba tratando de recordar un juego de hace un porrón de años que jugué en el ordenador PC de unos vecinos.&lt;br /&gt;Lo expuse gráficamente en &lt;a href="http://stripgenerator.com/strip/611226/do-you-recognize-this-game/"&gt;StripGenerator&lt;/a&gt; y rápidamente llegó la respuesta, del juego base: &lt;a href="http://es.wikipedia.org/wiki/Qix"&gt;QIX&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;El que yo recordaba sin duda estaba basado en QIX, pero era un clon diseñado para multijugador. De modo que entre 2 y 4 jugadores competían apiñados en torno al teclado, cada cual con su propio vector, cerrando sus áreas y tratando de no ser pillados por los rivales con un área sin cerrar.&lt;br /&gt;&lt;br /&gt;O al menos esa es la idea que tengo y lo que estoy programando con Pygame. Lo más difícil ya lo tengo hecho, el relleno de las áreas, que me dió varios quebraderos de cabeza este domingo... hasta que dí con la maldita línea que estaba estropeando el invento, la pulga que hacía que la máquina cascase.&lt;br /&gt;&lt;br /&gt;El resultado es éste:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-066yYD0P-P8/Tx1VCp9FDVI/AAAAAAAAEb0/1pRyw3IBOs4/s1600/QIX_qnn_1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-066yYD0P-P8/Tx1VCp9FDVI/AAAAAAAAEb0/1pRyw3IBOs4/s320/QIX_qnn_1.jpg" width="319" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Cuando se prevee el relleno de un área porque un jugador ha realizado un cierre, se ejecuta un rastreo en busca del contorno, o mejor dicho, de los dos contornos posibles.&lt;br /&gt;Desde la cabeza del vector hasta el punto de despegue sólo hay un camino, pero una vez llegamos ahí...¿bordeamos el contorno en sentido horario o antihorario? &lt;br /&gt;Tomamos ambos caminos, calculamos las áreas encerradas -aproximadamente mediante un algoritmo rápido que encontré googleando-, y elegimos el que encierre un área menor (de lo contrario la partida podría quedar decidida nada más empezar).&lt;br /&gt;A continuación, rellenando una matriz con las coordenadas de los puntos recogidos a lo largo del contorno donde éste hace quiebro, se rellena el polígono resultante.&lt;br /&gt;Si se superase el tamaño de la matriz definida el relleno quedaría incompleto. Le he puesto 250 (por ejemplo) coordenadas de límite, que creo que raramente se alcanzarán en un juego real por muchas revueltas que logre dar un jugador.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-ok1l-u5LSsg/Tx1VDn7r36I/AAAAAAAAEb8/vW0u9ed08xM/s1600/Qix_qnn_2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="319" src="http://1.bp.blogspot.com/-ok1l-u5LSsg/Tx1VDn7r36I/AAAAAAAAEb8/vW0u9ed08xM/s320/Qix_qnn_2.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;En el juego competirán hasta 4 jugadores, que parten de los 4 lados del campo de juego cuadrado.Ganará el que más halla rellenado de su color al final de la partida, debiendo para ello ir cerrando rastros de su propia cola con los bordes del campo o con los nuevos bordes creados que delimitan las zonas coloreadas por cualquier jugador (aquí líneas naranjas).&lt;br /&gt;&lt;br /&gt;Hay tres formas de fipiarla:&lt;br /&gt;1. Autoatrapamiento&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-3Oe_4vmEmg4/Tx1VEIoeaXI/AAAAAAAAEcA/TguDBnvkdls/s1600/Qatrapa1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="210" src="http://1.bp.blogspot.com/-3Oe_4vmEmg4/Tx1VEIoeaXI/AAAAAAAAEcA/TguDBnvkdls/s320/Qatrapa1.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;2. Ser rellenado por otro jugador&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-9Luqy5N082w/Tx1VE1vCx_I/AAAAAAAAEcI/FIrwhJTywIM/s1600/Qatrapa2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="210" src="http://2.bp.blogspot.com/-9Luqy5N082w/Tx1VE1vCx_I/AAAAAAAAEcI/FIrwhJTywIM/s320/Qatrapa2.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;3. Ser alcanzado en la cola por otro jugador antes de haber cerrado contorno.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-p9PBDBAIgs8/Tx1VFZbyjjI/AAAAAAAAEcQ/0IBZ88tyg3w/s1600/Qatrapa3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="210" src="http://4.bp.blogspot.com/-p9PBDBAIgs8/Tx1VFZbyjjI/AAAAAAAAEcQ/0IBZ88tyg3w/s320/Qatrapa3.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Estas pifias te dejarán fuera de juego, pero no te quitarán los rellenos conseguidos, de modo que la partida no está necesariamente perdida.&lt;br /&gt;&lt;br /&gt;Estaría bien poder jugar esto en red, pero al igual que ocurre el &lt;a href="http://armagetronad.net/"&gt;Armagetron&lt;/a&gt;, el lag es todo un problema, cuando tú ves que has cerrado a un rival... y luego resulta que a quien han cerrado es a tí.&lt;br /&gt;Aunque el mayor problema es que ni si quiera sé hacer funcionar esto en red.&lt;br /&gt;&lt;iframe width="420" height="315" src="http://www.youtube.com/embed/DrGq7me_n4c" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: right;"&gt;Enlaces:&lt;/div&gt;&lt;div style="text-align: right;"&gt;&lt;a href="http://www.minijuegos.com/Qix/1496"&gt;Versión online del QIX original&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-5803231419278192474?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/5803231419278192474/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=5803231419278192474&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5803231419278192474'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5803231419278192474'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2012/01/qix.html' title='QIX'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-066yYD0P-P8/Tx1VCp9FDVI/AAAAAAAAEb0/1pRyw3IBOs4/s72-c/QIX_qnn_1.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-301843897553517168</id><published>2011-08-20T23:01:00.003+02:00</published><updated>2012-01-23T13:01:48.453+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>Elige tu propia aventura con Caperucito</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Hl_Cl3MOdSc/TlAgjdx4hKI/AAAAAAAAENI/FFPYytlAkPQ/s1600/caperucitosinteractivestrip.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://4.bp.blogspot.com/-Hl_Cl3MOdSc/TlAgjdx4hKI/AAAAAAAAENI/FFPYytlAkPQ/s640/caperucitosinteractivestrip.png" width="415" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-301843897553517168?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/301843897553517168/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=301843897553517168&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/301843897553517168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/301843897553517168'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2011/08/elige-tu-propia-aventura-con-caperucito.html' title='Elige tu propia aventura con Caperucito'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-Hl_Cl3MOdSc/TlAgjdx4hKI/AAAAAAAAENI/FFPYytlAkPQ/s72-c/caperucitosinteractivestrip.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-2003216410792504020</id><published>2011-08-13T19:25:00.001+02:00</published><updated>2012-01-23T13:03:01.079+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retro'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>Remake de El Genio</title><content type='html'>Ayer lo empecé, y acabo de terminarlo: el remake de &lt;a href="http://wiki.caad.es/El_genio"&gt;El Genio&lt;/a&gt;. Aquella aventura de 1999, tan difícil debido sobre todo a la cutrez de la programación.&lt;br /&gt;Ahora los eventos de tiempo funcionan como debieron hacerlo, y además he incluído sonidos.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://www.caad.es/fichas/el-genio-2011.html"&gt;&lt;span style="font-size: large;"&gt;El Genio 2011&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-2003216410792504020?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/2003216410792504020/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=2003216410792504020&amp;isPopup=true' title='7 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/2003216410792504020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/2003216410792504020'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2011/08/remake-de-el-genio.html' title='Remake de El Genio'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-102303288479710527</id><published>2010-12-30T23:50:00.004+01:00</published><updated>2012-01-23T13:03:01.080+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><category scheme='http://www.blogger.com/atom/ns#' term='gente'/><title type='text'>Tabla periódica de los elementos aventureros</title><content type='html'>&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/TSSYxsr28iI/AAAAAAAAD8o/k5FZZgt2pNg/s1600/tabla_caad.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="258" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/TSSYxsr28iI/AAAAAAAAD8o/k5FZZgt2pNg/s400/tabla_caad.png" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Pincha sobre la imagen para verla más grande&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_e0GwVJSRTtk/TR4AHnH9WjI/AAAAAAAAD8c/exGtGEIwS6k/s1600/tabla_caad.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-102303288479710527?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/102303288479710527/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=102303288479710527&amp;isPopup=true' title='6 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/102303288479710527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/102303288479710527'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/12/tabla-periodica-de-los-elementos.html' title='Tabla periódica de los elementos aventureros'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e0GwVJSRTtk/TSSYxsr28iI/AAAAAAAAD8o/k5FZZgt2pNg/s72-c/tabla_caad.png' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-1020938923912696492</id><published>2010-12-27T16:17:00.001+01:00</published><updated>2012-01-23T13:03:01.081+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='estadísticas'/><title type='text'>¿Qué hace la gente en las aventuras?</title><content type='html'>Cuando programaba mis aventuras en &lt;a href="http://wiki.caad.es/DISAC"&gt;DISAC&lt;/a&gt; (un parser propio en C), incluí un contador interno de forma que conjuntamente con la posición se guardara una estadística de uso de cada acción, así como el número de veces que el jugador habia probado un verbo no contemplado... lo que vendrían a ser los "No entiendo lo que dices" o "No conozco ese verbo".&lt;br /&gt;A grandes rasgos el resultado que ví, en las posiciones que pude conseguir de la gente, es que EXAMINAR era la acción estrella, y ésta conjuntamente con las acciones de movimiento (N,S,E,O) constituían más del 50% de las acciones de cualquier aventura.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lo que por otra parte es bastante obvio ¿no? Antes de actuar hay que mirar, y después también, por si algo ha cambiado.&lt;br /&gt;Desde otro punto de vista, también podríamos considerar a EXAMINAR como la acción más cansina. La abreviatura, por tanto, es fundamental, &lt;b&gt;ex&lt;/b&gt; o &lt;b&gt;x&lt;/b&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-1020938923912696492?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/1020938923912696492/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=1020938923912696492&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1020938923912696492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1020938923912696492'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/12/que-hace-la-gente-en-las-aventuras.html' title='¿Qué hace la gente en las aventuras?'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-426032838449399905</id><published>2010-10-27T16:09:00.003+02:00</published><updated>2012-01-23T13:03:01.081+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='parsing'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>Parser para inútiles totales</title><content type='html'>-¡Quiero un parser para inútiles totales! en el que no haya que aprender a programar.&lt;br /&gt;-Disculpe, si no me equivoco usted habla cinco idiomas (por lo menos).&lt;br /&gt;-Así es.&lt;br /&gt;-Manda narices que haya hecho el esfuerzo para aprender cinco lenguajes humanos con sus complejas gramáticas, sus declinaciones, sus irregularidades, su léxico infinito, sus construcciones caprichosas, sus modismos... y no esté dispuesto a hacer el pequeño esfuerzo de aprender un lenguaje de programación cuya sintaxis viene a ser ridícula en comparación con la de cualquier lenguaje humano, y cuya lógica cabe en el cerebro de una hormiga.&lt;br /&gt;¿Qué tiene que decir a esto?&lt;br /&gt;...&lt;br /&gt;-Bueno... es que con los lenguajes humanos se puede ligar...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-426032838449399905?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/426032838449399905/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=426032838449399905&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/426032838449399905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/426032838449399905'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/10/parser-para-inutiles-totales.html' title='Parser para inútiles totales'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-1075512228365242267</id><published>2010-10-20T12:23:00.014+02:00</published><updated>2012-01-23T13:03:01.082+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='PSI'/><title type='text'>Formas de conversación</title><content type='html'>&lt;span style="font-size: large;"&gt;&lt;b&gt;1. Conversación automática.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;La conversación se desarrolla siguiendo un guión al margen de lo que pretendiera decir el jugador, detonada por una acción de hablar o cualquier otra.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;2. Conversación por menús.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Al iniciarse una conversación se despliegan una serie de opciones con temas entre los que el jugador puede elegir, cada uno de los cuales generará una respuesta/reacción en el interlocutor que a su vez modificará (o no) el repertorio de opciones para el siguiente turno de habla del jugador.&lt;br /&gt;En los modelos más simples las opciones simplemente van desapareciendo a medida que son escogidas y respondidas, de modo que el jugador sólo está eligiendo el orden en el que quiere que le cuenten las cuatro cosas que tiene que decir el PSI. No habría mucha diferencia entre esto y mostrar el diálogo entero de una tacada, a modo de conversación automática.&lt;br /&gt;Los modelos más elaborados se asemejarían a un librojuego, donde la elección de una opción u otra abre y cierra caminos futuros.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;3. Conversación por detección&amp;nbsp; de palabras clave.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Este es el sistema más conversacional, y quizá el más usado. En teoría es el más difícil pues supone un parser dentro del parser, y una aproximación a la programación de inteligencias artificiales; pero en la práctica nadie llega hasta tal punto y el programador se conforma con preveer un pequeño lexicón con lo importante.&lt;br /&gt;Sus formas suelen ser del tipo &lt;span style="font-size: x-small;"&gt;&lt;decir (a="" mensaje="" personaje)=""&gt;&lt;/decir&gt; DECIR A PERSONAJE "MENSAJE"&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;personaje, mensaje=""&gt;&lt;/personaje,&gt;&lt;/span&gt; o &lt;span style="font-size: x-small;"&gt;PERSONAJE, MENSAJE&lt;/span&gt;&lt;br /&gt;Puede subdividirse en:&lt;br /&gt;&lt;b&gt;3.1. Reconocimiento de palabras clave estricto&lt;/b&gt;: Se buscará una o varias cadenas de texto, produciéndose error (mensaje tipo "no entiendo lo que dices") caso de que el jugador haya escrito algo que el parser no entienda. Da lugar a conversaciones muy pobres y básicas, del tipo:&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;DI A PERSONAJE "HOLA"&lt;br /&gt;PREGUNTA A PERSONAJE POR LLAVE&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/TL69bRrk5kI/AAAAAAAADy4/icDiCzDxjN8/s1600/converpsi1.jpg" imageanchor="1" style="border: 0px none; clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/TL69bRrk5kI/AAAAAAAADy4/icDiCzDxjN8/s1600/converpsi1.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;3.2. Reconocimiento de palabras clave no estricto&lt;/b&gt;: Se buscará una o varias cadenas de texto, pudiendo generarse múltiples respuestas en función de las combinaciones de cadenas encontradas. El texto no reconocido se ignora. Mal visto tiene un gran margen de error, bien visto tiene un gran beneficio de la duda.&lt;br /&gt;&lt;div style="color: black;"&gt;Nos permite diferenciar por ejemplo "&lt;b&gt;Dónde&lt;/b&gt; está la &lt;b&gt;espada&lt;/b&gt;" de "&lt;b&gt;dame&lt;/b&gt; la &lt;b&gt;espada&lt;/b&gt;" buscando las palabras que deben de aparecer fijo:&lt;/div&gt;&lt;span style="color: #666666;"&gt;"donde" "espada" "dame" "entregame" "quiero"&lt;/span&gt;... &lt;br /&gt;e ignorando las menos seguras y prescindibles, como:&lt;br /&gt;&lt;span style="color: #666666;"&gt;"está", "(se) encuentra","(se) halla"...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;3.3. Reconocimiento gramatical&lt;/b&gt;: es sencillo para órdenes (imperativas) simples usando el mismo motor que el analizador sintáctico del parser (que a fin de cuentas es lo que hace: reconocer un microlenguaje de órdenes imperativas VERBO+CD/CI/CC). Para otro tipo de enunciados sería más práctico recurrir al reconocimiento de palabras clave múltiples no estricto.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;4. Conversación no lingüistica.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Acciones que provocan reacciones en los PSIS, como si fueran órdenes habladas. Mostrar objetos para obtener información sobre ellos, señalar una puerta, comunicarte por pitidos, golpes, claves...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Las conversaciones no dirigidas, es decir, aquellas en las que se detectan palabras clave, tendrán numerosas lagunas ante la inviabilidad de programar una inteligencia artificial que lo entienda todo. Podemos intentar disminuir, justificar o disimular el exceso de frases del tipo "No entiendo lo que dices" de diversas formas:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/TL69cEZkv0I/AAAAAAAADy8/yKmOvJZunTM/s1600/converpsi2.jpg" imageanchor="1" style="border: 0px none; clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/TL69cEZkv0I/AAAAAAAADy8/yKmOvJZunTM/s1600/converpsi2.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;1. El PSI activo (no pasivo).&lt;/b&gt;&lt;br /&gt;Si es el jugador quien tiene que abordar al PSI, quedarán más patentes sus defectos y sus fallas de programación, pero si es el PSI el que toma la iniciativa y dirige/orienta al jugador en todo momento sobre lo que se puede esperar de él, qué se le puede preguntar, qué le interesa... habrá menos margen de "Filomeno no parece haber entendido lo que dices".&lt;br /&gt;Se trata de que el PSI hable al jugador sin necesidad de que éste le pregunte primero, y realice actividades por su cuenta en lugar de permanecer en una localidad a la espera.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;2. El PSI sueco.&lt;/b&gt;&lt;br /&gt;La lengua nativa del PSI es otra, y sus conocimientos sobre la lengua del jugador son escasos. Esto justificará que no reconozca la mayor parte de las cosas que se le digan.&lt;br /&gt;El PSI también puede ser medio sordo o existir cualquier factor distorsionador que sea la causa del mal entendimiento.&lt;br /&gt;El caso extremo es que el PSI no entienda abosultamente nada y por tanto responda inútilmente en su desconocido idioma. En este caso tan sólo se obtendrán reacciones útiles mediante comunicación no lingüística, al pronunciar nombres propios reconocibles al margen de la lengua (por ejemplo el nombre de alguien o de un lugar), o al hablar con el limitado léxico que el jugador aprenda del idioma de los PSIS. &lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/TL69dai-_YI/AAAAAAAADzA/9dEqwWBVVJM/s1600/converpsi3.jpg" imageanchor="1" style="border: 0px none; clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/TL69dai-_YI/AAAAAAAADzA/9dEqwWBVVJM/s1600/converpsi3.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;3. El PSI autista.&lt;/b&gt;&lt;br /&gt;No es más que sustituir las respuestas de error que informan que el PSI no nos ha entendido por otro tipo de respuestas que no digan expresamente que lo que hemos dicho no va a misa. "Filomeno espera a que acabes de hablar, y te da la espalda para asomarse por la ventana", "Filomeno medita unos segundos tras escucharte, y acto seguido vuelve a sus quehaceres.", "Por el gesto de aburrimiento, adivinas que a Filomeno no le ha interesado mucho lo que acabas de decir.". Da igual que las reacciones no concuerden con lo que se esperaría, el PSI te ha escuchado pero no has dicho nada que le interese o le motive a tener una reacción más propia.&lt;br /&gt;Otra técnica en la misma línea son las respuestas evasivas, muy utilizadas en los programas de conversación con una IA, con frases como: "Muy interesante", "Cuénteme más sobre eso de 'quiero la llave'", "Estoy de acuerdo con lo que acaba de decir", "¡Eso es evidente!", "Cuando usted dice cosas como 'ayudame a abrir la puerta' yo cierro los ojos y escucho el mar"...&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: right;"&gt;Enlaces:&lt;/div&gt;&lt;div style="text-align: right;"&gt;&lt;a href="http://foro.caad.es/viewtopic.php?f=10&amp;amp;t=4283"&gt;Post original sobre sistemas de conversación en el foro del CAAD&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-1075512228365242267?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/1075512228365242267/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=1075512228365242267&amp;isPopup=true' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1075512228365242267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1075512228365242267'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/10/formas-de-conversacion.html' title='Formas de conversación'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e0GwVJSRTtk/TL69bRrk5kI/AAAAAAAADy4/icDiCzDxjN8/s72-c/converpsi1.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-3830083616234917575</id><published>2010-09-11T18:54:00.004+02:00</published><updated>2012-01-23T13:03:01.082+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><title type='text'>Saboteur</title><content type='html'>Ya puede considerarse terminada &lt;b&gt;SABOTEUR&lt;/b&gt;, a falta de que decida hacer alguna ampliación.&lt;br /&gt;Finalmente es una aventura 2D con interfaz conversacional, y no puede jugarse sin gráficos.&lt;br /&gt;&lt;br /&gt;Las descripciones de las localidades no existen, salvo algunas impresiones del PJ en lugares relevantes. Las localidades se muestran gráficamente en 2D y tanto el PJ como los PNJ actúan en ellas conforme a los sucesos.&lt;br /&gt;El resto de los textos usuales en una aventura conversacional sí que están incluídos.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/TIuxcVPeIkI/AAAAAAAADv0/Xbd32WJYHi4/s1600/saboteur.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/TIuxcVPeIkI/AAAAAAAADv0/Xbd32WJYHi4/s400/saboteur.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Me ha costado horrores escoger el título, todos los que se me ocurrían me sonaban ridículos, demasiado largos, o pretenciosos, de modo que por pura desesperación he optado por "Saboteur", mismamente, &lt;a href="http://informatetu.blogspot.com/2010/08/los-saboteurs.html"&gt;como los juegos que inspiraron a éste&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div style="color: #990000;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;[Actualización 14 de Septiembre]&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;La aventura puede descargarse &lt;a href="http://www.caad.es/jarel/games/saboteur.zip"&gt;AQUÍ&lt;/a&gt;. Ocupa 7 megas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-3830083616234917575?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/3830083616234917575/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=3830083616234917575&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3830083616234917575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3830083616234917575'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/09/saboteur.html' title='Saboteur'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e0GwVJSRTtk/TIuxcVPeIkI/AAAAAAAADv0/Xbd32WJYHi4/s72-c/saboteur.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-1187770496703223814</id><published>2010-08-18T21:35:00.000+02:00</published><updated>2012-01-23T13:03:01.083+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>Desastre</title><content type='html'>Blogger acaba de incorporar hace unos días una nueva funcionalidad para revisar el SPAM en los comentarios.&lt;br /&gt;Entonces, de pronto aparecieron todos los comentarios del blog y me dió por pensar, así a las buenas, que sólo se trataba de una lista de revisión. Seleccioné todo y borré, pues no había nada que revisar.&lt;br /&gt;Por hacer las cosas rápido y sin pensar resulta que se han borrado no sólo de la lista sino del blog.&lt;br /&gt;&lt;br /&gt;Me he cargado sin pretenderlo los que cabían en la primera página de la lista de revisión, que son unos cuantos. Lo siento...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-1187770496703223814?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/1187770496703223814/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=1187770496703223814&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1187770496703223814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1187770496703223814'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/08/desastre.html' title='Desastre'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-6941744160758208288</id><published>2010-08-09T20:44:00.011+02:00</published><updated>2012-01-23T13:03:01.084+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retro'/><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>Los saboteurs</title><content type='html'>En los 80 estaban de moda los karatekas y los ninjas, y de esto trataba la saga Saboteur.&lt;br /&gt;En la primera parte, que no jugué, pero pude ver en casa de un chaval con un CPC monocromo tomábamos el papel de un ninja. En la segunda parte, que sí que tuve en mi CPC, encarnábamos a la hermana del anteriormente citado que debía ¿vengarse? infiltrándose en un complejo de unas 500 pantallas para desactivar el lanzamiento de un misil.&lt;br /&gt;Los movimientos eran un petardo, propio de los juegos de la época, pero aun así la acción era trepidante, echándole imaginación y, en el caso de la segunda parte, gracias a la &lt;a href="http://www.youtube.com/watch?v=TRs9ys2RLug"&gt;banda sonora&lt;/a&gt;, compuesta por Rob Hubbard (aunque mola más &lt;a href="http://www.youtube.com/watch?v=HJcxU67LX2s&amp;amp;NR=1"&gt;esta versión mejorada&lt;/a&gt; made in Spain).&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/TGBDfGz6jdI/AAAAAAAADtc/v_xJIZeP9A8/s1600/sabott1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/TGBDfGz6jdI/AAAAAAAADtc/v_xJIZeP9A8/s320/sabott1.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/TGBDgGXSXRI/AAAAAAAADtk/hOUPFyyD-qA/s1600/sabott2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/TGBDgGXSXRI/AAAAAAAADtk/hOUPFyyD-qA/s320/sabott2.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;El caso es que pretendo hacer algo parecido pero en plan conversacional.&lt;br /&gt;Un ninja (o agente de negro) que se infiltra en una base enemiga compuesta por localidades bidimensionales, aunque en este caso con la posibilidad de traspasar puertas hacia terceras dimensiones.&lt;br /&gt;&lt;br /&gt;No habrá animaciones, pero sí representaciones del personaje en las distintas acciones y posiciones.&lt;br /&gt;Así, cada parte del decorado tiene sus coordenadas, y los objetos que dejamos también memorizan el lugar donde quedaron.&lt;br /&gt;Al igual que en &lt;a href="http://wiki.caad.es/El_extra%C3%B1o_caso_de_Randolph_Dwight"&gt;Randolph Dwight&lt;/a&gt;, el personaje se desplazará (aparecerá gráficamente desplazado) por la pantalla hasta el lugar donde se encuentre el objeto a manipular y en la pose adecuada para dar el pego de que está realizando dicha acción.&lt;br /&gt;Es una mezcla de animación por turnos y por eventos de tiempo.&lt;br /&gt;Así, si escribimos "coger pistola", el personaje aparecerá agachado unos segundos en el lugar donde yace la pistola (que también aparecerá representada en el suelo, aunque sean 4 pixels) y posteriormente se reincorporará.&lt;br /&gt;Si saltamos tanto de lo mismo, el personaje no va a permanecer en el aire hasta que nos dé por escribir la siguiente orden y pulsar return.&lt;br /&gt;&lt;br /&gt;Se diferencia de &lt;a href="http://wiki.caad.es/Barbarian_Quest"&gt;Barbarian Quest&lt;/a&gt; en que el personaje no se mueve, sino que aparece desplazado, y en que el interfaz es 100% conversacional.&lt;br /&gt;Hasta ahora sólo había estado haciendo gráficos, pero hoy he programado la interfaz con unas pocas acciones y funciona bastante bien.&lt;br /&gt;&lt;br /&gt;Las pantallas son de 800 por 200 pixels.&lt;br /&gt;Primeramente dibujé las piezas para componer escenarios, los "ingredientes", pero en lugar de dibujar las pantallas a la antigua - -, lo cual sería una tortura china y consumiría mucho tiempo de proceso, grabé varios modelos básicos de escenarios ya compuestos a los que sólo habrá que añadir algunas partes externas para personalizarlos.&lt;br /&gt;Por ejemplo, a un pasillo le puedo añadir puertas, muebles, muros laterales, y configurar así la decoración y las salidas de la localidad.&lt;br /&gt;Glulx no tiene las capacidades de un lenguaje de programación de videojuegos: redibujado selectivo o volcado de buffer, por tanto dibujar muchos gráficos significa un lapso que se acaba notando, más si son PNG que si son JPG. Por tanto pego de base un JPG, e intento que los añadidos sean también JPG, salvo cuando no hay tu tía y necesito las transparencias de los PNG.&lt;br /&gt;&lt;br /&gt;Tambien estuve barajando si usar una malla definiendo el mapa cómodamente en una matriz, y por ahora lo he descartado, ya que lo que me ahorro en mapeado me lo como luego configurando decorados con numeritos.&lt;br /&gt;Serán localidades donde el decorado base se define en una propiedad, y los complementos en propiedades especiales acompañadas de las coordenadas del añadido, que sirven tanto para saber dónde se dibujan, como para tener la referencia de dónde tiene que ir el personaje si esa parte añadida es interactuable.&lt;br /&gt;Así:&lt;br /&gt;&lt;div style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;localidad lugar1 "lugar"&lt;/div&gt;&lt;div style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with&lt;/div&gt;&lt;div style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;el_grafico pasillo1,&lt;/div&gt;&lt;div style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;muroizquierdo 0,&lt;/div&gt;&lt;div style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;escalerabaja 340,&lt;/div&gt;&lt;div style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;;&lt;/div&gt;Sólo con esto puedo automatizar desde la clase localidad que hay salida hacia el oeste, pero no hacia el este (pues existe la propiedad muroizquierdo); y que además se puede bajar por una escalera y el personaje cuando vaya a bajar o acabe de subir por ella se dibujará en la coordenada x=340.&lt;br /&gt;&lt;br /&gt;Las puertas las meteré desde fuera, ya que como pueden estar abiertas o cerradas, y haber más de una por localidad (les pondré distintos colores), deben constituír cada una un objeto.&lt;br /&gt;&lt;br /&gt;En &lt;a href="http://wiki.caad.es/Regreso_al_Ed%C3%A9n"&gt;Regreso al Edén&lt;/a&gt; ya hice una escena aislada así, donde el personaje era representado como en un arcade 2D localizado en la pantalla en función de su posición (la escena de cruzar el puente). Ésta vez será la base de la aventura.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_e0GwVJSRTtk/TGBDpXrqahI/AAAAAAAADts/aF6RXZ4fwvo/s1600/proysabotaje1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="100" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/TGBDpXrqahI/AAAAAAAADts/aF6RXZ4fwvo/s400/proysabotaje1.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_e0GwVJSRTtk/TGBDqAjkd3I/AAAAAAAADt0/v06fTYQOPn4/s1600/proysabotaje2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="100" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/TGBDqAjkd3I/AAAAAAAADt0/v06fTYQOPn4/s400/proysabotaje2.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;Aunque no haya animaciones, creo que la acción va a ser igual de trepidante. Los resultados de las órdenes son instantáneos, y no hay que esperar cansinamente a que el personaje eche a correr y desaparezca por un extremo de la pantalla.&lt;br /&gt;&lt;br /&gt;En Saboteur 1 el ninja llega a la base en una barca, en Saboteur 2 en un ala delta; y escapan respectivamente el helicóptero y en moto.&lt;br /&gt;¿cómo puedo superar tal espectacularidad ochentera?&lt;br /&gt;&lt;br /&gt;Aquí el ninja llegará a la base escondido en el camión de reparto de Mahou y escapará en una superbicicleta con cuadro de carbono y tubeless... por un carril bici, que ahora están de moda XD (Es broma, en parte)&lt;br /&gt;&lt;br /&gt;Actualizo:&lt;br /&gt;El juego sí que tendrá algunas animaciones de desplazamiento, pero parciales. No será el movimiento completo desde un punto hasta el destino sino los primeros pasos a modo de insinuación.&lt;br /&gt;&lt;br /&gt;No tendrá descripciones, salvo particularidades, todo habrá que verlo en la pantalla, aunque los resultados de las acciones sí se describirán en texto escuetamente.&lt;br /&gt;Lo que sí que se listan son los objetos pequeños, ya que debido a su tamaño, aunque aparezcan representados, son imposibles de reconocer (por ejemplo, una moneda serían dos píxels, podría ser cualquier cosa, incluso una textura de la pared) &lt;br /&gt;También, incluiré algún comando de rastreo que liste los objetos de escenario de cada localidad, que se podrá configurar como permanente, para que los jugadores invidentes no tengan que estar tecleándolo constantemente.&lt;br /&gt;Aun así, el resultado sin gráficos será muy pobre. La gracia de la aventura está en el feedback visual, aunque la alimentación sea textual. Será como "leer un cómic" :P&lt;br /&gt;&lt;br /&gt;[Actualizo]&lt;br /&gt;Parece que existe desde hace tiempo un remake un tanto libre de los Saboteur con el remix de Saboteur 2 Marcel Donné como banda sonora. &lt;a href="http://www.simion.co.uk/saboteur/"&gt;Ver aquí.&lt;/a&gt;&lt;br /&gt;El resultado no me gusta mucho, usa gráficos fusilados de otros juegos y con animaciones bastante chuscas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-6941744160758208288?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/6941744160758208288/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=6941744160758208288&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6941744160758208288'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6941744160758208288'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/08/los-saboteurs.html' title='Los saboteurs'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e0GwVJSRTtk/TGBDfGz6jdI/AAAAAAAADtc/v_xJIZeP9A8/s72-c/sabott1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-5487871929065020448</id><published>2010-08-04T02:04:00.008+02:00</published><updated>2012-01-23T13:03:01.084+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='parsing'/><title type='text'>Desambiguando en Inform6 (II)</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;Vamos con el segundo ejemplo de desambiguación.&lt;br /&gt;Esta vez vamos a hacer una caja de cerillas que contendrá cerillas de dos tipos:&lt;br /&gt;1. Cerillas (esto no tiene ningún misterio)&lt;br /&gt;2. Cerillas de la caja. (son las mismas cerillas de antes, sólo que están circunstancialmente dentro de la caja de cerillas, por si no quedaba claro).&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_e0GwVJSRTtk/TFitnIhxvaI/AAAAAAAADtE/HNc82bFVgrI/s1600/deamb5.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/TFitnIhxvaI/AAAAAAAADtE/HNc82bFVgrI/s320/deamb5.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Por tanto, tenemos que distinguir primeramente &lt;b&gt;"cerillas de caja"&lt;/b&gt; de &lt;b&gt;"caja de cerillas&lt;/b&gt;".&lt;br /&gt;Esto ya lo hicimos en el ejemplo anterior con la leche y las jarras, pero con un mal resultado en cuanto intentamos interactuar con los dos objetos problemáticos a la vez en la misma orden. Ahora no ocurrirá así.&lt;br /&gt;&lt;br /&gt;También debemos distinguir, como se anticipó, entre &lt;b&gt;"cerillas"&lt;/b&gt; y &lt;b&gt;"cerillas de la caja"&lt;/b&gt;: las cerillas que tenemos en nuestra posesión o hemos sacado, de las que en esos momentos se encuentran en la caja.&lt;br /&gt;&lt;br /&gt;El código, para InfSP, es el siguiente:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Constant Story "Desambiguación con Caja de Cerillas";&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Constant ADMITIR_COMANDO_SALIDAS;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;#Include "Parser";&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;#Include "Verblib";&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;[ Initialise;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;location=habitacion;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;rtrue;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;];&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!###########################################&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object limbo "limbo"&lt;/span&gt;;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object habitacion "habitacion"&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with &lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description "...",&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has light;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object jarron "jarrón" habitacion&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with name 'jarron',&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has container open;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object caja_de_cerillas "caja de cerillas" habitacion&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with parse_name [ i j j2 j3 j4;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; j=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (j=='caja'){!ee&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; i++;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j2=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j3=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j4=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(j2=='de'){if(j3=='las' &amp;amp;&amp;amp; j4=='cerillas')i=i+3;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (j3=='cerillas')i=i+2;}&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }!ee &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return i;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;],&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has female container openable ~open;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;class cerillas&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with short_name "cerilla",&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;plural "cerillas",&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description [;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(self in caja_de_cerillas)"Una cerilla que está dentro de la caja de cerillas.";&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; "Una cerilla normal y corriente.";&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ],&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;parse_name [ i j j2 j3 j4;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; j=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (j=='cerilla')i++;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (j=='cerillas'){i++; parser_action=##PluralFound;}&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (i&amp;gt;0 &amp;amp;&amp;amp; action_to_be~=##Take or ##Remove){&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j2=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j3=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j4=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(self in caja_de_cerillas){!¿está dentro de la caja?&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(j2=='de'){if(j3=='la' &amp;amp;&amp;amp; j4=='caja')i=i+3;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (j3=='caja')i=i+2;}&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }!¿está dentro de la caja?&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return i;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;],&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has female;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;cerillas c1 "" caja_de_cerillas;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;cerillas c2 "" caja_de_cerillas;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;cerillas c3 "" caja_de_cerillas;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;cerillas c4 "" caja_de_cerillas;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;cerillas c5 "" caja_de_cerillas;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;cerillas c6 "" caja_de_cerillas;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;cerillas c7 "" caja_de_cerillas;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;cerillas c8 "" caja_de_cerillas;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!###########################################&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! Procedemos a reemplazar el Parsenoun de la librería por el código de la&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! librería Intnombre que hemos descargado. Con esto conseguimos que los&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! adjetivos puntúen previa detección de un nombre.&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Replace ParseNoun;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Include "IntnombreINFSP.h"; &lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;#Include "SpanishG";&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;Vamos a analizar este trozito de código del objeto caja_de_cerillas para ver lo que estamos haciendo:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with parse_name [ i j j2 j3 j4;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; j=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (j=='caja'){!ee&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; i++;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j2=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j3=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j4=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(j2=='de'){if(j3=='las' &amp;amp;&amp;amp; j4=='cerillas')i=i+2;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (j3=='cerillas')i=i+2;}&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }!ee&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return i;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;],&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;En lugar de definir los nombres y los adjetivos definiéndolos previamente como de costumbre, vamos a mirarlos paso a paso con la función parse_name.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;&lt;i&gt;Nextword();&lt;/i&gt; devuelve el valor de la siguiente palabra escrita, consecutivamente. Como la primera es el verbo (o cualquier texto conector de la gramática; o cualquier palabra supérflua que el parser decarte, como un artículo), el primer &lt;i&gt;Nextword()&lt;/i&gt; leerá la segunda palabra.&lt;br /&gt;Para que se entienda mejor, si de buenas a primeras escribiéramos:&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Nextword(); Nextword(); j=Nextword();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;la variable j leería la cuarta palabra que hemos escrito.&lt;br /&gt;&lt;br /&gt;Bien, según el código de arriba, si la segunda palabra escrita es 'caja', le damos un punto y procedemos a comprobar las demás para aumentar la puntuación del objeto, utilizando las variables j2, j3 y j4 para almacenar la tercera, cuarta y quinta.&lt;br /&gt;Y es que podemos referirnos a la caja (normalmente) con una cadena de hasta cuatro palabras:&lt;br /&gt;&lt;b&gt;caja&lt;br /&gt;caja de cerillas&lt;br /&gt;caja de las cerillas&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;De modo que si escribimos simplemente "caja", este objeto recibirá un punto; y si escribimos "caja de las cerillas" o "caja de cerillas" recibirá 1+2=3 puntos.&lt;br /&gt;No conviene darle más puntos escribiendo sólo "caja", pues podría haber otra caja de otra cosa en la aventura, y nos cargaríamos la desambiguación. Así que sólo le subiremos la nota cuando detrás de caja hayamos escrito "de cerillas" o "de las cerillas".&lt;br /&gt;&lt;br /&gt;Con el objeto cerillas:&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;parse_name [ i j j2 j3 j4;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; j=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (j=='cerilla')i++;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (j=='cerillas'){i++; parser_action=##PluralFound;}&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (i&amp;gt;0 &amp;amp;&amp;amp; action_to_be~=##Take or ##Remove){&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j2=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j3=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; j4=NextWord();&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(self in caja_de_cerillas){!¿está dentro de la caja?&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(j2=='de'){if(j3=='la' &amp;amp;&amp;amp; j4=='caja')i=i+3;&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (j3=='caja')i=i+2;}&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }!¿está dentro de la caja?&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return i;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;],&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;hacemos tanto de lo mismo, sólo que la palabra de vocabulario a detectar como inicio es 'cerilla' o 'cerillas'.&lt;br /&gt;En cuanto detectamos la coincidencia le damos un punto y procedemos a rastrear el resto de las palabras que van detrás, de la misma forma. En este caso sólo les vamos a dar puntuación a las cerillas que además de haber sido descritas como "cerillas de la caja..." estén efectivamente dentro de la caja de cerillas.&lt;br /&gt;De este modo, EX CERILLA y EX CERILLA DE LA CAJA nos dará dos descripciones distintas, tal como lo hemos programado.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/TFitoLN2ydI/AAAAAAAADtM/n93k6ofx_vA/s1600/deamb6.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/TFitoLN2ydI/AAAAAAAADtM/n93k6ofx_vA/s320/deamb6.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;¿Qué ocurriría si otorgáramos la puntución por igual a las cerillas dentro de la caja que a las de fuera?&lt;br /&gt;Pues que por defecto, al examinar, el parser tomaría al azar una cerilla... pero priorizando las que están fuera de la caja (Ya hemos visto en el capítulo anterior que para el parser, ante la duda, la más salida, es decir, el objeto que no esté dentro de otro).&lt;br /&gt;Por lo demás, meter y sacar cerillas funcionaría perfectamente.&lt;br /&gt;&lt;br /&gt;Bien, vamos a compilar el código y a probar:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Puedes ver un jarrón (que está vacío) y una caja de cerillas (que está cerrada).&lt;br /&gt;&amp;gt;x cerillas&lt;br /&gt;No veo eso que dices.&lt;/b&gt;&lt;br /&gt;Que no cunda el pánico. La caja está cerrada, y al no ser transparente no puedes ver las cerillas. De hecho no puedes saber si dentro hay cerillas, monedas o una araña famélica.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;abre caja&lt;br /&gt;Abres la caja de cerillas, descubriendo ocho cerillas.&lt;/b&gt;&lt;br /&gt;Ahora ya podemos verlas.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x caja de cerillas&lt;br /&gt;En la caja de cerillas ves ocho cerillas.&lt;/b&gt;&lt;br /&gt;Correcto.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x cerillas de caja&lt;br /&gt;No puedes especificar objetos múltiples con ese verbo.&lt;/b&gt;&lt;br /&gt;También es correcto, el parser ha detectado correctamente que nos referimos a las cerillas, sólo que no se pueden examinar en plural, y por eso lanza ese mensaje.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x cerilla de caja&lt;br /&gt;Una cerilla que está dentro de la caja de cerillas.&lt;/b&gt;&lt;br /&gt;Probamos en singular, aunque esto no demuestra nada aún, ya que "cerilla de la caja" con cerilla en singular no entra en conflicto con "caja de cerillas" con cerillas en plural. Por tanto vamos a probar con una acción que a diferencia de examinar sí que admita plurales u objetos múltiples:&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&amp;gt;sacar caja de cerillas&lt;br /&gt;¡Pero si no está ahí ahora!&lt;/b&gt;&lt;br /&gt;Primeramente hemos intentado el absurdo. El mensaje, aunque no muy claro, es correcto. Es el que lanza el parser por defecto cuando intentas sacar algo que no está metido en ningún sitio, y tal es el caso de la caja de cerillas.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;sacar cerillas de caja&lt;br /&gt;cerilla: Sacada. cerilla: Sacada. cerilla: Sacada. cerilla: Sacada. cerilla: Sacada. cerilla: Sacada. cerilla: Sacada. cerilla: Sacada.&lt;/b&gt;&lt;br /&gt;Como vemos, hemos sacado las 8 cerillas de la caja. Pero vamos a volver a meterlas para probar mejor la desambiguación:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;meter cerillas en caja&lt;br /&gt;cerilla: Hecho. cerilla: Hecho. cerilla: Hecho. cerilla: Hecho. cerilla: Hecho. cerilla: Hecho. cerilla: Hecho. cerilla: Hecho.&lt;br /&gt;&amp;gt;sacar cerillas de caja de cerillas / sacar cerillas de la caja de cerillas&lt;br /&gt;cerilla: Sacada. cerilla: Sacada. cerilla: Sacada. cerilla: Sacada. cerilla: Sacada. cerilla: Sacada. cerilla: Sacada. cerilla: Sacada.&lt;/b&gt;&lt;br /&gt;Ya, por fín, hemos enfrentado a las "cerillas de la caja" contra la "caja de cerillas" en la misma frase. Y como vemos el parser detecta correctamente a qué objeto nos referimos en cada una de las partes.&lt;br /&gt;&lt;br /&gt;Alguien se podrá preguntar ahora... ¿Y qué pinta un jarrón ahí? Pues es para demostrar que no hay trampa ni cartón.&lt;br /&gt;El jarrón es otro contenedor donde se pueden meter las cerillas. Si la caja de cerillas fuera el único contenedor presente, el parser no necesitaría detectar que nos referimos a ese objeto, y con escribir "sacar cerillas" o "meter cerillas" actuaría directamente sobre él. Por tanto no podríamos comprobar que efectivamente se está enterando de que nos referimos a ese objeto.&lt;br /&gt;Es una más de esas características de Inform donde el parser se hace el listillo...&lt;br /&gt;&lt;br /&gt;Pero aún no han terminado las comprobaciones. Vamos a volver a meter todas las cerillas en la caja y empezamos de nuevo:&lt;br /&gt;&lt;b&gt;&amp;gt;coge cerilla&lt;br /&gt;Cogida.&lt;/b&gt;&lt;br /&gt;(Aunque el mensaje por defecto -que podemos mejorar- no lo muestre, la cerilla cogida procede del interior de la caja, que es donde están todas.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;coge cerilla&lt;br /&gt;Ya tienes la cerilla.&lt;/b&gt;&lt;br /&gt;Obviamente ya tenemos la cerilla... aunque haya más dentro de la caja. Pese a que resulte pesado, vuelvo a recordar que en caso de empate Inform prioriza los objetos que no están dentro de otros, de modo que habiendo alguna cerilla fuera de la caja, ésta tendrá prioridad.&lt;br /&gt;¿Qué ocurriría si hubiera más de una cerilla fuera de la caja? ¿Nos lanzaría el parser un mensaje de desambiguación para determinar a cuál de ellas nos referimos? No. Las cerillas están definidas como una clase, con las mismas propiedades de nombre (en este caso con la rutina parse_name), por tanto son equivalentes y se escoge una al azar, sin preguntar al usuario. No ocurriría así si hubiéramos definido alguna diferencia de vocabulario entre ellas, por ejemplo distintos colores. En ese caso el pasers nos preguntaría &lt;b&gt;¿A cuál te refieres, a la cerilla roja, a la cerilla azul, o a la cerilla verde?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Pero volvamos al tema:&lt;br /&gt;&lt;b&gt;&amp;gt;coge cerilla de caja / saca cerilla de caja&lt;br /&gt;Sacada.&lt;/b&gt;&lt;br /&gt;Si queremos coger las cerillas que están dentro de la caja, lo especificamos y listo.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x cerilla&lt;br /&gt;Una cerilla normal y corriente.&lt;/b&gt;&lt;br /&gt;Ésta es la descripción de una cerilla que está fuera de la caja.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x cerilla de caja&lt;br /&gt;Una cerilla que está dentro de la caja de cerillas.&lt;/b&gt;&lt;br /&gt;Ésta es la descripción de una cerilla que está dentro de la caja.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;coge dos cerillas de la caja&lt;br /&gt;cerilla: Sacada. cerilla: Sacada.&lt;/b&gt;&lt;br /&gt;Esto también funciona.&lt;br /&gt;&lt;br /&gt;¿Queréis ver algo que no funcione?...&lt;br /&gt;&lt;b&gt;&amp;gt;mete en la caja de cerillas una cerilla&lt;br /&gt;No entendí esa frase.&lt;/b&gt;&lt;br /&gt;Pero esto no es un problema de desambiguación, sino de definición de gramática. Podemos ver cómo está definida la acción "meter" (siempre que hayamos compilado en modo debug) de la siguiente forma:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;xverbo mete&lt;br /&gt;Verb 'coloca' 'echa' 'inserta' 'mete' 'pon' &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * multiexcept 'en' container -&amp;gt; Insert&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * multiexcept 'en' noun -&amp;gt; PutOn&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * multiexcept 'dentro' 'de' noun -&amp;gt; Insert&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * multiexcept 'sobre' noun -&amp;gt; PutOn&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * noun 'a' topic -&amp;gt; SetTo&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * 'a' creature 'en' container -&amp;gt; Insert&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * 'a' creature 'en' noun -&amp;gt; PutOn&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * 'a' creature 'dentro' 'de' noun -&amp;gt; Insert&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * 'a' creature 'sobre' noun -&amp;gt; PutOn&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * multiexcept 'encima' 'de' noun -&amp;gt; PutOn&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * 'a' creature 'encima' 'de' noun -&amp;gt; PutOn&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * 'cerrojo' / 'pestillo' / 'cierre' 'a' noun -&amp;gt; Lock&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * 'el' 'cerrojo' / 'pestillo' / 'cierre' 'a' noun -&amp;gt; Lock&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * 'cerrojo' / 'pestillo' / 'cierre' 'a' noun 'con' held -&amp;gt; Lock&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * 'el' 'cerrojo' / 'pestillo' / 'cierre' 'a' noun 'con' held -&amp;gt; Lock&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Como vemos, no aparece por ningún sitio ninguna plantilla tal que &lt;i&gt;&lt;b&gt;'en' container multiexcept&lt;/b&gt;&lt;/i&gt;.&lt;br /&gt;Por tanto, si queremos que el parser entienda una orden con el complemento circunstancial por delante del complemento directo, debemos editar o ampliar esa gramática añadiendo las siguientes líneas:&lt;br /&gt;&lt;span style="color: #660000; font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;* 'en' container multiexcept -&amp;gt; Insert reverse&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;* 'dentro' 'de' container multiexcept -&amp;gt; Insert reverse&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pero esto ya se sale del tema de la desambiguación y de la caja de cerillas.&lt;br /&gt;Puedes descargar el código compilado para Glulx aquí:&lt;br /&gt;&lt;a href="http://www.caad.es/jarel/trastos/cajadecerillas.zip"&gt;http://www.caad.es/jarel/trastos/cajadecerillas.zip&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_e0GwVJSRTtk/TFitom315pI/AAAAAAAADtU/t9EfnjLCCjQ/s1600/deamb4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/TFitom315pI/AAAAAAAADtU/t9EfnjLCCjQ/s320/deamb4.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-5487871929065020448?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/5487871929065020448/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=5487871929065020448&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5487871929065020448'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5487871929065020448'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/08/desambiguando-en-inform6-ii.html' title='Desambiguando en Inform6 (II)'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e0GwVJSRTtk/TFitnIhxvaI/AAAAAAAADtE/HNc82bFVgrI/s72-c/deamb5.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-8288947101440415261</id><published>2010-07-29T21:38:00.019+02:00</published><updated>2012-01-23T13:03:01.085+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='parsing'/><title type='text'>Desambiguando en Inform6 (I)</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_e0GwVJSRTtk/TFHWmAJ_aII/AAAAAAAADsk/7OJ9aAnhAdw/s1600/desamb1.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="185" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/TFHWmAJ_aII/AAAAAAAADsk/7OJ9aAnhAdw/s200/desamb1.jpg" width="200" /&gt;&lt;/a&gt;A raíz de &lt;a href="http://lanemastodon.wordpress.com/2010/04/17/de-la-ambigedad-en-la-ficcin-interactiva/"&gt;este post de Mastodon sobre la ambigüedad&lt;/a&gt;, voy a escribir dos artículos sobre cómo tratarla en Inform6.&lt;br /&gt;Aviso que el &lt;i&gt;güeno güeno&lt;/i&gt; es el segundo, en éste sólo voy a marear un poco la perdiz y a hacer pruebas. Pero también explicar dos modificaciones muy útiles que hacer a la librería por defecto para facilitar la desambiguación.&lt;br /&gt;&lt;br /&gt;Si vamos a programar con InformATE debemos descargar esta librería:&lt;br /&gt;&lt;a href="http://www.caad.es/informate/informate/IntNombre.zip"&gt;http://www.caad.es/informate/informate/IntNombre.zip&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Si en cambio programamos con InfSP6, &lt;span style="font-size: small;"&gt;puedes descargarla desde aquí:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.caad.es/jarel/trastos/IntNombre.h"&gt;http://www.caad.es/jarel/trastos/IntNombre.h&lt;/a&gt;&lt;br /&gt;O en este paquete de librerías y extensiones, donde viene incluída:&lt;br /&gt;&lt;a href="http://www.caad.es/informate/infsp/downloads/extensiones.rar"&gt;http://www.caad.es/informate/infsp/downloads/extensiones.rar&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Y vamos con el código base de ejemplo, es para InfSP6, aunque al final explicaré las modificaciones no obvias que hay que hacer para InformATE.&lt;br /&gt;&lt;br /&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;global variable1 =0; !esta variable la usaremos más adelante&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Constant Story "desambiguación";&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Constant ADMITIR_COMANDO_SALIDAS;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Replace ChooseObjects;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;#Include "Parser";&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!! ATENCIÓN. USAR VALORES DE prioritario entre 1 y 7&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;[ChooseObjects obj code;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp; if(code==2){&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(obj has nombreusado){&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(obj provides prioritario){&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return (obj.prioritario+2); &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return 1;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;if (code&amp;lt;2) { if (obj has scenery || obj has static) return 2; rfalse; } ! &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; if (action_to_be==##Eat &amp;amp;&amp;amp; obj has edible) return 3;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; if (obj hasnt scenery || obj hasnt static) return 2;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; return 1;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;];&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;#Include "Verblib";&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;[ Initialise;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;location=habitacion;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;rtrue;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;];&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!###########################################&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object limbo "limbo"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! Esto no sirve para nada, es para evitar un error si no declaramos&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! al menos una vez la propiedad prioritario&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;prioritario 0, &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object habitacion "habitacion"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description "...",&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has light;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object jarradeleche "jarra con leche" habitacion&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with name 'jarra',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;adjectives 'leche' 'con' 'que' 'contiene',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description "Es una jarra que contiene leche",&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has female transparent;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object jarradeagua "jarra con agua" habitacion&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with name 'jarra',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;adjectives 'agua' 'con' 'que' 'contiene',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description "Es una jarra que contiene agua",&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has female transparent;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object lechedelajarra "leche de la jarra" habitacion&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with name 'leche',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;adjectives 'jarra' 'blanca',&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!prioritario 3, &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description "Leche blanca, la jarra está llena de leche.",&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has female;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!###########################################&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! Procedemos a reemplazar el Parsenoun de la librería por el código de la&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! librería Intnombre que hemos descargado. Con esto conseguimos que los&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! adjetivos puntúen previa detección de un nombre.&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!Replace ParseNoun;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!Include "IntnombreINFSP.h"; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;#Include "SpanishG";&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Destacar que vamos a reemplazar dos funciones de la librería estandar, Parsenoun y ChooseObjects, para crear la infraestructura que nos permita desambiguar correctamente. Aunque de momento dejaremos desactivado el reemplazo de Parsenoun y no utilizaremos aún la propiedad "prioritario", para ver cómo parsea Inform6 por defecto... sí... POR DEFECTO (soy totalmente subjetivo).&lt;br /&gt;&lt;br /&gt;Si compilamos el código de arriba, y procedemos a examinar los tres objetos presentes, la jarra con leche, la jarra con agua y la leche que está dentro de la jarra (oculta dentro de la jarra), ocurrirá lo siguiente:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/TFHWmjzT7sI/AAAAAAAADss/XbAw26jD0jY/s1600/desamb2.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="153" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/TFHWmjzT7sI/AAAAAAAADss/XbAw26jD0jY/s200/desamb2.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span id="goog_928945766"&gt;&lt;/span&gt;&lt;span id="goog_928945767"&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;Puedes ver una jarra con leche y una jarra con agua.&lt;br /&gt;&amp;gt;x jarra&lt;br /&gt;¿Cuál concretamente, la jarra con leche o la jarra con agua?&lt;/b&gt;&lt;br /&gt;Vamos bien, hay dos objetos con nombre jarra, y nos pide concretar como no podía ser de otra manera.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;leche&lt;br /&gt;Es una jarra que contiene leche&lt;/b&gt;&lt;br /&gt;Al responder acto seguido "leche", el parser entiende que nos referimos a la jarra de leche. Una pena que no entienda también "&lt;b&gt;a la de la leche&lt;/b&gt;".&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x jarra de leche&lt;br /&gt;Es una jarra que contiene leche&lt;/b&gt;&lt;br /&gt;De esta forma el parser no nos pide desambiguación, ya le hemos aportado el dato de que es la jarra de leche y no la de agua.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x leche de jarra&lt;br /&gt;Es una jarra que contiene leche&lt;/b&gt;&lt;br /&gt;Primer problema, el parser no diferencia la "jarra de leche" de la "leche de la jarra", ya que ambos objetos tienen la misma puntuación, pero elige el objeto "jarra de leche" debido a que la "leche" está dentro de la jarra (En caso de empate el parser considera más importantes los objetos que no están dentro de otro, y toma su propia decisión).&amp;nbsp; &lt;br /&gt;Si moviéramos el objeto "leche" a la localidad, obtendríamos una pregunta de desambiguación, al existir empate: &lt;b&gt;¿Cuál concretamente, la jarra con leche o la leche de la jarra?&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&amp;gt;x leche&lt;br /&gt;Leche, la jarra está llena de leche.&lt;/b&gt;&lt;br /&gt;Correcto&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x blanca&lt;br /&gt;Leche blanca, la jarra está llena de leche.&lt;/b&gt;&lt;br /&gt;Nuevo problema: el sistema de puntuación por defecto valora los adjetivos aun ante la ausencia de un nombre, dando lugar a extrañezas como ésta. O incluso cosas peores, como que al escribir "EXAMINAR CONTIENE", el parser detecte que nos referimos a alguna de las jarras:&lt;br /&gt;&lt;b&gt;&amp;gt;x contiene&lt;br /&gt;¿Cuál concretamente, la jarra con leche o la jarra con agua?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Ahora vamos a modificar el código del ejemplo de arriba, descomentando las siguientes líneas:&lt;br /&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Replace ParseNoun;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Include "IntnombreINFSP.h";&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Compilamos de nuevo, y algo ha cambiado en el parseado, vamos a ver:&lt;br /&gt;&lt;b&gt;Puedes ver una jarra con leche y una jarra con agua.&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x blanca&lt;br /&gt;No veo eso que dices.&lt;/b&gt;&lt;br /&gt;Hemos arreglado lo de los adjetivos que querían tener demasiado protagonismo.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x leche blanca&lt;br /&gt;Leche blanca, la jarra está llena de leche.&lt;/b&gt;&lt;br /&gt;Como vemos, los adjetivos funcionan sólo acompañados de alguno de sus nombres.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x jarra&lt;br /&gt;¿Cuál concretamente, la jarra con leche o la jarra con agua?&lt;br /&gt;&amp;gt;agua&lt;br /&gt;Es una jarra que contiene agua&lt;/b&gt;&lt;br /&gt;La pregunta de desambiguación del parser ante objetos con nombre idéntico sigue funcionando correctamente.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x&amp;nbsp; jarra de leche&lt;br /&gt;Es una jarra que contiene leche&lt;/b&gt;&lt;br /&gt;Y si desambiguamos nosotros directamente en la orden, nos ahorramos la pregunta del parser.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x leche de jarra&lt;br /&gt;Es una jarra que contiene leche&lt;/b&gt;&lt;br /&gt;Seguimos con el mismo problema de antes. Ambos objetos tienen la misma puntuación, pero la leche está contenida dentro de la jarra y sale perdiendo.&lt;br /&gt;En cualquier caso, el sacar la leche de la jarra no arreglaría el problema, entraríamos en un bucle de preguntas "leche de jarra" versus "jarra de leche" del que sólo saldríamos aportando una palabra que esté contenida en el campo name o adjectives de uno de los objetos y no en el otro, por ejemplo:&lt;br /&gt;Con "&lt;b&gt;x leche BLANCA de la jarra&lt;/b&gt;" ganaría la leche.&lt;br /&gt;Con "&lt;b&gt;x jarra QUE CONTIENE leche&lt;/b&gt;" ganaría la jarra.&lt;br /&gt;&lt;br /&gt;Pero de todos modos, de la misma forma:&lt;br /&gt;Con "&lt;b&gt;x jarra de la leche BLANCA&lt;/b&gt;" seguiría ganando la leche.&lt;br /&gt;Y con "&lt;b&gt;x leche QUE CONTIENE la jarra&lt;/b&gt;" seguiría ganando la jarra.&lt;br /&gt;&lt;br /&gt;De modo que nuestro problema sigue ahí.&lt;br /&gt;Pero vamos a solucionarlo en seguida:&lt;br /&gt;Para empezar descomentamos la línea que le otorga prioritario al objeto lechedelajarra:&lt;br /&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object  lechedelajarra "leche de la jarra" habitacion&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with name 'leche',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;adjectives 'jarra'  'blanca',&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;prioritario 3, &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description "Leche  blanca, la jarra está llena de leche.",&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has female;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;De modo que a partir de ahora en caso de empate siempre ganará la leche sobre la jarra.&lt;br /&gt;Si el objeto tiene la propiedad prioritario, al elegir el objeto ganador, en caso de empate éste recibirá unos puntos extra, por enchufe.&lt;br /&gt;Según vemos en el código, en lugar de un punto por coincidencia, recibiría el valor de su propiedad prioritario más otros dos, un total de 5 puntos. &lt;br /&gt;La función ChooseObjects se encarga de eso: de adjudicar puntos entre todos los objetos en base a las coincidencias de su vocabulario con lo que ha escrito el jugador para determinar cuál de ellos es el ganador.&lt;br /&gt;&lt;br /&gt;Sólo con esto, la leche ganaría siempre con sólo cumplir que el jugador haya escrito "leche", y tampoco es lo que queremos, pues sería elegida al escribir "jarra de leche".&lt;br /&gt;&lt;br /&gt;Vamos a plantear una regla sencilla tal que, si el jugador escribe jarra antes que leche, significará que se refiere a la jarra de leche; y si en cambio escribe leche antes que jarra, se referirá a la leche de la jarra.&lt;br /&gt;&lt;br /&gt;Añadiremos este código detrás de la función &lt;i&gt;Initialise&lt;/i&gt; de nuestro listado (ojo, sólo funciona para compilar en Glulx, al final incluiré las pequeñas modificaciones para que compile en Máquina-Z):&lt;br /&gt;&lt;br /&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;[BeforeParsing i j thisword thislength x exceso; !&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; variable1=0;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=parse--&amp;gt;0,j=1:j&amp;lt;=i:j++) !ATENCIÓN; en Zcode es "parse-&amp;gt;1", en Glulx es "parse--&amp;gt;0"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; !!!parse--&amp;gt;0 devuelve el número de palabras escritas,num_words = parse--&amp;gt;0;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {!mnfo&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; thisword = WordAddress(j);&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; thislength = WordLength(j);&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if ( thisword -&amp;gt; 0 &amp;gt;= 'a' &amp;amp;&amp;amp; thisword -&amp;gt; 0 &amp;lt;= 'z' )&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; { !bucle&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; if(thisword-&amp;gt;0=='j' &amp;amp;&amp;amp; thisword-&amp;gt;1=='a' &amp;amp;&amp;amp; thisword-&amp;gt;2=='r' &amp;amp;&amp;amp; thisword-&amp;gt;3=='r' &amp;amp;&amp;amp; thisword-&amp;gt;4=='a'){if(variable1==0)variable1=1;}&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;if(thisword-&amp;gt;0=='l' &amp;amp;&amp;amp; thisword-&amp;gt;1=='e' &amp;amp;&amp;amp; thisword-&amp;gt;2=='c' &amp;amp;&amp;amp; thisword-&amp;gt;3=='h' &amp;amp;&amp;amp; thisword-&amp;gt;4=='e'){if(variable1==1)variable1=2;else variable1=3;}&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } !blucle&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }!mnfo&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!Resumen:&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!Si el jugador ha escrito jarra antes que leche, variable1 valdrá 2&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!Si el jugador ha escrito leche antes que jarra, variable1 valdrá 3&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!Si el jugador ha escrito jarra, pero no leche, variable1 valdrá 1&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;];&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="color: black;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="color: black;"&gt;Ahora nos vamos a la función Chooseobjects, y añadimos una línea extra dejándola así:&lt;/div&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;[ChooseObjects obj code;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp; if(code==2){&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(obj has nombreusado){&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(obj==jarradeleche &amp;amp;&amp;amp; variable1==2)return (20); !&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(obj provides prioritario){&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return (obj.prioritario+2); &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return 1;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;if (code&amp;lt;2) { if (obj has scenery || obj has static) return 2; rfalse; } ! &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; if (action_to_be==##Eat &amp;amp;&amp;amp; obj has edible) return 3;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; if (obj hasnt scenery || obj hasnt static) return 2;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; return 1;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;];&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;Hemos introducido esta línea:&lt;br /&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;if(obj==jarradeleche &amp;amp;&amp;amp; variable1==2)return (20);&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Y lo que estamos haciendo, es decirle a la función que otorga puntuaciones que si el jugador ha escrito "jarra" y "leche", y además ha escrito "jarra" antes que "leche", que le dé 20 puntazos a la jarra ¡toma ya! ¡A ver qué otro objeto puede ganar ahora a la jarra por mucho prioritario que tenga!&lt;br /&gt;No hace falta hacer lo mismo con la leche, pues recordemos que al haberle dado la propiedad prioritario, la leche ya recibirá una puntuación extra (menor, pero suficiente para ganar a la jarra) caso de que la premisa anterior no se cumpla.&lt;br /&gt;A continuación compilamos y crucemos los dedos (aún no sé si funcionará):&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;gt;x jarra de leche&lt;br /&gt;Es una jarra que contiene leche&lt;br /&gt;&amp;gt;x leche de jarra&lt;br /&gt;Leche blanca, la jarra está llena de leche.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;¡¡¡Toma, toma y toma!!!&lt;b&gt; &lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_e0GwVJSRTtk/TFHWpUWXm2I/AAAAAAAADs0/8lObZ6AxnUU/s1600/desamb3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="185" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/TFHWpUWXm2I/AAAAAAAADs0/8lObZ6AxnUU/s320/desamb3.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Por si acaso, comprobamos que la jarra no recibe los 20 puntacos cuando no especificamos que es la jarra de leche:&lt;br /&gt;&lt;b&gt;&amp;gt;x jarra&lt;br /&gt;¿Cuál concretamente, la jarra con leche o la jarra con agua?&lt;/b&gt;&lt;br /&gt;Y funciona correctamente.&lt;br /&gt;&lt;br /&gt;A todo esto, igual alguien se está preguntando quién diablos va a utilizar "leche de la jarra" para referirse a la leche. Como esto es un ejercicio de desambiguación, vamos a imaginar que, además de la jarra con leche y la jarra con agua, existe un vaso con leche. Entonces, al escribir simplemente "leche", recibiríamos la pregunta &lt;b&gt;¿Cuál concretamente, la leche de la jarra o la leche del vaso?&lt;/b&gt; y de ahí que pueda ser importante que el parser diferencie la &lt;span style="color: #4c1130;"&gt;leche de la jarra&lt;/span&gt; de la &lt;span style="color: #4c1130;"&gt;leche del vaso&lt;/span&gt;, de la &lt;span style="color: #4c1130;"&gt;jarra de leche&lt;/span&gt;, y del &lt;span style="color: #4c1130;"&gt;vaso de leche&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Éste es el código definitivo:&lt;br /&gt;&lt;br /&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;global variable1 =0; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Constant Story "desambiguación";&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Constant ADMITIR_COMANDO_SALIDAS;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Replace ChooseObjects;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;#Include "Parser";&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!! ATENCIÓN. USAR VALORES DE prioritario entre 1 y 7&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;[ChooseObjects obj code;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp; if(code==2){&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(obj has nombreusado){&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(obj==jarradeleche &amp;amp;&amp;amp; variable1==2)return (20); !&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(obj provides prioritario){&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return (obj.prioritario+2); &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return 1;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;if (code&amp;lt;2) { if (obj has scenery || obj has static) return 2; rfalse; } ! &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; if (action_to_be==##Eat &amp;amp;&amp;amp; obj has edible) return 3;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; if (obj hasnt scenery || obj hasnt static) return 2;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp; return 1;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;];&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;#Include "Verblib";&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;[ Initialise;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;location=habitacion;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;rtrue;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;];&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;[BeforeParsing i j thisword thislength x exceso; !&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; variable1=0;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=parse--&amp;gt;0,j=1:j&amp;lt;=i:j++) !ATENCIÓN; en Zcode es "parse-&amp;gt;1", en Glulx es "parse--&amp;gt;0"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; !!!parse--&amp;gt;0 devuelve el número de palabras escritas,num_words = parse--&amp;gt;0;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {!mnfo&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; thisword = WordAddress(j);&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; thislength = WordLength(j);&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if ( thisword -&amp;gt; 0 &amp;gt;= 'a' &amp;amp;&amp;amp; thisword -&amp;gt; 0 &amp;lt;= 'z' )&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; { !bucle&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; if(thisword-&amp;gt;0=='j' &amp;amp;&amp;amp; thisword-&amp;gt;1=='a' &amp;amp;&amp;amp; thisword-&amp;gt;2=='r' &amp;amp;&amp;amp; thisword-&amp;gt;3=='r' &amp;amp;&amp;amp; thisword-&amp;gt;4=='a'){if(variable1==0)variable1=1;}&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;if(thisword-&amp;gt;0=='l' &amp;amp;&amp;amp; thisword-&amp;gt;1=='e' &amp;amp;&amp;amp; thisword-&amp;gt;2=='c' &amp;amp;&amp;amp; thisword-&amp;gt;3=='h' &amp;amp;&amp;amp; thisword-&amp;gt;4=='e'){if(variable1==1)variable1=2;else variable1=3;}&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } !blucle&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }!mnfo&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!Resumen:&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!Si el jugador ha escrito jarra antes que leche, variable1 valdrá 2&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!Si el jugador ha escrito leche antes que jarra, variable1 valdrá 3&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!Si el jugador ha escrito jarra, pero no leche, variable1 valdrá 1&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;];&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!###########################################&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object limbo "limbo"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! Esto no sirve para nada, es para evitar un error si no declaramos&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! al menos una vez la propiedad prioritario&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;prioritario 0, &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object habitacion "habitacion"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description "...",&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has light;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object jarradeleche "jarra con leche" habitacion&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with name 'jarra',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;adjectives 'leche' 'con' 'que' 'contiene',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description "Es una jarra que contiene leche",&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!prioritario 2,&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has female transparent;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object jarradeagua "jarra con agua" habitacion&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with name 'jarra',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;adjectives 'agua' 'con' 'que' 'contiene',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description "Es una jarra que contiene agua",&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!prioritario 2,&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has female transparent;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object lechedelajarra "leche de la jarra" jarradeleche&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with name 'leche',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;adjectives 'jarra' 'blanca',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;prioritario 3,&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description "Leche blanca, la jarra está llena de leche.",&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has female;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;!###########################################&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! Procedemos a reemplazar el Parsenoun de la librería por el código de la&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! librería Intnombre que hemos descargado. Con esto conseguimos que los&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;! adjetivos puntúen previa detección de un nombre.&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Replace ParseNoun;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Include "IntnombreINFSP.h"; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;#Include "SpanishG";&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Pero no cantemos victoria. Este método, además de ser un tanto chusco, no es el correcto para este caso, ya que en cuanto intentemos "&lt;b&gt;sacar la leche de la jarra de la leche&lt;/b&gt;" veremos cómo se nos cae todo el tinglao.&lt;br /&gt;Por tanto no es correcto para objetos que puedan aparecer combinados dentro de la misma orden.&lt;br /&gt;Ya avisé que iba a marear la perdiz. &lt;br /&gt;&lt;br /&gt;Pero sí que existe una solución que funciona y realizada de forma más limpia, que explicaré en el segundo capítulo de desambiguación, con un ejemplo que apareció en los foros del CAAD:&lt;br /&gt;&lt;div style="color: #274e13; text-align: center;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;¡¡¡¡LA CAJA DE CERILLAS!!!!&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Por último pondré una par de ejemplos donde el uso de la propiedad prioritario es bastante interesante:&lt;br /&gt;Tenemos dos PSIS, uno se llama Jose, y el otro Jose Luís.&lt;br /&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object jose "Jose"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with name 'jose',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;prioritario 2,&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has animate proper;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object joseluis "Jose Luís"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with name 'jose' 'luis',&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has animate proper;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;De esta forma, cuando se encuentren ambos presentes, al escribir "Jose" detectaremos a Jose, pues al tener prioritario, es el "enchufado" por encima de Jose Luís. Y para Jose Luís deberemos escribir "Jose Luís", o "Luís".&lt;br /&gt;Por otro lado, cuando sólo esté presente Jose Luís, podremos llamarle "Jose" a secas tranquilamente.&lt;br /&gt;&lt;br /&gt;Otro ejemplo menos rebuscado es un objeto "rama suelta" con name 'rama', y un objeto "rama del árbol" con name 'rama' 'ramas' y adjectives 'arbol', que a diferencia de la primera es una rama que aún permanece unida a su árbol de origen.&lt;br /&gt;Le ponemos la propiedad prioritario a la rama suelta, y cuando estén ambas presentes, al escribir &lt;b&gt;ex rama&lt;/b&gt;, examinaremos la rama suelta. ¿Que queremos examinar la rama que pertenece al árbol? pues escribimos &lt;b&gt;ex rama del árbol&lt;/b&gt;.&lt;br /&gt;Si la rama suelta no está presente podemos escribir &lt;b&gt;ex rama&lt;/b&gt; y el parser detectará la del árbol, pues no hay más.&lt;br /&gt;También sería interesante que la rama del árbol dispusiera en su propiedad adjectives de vocabulario como 'otra' 'otras' y 'mas', por si el jugador quiere &lt;b&gt;arrancar otra rama&lt;/b&gt;, o &lt;b&gt;arrancar más ramas.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Si no deseamos intervenir y que sea el parser el que lance la pregunta de desambiguación, entonces no usaremos la propiedad prioritario, pero nos aseguraremos de que la rama suelta tenga en adjectives 'suelta' 'cortada' o 'arrancada', para disponer de vocabulario exclusivo que la diferencie de la otra.&lt;br /&gt;&lt;br /&gt;Habiendo parcheado el modo de parseado por defecto que daba puntuación&amp;nbsp; a  los adjetivos al margen de los nombres, con la librería Intnombre.h, la propiedad adjectives se abre para usos  más allá de los adjetivos. Así podemos incluir palabras variopintas en la propiedad adjectives:&lt;br /&gt;&lt;div style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;object corona "corona del Rey Cucufato"&lt;/div&gt;&lt;div style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;with name 'corona',&lt;/div&gt;&lt;div style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;adjectives 'que' 'fue' 'pertenecio' 'al' 'rey' 'cucufato' 'vieja' 'antigua' 'propiedad',&lt;/div&gt;&lt;div style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;description "Vieja corona que perteneció al rey Cucufato.",&lt;/div&gt;&lt;div style="color: #660000; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;has female;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Notas importantes:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;* Para que el BeforeParsing funcione en Máquina-Z hay que cambiar esto:&lt;br /&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;for (i=parse--&amp;gt;0,j=1:j&amp;lt;=i:j++) !ATENCIÓN; en Zcode es "parse-&amp;gt;1", en Glulx es "parse--&amp;gt;0"&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;por esto otro:&lt;br /&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;for (i=parse-&amp;gt;1,j=1:j&amp;lt;=i:j++) !ATENCIÓN; en Zcode es "parse-&amp;gt;1", en Glulx es "parse--&amp;gt;0"&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;* Si estamos programando con InformATE en lugar de con InfSP6, la función Chooseobjects cambia, porque para empezar, se llama EligeObjetos, quedando así:&lt;br /&gt;&lt;div style="color: #660000;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;[ EligeObjetos obj codigo prio;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; prio=ElegirObjetos(obj,codigo);&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (codigo&amp;gt;=2) &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (obj has nombreusado){&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (bandera_todo_vale==0) prio=prio+10; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(obj==jarradeleche &amp;amp;&amp;amp; variable1==2)return (20); !!!!!&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(obj provides prioritario)prio=prio+obj.prioritario;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((obj == jugador)||((obj has escenario)&amp;amp;&amp;amp;(obj notin brujula)))&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; prio=prio-10;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return prio;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;];&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-8288947101440415261?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/8288947101440415261/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=8288947101440415261&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8288947101440415261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8288947101440415261'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/07/desambiguando-en-inform6-i.html' title='Desambiguando en Inform6 (I)'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/TFHWmAJ_aII/AAAAAAAADsk/7OJ9aAnhAdw/s72-c/desamb1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-13131690485524936</id><published>2010-06-16T23:53:00.012+02:00</published><updated>2012-01-23T13:03:01.085+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retro'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>Legend of Djel</title><content type='html'>Legend of Djel es una aventura francesa de "click &amp;amp; point" de 1987, donde encarnamos el papel de Djel, el brujo del aire.&lt;br /&gt;&lt;br /&gt;La presentación del juego nos deleita con una horrible banda sonora que no distaría mucho de las primeras composiciones que hicimos cuando nos regalaron el órgano CASIO por nuestra primera comunión, acompañada de unos gritos estúpidos. Son gritos sin vehemencia ni credibilidad, bien podían haber gritado ¡repollo!, ¡bonobús!, y sonaría igual de ridículo.&lt;br /&gt;Estoy hablando de la versión de Amiga, en la de PC a través de DOSBOX no suena nada, salvo pitidos.&lt;br /&gt;En cualquier caso, cuando nos enfrascamos en el juego acabamos conciliándonos con la banda sonora: es ideal para ambientar este disparate.&lt;br /&gt;Tras el título nos aparece el gráfico de una especie de dragón que la  verdad es que no pinta nada en la historia. Doy por hecho que alguien  había hecho el gráfico de un dragón y, pues vamos a meterlo. &lt;br /&gt;&lt;br /&gt;La presentación es muy muy lenta para lo poco que aporta, y no se puede saltar pues a continuación viene la pregunta de seguridad antipiratería. Aún recuerdo que un pirata me dijo en su tiempo que por probabilidad había que seleccionar siempre el color rojo. Será potra pero en las cuatro cargas que he hecho hoy tanto en PC como en Amiga he acertado a la primera.&lt;br /&gt;&lt;br /&gt;En la carátula del juego aparecen un par de pantallas a todo color, pero lo cierto es que en la versión de Amiga se emplearon sólamente 8 colores para los gráficos, y en la de PC tanto de lo mismo, a pesar de seleccionar VGA 256 colores. Y es que el juego cabe en un disquete. En aquella época no había JPGs ni cosas por el estilo, serían gráficos tipo TIFF, sin compresión: un gráfico con 8 colores ocupa 3 bits por pixel, uno de 16 son 4 bits por pixel. Para una pantalla de 320x200, tenemos 24 Kb contra 32 Kb, y en un disquette cabían si no recuerdo mal 1,44 Mb. El caso es que pasar a una paleta más rica disparaba el consumo de memoria.&lt;br /&gt;&lt;br /&gt;Los preámbulos son escuetos, Azeulisse (Joseluís para los amigos), señora de los 100 reinos, nos informa que ha desaparecido su hija, y que si no nacen niños en nuestras tierras es a causa de la tristeza que ello le causa. De modo que ya sabemos...&lt;br /&gt;Nada más colgar Azeulisse por la bola de cristal (el teléfono móvil de la época), aparece KAL, que nos pide todo el oro que podamos fabricar para paliar el hambre del pueblo y evitar una revuelta.&lt;br /&gt;&lt;br /&gt;Y empieza el juego. En el típico estudio de un brujo, con una mesa llena de papeles y cachivaches, entre ellos una estatuilla y un jarrón que nos teletransportarán a los mundos de Azeulisse y Kal respectivamente, y una pantalla al fondo sobre la que la estatua de un grifo escupe planetas a los que podemos viajar.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/TBlG6EfpyLI/AAAAAAAADiA/rIgmFACj2gM/s1600/djel2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="316" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/TBlG6EfpyLI/AAAAAAAADiA/rIgmFACj2gM/s400/djel2.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size: x-small;"&gt;Para los que no hayan estado nunca en el estudio de un brujo, son así.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Por la puerta del fondo accedemos al alambique, donde podemos fabricar oro alquímicamente con los ingredientes correctos, que son: murciélagos y flores de plomo.&lt;br /&gt;&lt;br /&gt;Viajamos al primer y único planeta que aparece inicialmente en la pantalla y nos encontramos con un paraje volcánico.&lt;br /&gt;La interacción consiste únicamente en mover el puntero por la pantalla y pinchar aquí y allá, para ver qué pasa. En este mundo conseguimos una cosa rara que no sé lo que es, y el poder del volcán, para lanzar bolas de fuego o algo así, lo que nos vendrá muy bien para cazar murciélagos o matar abejas.&lt;br /&gt;&lt;br /&gt;De regreso a nuestro estudio, dos nuevos mundos han aparecido en la pantalla.&lt;br /&gt;El primero de ellos tiene un puzzle bastante interesante. El mago dueño de ese mundo nos informa de que no está demasiado contento con él, y nos pide que se lo redecoremos. Entonces, pinchando sobre las diversas secciones del paisaje vamos moviendo las cosas: esta planta aquí, esta cosa rara allá.&lt;br /&gt;Son cinco piezas y seis espacios, de modo que cada vez que pinchamos en una sección de paisaje ésta se mueve al hueco dejado tras el último cambio. Es bastante fácil la resolución, pues cada vez que una pieza cae en el lugar correcto el mago nos avisa con un ridículo grito (como los de la banda sonora de presentación).&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_e0GwVJSRTtk/TBlG8FaUW_I/AAAAAAAADiI/LL_fzOfDYK0/s1600/djel1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="316" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/TBlG8FaUW_I/AAAAAAAADiI/LL_fzOfDYK0/s400/djel1.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size: x-small;"&gt;"Me has dejao el planeta muy cuco, pero ahora quiero un joyita antes de decirte lo que sé"&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;El juego está lleno de decisiones trampa. Así, una vez ordenado el mundo, en lugar de un mago aparecerán dos magos ¿cuál elegimos? Uno nos dará la información a cambio de una joya (que no debemos entregar) y el otro a cambio de un combate.&lt;br /&gt;&lt;br /&gt;Al regresar a nuestro estudio, en la sala del alambique aparece una horrenda mujer diciendo que es la hija de Azeulisse, presa de un encantamiento. ¿Debemos aceptarla? En verdad es una falsa hija, debemos rechazarla y luchar inexorablemente contra ella tras su rebote.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_e0GwVJSRTtk/TBlHDiYWWUI/AAAAAAAADiY/obIIWSWaYAw/s1600/djel4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="316" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/TBlHDiYWWUI/AAAAAAAADiY/obIIWSWaYAw/s400/djel4.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size: x-small;"&gt;"Noble Djel, soy la hija de Azeulisse, aunque no me puedas&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size: x-small;"&gt;reconocer porque me acabo de levantar y aún no me he maquillado"&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Y podríamos seguir. Vas pinchando por las pantallas con el ratón para que ocurran cosas porque sí, sin demasiada lógica, y de vez en cuando tienes que tomar una decisión: ¿confías en esta criatura? ¿por cuánto oro compras esto? ¿robas este objeto o esperas a que más adelante surja otra vía para conseguirlo? ¿aceptamos cambiarle a esa criatura la Daga de Demonio por el Atlas?&lt;br /&gt;Vete a saber. Igual la estás cagando...&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_e0GwVJSRTtk/TBlG9AYHFQI/AAAAAAAADiQ/22i-Og4M4OE/s1600/djel3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="316" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/TBlG9AYHFQI/AAAAAAAADiQ/22i-Og4M4OE/s400/djel3.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size: x-small;"&gt;"Estoy tan desesperado que te vendo una diadema de diamantes por diez pesetas, ¿aceptas?"&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;La caza de murciélagos es un auténtico ful de Estambul. Van saliendo de uno a uno y tienes que acertarles lanzando bolas de fuego. El problema es que los murciélagos se mueven por la pantalla a su aire, cambiando de trayectoria y velocidad sin previoaviso, y las bolas las lanzas desde abajo y van lentísimas, luego sólo hay que disparar en los escasos momentos en que la trayectoria de un murciélago parece predecible, y rezar para que no le dé por cambiarla.&lt;br /&gt;&lt;br /&gt;En cambio, los combates, si seleccionamos la lucha psíquica, no están del todo mal. Luchamos jugando a un juego de tablero de estrategia, donde en cada turno movemos nuestra ficha y a la vez coloreamos una casilla. El adversario hará lo mismo. Gana el primero que bloquee al contrincante, sepultándole entre casillas coloreadas. El único problemilla es que si no mueves rápidamente se te pasa el turno, y en la versión PC, a través de DOSBOX, que no admite ratón y has de mover el puntero con los cursores, es fácil que esto ocurra varias veces.&lt;br /&gt;&lt;br /&gt;En cuanto a jugabilidad esta aventura es una patata podrida, pero tiene el atractivo -al menos para mí- de ser rara de narices.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_e0GwVJSRTtk/TBlnSdZ2czI/AAAAAAAADig/STXT7QvEeSg/s1600/djel7.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="316" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/TBlnSdZ2czI/AAAAAAAADig/STXT7QvEeSg/s400/djel7.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;"&lt;span style="font-size: x-small;"&gt;Me has caído bien, y por hacer click aquí te voy a regalar un poco de oro"&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-13131690485524936?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/13131690485524936/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=13131690485524936&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/13131690485524936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/13131690485524936'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/06/legend-of-djel.html' title='Legend of Djel'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e0GwVJSRTtk/TBlG6EfpyLI/AAAAAAAADiA/rIgmFACj2gM/s72-c/djel2.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-3296529505029052834</id><published>2010-04-17T18:15:00.007+02:00</published><updated>2012-01-23T13:03:01.086+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='soliloquios'/><title type='text'>la interfaz conversacional</title><content type='html'>Descubrí las aventuras conversacionales a través de un compañero del colegio que me habló de un nuevo juego de "hablar con el ordenador", lo cual despertó mi curiosidad y quizá determinó el rasgo distintivo que para mí diferenciaría este género de otros: la interfaz conversacional.&lt;br /&gt;&lt;br /&gt;El prompt que esconde tras de sí una base de datos de léxico, más o menos amplio, tiene un potencial que no siempre se aprovecha. Por ejemplo, cuando una aventura sólo responde a acciones simples como: Norte, Sur, coger, dejar, empujar, hablar con...; y objetos básicos, el sistema conversacional está desperdiciado. No es más que una lista escueta de acciones o íconos escondida.&lt;br /&gt;&lt;br /&gt;El potencial de la interfaz conversacional está en permitirnos/obligarnos a expresarnos más específicamente en nuestro idioma, yendo más allá de un lenguaje pobre y multifuncional.&lt;br /&gt;Bien es cierto que para comunicarse de forma básica hace falta muy poco vocabulario. La mayor parte de las conversaciones se resuelven con una pequeña parte del léxico total de un idioma, limando el contexto las imprecisiones de las palabras multisignificado que comunmente usamos. Y las usamos porque por el precio de tener en la punta de la lengua una palabra de esas, nos ahorramos tener cinco más concretas y normalmente más largas. A éstas últimas más bien recurrimos cuando nos expresamos por escrito, pues no contamos necesariamente con ese gran aliado que es contexto, que convierte una palabra imprecisa y genérica en inequívoca, y cuando tenemos que rellenar una hoja o un tiempo de exposición, o quedar como cultos y formados.&lt;br /&gt;&lt;br /&gt;Por ejemplo, la palabra "pillar" nos vale para expresar: coger, agarrar, atrapar, robar, comprar, sorprender, sostener, atropellar, reservar, tomar un vehículo o ruta, contraer una enfermedad o estado de ánimo, alcanzar, ligar, recibir algún golpe en una pelea...&lt;br /&gt;A grandes rasgos podríamos sacar una consecuencia común de todos los significados: hacerse con el dominio de un ente, situación o lugar... o un moratón.&lt;br /&gt;&lt;br /&gt;En las aventuras gráficas tenemos interfaces basadas en un idioma simplificado, en diversos grados. Desde las aventuras con unas pocas acciones: coger, examinar, accionar y usar; a otras como las de Lucasfilms con una lista más amplia.&lt;br /&gt;Pero a fín de cuentas es una simplificación, una selección que se traduce en una comunicación pobre que se perdona aceptando las reglas del juego.&lt;br /&gt;&lt;br /&gt;Así, "reventar la puerta con el pico" se traduciría en este microlenguaje como "usar pico con puerta"; "engrasar las bisagras de la puerta"&amp;nbsp; como "usar aceite con puerta"; "pintar la puerta de rojo" como "usar bote de pintura roja con puerta"; y "pintar un círculo rojo con un puntito en medio en la puerta" como... "usar bote de pintura con puerta", curiosamente exactamente igual que "pintar una equis en la puerta".&lt;br /&gt;&lt;br /&gt;El sistema conversacional, además de la posibilidad de obligarnos a usar un lenguaje más rico, ofrece este potencial de especificidad y de ir más allá de forma inequívoca.&lt;br /&gt;&lt;br /&gt;Por supuesto, aquí existe un conflicto entre el ideal y la práctica.&lt;br /&gt;Volvemos al ejemplo de engrasar las bisagras de la puerta.&lt;br /&gt;Si admitimos "echar aceite en puerta" como acción sinónima de "engrasar las bisagras", abrimos la puerta (nunca mejor dicho) al microlenguaje genérico y pobre de la aventura gráfica. En cambio, si somos estrictos-puñeteros, nuestra aventura será muy poco interactiva, se convertirá en un "adivina la palabra exacta".&lt;br /&gt;&lt;br /&gt;Personalmente creo que lo mejor es admitirlo todo (excepto "usar"). Al menos en este ejemplo, no cabe duda de que el jugador que escribe "echar aceite en puerta" no tiene otro fin que engrasar las bisagras... ya sería raro que hubiera alguno que tuviera en mente barnizar la madera de la puerta con esa acción.&lt;br /&gt;En otros casos la aceptación sería más discutible.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_e0GwVJSRTtk/S8nepys_n7I/AAAAAAAADYc/vzniJ71z1Yg/s1600/astral_fake.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="235" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/S8nepys_n7I/AAAAAAAADYc/vzniJ71z1Yg/s400/astral_fake.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-3296529505029052834?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/3296529505029052834/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=3296529505029052834&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3296529505029052834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3296529505029052834'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/04/la-interfaz-conversacional.html' title='la interfaz conversacional'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/S8nepys_n7I/AAAAAAAADYc/vzniJ71z1Yg/s72-c/astral_fake.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-1649764240390435370</id><published>2010-04-15T19:02:00.008+02:00</published><updated>2012-01-23T13:03:01.087+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='cronicas'/><title type='text'>Aventuras online</title><content type='html'>Re-cayendo en la posibilidad de ofrecer las aventuras online, como hace &lt;a href="http://www.caad.es/incanus/afuera.html#online"&gt;Incanus en su página&lt;/a&gt; o &lt;a href="http://www.literactiva.es/"&gt;Literactiva&lt;/a&gt;, he colocado la única que tenía en Máquina Z: "&lt;a href="http://parchment.googlecode.com/svn/trunk/parchment.html?story=http://caad.es/jarel/games2/domador.z5"&gt;El caso del misterioso asesinato del domador de pulgas del circo de Montmartre&lt;/a&gt;", así como "&lt;a href="http://parchment.googlecode.com/svn/trunk/parchment.html?story=http://caad.es/jarel/games2/venenariusverborum.z5"&gt;Venenarius Verborum&lt;/a&gt;", que he tenido que convertir previamente eliminando toda la morralla de GLK. Y también resolver un pequeño quebradero de cabeza por exceso de anidaciones (branches), ya que por lo visto la Máquina Z tiene unas limitaciones a ese respecto inferiores a GLULX.&lt;br /&gt;&lt;br /&gt;En la citada página de Incanus se exponen dos formas de colocar una aventura online:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Mediante un applet java, &lt;a href="http://sourceforge.net/projects/zplet/"&gt;ZPlet&lt;/a&gt;, para lo que necesitas tener instalado un Java Runtime.&lt;/li&gt;&lt;li&gt;Mediante, &lt;a href="http://code.google.com/p/parchment/"&gt;Parchment&lt;/a&gt;, que ha sido la opción que he escogido, ya que mi intención era que el potencial jugador no tuviera que descargar ni instalar absolutamente nada, simplemente hacer click y empezar a jugar.&lt;/li&gt;&lt;/ul&gt;Usar Parchment es tan sencillo como añadir el siguiente enlace en tu web:&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;http://parchment.googlecode.com/svn/trunk/parchment.html?story=http://misitioweb.com/aventura.z5&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Más fácil imposible.&lt;br /&gt;Por ahora este intérprete online sólo admite aventuras compiladas para Máquina-Z, y ralentiza un poco.&lt;br /&gt;Desde luego que es mucho más cómodo descargarse la aventura al ordenador y jugar con un intérprete en condiciones como Winglulxe, Frotz, o Gargoyle.&lt;br /&gt;&lt;br /&gt;Pero pongámonos en la piel de un visitante extraño, o imaginemos que somos nosotros ese extraño. Llegamos a la página de un fulano que no conocemos de nada, y que nos dice que tenemos que descargar nosequé programa extraño para jugar a sus juegos.&lt;br /&gt;Tanto por pereza como por la sospecha de que nos intenten colar un troyano, es posible que valoremos que no merece la pena . A fín de cuentas, ¿quiénes son esos tipos? ¿qué garantías ofrecen?&lt;br /&gt;Incluso si ya sabemos de qué va la cosa y nos fiamos de esta gente, igual queremos probar antes el juego, a ver si nos atrae la temática.&lt;br /&gt;&lt;br /&gt;Otra opción online es programar una aventura directamente en &lt;a href="http://kenshira.com/"&gt;Kenshira&lt;/a&gt;, que al estar orientado a la publicación web ofrece una excelente puesta en escena.&lt;br /&gt;&lt;br /&gt;El tema se ha comentado en &lt;a href="http://foro.caad.es/viewtopic.php?f=8&amp;amp;t=3856&amp;amp;start=0"&gt;este posteo del foro&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Actualizaciones:&lt;br /&gt;Presi ha habilitado un redirector para Parchment dentro de CAAD, que se actualizaría en el caso de que la url de Parchment cambiase.&lt;br /&gt;De modo que podemos poner el siguiente enlace para meter una aventura de Máquina-Z online en nuestro sitio web:&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;http://www.caad.es/jugar?aventura=&lt;i&gt;http://sitioweb.com/aventura.z5&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Uto acaba de crear un &lt;a href="http://foro.caad.es/viewtopic.php?f=10&amp;amp;t=3860&amp;amp;p=45649#p45649"&gt;lanzador GLULXE para ZAG&lt;/a&gt;.&lt;br /&gt;El lanzador, a diferencia del intérprete web, lo que hace es automatizar el proceso de descarga y ejecución de la aventura y el intérprete &lt;a href="http://wso.williams.edu/%7Ejon/zag/"&gt;ZAG&lt;/a&gt; en una ventana JAVA dentro de nuestro ordenador, por lo que tendremos que tener instalado JAVA.&lt;br /&gt;Para meter una aventura GLULXE en nuestro sitio web auto-lanzable, colocaremos el siguiente enlace:&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;http://www.caad.es/superglus/online/jugarglulx.php?aventura=&lt;/b&gt;&lt;b&gt;&lt;i&gt;http://sitioweb.com/aventura.blb&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;O mejor lo cargaremos especificando además un fichero de configuración .cfg, que básicamente contendrá esto:&lt;br /&gt;WindowBorders=no&lt;br /&gt;Para que no aparezcan los poco estéticos bordes entre ventanas.&lt;br /&gt;Así:&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;http://www.caad.es/superglus/online/jugarglulx.php?aventura=http://sitioweb.com/aventura.blb&amp;amp;config=http://sitioweb.com/aventura.cfg&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El problema es que estamos hablando de ZAG. &lt;span style="font-size: large;"&gt;¡¡ZAG!!&lt;/span&gt; Sí, un intérprete Glulxe que no admite sonidos OGG y sólo AIFF y MOD de 4 canales, además de ofrecer una visualización horrorosa con parpadeos en algunos refrescos.&lt;br /&gt;Así era en el 2005, y así es, pues no ha habido nueva versión desde entonces.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-1649764240390435370?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/1649764240390435370/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=1649764240390435370&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1649764240390435370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1649764240390435370'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/04/aventuras-online.html' title='Aventuras online'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-6614508024709491277</id><published>2010-03-21T17:17:00.004+01:00</published><updated>2012-01-23T13:03:01.087+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><category scheme='http://www.blogger.com/atom/ns#' term='gente'/><title type='text'>El nuevo blog de Melitón</title><content type='html'>&lt;a href="http://golpealo.blogspot.com/"&gt;Golpéalo!, Hit it!&lt;/a&gt;. Así se llama el nuevo blog de Mel, que sin abandonar del todo su &lt;a href="http://mel-hython.blogspot.com/"&gt;Guarida&lt;/a&gt;, dedica este nuevo espacio a "golpear" y hablar sin pelos en la lengua. Haciendo crítica de aventuras y de tendencias.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_e0GwVJSRTtk/S6ZJG_rz7_I/AAAAAAAADSY/s1J9339FWYM/s1600-h/unregaloparame_lfull.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="311" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/S6ZJG_rz7_I/AAAAAAAADSY/s1J9339FWYM/s400/unregaloparame_lfull.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;Hace tiempo tuve un &lt;a href="http://foro.caad.es/viewtopic.php?f=16&amp;amp;t=1801&amp;amp;hilit=FIComp+Mel+Hython&amp;amp;start=225"&gt;capítulo con Mel en el foro del CAAD&lt;/a&gt; que fue algo así como que él hizo una crítica de una aventura mía achacándole ciertas carencias, a lo que yo le respondí que no es que la aventura careciera de aquello, sino que él no lo había visto. Recuerdo que se lo tomó como si hubiera herido mi susceptibilidad, demostrando una vez más, que no se podía hacer crítica libre dentro del CAAD, e hizo mutis por el foro creando una entrada en su blog para expresar su decepción. Yo me lo tomé como que la susceptibilidad herida fue la de Mel, que no aceptaba la contracrítica o las puntualizaciones.&lt;br /&gt;&lt;br /&gt;Pensando sobre eso, creo que metí un poco la pata. Es mejor callarse (aunque cueste) y dejar que la crítica fluya sin obstáculos, que buena falta hace. Es preferible crítica demasiado subjetiva (y quizá injusta desde el punto de vista del autor) que el "buenapintismo". &lt;i&gt;(Además, releyendo, mi respuesta fue bastante pendenciera)&lt;/i&gt;&lt;br /&gt;Es decir, ¿que alguien dice que le falta tal a la aventura? Perfecto, aunque uno crea que es incorrecto, esa persona no lo ha visto, y lo que está relatando es &lt;b&gt;su experiencia&lt;/b&gt; ante esa aventura. Y en su experiencia personal eso no apareció.&lt;br /&gt;&lt;br /&gt;Prefiero leer críticas de lengua larga (no necesariamente de mis aventuras, sino de las demás) que comentarios vagos y diplomáticos. Dicen mucho más, aunque sean poco científicas.&lt;br /&gt;Por ejemplo, la &lt;a href="http://www.blogger.com/goog_1269193544396"&gt;crítica negativa que ha escrito Mel sobre "A veces&lt;/a&gt;&lt;a href="http://www.blogger.com/goog_1269193544396"&gt;&lt;span id="goog_1269193544393"&gt;&lt;/span&gt;&lt;/a&gt;&lt;a href="http://golpealo.blogspot.com/2010/03/veces-se-hacen-resenas-habiendo-fumado.html"&gt;"&lt;/a&gt;, de Jenesis, da muchas más ganas de rejugarla que un comentario sospechosamente moderado.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-6614508024709491277?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/6614508024709491277/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=6614508024709491277&amp;isPopup=true' title='6 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6614508024709491277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6614508024709491277'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/03/el-nuevo-blog-de-meliton.html' title='El nuevo blog de Melitón'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/S6ZJG_rz7_I/AAAAAAAADSY/s1J9339FWYM/s72-c/unregaloparame_lfull.png' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-553893816864481651</id><published>2010-03-20T12:53:00.000+01:00</published><updated>2012-01-23T13:03:01.088+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><title type='text'>Trofeo Orcoscomp</title><content type='html'>Esta mañana &lt;a href="http://wiki.caad.es/Planseldon"&gt;Planseldon&lt;/a&gt; me ha hecho entrega de mi trofeo de la &lt;a href="http://wiki.caad.es/Orcoscomp"&gt;Orcoscomp&lt;/a&gt;, por &lt;a href="http://wiki.caad.es/El_cristal_rojo"&gt;El Cristal Rojo&lt;/a&gt;:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_e0GwVJSRTtk/S6S2gjpXn3I/AAAAAAAADSA/RhoS71Ehexc/s1600-h/orco1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="227" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/S6S2gjpXn3I/AAAAAAAADSA/RhoS71Ehexc/s400/orco1.jpg" width="400" /&gt;&lt;/a&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/S6S2jFjaJLI/AAAAAAAADSI/5IeDvJYMnVQ/s1600-h/orco2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/S6S2jFjaJLI/AAAAAAAADSI/5IeDvJYMnVQ/s400/orco2.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-553893816864481651?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/553893816864481651/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=553893816864481651&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/553893816864481651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/553893816864481651'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2010/03/trofeo-orcoscomp.html' title='Trofeo Orcoscomp'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e0GwVJSRTtk/S6S2gjpXn3I/AAAAAAAADSA/RhoS71Ehexc/s72-c/orco1.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-1354140013700371422</id><published>2009-12-26T14:23:00.010+01:00</published><updated>2012-01-23T13:03:01.089+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><category scheme='http://www.blogger.com/atom/ns#' term='sonido'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>Videos musicales con Pyhton</title><content type='html'>A falta de un editor de vídeo que permita mezclar animaciones sobre fondos y moverlas, me puse con pyhton-pygame a crear un vídeo musical.&lt;br /&gt;Es todo parecido a crear un juego, con la diferencia de que no hay control externo.&lt;br /&gt;&lt;br /&gt;Como ha de sincronizarse con una pista musical, tengo una serie de variables que me van diciendo en qué punto de la canción estoy, de acuerdo con la base musical en MIDI.&lt;br /&gt;&lt;br /&gt;Así hay una variable tiempo que va corriendo hacia adelante en décimas de segundo.&lt;br /&gt;Cada 16 tiempos sube un valor la variable tiempo_cuarto, que sería aproximadamente el tiempo transcurrido entre un bombo y una caja en ritmo simple,&lt;br /&gt;y cada dos tiempo_cuarto sube un valor la variable tiempo_measure.&lt;br /&gt;&lt;br /&gt;El "measure" es la unidad de medida de mi secuenciador, y podría asimilarse a hojas de partitura. Cuando termina un measure aparece otro con nuevas notas.&lt;br /&gt;Normalmente relleno los measures con 4 bombos y cajas a ritmo simple, aunque este es de los pocos casos en los que el measure contiene la mitad de información (y lógicamente tocado al doble de velocidad): bombo-caja-bombo-caja, fín del measure.&lt;br /&gt;&lt;br /&gt;Con estas variables, empiezo a lanzar las animaciones:&lt;br /&gt;En la segunda mitad del octavo measure empieza a cantar, entonces:&lt;br /&gt;if tiempo_measure==8 and tiempo_cuarta==2:&lt;br /&gt;&amp;nbsp; Player.accion_cabeza=1&lt;br /&gt;&amp;nbsp; Player.accion=2&lt;br /&gt;&amp;nbsp; Player.escala=2&lt;br /&gt;&amp;nbsp; Player.x=200&lt;br /&gt;&amp;nbsp; Player.vx=4&lt;br /&gt;&lt;br /&gt;La cabeza está separada del cuerpo, y tiene cuatro tipos de acciones:&lt;br /&gt;0. callao&lt;br /&gt;1. mueve la boca abriéndola bastante, prononciando aes, o como gritando.&lt;br /&gt;2. mueve la boca con proliferación de dientes apretados, como pronunciando eses.&lt;br /&gt;3. mueve la boca con proliferación de "morritos", oes o plosivas.&lt;br /&gt;&lt;br /&gt;El cuerpo tiene 8 tipos de animaciones, depende del que seleccione se pone a bailar de una forma o de otra, o bate una espada, se pone a saltar... así sin parar hasta que le de otra orden con otro tipo de movimiento&lt;br /&gt;&lt;br /&gt;Vx es el desplazamiento horizontal en pixels que hará el personaje cada fracción de tiempo, hasta que le mande otro valor o le pare, con Vx=0.&lt;br /&gt;&lt;br /&gt;La escala determina el factor de escala, valga la redundancia, por el que se multiplicará el tamaño del cuerpo y la cabeza, recalculando la posición. Para hacer primeros planos.&lt;br /&gt;&lt;br /&gt;En fín, que con la partitura MIDI de la canción, es como si le dieses un guión al protagonista de lo que tiene que hacer en cada momento... y hasta nueva orden.&lt;br /&gt;Ponte a saltar... ahora mueve la boca... ahora cállate, ahora por el fondo de la cueva. Ahora colócate a la derecha y avanza hacia la izquierda levantando las piernas, ahora acércate, ahora aléjate y pon el fondo del bosque...&lt;br /&gt;&lt;br /&gt;Con la canción sonando al lado hay que ajustar el metrónomo de Pygame para que vaya acompasado.. y aquí está el único problema.&lt;br /&gt;El tiempo de python no es exacto, cada vez que cargas el programa su velocidad de ejecución varía ligeramente, sin importancia para un juego, pero un desastre cuando todo tiene que ir sincronizado. Si antes te iba más o menos bien ese metrónomo, ahora descubres que el video adelanta a la música...o que se queda atrás.&lt;br /&gt;Por lo que al final habrá que reajustar el tiempo de todo el vídeo, con algún programa que te permita algo del tipo "convertir la duración de 2 minutos a 1:58:32"&lt;br /&gt;&lt;br /&gt;Si el vídeo corriera al tiempo con la música, se podría meter un control de la boca mediante teclado, de forma que mientras canta le vas indicando al muñeco por golpes de teclado cómo ha de abrir la boca, clavándolo con la letra. Y grabando el vídeo en vivo... sería como un directo XD&lt;br /&gt;&lt;br /&gt;La canción del vídeo es &lt;a href="http://www.box.net/shared/bjn3kxsvax"&gt;ésta&lt;/a&gt;, una parodia de David el gnomo, David el orco, con un orco como protagonista. Aunque para el vídeo sonará en versión revolucionada, a más velocidad y con el pitch agudo cuatro tonos subido, que queda más hilarante, sin llegar a sonar a "pitufos maquineros".&lt;br /&gt;&lt;br /&gt;Aún no la he terminado porque me falta meterle a los orcos coristas.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SzYOPicnJeI/AAAAAAAADCU/SlS27PPKONQ/s1600-h/pyorco3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SzYOPicnJeI/AAAAAAAADCU/SlS27PPKONQ/s320/pyorco3.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&amp;nbsp;&lt;a href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SzYON4w0dAI/AAAAAAAADCE/BWfK1G0ZWBs/s1600-h/pyorco1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SzYON4w0dAI/AAAAAAAADCE/BWfK1G0ZWBs/s320/pyorco1.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&amp;nbsp;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SzYOOg7q1XI/AAAAAAAADCM/yCcKkhUTl3A/s1600-h/pyorco2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SzYOOg7q1XI/AAAAAAAADCM/yCcKkhUTl3A/s320/pyorco2.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Rectificación: Hoy lo he probado varias veces y va clavado con la música, de modo que no necesitaré ningún programa externo para mezclarlo. Igual tiene que ver con la librería time que le metí a última hora para dejar un lapso antes de que empezara el vídeo.&lt;br /&gt;&lt;br /&gt;Aquí está:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/wLQcILqfTAI&amp;hl=es_ES&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/wLQcILqfTAI&amp;hl=es_ES&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-1354140013700371422?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/1354140013700371422/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=1354140013700371422&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1354140013700371422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1354140013700371422'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/12/falta-de-un-editor-de-video-que-permita.html' title='Videos musicales con Pyhton'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/SzYOPicnJeI/AAAAAAAADCU/SlS27PPKONQ/s72-c/pyorco3.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-5464338677327228463</id><published>2009-12-03T16:26:00.003+01:00</published><updated>2012-01-23T13:03:01.089+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>Elige tu propia orcoaventura</title><content type='html'>Quizá haga algo para la orcoscomp. Estoy planeando un mix entre aventura conversacional y librojuego con combates. Gracias a Eliuk ya tengo el código funcional para lo que es el motor, formado con extractos de la librería Fhablao.h, un parche de Datoki y sustituyendo los "Quips" por flags, usando la librería NewFlags.h&lt;br /&gt;&lt;br /&gt;Ahora se me plantea la dificultad de crear las escenas librojuego. El concepto de puzzles es completamente diferente aquí que en modo conversacional. De hecho es complicado implementar algo parecido a un puzzle con un sistema de opciones, casi estás dando la solución.&lt;br /&gt;Por tanto, por un lado los textos, el relato, cobran más importancia. Por otro, cuando el jugador debe decidir, las opciones deben de tener algún sentido e interés, el cual estará fuertemente ligado al interés que despierte el propio relato.&lt;br /&gt;&lt;br /&gt;Lo cual no ocurre en la conversacional, donde tenemos multitud de opciones invisibles, y de entre ellas muy pocas que sean realmente prácticas.&lt;br /&gt;&lt;br /&gt;Al principio pensé en esto con la idea de que sería más rápido y sencillo hacer un librojuego que una aventura conversacional corta, pero me estoy temiendo que no va a ser así, aun con el motor listo.&lt;br /&gt;Podría "fusilar" algún libro de Lobo Solitario... XD&lt;br /&gt;A parte de tener que pensar todas las subtramas, esto va a ser como volver a programar por tablas, haciéndote un mapita en árbol de localidades y comunicaciones entre ellas (opciones).&lt;br /&gt;Claro, que todo se puede simplificar:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SxfYds4mhnI/AAAAAAAADA4/gNAOwwIPhzE/s1600-h/esquemaEgTuAv.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SxfYds4mhnI/AAAAAAAADA4/gNAOwwIPhzE/s320/esquemaEgTuAv.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;En cuanto al sistema de combate, se basará en turnos alternativos de atacar-defenderse, entrando en juego la Destreza en el Combate, la Energía, la ruleta, bonificaciones o penalizaciones en función del tipo de ataque, y penalizaciones por luchar contra más de un enemigo.&lt;br /&gt;&lt;br /&gt;La energía mide tanto la vida como el cansancio, cuanto más fuerte estés mejor peleas.&lt;br /&gt;Cuando la energía llega a cero mueres, incapaz de defenderte más.&lt;br /&gt;. &lt;br /&gt;Atacar a más de un enemigo supone que tienes que dividir tus puntos de destreza a la hora de defenderte entre el número de amenazas.&lt;br /&gt;&lt;br /&gt;Las tiradas de la ruleta son de 0 a 9, siendo 1 pifia (fallo seguro) y 0 (10) acierto seguro. Además, sacar un 0 atacando a un enemigo que anteriormente obtuvo pifia supone un crítico: daño x 3.&lt;br /&gt;&lt;br /&gt;Las tácticas de combate son 4:&lt;br /&gt;1. defensiva.&lt;br /&gt;2. equilibrada.&lt;br /&gt;3. ofensiva.&lt;br /&gt;4. sucida (berserker).&lt;br /&gt;La defensiva es la única que no consume energía, se basa esquivar y buscar buenas posiciones para atacar sólo ante oportunidades claras. Como compensación, en el turno siguiente tendremos una bonificación de defensa.&lt;br /&gt;La sucida es la que más aumenta la probabilidad de acierto en el enemigo, a costa de que en el turno siguiente, cuando seamos atacados, sufriremos una penalización en nuestra defensa, y además consume más energía.&lt;br /&gt;El resto de las opciones tienes sus bonificaciones y penalizaciones igualmente. &lt;br /&gt;&lt;br /&gt;Lor rivales mayormente serán orcos, lo que se traduce en una destreza en el combate inferior a la del protagonista, pero una fuerza mayor. Es decir: tienen menos probabilidad de acertar, pero cuando aciertan, su daño base será mayor. En la característica de Fuerza están incluídas tanto la potencia del atacante como la del arma con la que golpea.&lt;br /&gt;&lt;br /&gt;Todas las reglas son ambivalentes, se aplican por igual al protagonista y a los enemigos, que también decidirán individualmente la táctica de combate que más les conviene en cada turno.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SyE8WefCl4I/AAAAAAAADBQ/0c6u4Ho-M7I/s1600-h/baradornwa.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SyE8WefCl4I/AAAAAAAADBQ/0c6u4Ho-M7I/s400/baradornwa.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-5464338677327228463?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/5464338677327228463/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=5464338677327228463&amp;isPopup=true' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5464338677327228463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5464338677327228463'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/12/elige-tu-propia-orcoaventura.html' title='Elige tu propia orcoaventura'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/SxfYds4mhnI/AAAAAAAADA4/gNAOwwIPhzE/s72-c/esquemaEgTuAv.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-6812148013952807885</id><published>2009-11-30T22:18:00.010+01:00</published><updated>2012-01-23T13:03:01.090+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>Orcoscomp</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SxQ2AMsK2qI/AAAAAAAADAY/8yFFKT_Qe64/s1600/orcoscomp.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SxQ2AMsK2qI/AAAAAAAADAY/8yFFKT_Qe64/s400/orcoscomp.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SxQ4eOdbRzI/AAAAAAAADAo/9iHrWk0gwwU/s1600/orcoscomp-2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SxQ4eOdbRzI/AAAAAAAADAo/9iHrWk0gwwU/s400/orcoscomp-2.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_e0GwVJSRTtk/Sxf3ei7yQZI/AAAAAAAADBA/DkW2z2id9Hk/s1600-h/la-figuritas.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/Sxf3ei7yQZI/AAAAAAAADBA/DkW2z2id9Hk/s400/la-figuritas.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SyWO1YLmZ8I/AAAAAAAADB4/hqZF9YeMuws/s1600-h/figuritas-menguantes.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SyWO1YLmZ8I/AAAAAAAADB4/hqZF9YeMuws/s320/figuritas-menguantes.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;a href="http://wiki.caad.es/OrcosComp"&gt;OrcosComp&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Fecha límite de recepción de obras 31 de Diciembre de 2009.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-6812148013952807885?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/6812148013952807885/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=6812148013952807885&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6812148013952807885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6812148013952807885'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/11/orcoscomp.html' title='Orcoscomp'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e0GwVJSRTtk/SxQ2AMsK2qI/AAAAAAAADAY/8yFFKT_Qe64/s72-c/orcoscomp.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-8558608080546422909</id><published>2009-06-24T22:23:00.001+02:00</published><updated>2012-01-23T13:03:01.090+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>20 aniversario del CAAD</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SkKStVVxjeI/AAAAAAAACks/BI3Vmrvhauw/s1600-h/20aniversarioCAAD.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 390px; height: 400px;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SkKStVVxjeI/AAAAAAAACks/BI3Vmrvhauw/s400/20aniversarioCAAD.png" alt="" id="BLOGGER_PHOTO_ID_5351000614789811682" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SkKLbc9n_nI/AAAAAAAACkk/y0n3gIENP1k/s1600-h/20aniversario.png"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.caad.es/foro/viewtopic.php?t=3147"&gt;Fín de Semana 3-5 de Julio&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-8558608080546422909?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/8558608080546422909/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=8558608080546422909&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8558608080546422909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8558608080546422909'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/06/20-aniversario-del-caad.html' title='20 aniversario del CAAD'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/SkKStVVxjeI/AAAAAAAACks/BI3Vmrvhauw/s72-c/20aniversarioCAAD.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-2245342339774565157</id><published>2009-05-21T23:56:00.006+02:00</published><updated>2012-01-23T13:03:01.091+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><title type='text'>La Venganza de Yan, release 0</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/ShXUPL4LfYI/AAAAAAAACfI/chwE6K2HFFI/s1600-h/yan_portada_peq.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 400px;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/ShXUPL4LfYI/AAAAAAAACfI/chwE6K2HFFI/s400/yan_portada_peq.jpg" alt="" id="BLOGGER_PHOTO_ID_5338406290669141378" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Acabo de subir al CAAD &lt;a href="http://www.caad.es/modulos.php?modulo=descarga&amp;amp;id=1634"&gt;La Venganza de Yan&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Yan, ausente durante años labrándose un futuro en el ejército, regresa unos días a su isla natal.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Y en ella descubre que de la aldea sólo quedan ruinas y brasas aún calientes y humeantes.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;¿Quién ha podido hacer esto?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;¡Quien haya sido lo pagará!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ocupa unos 10 megas, de los cuales la mitad son gráficos, luego sonido, y por último el código en sí, que son 500 Kb.&lt;br /&gt;&lt;br /&gt;Para más información podéis leer el &lt;a href="http://spac.caad.es/spip.php?article197"&gt;comentario de Urbatain en SPAC&lt;/a&gt;, tras testear la aventura, o entradas anteriores de este mismo blog para detalles técnicos.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-2245342339774565157?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/2245342339774565157/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=2245342339774565157&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/2245342339774565157'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/2245342339774565157'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/05/la-venganza-de-yan-release-0.html' title='La Venganza de Yan, release 0'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/ShXUPL4LfYI/AAAAAAAACfI/chwE6K2HFFI/s72-c/yan_portada_peq.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-7218300645873536599</id><published>2009-05-20T18:11:00.005+02:00</published><updated>2012-01-23T13:03:01.092+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='sonido'/><title type='text'>me paso a Damusix</title><content type='html'>El sistema de sonido que venía usando hasta ahora, basado en Efectos.h, tenía un fallito relacionado con el volumen de los canales de sonido, que a veces sonaban más bajo como si arrastrasen una configuarción anterior sin actualizarse correctamente.&lt;br /&gt;Pero ayer Urba me reportó un nuevo bug gordísimo: al guardar una posición con el sonido desactivado, y volver a cargarla, el sonido reaparecía y no había forma ya de quitarlo.&lt;br /&gt;&lt;br /&gt;Como en el tema de la restauración GLK mis conocimientos se reducen al COPYPASTE y se me estaba inchando la cabeza, opté por la mejor solución. Damusix funciona bien... pues me paso a &lt;a href="http://www.caad.es/eliukblau/damusix.html"&gt;DAMUSIX&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;El manual parece un tocho, pero está escrito con letras grandes y tampoco es para tanto. Es una librería bastante sencilla de usar, con funciones minimalistas -como las llama el autor- que me han venido de miedo para realizar la sustitución a nivel de funciones de sonido sin tener que reescribir un código que ya estaba hecho. A parte que me servirá para parchear otras aventuras antiguas.&lt;br /&gt;Por ejemplo, la instrucción musica (sonido, volumen); la mantengo en el código, pero el contenido de la función en lugar de llamar a instrucciones de Efectos.h, ahora llama a instrucciones de DAMUSIX.&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;[musica que_sonido quevolumen;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Damusix.AsignarCanal(que_sonido,0,quevolumen,-1);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Damusix.Tocar(que_sonido);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;cancionquesuena=que_sonido;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;bajandovolumen=0;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;cancionquesonara=0;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;rtrue;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;];&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;Y así con todas. Algunas variables son ya innecesarias, pero las mantengo porque se usan en los códigos, y se trata de que estos tengan que modificarse lo mínimo.&lt;br /&gt;&lt;br /&gt;Es una librería muy fácil de utilizar. No hay que quebrarse la cabeza ni planificar nada. Sólo mandarle instrucciones al kernel de la librería, y éste ya se ocupa de lanzar un sonido, apagar otro anterior que ocupara el mismo canal; o de cosas más peliagudas como las restauraciones y los UNDO.&lt;br /&gt;&lt;br /&gt;El único tropezón lo he tenido por las interferencias de los HandleGlkEvent e IdentifyGlkObject de la librería DAMUSIX con los míos propios. Culpa mía por lanzarme a compilar sin terminar de leer el manual, donde se explicaba la resolución de estos puntos.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-7218300645873536599?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/7218300645873536599/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=7218300645873536599&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/7218300645873536599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/7218300645873536599'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/05/me-paso-damusix.html' title='me paso a Damusix'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-3186698907565104852</id><published>2009-05-02T02:02:00.003+02:00</published><updated>2012-01-23T13:03:01.092+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='parsing'/><title type='text'>interferencias de la librería Inform</title><content type='html'>Pues resulta que el código para analizar las cadenas de texto introducidas en el prompt (en el BeforeParsing) falla con "dame", no lo detecta, y sólo me queda pensar que la librería transforma los "dame" en otra cosa distinta antes si quiera de que el programador pueda intervenir.&lt;br /&gt;&lt;br /&gt;En efecto, he probado a detectar "da" (es decir "d"+"a"+longitud de la cadena=2), y cuando escribo "dame", me lo da por bueno. Comprobado entonces que cada vez que escribes "dame", se descompone en "da" + personaje_jugador.&lt;br /&gt;&lt;br /&gt;Un pelín fastidio, ya que te imposibilita la intervención desde el código cuando, como en este caso, pretendes hacer un parseado alternativo.&lt;br /&gt;&lt;br /&gt;Ahora me toca revisar todas las formas reflexivas y eliminarlas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-3186698907565104852?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/3186698907565104852/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=3186698907565104852&amp;isPopup=true' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3186698907565104852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3186698907565104852'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/05/interferencias-de-la-libreria-inform.html' title='interferencias de la librería Inform'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-3927142949331925354</id><published>2009-04-29T09:47:00.005+02:00</published><updated>2012-01-23T13:03:01.093+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><title type='text'>Gráficos con Inkscape</title><content type='html'>Llevo cosa de un mes usando Inkscape, a la par que Urbatain (lo cual habrán notado por su serie de pruebas de concepto de El Anillo).&lt;br /&gt;&lt;br /&gt;Haciendo los gráficos para "La venganza de Yan", empecé con un estilo sencillo para poder ir rápido. El caso es que cuando vas cogiendo destreza, puedes hacerlo menos sencillo sin perder velocidad.&lt;br /&gt;He usado mucho del reciclaje de siluetas para abarcar las diferentes localidades de una misma zona.&lt;br /&gt;Por ejemplo, para dibujar un bosque pinto unos pocos modelos de follaje, ramas y troncos, y lo que sigue es un copy-paste a lo bestia. Una vez compuesta la escena, se copia y se reordena todo para hacer otra localidad.&lt;br /&gt;&lt;br /&gt;Y no todo es Inkscape. Aunque es ideal para dibujar las siluetas y calcar de imágenes... para los retoques finales o para dibujar las sombras de los personajes es preferible usar un programa de retoque fotográfico, a base de máscaras.&lt;br /&gt;Así lo estoy haciendo finalmente, tras una fase incial de intentar obtener el acabado definitivo con el propio Inkscape.&lt;br /&gt;&lt;br /&gt;El nivel de calidad ha ido in-cresccendo, y eso se nota comparando los primeros dibujos con los últimos. Las primeras localidades voy a tener que redibujarlas porque se han quedado muy atrás.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SfgIeLXquqI/AAAAAAAACcM/sna6Id36Yt0/s1600-h/vdyan_sc1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 175px;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SfgIeLXquqI/AAAAAAAACcM/sna6Id36Yt0/s320/vdyan_sc1.jpg" alt="" id="BLOGGER_PHOTO_ID_5330019473534139042" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SfgId6RsxiI/AAAAAAAACcE/MKAtsAl9e3Y/s1600-h/vdyan_sc2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 87px;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SfgId6RsxiI/AAAAAAAACcE/MKAtsAl9e3Y/s320/vdyan_sc2.jpg" alt="" id="BLOGGER_PHOTO_ID_5330019468945704482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SfgId2PuO5I/AAAAAAAACb8/3nSVlmrIZAs/s1600-h/vdyan_sc3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 170px;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SfgId2PuO5I/AAAAAAAACb8/3nSVlmrIZAs/s320/vdyan_sc3.jpg" alt="" id="BLOGGER_PHOTO_ID_5330019467863669650" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SfgId9_fhRI/AAAAAAAACb0/PWrb_hJB6hI/s1600-h/vdyan_sc4.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SfgId9_fhRI/AAAAAAAACb0/PWrb_hJB6hI/s320/vdyan_sc4.jpg" alt="" id="BLOGGER_PHOTO_ID_5330019469943080210" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: right;"&gt;El tamaño de los gráficos es de 720 x 195 px&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-3927142949331925354?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/3927142949331925354/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=3927142949331925354&amp;isPopup=true' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3927142949331925354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3927142949331925354'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/04/graficos-con-inkscape.html' title='Gráficos con Inkscape'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e0GwVJSRTtk/SfgIeLXquqI/AAAAAAAACcM/sna6Id36Yt0/s72-c/vdyan_sc1.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-5694154982824577951</id><published>2009-04-06T22:01:00.007+02:00</published><updated>2012-01-23T13:03:01.094+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='parsing'/><category scheme='http://www.blogger.com/atom/ns#' term='PSI'/><title type='text'>La Venganza de Yan</title><content type='html'>Estos días estoy programando una historia que se me ocurrió el jueves. La programación va a buen ritmo, sólo que me falta por planear las secuencias finales (que no el final). Realmente ha ido saliendo todo improvisado a partir de la idea general.&lt;br /&gt;La ambientación está inspirada en un antiguo largometraje animado chino llamado "&lt;a href="http://www.youtube.com/watch?v=-7Kb3QwI5tE"&gt;Taro el niño Dragón (Tatsunoko Taro)&lt;/a&gt;"... aunque de la inspiración a la expiración hay un trecho ;D&lt;br /&gt;&lt;br /&gt;Por fín voy a implementar para algo más que para juegos de palabras lo que aprendí del código de "Ad Verbum": para conversaciones con PSIS y como apoyo a otros objetos del juego, para poder especificar detalles sin necesidad de crear nuevos objetos ligados.&lt;br /&gt;&lt;br /&gt;Se trata de un parseado en paralelo, que no suplanta sino que complementa, un parseado de reconocimiento de cadenas o de trozos de texto.&lt;br /&gt;Inform funciona igual que siempre, sólo que cuando quiero le consulto al otro parseado qué ha encontrado, y así puedo dar mejores respuestas a las cosas que me interesen.&lt;br /&gt;&lt;br /&gt;He dispuesto 5 variables que recolectan los valores coincidentes del parseado en paralelo, y son estas variables las que se consultan luego desde el código de los objetos y las funciones.&lt;br /&gt;&lt;br /&gt;Es un sistema a la vieja usanza. Te tienes que haces una tabla y apuntar qué número está representando a qué concepto (uso "concepto" para describir un grupo de palabras o cadenas que vienen a ser sinónimas en el contexto del juego). Y a la vez escoger bien cómo haces las listas, en qué orden pones las cadenas en el código y cuál de las 5 variables será la encargada de almacenar cada tipo de concepto. En principio una variable cazará conceptos referidos a pronombres, otra cazará partículas interrogativas, otra acciones, otra nombres y otra adjetivos, en principio, porque en la práctica se mezcla todo un poco para aprovechar donde no se necesita y no se prevee que haya conflicto.&lt;br /&gt;&lt;br /&gt;La detección de cadenas se realiza por barrido secuencial, no por el orden en que ha sido escrito, sino por el orden en el que cada cadena está escrita en el código. Cada variable adquiere el valor del último concepto coincidente de su lista personal. De modo que si dos cadenas vitales están en la misma lista, la variable sólo almacenará la que esté más abajo en el código.&lt;br /&gt;&lt;br /&gt;Así he empezado a programar y ya es tarde para cambiarlo, pero explicaré un sistema mejor:&lt;br /&gt;En lugar de unas pocas variables para muchos conceptos...&lt;br /&gt;Una variable para cada concepto, y claro, no usaremos variables sino Flags (banderas), que apenas usan memoria. Puedes crear 5000 flag y el parser ni pestañea.&lt;br /&gt;&lt;br /&gt;De esta forma, antes de cada input ponemos todos los Flags encargados de pescar conceptos en false, y procedemos a hacer el barrido.&lt;br /&gt;&lt;br /&gt;En nuestro código del PSI, tendremos cosas como éstas:&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;react_before[;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;hablar:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;print "Pepito dice:^";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;  if(FlagOn(100) &amp;amp;&amp;amp; FlagOn(156)) "Me llamo Jhames.";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;  if(FlagOn(101) &amp;amp;&amp;amp; FlagOn(157)) "El pescador se llama Josema.";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;  if(FlagOn(111) &amp;amp;&amp;amp; FlagOn(157)) "¡¿Cómo que quieres matar al pescador?!.";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;],&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Como decía, hay que tener la chuleta al lado, y veremos las cadenas que activan cada flag:&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Flag 100: llama*, nombre&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Flag 111: mata*, asesina*, liquid*&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Flag 156: tu, usted, te&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Flag 157: pesc*d*r&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(*) Como esto va por fragmentos, los asteriscos los he puesto a modo representativo para que se vean las partes que se pueden omitir sin  problemas. Para palabras largas, para preveer varias flexiones... simplemente detectas las letras de la palabra que son fijas y que son imprescindibles para distinguirla de otra similar.&lt;br /&gt;También se puede fijar la longitud.&lt;br /&gt;Podemos detectar de un plumazo "amigo" y "amiga", programando la detección de "a"+"m"+"i"+"g+"+longitud=5.&lt;br /&gt;Aunque para este ejemplo, lo dejaríamos en "a"+"m"+"i"+"g". Ya que la secuencia "amig" no presenta demasiado riesgo de confundirsem (o estar fundida dentro) con otra palabra. Sin determinar la longitud, el Flag saltaría a la que el jugador escribiera "amigo", "amiga", "amigos", "amigas", "amigable", "amigablemente"... etc&lt;br /&gt;&lt;br /&gt;Y así funciona. Que el parser detecte que quieres que "Fulano te acompañe hasta el rio cantando una canción, con las manos en la cabeza y dando saltitos" es posible técnicamente, aunque aviso que no pienso implementar chorradas de ese estilo XD.&lt;br /&gt;&lt;br /&gt;La máxima utilidad es distinguir intenciones y preguntas respecto a sujetos.&lt;br /&gt;Puedes decir "Fulano"... ¿Fulano qué?&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;Dónde vive Fulano.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;Quién es Fulano el de la derecha.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;Quién es Fulano el de la izquierda.&lt;/span&gt;&lt;br /&gt;...&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;La espada de Fulano.&lt;/span&gt;.. ¿qué pasa con la espada de fulano?&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;Dame la espada de Fulano&lt;br /&gt;Encuentra la espada de Fulano&lt;br /&gt;Fulano no tiene espada&lt;br /&gt;...&lt;br /&gt;Quiero matar a Fulano.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;Hoygan nesesito un krak para Fulano es urjente.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Fuera de las conversaciones, esto sigue siendo muy útil. Por ejemplo, para un combate:&lt;br /&gt;Tenemos un objeto "troll" y queremos poder elegir a dónde le atizamos con la espada.&lt;br /&gt;Normalmente habría que crear un objeto "mano", un objeto "brazo", un objeto "pestaña"...&lt;br /&gt;&lt;br /&gt;Con este sistema simplemente creamos el objeto "troll", así:&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;object Troll "Troll" limbo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;with name 'troll' 'planseldon',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;adjectives  'mano' 'manos' 'brazo' 'brazos' 'pierna' 'piernas' 'derecha' 'izquierda' 'pestaña',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;before[;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Attack: print "Golpeas al troll en ";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;if(FlagOn (50))"una mano.";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;if(FlagOn (51))"un brazo.";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;if(FlagOn (52))"una pierna";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;!etc&lt;br /&gt;"una parte al azar de su cuerpo.";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;],&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;has animate scenery talkable;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Nuevamente tendríamos que mirar la lista para ver qué activa cada flag. Pero en este caso, del propio código se deduce:&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Flag 50: mano*, dedo*&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Flag 51: brazo*, codo*&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Flag 52: pie/, pies/, pierna*&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;!etc&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Resúmen de lo que hemos hecho:&lt;br /&gt;&lt;ol&gt;&lt;li&gt; Un único objeto&lt;/li&gt;&lt;li&gt; Introducimos los nombres de todos los blancos o subelementos en la propiedad 'adjectives' para que el parser trague con ellos (recordemos cómo funciona Inform, el parseado en paralelo "detectacascajos" actúa de apoyo, pero no sustituye) (*** ver NOTA1 al final)&lt;/li&gt;&lt;li&gt;En el código del objeto consultamos las pesquisas que ha realizado el parseado en paralelo de detección de cadenas, a ver si "ha pescado algo". De ser así, podemos programar fácimente una respuesta personalizada, y si no, dejamos que salte la respuesta estandar.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;*** NOTA1:&lt;br /&gt;El código del Troll arriba expuesto sólo es viable-razonable en un modo de parseado tal que la propiedad adjectives no tenga la misma jerarquía que la propiedad 'name' sino que sea dependiente. ('adjectives' sólo se consulta si antes ha habido coincidencia en la propiedad 'name')&lt;br /&gt;En caso contrario, el código expuesto es inviable, pues estaría abierto a disparates tales como escribir "ex pestaña" y recibir la descripción del troll".&lt;br /&gt;&lt;br /&gt;***NOTA2:&lt;br /&gt;El código para realizar este parseado "bruto" tipo PAWS en paralelo está expuesto &lt;a href="http://informatetu.blogspot.com/2008/10/un-sistema-de-conversacin-decente.html"&gt;AQUÍ&lt;/a&gt;, aunque en la versión "poco óptima", usando unas pocas variables en lugar de millones y millones de Flags.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-5694154982824577951?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/5694154982824577951/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=5694154982824577951&amp;isPopup=true' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5694154982824577951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5694154982824577951'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/04/la-venganza-de-yan.html' title='La Venganza de Yan'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-9071536477955624982</id><published>2009-04-02T23:19:00.004+02:00</published><updated>2012-01-23T13:04:54.106+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='soliloquios'/><title type='text'>Nearco 3</title><content type='html'>&lt;a href="http://wiki.caad.es/Nearco_3"&gt;Nearco 3&lt;/a&gt; me ha gustado por su sentido del humor, consigue unos puntos muy buenos sobre todo con el uso de sonidos.&lt;br /&gt;El problema de esta aventura es la rigidez de su parseado. Peor que algo programado en BASIC por reconocimiento de cadenas, ya que aquí, además de reconocer unas pocas cadenas, tu comando se va al traste si introduces algo de más que el parser no entiende o intentas expresarte de otra forma. La lista de acciones es muy pobre.&lt;br /&gt;Si bien esto al principio no es gran impedimento para la jugabilidad. Tomas consciencia de las limitaciones y te atienes a ellas.&lt;br /&gt;El problema gordo vino casi al final del juego, con un puzzle para el que había con interaccionar con algo que ni si quiera aparecía mencionado en la descripción de la localidad.&lt;br /&gt;Eso por un lado. Por otro, el objetivo de ese puzzle era conseguir un material que estaba presente en otros puntos del juego.&lt;br /&gt;Entonces, por un lado te encuentras con que no puedes obtener ese material de las otras fuentes lógicas porque el autor no ha programado esa posibilidad. Y el lugar de donde lo tienes que obtener es invisible, tienes que suponer que existe eso en esa localidad o recordar un texto de transición de una escena que no vuelve a repetirse y donde se menciona que eso existe.&lt;br /&gt;&lt;br /&gt;Posteriormente, Jhames, el autor, defiende la interactividad de su aventura poniendo unos ejemplos que ya hacen caer rayos al nubarrón que tenía en la cabeza a raíz de lo citado anteriormente.&lt;br /&gt;&lt;br /&gt;La interactividad no es poder examinar una gaviota, ni tener prevista una respuesta por defecto para "cantar" o para intentar coger el sol.&lt;br /&gt;La interactividad implica que el jugador tiene información suficiente para interactuar y los objetos responden a los intentos de interactuación en base a sus posibilidades y cualidades.&lt;br /&gt;&lt;br /&gt;Una red no es interactiva aunque se pueda examinar, máxime cuando necesitas un trozo de cuerda y ni se ha contemplado la posibilidad de obtenerla de ese objeto. ¿Y eso por qué? Porque el autor ha previsto que la cuerda se obtiene de otro sitio, porque sí.&lt;br /&gt;También podrías necesitar un palo y, pese a estar rodeado de árboles, ramas y palos, la única solución posible sea darle un objeto a alguien para que éste te dé el palo. Perfectamente comprensible...&lt;br /&gt;&lt;br /&gt;Tampoco es muy interactivo al día de hoy que el parser no entienda formas alternativas (nada rebuscadas) de expresar una orden, o no entienda nada en absoluto si te da por añadir un adjetivo, un complemento genitivo de más, una palabra de más (de más para la estrechez del parser).&lt;br /&gt;&lt;br /&gt;Eso sí, reconozco que me he pasado un pelo...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SdUr_pI0JoI/AAAAAAAACaM/8daZ4aPFR6w/s1600-h/nearco-3-y-quest.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 182px;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SdUr_pI0JoI/AAAAAAAACaM/8daZ4aPFR6w/s400/nearco-3-y-quest.png" alt="" id="BLOGGER_PHOTO_ID_5320206907182687874" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-9071536477955624982?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/9071536477955624982/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=9071536477955624982&amp;isPopup=true' title='9 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/9071536477955624982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/9071536477955624982'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/04/nearco-3.html' title='Nearco 3'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/SdUr_pI0JoI/AAAAAAAACaM/8daZ4aPFR6w/s72-c/nearco-3-y-quest.png' height='72' width='72'/><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-5668155089410083496</id><published>2009-03-26T02:16:00.005+01:00</published><updated>2012-01-23T13:04:54.107+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>ranking de mejores aventuras en la wiki</title><content type='html'>Planseldon anuncia en el &lt;a href="http://www.caad.es/foro/viewtopic.php?t=2959&amp;amp;postdays=0&amp;amp;postorder=asc&amp;amp;start=0"&gt;foro del CAAD&lt;/a&gt; su intención de abrir un ranking de "las mejores aventuras de todos los tiempos"...&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/ScrYCfW9taI/AAAAAAAACYM/RKVGS3gGCxc/s1600-h/cambios-en-la-wiki.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 182px;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/ScrYCfW9taI/AAAAAAAACYM/RKVGS3gGCxc/s400/cambios-en-la-wiki.png" alt="" id="BLOGGER_PHOTO_ID_5317299847353447842" border="0" /&gt;&lt;/a&gt;... y aparece hasta Jhames para quejarse de que nadie juega sus aventuras.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SdGJPVz9y6I/AAAAAAAACZ0/Ylzot3kPplw/s1600-h/semana-del-optimismo.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 287px;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SdGJPVz9y6I/AAAAAAAACZ0/Ylzot3kPplw/s400/semana-del-optimismo.png" alt="" id="BLOGGER_PHOTO_ID_5319183531547413410" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SdDyIj3mn6I/AAAAAAAACZk/abfUQ_z8B4g/s1600-h/post-semana-del-optimismo.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 214px;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SdDyIj3mn6I/AAAAAAAACZk/abfUQ_z8B4g/s400/post-semana-del-optimismo.png" alt="" id="BLOGGER_PHOTO_ID_5319017388805889954" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-5668155089410083496?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/5668155089410083496/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=5668155089410083496&amp;isPopup=true' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5668155089410083496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5668155089410083496'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/03/ranking-de-mejores-aventuras-en-la-wiki.html' title='ranking de mejores aventuras en la wiki'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/ScrYCfW9taI/AAAAAAAACYM/RKVGS3gGCxc/s72-c/cambios-en-la-wiki.png' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-5692865560663142599</id><published>2009-03-23T23:09:00.004+01:00</published><updated>2012-01-23T13:04:54.107+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retro'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>adaptaciones conversacionales de otros géneros</title><content type='html'>En un foro del CAAD sobre la Retrocomp-09, salió el tema de la adaptación al formato conversacional de otro tipo de juegos, aventuras gráficas, videoaventuras...&lt;br /&gt;Cualquier juego podría adaptarse... pero no todos los juegos ofrecerían un resultado interesante. Unos pocos quizá podrían ganar con el cambio.&lt;br /&gt;&lt;br /&gt;Estaba pensando en "The Trap Door", un viejo juego de 8 bits que cuenta con dos partes, aunque me atendré a la primera.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/ScgNiNRzDRI/AAAAAAAACUQ/7z8n8Lx619M/s1600-h/trapdoor.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 265px;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/ScgNiNRzDRI/AAAAAAAACUQ/7z8n8Lx619M/s400/trapdoor.jpg" alt="" id="BLOGGER_PHOTO_ID_5316514241441893650" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;El juego está basado en una serie de &lt;a href="http://www.youtube.com/watch?v=D4gUuv8suXc"&gt;dibujos animados&lt;/a&gt; con muñecos de plastilina... horrible y cataléptica. El juego en cambio estaba bastante bien.&lt;br /&gt;El protagonista se llama Berk, un bicho azul, fofo y achuchable, que habita en un lóbrego sótano trabajando como sirviente de "La cosa de arriba". La Cosa se comunica a gritos con Berk, desde las dependencias de lo alto del castillo: "¡¡ Berk tráeme el desayuno!!" "¡¡Qué demonios esperas!!".&lt;br /&gt;Junto con Berk, viven en el sótano del castillo Boni la calavera sabionda -que da consejos- y Drutt, un arácnido saltarín -que da saltos y se zampa cuanto gusano pilla. También hay una trampilla "The Trap Door", que en teoría Berk no debe abrir, ya que a través de ella pueden escapar todo tipo de monstruos de las mazmorras más profundas.&lt;br /&gt;&lt;br /&gt;En cualquier caso, en el juego tendremos que abrirla pues algunos de esos seres de la oscuridad no ayudarán o servirán para preparar los menús que La Cosa de Arriba solicita a Berk.&lt;br /&gt;&lt;br /&gt;Berk puede moverse a dercha, izquierda, alante y atrás, subir y bajar escaleras, coger y soltar cosas, meter cosas en contenedores, volcar contenedores para desparramar su contenido, empujar objetos, y accionar palancas.&lt;br /&gt;&lt;br /&gt;La misión del juego es preparar a La Cosa de Arriba todos los deliciosos platos que nos encargue antes de que su paciencia se agote. Esto son: un bote de gusanos, zumo de ojos, unos huevos fritos, y una olla de babosas hervidas.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/lzhkAYNnuv8&amp;amp;hl=es&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/lzhkAYNnuv8&amp;amp;hl=es&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;El problema del juego es que era terriblemente lento de movimiento, con sus grandes sprites. En modo conversacional ganaría velocidad y ampliaría el rango de acciones posibles.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-5692865560663142599?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/5692865560663142599/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=5692865560663142599&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5692865560663142599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5692865560663142599'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/03/adaptaciones-conversacionales-de-otros.html' title='adaptaciones conversacionales de otros géneros'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/ScgNiNRzDRI/AAAAAAAACUQ/7z8n8Lx619M/s72-c/trapdoor.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-8790197229294285247</id><published>2009-02-16T21:26:00.007+01:00</published><updated>2012-01-23T13:04:54.108+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retro'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>portadas estilo años 80</title><content type='html'>En &lt;a href="http://www.caad.es/foro/viewtopic.php?p=33784&amp;amp;sid=32fb7f371db95e7b8bc14adb5b621f1b#33784"&gt;este post del foro del CAAD&lt;/a&gt; se habla de las portadas, y sale el tema de las pechugas como reclamo publicitario en numerosos juegos de los 80.&lt;br /&gt;Y me he permitido la licencia de hacer este pequeño fake para un juego actual de Jhames:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SZnMe2V7ogI/AAAAAAAACNo/ECiCJkv90HU/s1600-h/fake_nearco3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 296px; height: 400px;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SZnMe2V7ogI/AAAAAAAACNo/ECiCJkv90HU/s400/fake_nearco3.jpg" alt="" id="BLOGGER_PHOTO_ID_5303494866561114626" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;La portada original es del Barbarian.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SZnNmk_OwvI/AAAAAAAACNw/SR0L4EQX18Q/s1600-h/fake_nearco3_b.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-8790197229294285247?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/8790197229294285247/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=8790197229294285247&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8790197229294285247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8790197229294285247'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/02/portadas-estilo-anos-80.html' title='portadas estilo años 80'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/SZnMe2V7ogI/AAAAAAAACNo/ECiCJkv90HU/s72-c/fake_nearco3.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-1808589865790028275</id><published>2009-02-16T17:49:00.003+01:00</published><updated>2012-01-23T13:04:54.108+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>Falta de jugadores</title><content type='html'>Esta serie es la secuela de &lt;a href="http://erasmusreloaded.blogspot.com/2009/02/el-deficit-de-jugadores.html"&gt;este artículo de Planseldon&lt;/a&gt; sobre el déficit de jugadores:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SZmZTxqLmCI/AAAAAAAACNg/7TjS4Xql948/s1600-h/falta-de-jugadores-de-ac.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 265px;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SZmZTxqLmCI/AAAAAAAACNg/7TjS4Xql948/s400/falta-de-jugadores-de-ac.png" alt="" id="BLOGGER_PHOTO_ID_5303438601232291874" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SZmZTkfs5hI/AAAAAAAACNY/9Ehd93LB6Ts/s1600-h/falta-de-jugadores-de-ac-2.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 210px;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SZmZTkfs5hI/AAAAAAAACNY/9Ehd93LB6Ts/s400/falta-de-jugadores-de-ac-2.png" alt="" id="BLOGGER_PHOTO_ID_5303438597698676242" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SZmZTS9-IoI/AAAAAAAACNQ/w4VxR8FODSQ/s1600-h/falta-de-jugadores-de-ac-3.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 228px;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SZmZTS9-IoI/AAAAAAAACNQ/w4VxR8FODSQ/s400/falta-de-jugadores-de-ac-3.png" alt="" id="BLOGGER_PHOTO_ID_5303438592993796738" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SZmZTZQhMuI/AAAAAAAACNI/80PF01egwhM/s1600-h/falta-de-jugadores-de-ac-4.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 275px;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SZmZTZQhMuI/AAAAAAAACNI/80PF01egwhM/s400/falta-de-jugadores-de-ac-4.png" alt="" id="BLOGGER_PHOTO_ID_5303438594682204898" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-1808589865790028275?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/1808589865790028275/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=1808589865790028275&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1808589865790028275'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1808589865790028275'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/02/falta-de-jugadores.html' title='Falta de jugadores'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/SZmZTxqLmCI/AAAAAAAACNg/7TjS4Xql948/s72-c/falta-de-jugadores-de-ac.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-5625668416597480612</id><published>2009-01-18T02:31:00.005+01:00</published><updated>2012-01-23T13:04:54.109+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><title type='text'>Fuentes TTF</title><content type='html'>Me bajé el otro día el &lt;a href="http://www.high-logic.com/download.html"&gt;Font Creator de High-Logic&lt;/a&gt; y una maravilla. Teniendo en cuenta que nunca había usado un programa de estos para hacer fuentes, resultó ser bastante intuitivo y funcional.&lt;br /&gt;&lt;br /&gt;Tenemos un mapa general de caracteres, desde el que podemos copiar y editar, pasando a la ventana de diseño vectorial. Aquí dibujamos las fuentes usando el botón izquierdo para marcar puntos y el izquierdo para marcar puntos de tangencialidad (para trazos curvos). Podemos igualemnet copiar y pegar trozos de polígono.&lt;br /&gt;&lt;br /&gt;En resúmen, que tiene todas las herramientas para diseñar bien y rápido, y gratis, aunque el programa cuente con una versión "pro" con más funciones.&lt;br /&gt;&lt;br /&gt;La fuente se graba en formato TTF, se copia en la carpeta de Windows de fuentes, y ya la tenemos disponible para usarla.&lt;br /&gt;&lt;br /&gt;Adjunto unas capturas del proyecto "Nagalok", que no he tocado desde finales del verano, cuando volvía cambiarle los gráficos por enésima vez aprovechando las numerosas fotos de casas de entramado de madera "timber frame" que hice en las vacaciones. Le he aplicado un alfabeto inventado bastante inextricable, pero que ambienta mejor que el estándar. Ya que se desarrolla en otro mundo, pues otro alfabeto, otro lenguaje... queda más exótico y misterioso.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SXKHiY7mtoI/AAAAAAAACHk/7_ymhDt0lpc/s1600-h/nagalokuml1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 331px;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SXKHiY7mtoI/AAAAAAAACHk/7_ymhDt0lpc/s400/nagalokuml1.jpg" alt="" id="BLOGGER_PHOTO_ID_5292441536991508098" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SXKHirY0p4I/AAAAAAAACHs/4NOZzCMv3-k/s1600-h/nagalokuml2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 329px;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SXKHirY0p4I/AAAAAAAACHs/4NOZzCMv3-k/s400/nagalokuml2.jpg" alt="" id="BLOGGER_PHOTO_ID_5292441541945894786" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;El mismo alfabeto, en su versión de letras no ligadas:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SXNXq5Y8jZI/AAAAAAAACH0/phjHt2sDSrU/s1600-h/nagalokuml3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 330px;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SXNXq5Y8jZI/AAAAAAAACH0/phjHt2sDSrU/s400/nagalokuml3.jpg" alt="" id="BLOGGER_PHOTO_ID_5292670381562039698" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-5625668416597480612?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/5625668416597480612/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=5625668416597480612&amp;isPopup=true' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5625668416597480612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5625668416597480612'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2009/01/fuentes-ttf.html' title='Fuentes TTF'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e0GwVJSRTtk/SXKHiY7mtoI/AAAAAAAACHk/7_ymhDt0lpc/s72-c/nagalokuml1.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-3132483783129949306</id><published>2008-12-27T20:21:00.005+01:00</published><updated>2012-01-23T13:04:54.110+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='estadísticas'/><title type='text'>estadísticas</title><content type='html'>Contando el número de aventuras que he realizado cada año, me sale el siguiente gráfico:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SVaAa-4Y55I/AAAAAAAACDk/cRX6ziJg_dI/s1600-h/estadistica_av.jpg"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 214px; height: 196px;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SVaAa-4Y55I/AAAAAAAACDk/cRX6ziJg_dI/s400/estadistica_av.jpg" alt="" id="BLOGGER_PHOTO_ID_5284552413810321298" border="0" /&gt;&lt;/a&gt;De todas formas aquí han puntuado igual las aventuras grandes que las nanos. De modo que no es muy significativo respecto al trabajo.&lt;br /&gt;Si contáramos tiempo creo que se llevarían la palma 2000, 2002, 2007 y 2008.&lt;br /&gt;&lt;br /&gt;2005 quedaría casi tan inactivo como 2004 ya que "La Caja de Sarimek", aunque salió ese año digamos que ya estaba programada en su grueso desde 2002-2003, al igual que "222 contra el Cangrejo".&lt;br /&gt;De modo que le quitamos un punto a 2005 y otro a 2008. No obstante, 2008 se rellena por lo que está detenido, y el tiempo que "perdí" en el verano enfrascándome en Python (aunque no fuese destinado a aventuras conversacionales).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-3132483783129949306?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/3132483783129949306/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=3132483783129949306&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3132483783129949306'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3132483783129949306'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/12/estadsticas.html' title='estadísticas'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e0GwVJSRTtk/SVaAa-4Y55I/AAAAAAAACDk/cRX6ziJg_dI/s72-c/estadistica_av.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-4117218825322972647</id><published>2008-12-09T12:00:00.002+01:00</published><updated>2012-01-23T13:04:54.110+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='cronicas'/><title type='text'>Rapidocomp</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;font-family:verdana;" &gt;¡¡¡ &lt;a href="http://wiki.caad.es/Rapidocomp_2"&gt;LA RAPIDOCOMP 2008 HA COMENZRMINADO&lt;/a&gt; !!!&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-4117218825322972647?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/4117218825322972647/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=4117218825322972647&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/4117218825322972647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/4117218825322972647'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/12/rapidocomp.html' title='Rapidocomp'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-3380660660219436863</id><published>2008-11-27T00:56:00.004+01:00</published><updated>2012-01-23T13:04:54.111+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>Como hacer</title><content type='html'>Eximeno cuelga en el foro este interesante link (&lt;a href="http://www.paraquenoseolviden.com/" target="_blank"&gt;http://www.paraquenoseolviden.com&lt;/a&gt;) que recupera varios libros con los que muchos aprendimos a experimentar, crear e imaginar en nuestra niñez.&lt;br /&gt;Destancando la colección "Cómo Hacer", a la cual añado este nuevo número:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SS3ij9Q4tTI/AAAAAAAACA4/HbahssSecr4/s1600-h/fake_comohacer.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 311px; height: 400px;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SS3ij9Q4tTI/AAAAAAAACA4/HbahssSecr4/s400/fake_comohacer.jpg" alt="" id="BLOGGER_PHOTO_ID_5273119846089405746" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-3380660660219436863?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/3380660660219436863/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=3380660660219436863&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3380660660219436863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3380660660219436863'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/11/como-hacer.html' title='Como hacer'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/SS3ij9Q4tTI/AAAAAAAACA4/HbahssSecr4/s72-c/fake_comohacer.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-7564902518239179753</id><published>2008-11-18T23:13:00.008+01:00</published><updated>2012-01-23T13:04:54.111+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><category scheme='http://www.blogger.com/atom/ns#' term='cronicas'/><title type='text'>Otros Temas</title><content type='html'>Se armó la gorda en el foro del CAAD, no es la primera vez que pasa, y como prueba esta imagen de archivo:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SSM-PahAXOI/AAAAAAAAB-0/g00LAXIXuLA/s1600-h/vinetainform2_extracto.jpg"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 207px;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SSM-PahAXOI/AAAAAAAAB-0/g00LAXIXuLA/s400/vinetainform2_extracto.jpg" alt="" id="BLOGGER_PHOTO_ID_5270124423490329826" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Hay gente que quería la sección "Otros temas" en el foro, gente que no la quería, gente que ni se ha enterado de que se estaba barajando esa posibilidad, y gente a la que le da lo mismo porque el foro que les mola es el de "Gran Hermano".&lt;br /&gt;&lt;br /&gt;La sección se hizo finalmente, y &lt;span style="font-weight: bold;"&gt;una persona&lt;/span&gt; (vaya, esto no tiene iconito para subrayar) lo llenó de basura para demostrar su oposición. A partir de esta acción surje el debate y las bajas.&lt;br /&gt;&lt;br /&gt;Un administrador que se echa para atrás tras haber dado via libre a la nueva sección aunque no fuera partidario, otro que también se retira para evitar malos rollos inesquivables...&lt;br /&gt;Total, que sólo queda un admin del foro... y el dueño del dominio.&lt;br /&gt;&lt;br /&gt;Pero... ¿¡qué es esto!? ¡parece que ya tenemos nuevos candidados para administrar el foro! Veamos en qué se basan sus campañas:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SSM-PewL29I/AAAAAAAAB-8/qXHBDYDxIFU/s1600-h/se-buscan-administradores-para-el-foro-caad.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 183px;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SSM-PewL29I/AAAAAAAAB-8/qXHBDYDxIFU/s400/se-buscan-administradores-para-el-foro-caad.png" alt="" id="BLOGGER_PHOTO_ID_5270124424627739602" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SSM-Plfi7MI/AAAAAAAAB_E/rBbB-nXIwZI/s1600-h/mas-propuestas-para-el-foro.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 183px;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SSM-Plfi7MI/AAAAAAAAB_E/rBbB-nXIwZI/s400/mas-propuestas-para-el-foro.png" alt="" id="BLOGGER_PHOTO_ID_5270124426436996290" border="0" /&gt;&lt;/a&gt;Actualización:&lt;br /&gt;Ha empezado la votación para decidir la inclusión de la sección "otros temas".&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SSryRjTgZNI/AAAAAAAACAw/AB_54LfJYn4/s1600-h/especies-del-caad.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 188px;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SSryRjTgZNI/AAAAAAAACAw/AB_54LfJYn4/s400/especies-del-caad.png" alt="" id="BLOGGER_PHOTO_ID_5272292697139340498" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-7564902518239179753?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/7564902518239179753/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=7564902518239179753&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/7564902518239179753'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/7564902518239179753'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/11/otros-temas.html' title='Otros Temas'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/SSM-PahAXOI/AAAAAAAAB-0/g00LAXIXuLA/s72-c/vinetainform2_extracto.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-3053750918589523855</id><published>2008-11-06T17:25:00.003+01:00</published><updated>2012-01-23T13:04:54.112+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='previews'/><title type='text'>Preview Palabra Exacta</title><content type='html'>"Palabra Exacta" no será el título definitivo, pero lo es provisionalmente, para la aventura basada en Ad Verbum.&lt;br /&gt;Es una aventura breve en tono de humor, dentro de una torre encantada. Repleta de retos basados en juegos de palabras: "wordplay" que dicen los guiris.&lt;br /&gt;&lt;br /&gt;Una pequeña presentación:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/TM4xQ_5hI-8&amp;amp;hl=es&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/TM4xQ_5hI-8&amp;amp;hl=es&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;(La aventura será sólo texto, sin gráficos ni sonido ¡Oh!)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-3053750918589523855?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/3053750918589523855/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=3053750918589523855&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3053750918589523855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3053750918589523855'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/11/preview-palabra-exacta.html' title='Preview Palabra Exacta'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-796574481884729346</id><published>2008-10-30T00:32:00.007+01:00</published><updated>2012-01-23T13:04:54.113+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='parsing'/><category scheme='http://www.blogger.com/atom/ns#' term='PSI'/><title type='text'>Un sistema de conversación decente</title><content type='html'>De rebote, gracias al código de Ad Verbum, al fín he encontrado -casi, pero me vale- lo que estaba buscando de una forma más sencilla a como lo tenía planteado meses atrás: una forma de leer muchos trocitos dentro de una cadena de texto, y con todos los "objetos-texto reconocido" que quiera. Y lo mejor de todo es que esos trocitos ni siquiera son objetos, luego no interfieren con nada, sólo pueden interferir entre ellos, y aquí entra la buena estrategia para diseñar las raíces de vocabulario de conversación.&lt;br /&gt;&lt;br /&gt;Para empezar unifico todos los dispares y poco útiles -a mi juicio- modos de comunicarse que hay en inform:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Extend only 'grita' replace&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* -&gt; chillar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* noun -&gt; chillar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* 'a//' creature -&gt; chillar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* 'a//' creature topic -&gt; hablar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* topic -&gt; chillar;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;verb 'chilla' = 'grita';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;extend 'habla' replace&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* -&gt;hablar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* noun-&gt;hablar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* topic -&gt;hablar;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;extend 'pregunta' replace&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* -&gt;hablar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* noun-&gt;hablar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* topic -&gt;hablar;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;extend 'dile' replace&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* -&gt;hablar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* noun-&gt;hablar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* topic -&gt;hablar;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;extend 'pide' replace&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* -&gt;hablar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* noun-&gt;hablar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;* topic -&gt;hablar;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;[hablarSub;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;"Hablas, pero nadie te responde.";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;];&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;[comohablarsub;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;"Para hablar utiliza la fórmula: DECIR TAL";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;];&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;A continuación viene el detector de cadenas, con la pequeña pega de que hay que escribir los caracteres uno a uno, y que no puedes detectar concatenación con espacios... salvo enrevesando la fórmula con más loops.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;[BeforeParsing i j thisword thislength x;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;bla1=0; !marca de texto detectado&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;bla2=0; !marca de texto detectado&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;bla3=0; !marca de texto detectado&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;bla4=0; !marca de texto detectado&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;for (i=parse--&gt;0,j=1:j&lt;=i:j++)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;thisword = WordAddress(j);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;thislength = WordLength(j);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;if ( thisword -&gt; 0 &gt;= 'a' &amp;amp;&amp;amp; thisword -&gt; 0 &lt;= 'z' ){  if(hablador in location){  if(thisword-&gt;0=='v' &amp;amp;&amp;amp; thisword-&gt;1=='e'&lt;br /&gt;&amp;amp;&amp;amp; thisword-&gt;2=='t' &amp;amp;&amp;amp; thisword-&gt;3=='e') bla1=10;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;if(thisword-&gt;0=='r' &amp;amp;&amp;amp; thisword-&gt;1=='i'&lt;br /&gt;&amp;amp;&amp;amp; thisword-&gt;1=='o') bla2=1;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;if(thisword-&gt;0=='t' &amp;amp;&amp;amp; thisword-&gt;1=='o' &amp;amp;&amp;amp; thisword-&gt;2=='r'&lt;br /&gt;&amp;amp;&amp;amp; thisword-&gt;3=='r' &amp;amp;&amp;amp; thisword-&gt;4=='e') bla2=2;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;!...etc&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Y por fín, el personaje hablador. El nuevo sistema de hablar se detectará en el reaccionar_antes (react_before) del personaje, ya que de momento no necesito múltiples interlocutores, y todo lo que hables te lo replicará el único PSI presente, que traga con todo, hasta con su propio nombre si lo pones. Y de paso, me fusilo el Order y el Answer, que también forman parte del club de los modos de hablar múltiples:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;object hablador "PSI hablador"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;with name 'psi',&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;react_before[;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;answer, order: &lt;&lt;/span&gt;&lt;/span&gt;&lt;comohablar&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;ComoHablar&gt;;rtrue;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;hablar:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;if (bla1==10)print "Has dicho vete";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;if(bla2==1)print "Has dicho río";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;if(bla2==2)print "Has dicho torre, torreón, o torrecita";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;],&lt;br /&gt;!...etc&lt;/span&gt;&lt;/span&gt;&lt;/comohablar&gt;&lt;/blockquote&gt;&lt;comohablar&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/comohablar&gt;&lt;br /&gt;&lt;br /&gt;Por ahora, mucho mejor que lo que tenía, y... hecho y funcional.&lt;br /&gt;(El código es para compilar en Glulx, para Z-code cambian ciertas cosas)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-796574481884729346?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/796574481884729346/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=796574481884729346&amp;isPopup=true' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/796574481884729346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/796574481884729346'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/10/un-sistema-de-conversacin-decente.html' title='Un sistema de conversación decente'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-7233438098527973498</id><published>2008-10-27T15:33:00.009+01:00</published><updated>2012-01-23T13:04:54.113+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>Ad Verbum</title><content type='html'>L'otro día Urba me convenció (tras no conseguir que le dibujara &lt;a href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SQXYTmz8YzI/AAAAAAAABeQ/1_8serlLKck/s1600-h/elfo1.jpg"&gt;unos elfos&lt;/a&gt;) para hacer una versión en castellano de &lt;a href="http://ifdb.tads.org/viewgame?id=xi4s5ne9m6w821xd"&gt;Ad Verbum&lt;/a&gt;, la premiada aventura de Nick Montfort que tiene como particularidad estar basada en juegos de palabras.&lt;br /&gt;&lt;br /&gt;Nuestra misión consiste en recoger todos los objetos de la mansión de un brujo, estando estos objetos en habitaciones encantadas, de tal forma que tendremos que vérnoslas con el léxico inglés para hallar los comandos que podemos escribir. Y es que, por ejemplo, en la sala Norte, todos los textos están escritos con palabras que empiezan por N, y nosotros, mismamente, sólo podremos indroducir órdenes con palabras con una N delante. Luego olvidémonos de comandos como TAKE o EXIT.&lt;br /&gt;&lt;br /&gt;En castellano quedaría algo así:&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;S&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Salón sombrío. Sientes seis simios sarnosos sentados sobre sendos sofás silbando soporíferas saetas sevillanas. Seguidamente, sobre sólido soporte saliente, se sitúan sobrias sandalias sarracenas.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&gt;&gt;COGER SANDALIAS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;¡Shhhhh! ¡Silencio! Sacrilegio sugerir semejantes sandeces.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&gt;&gt;EX SIMIOS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;¡Shhhhh! ¡Silencio! Sacrilegio sugerir semejantes sandeces.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&gt;&gt;SENTIR SIMIOS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Son seres selváticos, salvajes, sentados sobre sus sofás. Silban sin saber solfeo, sin salero.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&gt;&gt;SABOREA SIMIOS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Simios sin salsa saben sosos.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&gt;&gt;SENTARSE SOFA&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Sobre sofa se sitúa simio salvaje. Se sulfurará si sobre su sayo se sientan.&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Muros manchados, mazmorra macabra. Momios malvados me miran mal, meditando macarrónicas monsergas, meneando maracas musicales. Mobiliario: mesa marrón, mampara moteada.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&gt;&gt;MANGAR MARACAS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Mala manera. Momios manifiestan: "mangantes merecen morir".&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&gt;&gt;MATAR MOMIOS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Momios muy mortíferos, mejor me mantengo manso, menos macarra.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&gt;&gt;MANOSEAR MESA&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Momios malhumorados me manotean manifestando: "¡manchas muebles, manos mugrientas, maldito maleducado! ¡multa millonaria!"&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lógicamente no es una traducción, ni es mi intención. Se trata de, sobre la misma idea, hacer historias distintas, y es que ya sería casualidad que se pudieran hacer los mismos juegos de palabras que en inglés. No, por tanto las salas son diferentes.&lt;br /&gt;&lt;br /&gt;Habrá salas con más letras, y me ahorraré otros puzzles con palabras que incluye Ad Verbum que encuentro demasiado rebuscados para centrarme en sacarle el máximo jugo a los juegos de letras iniciales o palabras con una sola vocal.&lt;br /&gt;&lt;br /&gt;Todo esto una vez hallada la forma de procesar esto con el párser, que ya veremos ya veremos... Supongo que un pawslike vendría mejor al caso, o quizá programarlo directamente en Python a pelo, sin parser.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-7233438098527973498?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/7233438098527973498/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=7233438098527973498&amp;isPopup=true' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/7233438098527973498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/7233438098527973498'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/10/ad-verbum.html' title='Ad Verbum'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-4308798504957599496</id><published>2008-10-20T18:56:00.005+02:00</published><updated>2012-01-23T13:04:54.114+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>El barco del CAAD</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SP2jpMn12zI/AAAAAAAABdQ/PUG07VhFkkc/s1600-h/el-barco-del-caad-1.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SP2jpMn12zI/AAAAAAAABdQ/PUG07VhFkkc/s400/el-barco-del-caad-1.png" alt="" id="BLOGGER_PHOTO_ID_5259539867996904242" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SP2jpYgf_GI/AAAAAAAABdY/RbMdQyqGGbA/s1600-h/el-barco-del-caad-2.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SP2jpYgf_GI/AAAAAAAABdY/RbMdQyqGGbA/s400/el-barco-del-caad-2.png" alt="" id="BLOGGER_PHOTO_ID_5259539871187336290" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SP2jpQ-UOuI/AAAAAAAABdg/0R3qIKhbhL4/s1600-h/el-barco-del-caad-3.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SP2jpQ-UOuI/AAAAAAAABdg/0R3qIKhbhL4/s400/el-barco-del-caad-3.png" alt="" id="BLOGGER_PHOTO_ID_5259539869164911330" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SP2jpoIMOfI/AAAAAAAABdo/9EkyFEWmGI8/s1600-h/el-barco-del-caad-4.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SP2jpoIMOfI/AAAAAAAABdo/9EkyFEWmGI8/s400/el-barco-del-caad-4.png" alt="" id="BLOGGER_PHOTO_ID_5259539875380345330" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SP3xPJCx2dI/AAAAAAAABeI/nA1NSpS3zQM/s1600-h/ElbarcodelCAAD5.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SP3xPJCx2dI/AAAAAAAABeI/nA1NSpS3zQM/s400/ElbarcodelCAAD5.png" alt="" id="BLOGGER_PHOTO_ID_5259625182266513874" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-4308798504957599496?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/4308798504957599496/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=4308798504957599496&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/4308798504957599496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/4308798504957599496'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/10/el-barco-del-caad.html' title='El barco del CAAD'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e0GwVJSRTtk/SP2jpMn12zI/AAAAAAAABdQ/PUG07VhFkkc/s72-c/el-barco-del-caad-1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-535474742660692869</id><published>2008-09-16T22:54:00.003+02:00</published><updated>2012-01-23T13:04:54.114+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retro'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>Mi primera Kedada</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SNAdLsRtePI/AAAAAAAABY4/Orr56bSO7Ak/s1600-h/zmad.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SNAdLsRtePI/AAAAAAAABY4/Orr56bSO7Ak/s400/zmad.jpg" alt="" id="BLOGGER_PHOTO_ID_5246725652587837682" border="0" /&gt;&lt;/a&gt;¿Reconocéis a alguien?&lt;br /&gt;Están por ahí JSJ, Cárdenas, J. Basilio, Salazar, Manowar, Jarel...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-535474742660692869?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/535474742660692869/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=535474742660692869&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/535474742660692869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/535474742660692869'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/09/mi-primera-kedada.html' title='Mi primera Kedada'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/SNAdLsRtePI/AAAAAAAABY4/Orr56bSO7Ak/s72-c/zmad.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-3122175224098229740</id><published>2008-08-13T11:15:00.011+02:00</published><updated>2012-01-23T13:04:54.115+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retro'/><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>viejos programas en AMOS</title><content type='html'>Como ayer tuve que ir a la sierra, aproveché para montar el Amiga y cargar unos cuantos programas que había hecho en &lt;a href="http://en.wikipedia.org/wiki/AMOS_BASIC"&gt;AMOS&lt;/a&gt;, un lenguaje parecido al BASIC, pero especializado en la creción de videojuegos, con funciones para "pegar" sprites, detectar el joystick...etc&lt;br /&gt;&lt;br /&gt;En los diquetes que cargué había:&lt;br /&gt;-&lt;span style="font-weight: bold;"&gt;Proyectos de aventuras conversacionales:&lt;/span&gt;&lt;br /&gt;Uno con gráficos concluído... hasta que se me agotó la memoria, dos bocetos, y otro sólo texto que no sé si termina, porque desde luego que son injugables.&lt;br /&gt;El código es algo así como unas definiciones de DATAs con los verbos y el vocabulario, todos recortados "mira" "exam" "coge" "da"... y luego un input y a buscar coincidencias.&lt;br /&gt;En la primera localidad de la que está terminada no logré hacer nada, y eso que más o menos recuerdo por dónde van los tiros, más que nada porque ese comienzo más tarde lo reciclé para "La Guarida Valshar".&lt;br /&gt;&lt;br /&gt;-&lt;span style="font-weight: bold;"&gt;La aventura del Orco:&lt;/span&gt;&lt;br /&gt;Quizá es lo más jugable que programé, es una aventura 2D de un orco que tiene que recuperar la piedra Il que cura una enfermedad que afecta a su horda. Con el joystick nos movemos, podemos recoger objetos, y con disparo accedemos a un menú para hablar (escribiendo tal cual) o utilizar objetos, entre ellos un libro de hechizos (también deberemos escribirlos tecleando).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-Proyectos de juego de rol en primera persona&lt;/span&gt;&lt;br /&gt;Tipo Eye of the Beholder, sin monstruos ni menús, sólamente los laberintos y los dibujos de los muros. Curiosamente los laberintos estaban definidos en una matriz de DATA con "1" y "0", indicando los huecos y los muros, lo mismo que he hecho recientemente para la automatización en una malla 2D de los laberintos de PUJ.&lt;br /&gt;&lt;br /&gt;-&lt;span style="font-weight: bold;"&gt;Varios&lt;/span&gt;:&lt;br /&gt;*El Tron, llamado "Destellos", para uno o dos jugadores y con varios niveles, algunos de los cuales tienen "passing-points" que irán rellenando un marcador al pasar sobre ellos.&lt;br /&gt;*El ahorcado con un monigote dibujado a un lado, con la cabeza metida en una guillotina, que gesticula en función de nuestros aciertos, y acabará gullotinado si fallamos.&lt;br /&gt;*El buscaparejas: un damero de casillas ocultas que revelaremos por parejas mostrando las imágens que esconden. Se trata de ir recordando donde estaba cada una, para levantar a la vez las que son iguales.&lt;br /&gt;*La barra y la pelotita, un machacaladrillos pero sin ladrillos, un frontón en solitario.&lt;br /&gt;*El Lingo, el juego del programa de la tele.&lt;br /&gt;*Proyectos de aventuras gráficas con menús tipo Delphine pero sin personajes, que no pasan del menú o de una pantalla sin mucho que hacer.&lt;br /&gt;*Proyectos de plataformas 2D con muñegotes saltarines.&lt;br /&gt;*Proyectos de isométricos (sólo el movimiento del personaje)&lt;br /&gt;&lt;br /&gt;Los gráficos dibujados a golpe de Deluxe Paint&lt;br /&gt;&lt;br /&gt;Las fotos de las pantallas han salido fatal, el refresco de pantalla era muy lento al hacer correr los juegos (cosas de ser un lenguaje interpretado), incluso se podía apreciar a simple vista el barrido&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SKKquQ5BS7I/AAAAAAAABU4/EVeVuBKNKmY/s1600-h/amosamig0.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SKKquQ5BS7I/AAAAAAAABU4/EVeVuBKNKmY/s400/amosamig0.jpg" alt="" id="BLOGGER_PHOTO_ID_5233933428742769586" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;Ventana principal de edición de AMOS. Lo que más me llamó la atención son lo diminutos que son los códigos en comparación con los fuentes que manejo ahora.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SKKquu0ArMI/AAAAAAAABVA/8zOpLOi9o2U/s1600-h/amosamig1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SKKquu0ArMI/AAAAAAAABVA/8zOpLOi9o2U/s400/amosamig1.jpg" alt="" id="BLOGGER_PHOTO_ID_5233933436774821058" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;La aventura del Orco. te puedes mover de derecha a izquierda o entrar por las puertas hacia habitaciones paralelas. Las pantallas están dibujadas a base de "tiles".&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;El objetivo era encontrar la piedra mágina Il, pero como el juego no tenía instrucciones, eso sólo lo sé yo... bueno, ni yo, porque hasta que no terminé le juego no me acordé de cuál era el objetivo.&lt;br /&gt;&lt;br /&gt;Empezabas en una serie de salas por las que deambulaba otro como tú llamado Blongo. En general, por todo el juego hay placas en la pared que te dan pistas en plan "las mejores cosechas crecen bajo las estrellas" "en la marca roja..." y algunas otras con simples tonterías inservibles como "la intuición radica en el rabillo del ojo".&lt;br /&gt;Los hechizos que usas son 5:&lt;br /&gt;-El de disminución, para convertir a un monstruo verde que no te deja pasar en un enanito que huye despavorido.&lt;br /&gt;-El de crecimiento, para hacer brotar setas, sólo posible por la noche, como te dice la pista. Para que sea de noche, si resulta que es de día, hay que darse una vuelta pasando pantallas, o entrar y salir entre dos, ya que a cada paso de pantalla progresa el cielo exterior.&lt;br /&gt;-El de miedo, para apartar a un tipo que te dispara con una cervatana, trás descubrir aquello a lo que teme: a las setas.&lt;br /&gt;-El de descubrir, para ver cual de los toneles de "lom" de la bodega está marcado con una X. Aquel que beba de él se convertirá en una seta (hay que aprovechar los sprites). Llenas una copa, se la llevas a Blongo y se convierte en una seta al beberla, una seta que repite una palabra mágica, un hechizo para teletransportarte... (ingenioso ¿verdad? XD)&lt;br /&gt;-El de convertir en oro... al revés. Al final del juego nos encontramos con la situación de que el que tenía la piedra Il ha convertido todo lo que tenía en oro, incluída la piedra. Entonces tenemos que escribir el hechizo de convertir en oro al revés para desfacer la pifia.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SKKquvQ6weI/AAAAAAAABVI/d_ctMjXpjlg/s1600-h/amosamig2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SKKquvQ6weI/AAAAAAAABVI/d_ctMjXpjlg/s400/amosamig2.jpg" alt="" id="BLOGGER_PHOTO_ID_5233933436896068066" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;Las aventuras conversacionales. La que se ve en la parte superior es la que está terminada. Básicamente empezabas en una celda, como en La Guarida Valshar, luego aparecía por ahí una rata parlanchina, le pedías comida al carcelero, y se la dabas a la rata, que te mostraba una salida secreta. Llegabas a otra sala a través de una máquina de Cocacola, o algo así. Luego había un bosque con un gnomo que hacías salir de su casa tapándole la chimenea, una taberna, y un precipicio con un tronco en medio del cual te esperaba un diablo. A éste le hacías caer metiendo una vara en un hueco del tronco y haciendo palanca para que girase.&lt;br /&gt;&lt;br /&gt;La de la parte inferior es sólo un modelo, no hay nada más que hacer, que ver que funciona coger cosas y los verbos.&lt;br /&gt;Destacar la parafernalia del marco, muy propio de cuando la memoria era un problema, para meter gráficos lo más pequeñitos posibles sin que cantase mucho que eran ridículamente pequeñitos.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SKKqu7CwRHI/AAAAAAAABVQ/Lghj6nLG0jY/s1600-h/amosamig3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SKKqu7CwRHI/AAAAAAAABVQ/Lghj6nLG0jY/s400/amosamig3.jpg" alt="" id="BLOGGER_PHOTO_ID_5233933440057885810" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;Arriba el juego del Lingo, que trata de adivinar palabras. Primeramente te aparecen una pocas letras y espacios en blanco, por ejemplo: -R--A-&lt;br /&gt;A continuación pruebas una palabra que case con el modelo, por ejemplo TRIGAS, si no era esa la palabra, al menos se te marcarán las letras que coincidan en posición con el de la palabra secreta (si esta fuera BRIDAS, en el siguiente turno se quedaría la palabra así: -RI-AS)&lt;br /&gt;&lt;br /&gt;Abajo, un "dungeon" con el menú de movimiento (sin los gráficos de las flechitas) típico de este género: Avanza, gira, atrás, y moverte en paralelo.&lt;br /&gt;Los muros están realizados gracias a la opción de deformacion en perspectiva del Deluxe Paint. De todas formas, recuerdo que fue llevadero recortar cada trocito de muro para todas las posibles posiciones en 3 o 4 niveles de profundidad (afortunadamente los dungeons son muy oscuros, y puedes justificarte así de no dibujar más planos hasta que no quepan los pixels :D)&lt;br /&gt;Éste se mueve un poco lento por el tamaño descomunal de la ventana gráfica (le llevaba demasiado tiempo a la máquina montar todos los srpites, y más teniendo en cuenta que esto es un lenguaje interpretado, y parte de la memoria la está consumiendo el propio AMOS); de modo que hice otro con la ventana más pequeñita, y así corría más ligero.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-3122175224098229740?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/3122175224098229740/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=3122175224098229740&amp;isPopup=true' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3122175224098229740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3122175224098229740'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/08/viejos-programas-en-amos.html' title='viejos programas en AMOS'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/SKKquQ5BS7I/AAAAAAAABU4/EVeVuBKNKmY/s72-c/amosamig0.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-734610763103863820</id><published>2008-08-12T01:39:00.003+02:00</published><updated>2008-08-12T01:50:15.974+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='PSI'/><title type='text'>IA en el juego de mesa-estrategia</title><content type='html'>Técnicas de estrategia.&lt;br /&gt;Por ahora la IA de los emperadores rivales manejados por el ordenador funciona así, en base a un sistema de puntuación:&lt;br /&gt;1. Valorar movimiento de tropas.&lt;br /&gt;-Busca territorios propios&lt;br /&gt;  -Busca territorios accesibles desde los propios&lt;br /&gt;    -Comprueba que hay tropas que mover&lt;br /&gt;      *Valora el número de tropas enemigas en esos territorios.&lt;br /&gt;         -Comprueba que nuestras tropas son suficientes para ganar. ++ o --&lt;br /&gt;      *Valora riqueza de ese territorio. ++&lt;br /&gt;            *Valora si es capital de otro reino. ++&lt;br /&gt;         -Si no hay tropas para mover desde el territorio que da acceso al movimiento de máxima puntuación, valorar un posible paso de tropas desde otro territorio colindante, para en el siguiente turno...&lt;br /&gt;&lt;br /&gt;2. Valorar lo expuesta que está nuestra capital&lt;br /&gt; -Busca el territorio donde está nuestra capital&lt;br /&gt;      -Busca territorios accesibles desde/hacia&lt;br /&gt;     -Comprueba si son nuestros o enemigos&lt;br /&gt;        -Si son enemigos valora el número de tropas y nuestra fuerza defensiva.&lt;br /&gt;           -Si la capital está en peligro:&lt;br /&gt;                A-Busca territorios colindantes con aquel que supone la mayor amenaza&lt;br /&gt;                      -Busca tropas propias en esos territorios&lt;br /&gt;                      -Valora si alguna de esas tropas es suficiente para acabar con la amenaza&lt;br /&gt;                             -&gt;Ataca&lt;br /&gt;                B-Comprueba cuantas tropas podemos reclutar en la capital&lt;br /&gt;                      -Valora si son suficientes para resistir el posible ataque.&lt;br /&gt;                             -&gt; Arma las tropas necesarias en la capital&lt;br /&gt;                C-Busca territorios colindantes con nuestra capital&lt;br /&gt;                       -Busca tropas propias en ellos&lt;br /&gt;                            -Valora si con su regreso a la capital, ésta estará suficientemente defendida&lt;br /&gt;                                 -&gt; Mueve tropas hacia la capital&lt;br /&gt;(no valora la posibilidad de múltiples amenazas sino que busca la mayor de entre ellas; en el caso de múltiples, las dos últimas opciones, B y C, serían preferibles a la primera, A)&lt;br /&gt;&lt;br /&gt;3. Valora reclutamientos.&lt;br /&gt;&lt;br /&gt;De momento lo he puesto a funcionar saltando el turno del jugador para ver a toda velocidad el transcurso de la guerra, y la cosa funciona poco inteligentemente; se crean circuitos repetitivos que tardan mucho en deshacerse. Lo cual es normal, si todos los emperadores tienen el mismo criterio de ataque y defensa, parece que juegan al gato y al ratón mordiéndose las colas, y sólo tras mucho tiempo alguna capital es tomada y cambian los ciclos por unos momentos para volver a hacerse regulares.&lt;br /&gt;&lt;br /&gt;Hay que ampliar la IA con variaciones personalizadas para valoraciones secundarias. Por ejemplo, entre varios posibles territorios de avance, tender a elegir el más rico, el que posea más enemigos, el que pertenezca al emperador que más nos ha atacado...&lt;br /&gt;&lt;br /&gt;También con objetivos a largo plazo: La estrategia principal del juego será tomar las capitales, que son el punto flaco de los demás imperios, pero también conquistar pro el camino el mayor número de territorios para obtener más rentas y más soldados. Por tanto, buscar recorridos óptimos hacia las capitales más cercanas y débiles pasando de camino por los territorios más fáciles de conquistar.&lt;br /&gt;&lt;br /&gt;Y con autocorreciones: si tras varios turnos, el promedio de territorios, riqueza y tropas sale negativo en comparación con la media de los demás emperadores, algo está haciendo mal, luego debe cambiar sus criterios de valoración secundarios (los que no tienen que ver con la defensa de la capital, que son prioritarios)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-734610763103863820?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/734610763103863820/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=734610763103863820&amp;isPopup=true' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/734610763103863820'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/734610763103863820'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/08/ia-en-el-juego-de-mesa-estrategia.html' title='IA en el juego de mesa-estrategia'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-3939541093409698086</id><published>2008-08-09T19:11:00.001+02:00</published><updated>2008-08-09T20:08:45.188+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>El Wargame y la Aventura 2D en acción</title><content type='html'>Unas capturas subidas a Youtube:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/XMuQd7IyRLo&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/XMuQd7IyRLo&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/-raPTH_ZiLk&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/-raPTH_ZiLk&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-3939541093409698086?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/3939541093409698086/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=3939541093409698086&amp;isPopup=true' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3939541093409698086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3939541093409698086'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/08/en-wargame-y-la-aventura-2d-en-accin.html' title='El Wargame y la Aventura 2D en acción'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-8564556065269100000</id><published>2008-08-08T10:20:00.002+02:00</published><updated>2012-01-23T13:04:54.116+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>Toi CAAD</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SJwCBxS01nI/AAAAAAAABUo/DBz9RCI1weY/s1600-h/toicaad.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SJwCBxS01nI/AAAAAAAABUo/DBz9RCI1weY/s400/toicaad.jpg" alt="" id="BLOGGER_PHOTO_ID_5232059096533096050" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SJynhoscJnI/AAAAAAAABUw/ZzIWTUiuvUI/s1600-h/toicaad2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SJynhoscJnI/AAAAAAAABUw/ZzIWTUiuvUI/s400/toicaad2.jpg" alt="" id="BLOGGER_PHOTO_ID_5232241063399007858" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-8564556065269100000?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/8564556065269100000/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=8564556065269100000&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8564556065269100000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8564556065269100000'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/08/toi-caad.html' title='Toi CAAD'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/SJwCBxS01nI/AAAAAAAABUo/DBz9RCI1weY/s72-c/toicaad.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-749298145775019819</id><published>2008-08-02T05:04:00.010+02:00</published><updated>2008-08-02T08:02:36.044+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>pythoneando</title><content type='html'>Empecé a primeros de Julio a investigar Python+Pygame, y la verdad es que ha cundido la cosa. Este blog que al principio pretendía ser de programación de Inform, y luego pasó a ser de programación y chismorreos caadianos, va a terminar por ampliarse a blog de videoaventuras en general. Esto es: videoaventuras conversacionales, videoaventuras de plataformas, videoaventuras de mesa...&lt;br /&gt;&lt;br /&gt;Empecé realizando el proyecto que tantos años deseaba hacer y no pude por mi falta de conocimientos de programación: una aventura 2D tipo Another World, que cumpla ciertos aspectos que considero importantes:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-Gravedad e inercias reales, velocidad, nada de saltos fantasma en plasma líquido. Puedes controlar los saltos mientras en la animación el personaje tenga algún pie en el suelo; una vez en el aire, éste sigue una trayectoria invariable salvo que se estampe con alguna masa.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-Transiciones entre acciones: no puedes pasar de correr a andar así sin más, ni cambiar de dirección sin amortiguar la inercia. Mismamente, si vas corriendo y pulsas para salto de longitud, el comando no se ejecutará instantáneamente sino en el momento en el que termines la zancada, para tomar impulso, como lo antes dicho.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Para esto las acciones van por pilas: accion_actual y accion_siguiente, la cual salta cuando el frame de transición sea el correcto.&lt;br /&gt;&lt;br /&gt;Más o menos he conseguido el motor, más o menos porque se podría mejorar con más fidelidad, pero es un coñazo dibujar tantos frames.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Grabación en video-&gt;volcado-&gt;selección de fotogramas-&gt;calco en vectorial-&gt;conversión en bitmap-&gt;edición-&gt;"amontonamiento" en capas-&gt;grabación en PNG&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;Como me estaba saturando de este proyecto, y no estaba inspirado para un buen guión, carpetazo y quise hacer un juego de mesa tipo risk.&lt;br /&gt;31 territorios y 8 emperadores rivales por conquistarlos.&lt;br /&gt;&lt;br /&gt;El sistema de lucha será sencillo: 2 contra 3 = mueren dos de cada ejército y gana el segundo con una tropa viva; con algunos modificadores: los que atacan tienen un porcentaje de desventaja; también se acumula un portentaje negativo si atacan una ciudad fortificada (hasta tres niveles de fortificación); o si atacan un reino montañoso, donde mismamente los que ya están ahí esperando tienen ventaja posicional sobre los que llegan.&lt;br /&gt;El sistema se irá calibrando cuando funcione.&lt;br /&gt;&lt;br /&gt;También barajo -utópicamente- hacer los combates jugables, de forma que el 2 contra 3 ganan los segundos sea más relativo (aunque 2 contra 4 ni de coña), adquiriendo la piel del general que da las órdenes, las cuales son transmitidas por los músicos con códigos de trompetiles, y con muchas animaciones "jolgoriosas" de fondo (si no, no mola):&lt;br /&gt;¡arqueros!, ¡primera línea avance!, ¡atrás!... tipo Patapón-pon-pata-pon.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SJPR9k7fUVI/AAAAAAAABUI/Bbjz_Bp3IrU/s1600-h/pygame2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SJPR9k7fUVI/AAAAAAAABUI/Bbjz_Bp3IrU/s400/pygame2.jpg" alt="" id="BLOGGER_PHOTO_ID_5229754448122696018" border="0" /&gt;&lt;/a&gt;El proyecto 1: Las criaturas humanoides, llamadas naar, tienen cada una un rostro diferente y personal, aunque no se aprecie mucho. Superpongo una máscara translúcida con los matices... y, anden, corran o salten, la cabeza siempre horizontal :D La máscara es de boca para arriba, para hacer comunes los frames de cuando muevan la boca para hablar.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SJPR9o3t6bI/AAAAAAAABUA/HQUiKXTB4Nw/s1600-h/pygame1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SJPR9o3t6bI/AAAAAAAABUA/HQUiKXTB4Nw/s400/pygame1.jpg" alt="" id="BLOGGER_PHOTO_ID_5229754449180617138" border="0" /&gt;&lt;/a&gt;El war-game, en el que de momento no se puede hacer nada más que pasear el ratón por el mapa y curiosear.&lt;br /&gt;El menú de la derecha son las acciones básicas (sin implantar):&lt;br /&gt;-Mover tropas&lt;br /&gt;-Fortificar un sitio&lt;br /&gt;-Reclutar hombres.&lt;br /&gt;Faltan:&lt;br /&gt;-Trasladar la capital del Imperio ( si cae una capital el conquistador se queda con todo, aunque para conquistar una capital, además de enfrentarse a las fortificaciones y tropas que allí se hallen, hay una guardia pretoriana fija, y de regalo, que vale como 3 o 4 tropas)&lt;br /&gt;-Enviar órdenes (las acciones no se ejecutarán hasta que envíes las palomas mensajeras a tus generales repartidos por el imperio). Una vez enviadas, correrá el turno (el mes), se verán los resultados, y los movimientos que han hecho los emperadores rivales.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;En fin, lo más importante de Python es esto:&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: center; font-weight: bold;"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;# -*- coding: iso-8859-1 -*-&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-weight: bold;"&gt;¡¡¡Sin esta línea mágica no se pueden escribir acentos ni eñññññññes!!!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-749298145775019819?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/749298145775019819/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=749298145775019819&amp;isPopup=true' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/749298145775019819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/749298145775019819'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/08/pythoneando.html' title='pythoneando'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/SJPR9k7fUVI/AAAAAAAABUI/Bbjz_Bp3IrU/s72-c/pygame2.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-4596713558806319724</id><published>2008-07-04T22:08:00.001+02:00</published><updated>2012-01-23T13:04:54.116+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>CAADmóbil</title><content type='html'>Atención a la matrícula...&lt;br /&gt;&lt;div style="text-align: right;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SG6DdZYK5LI/AAAAAAAABSI/2U6OmYCq360/s1600-h/deskarriados.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SG6DdZYK5LI/AAAAAAAABSI/2U6OmYCq360/s400/deskarriados.jpg" alt="" id="BLOGGER_PHOTO_ID_5219253559220692146" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;(la foto la tomé hace años en Collado Mediano)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-4596713558806319724?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/4596713558806319724/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=4596713558806319724&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/4596713558806319724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/4596713558806319724'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/07/caadmbil.html' title='CAADmóbil'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e0GwVJSRTtk/SG6DdZYK5LI/AAAAAAAABSI/2U6OmYCq360/s72-c/deskarriados.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-8962465831598535959</id><published>2008-06-29T16:51:00.005+02:00</published><updated>2012-01-23T13:04:54.116+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>Brodmann Area 15</title><content type='html'>Haciendo un meme chorra de esos que purulan por los blogs, consistente en coger una imagen al azar de una página que muestra imágenes al azar, un nombre al azar de una wiki y las cuatro últimas palabras de una página de citas, estas últimas también generadas al azar, y hacer la portada de un disco, me salió esto:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SGeh3ap5neI/AAAAAAAABRo/Nnx7DpQEhAM/s1600-h/chorr.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SGeh3ap5neI/AAAAAAAABRo/Nnx7DpQEhAM/s400/chorr.jpg" alt="" id="BLOGGER_PHOTO_ID_5217316666751950306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Y más que para un disco, es una portada buenísima para una aventura basada en el mundo de "&lt;a href="http://es.wikipedia.org/wiki/1984_%28novela%29"&gt;1984&lt;/a&gt;", de Orwell.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Brodmann te vigila, somos tus amigos, siempre estamos a tu lado, vigilamos que seas correcto, por tu propio bien, queremos tu felicidad...&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-8962465831598535959?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/8962465831598535959/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=8962465831598535959&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8962465831598535959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8962465831598535959'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/06/brodmann-area-15.html' title='Brodmann Area 15'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e0GwVJSRTtk/SGeh3ap5neI/AAAAAAAABRo/Nnx7DpQEhAM/s72-c/chorr.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-2955081699004839866</id><published>2008-06-02T21:20:00.001+02:00</published><updated>2012-01-23T13:04:54.117+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>actualizando la WikiCAAD</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SERII3fSWQI/AAAAAAAABL0/czE2csDROVg/s1600-h/el-monstruo-de-la-wikicaad.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SERII3fSWQI/AAAAAAAABL0/czE2csDROVg/s400/el-monstruo-de-la-wikicaad.png" alt="" id="BLOGGER_PHOTO_ID_5207366386318465282" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-2955081699004839866?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/2955081699004839866/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=2955081699004839866&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/2955081699004839866'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/2955081699004839866'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/06/actualizando-la-wikicaad.html' title='actualizando la WikiCAAD'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e0GwVJSRTtk/SERII3fSWQI/AAAAAAAABL0/czE2csDROVg/s72-c/el-monstruo-de-la-wikicaad.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-5996737400345664564</id><published>2008-06-02T16:47:00.006+02:00</published><updated>2012-01-23T13:04:54.117+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>la procrastinación del Cangrejo</title><content type='html'>Este fin de semana me decidí a terminar fuera como fuese un viejo proyecto en InformATE que inicié en el 2002 y que tenía abandonado.&lt;br /&gt;&lt;br /&gt;Últimamente llueve todos los días y hace tiempo que no salgo a la montaña, por tanto los fines de semana no hago nada productivo, de modo que me autoimpuse cerrar ese proyecto sí o sí durante el finde.&lt;br /&gt;Empecé el Viernes por la tarde, me pasé la madrugada sin dormir, y el domingo a las 23:00 lo tenía terminado... con algunos bugs fatales que tuve que corregir el lunes.&lt;br /&gt;&lt;br /&gt;El mismo domingo, de madrugada, soltaron en Redes un palabro muy significativo:&lt;br /&gt;&lt;a href="http://es.wikipedia.org/wiki/Procrastinaci%C3%B3n"&gt;Procrastinación&lt;/a&gt;, &lt;i style="font-style: italic;"&gt;la acción de procrastinar (del latín procrastinare&lt;/i&gt;&lt;span style="font-style: italic;"&gt;) es decir, de postergar actividades o situaciones que uno debe atender, por otras situaciones más irrelevantes y agradables. Este término proviene del latín &lt;/span&gt;&lt;i style="font-style: italic;"&gt;pro-&lt;/i&gt;&lt;span style="font-style: italic;"&gt; (adelante) y &lt;/span&gt;&lt;i style="font-style: italic;"&gt;crastinus&lt;/i&gt;&lt;span style="font-style: italic;"&gt; (relacionado con el mañana).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;En el mismo programa, un profesor comentaba una experiencia de todos conocida - seamos alumnos o profesores, jefes o mandaos - relacionada con la fecha de entrega de trabajos.&lt;br /&gt;Este profesor mandó sus alumnos presentar tres trabajos a lo largo del curso. Al primer grupo le puso como fecha límite el último día de clase; al segundo grupo le puso tres fechas, un trabajo por trimestre.&lt;br /&gt;Ni que decir tiene que los trabajos del primer grupo se hicieron los tres en el último momento y mal. En general, empezamos a funcionar cuando la fecha límite está cercana, no antes.&lt;br /&gt;&lt;br /&gt;Parece que ponerse fecha y límites es importante. A veces nos ponen fecha desde fuera, otras veces no, y es entonces cuando nos la tenemos que poner nosotros, o esperaremos eternamente hasta un último momento que nunca llegará, porque nadie nos va a decir ¡mañana lo quiero!&lt;br /&gt;&lt;br /&gt;En este caso, la postergación no es comparable a la de una tarea obligada, ya que esto es un hobby, sino debida a pretensiones excesivas que arrojan unas perspectivas de programación eternas y costosas en tiempo que terminan por hacerme desechar todo el trabajo anterior para pasar a una tarea más liviana y ágil.&lt;br /&gt;&lt;br /&gt;Aquí está &lt;a href="http://www.caad.es/modulos.php?modulo=descarga&amp;amp;id=1495"&gt;la aventura&lt;/a&gt;, y &lt;a href="http://usuarios.lycos.es/gen/222_contra_el_Cangrejo__Solucion.txt"&gt;la solución&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-5996737400345664564?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/5996737400345664564/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=5996737400345664564&amp;isPopup=true' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5996737400345664564'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5996737400345664564'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/06/la-procrastinacin-del-cangrejo.html' title='la procrastinación del Cangrejo'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-8287017847706180868</id><published>2008-05-21T20:29:00.006+02:00</published><updated>2012-01-23T13:04:54.118+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><title type='text'>fotografías para ilustraciones</title><content type='html'>&lt;div style="text-align: center; color: rgb(153, 0, 0);"&gt;**ADVERTENCIA**&lt;br /&gt;**AMANTES DEL SÓLO-TEXTO NO LEER**&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Cuando hago una foto, tengo un dilema: si se hace con ojo artístico normalmente no vale para ilustrar una aventura conversacional, tal como yo pretendo hacerlo con cierta uniformidad de perspectiva (ni tampoco como foto documental de esa zona)&lt;br /&gt;Si buscas el contraluz, el escorzo, el detalle, la parte sin su contexto... esa imagen no sirve luego para describir una localidad o un lugar globalmente, sino una particularidad de él, un efecto... la anécdota y no el conjunto.&lt;br /&gt;El atardecer puede quedar precioso, pero o toda la aventura se desarrolla en un perpétuo atardecer, o cada vez que pasas por esa localidad casualmente está atardeciendo aunque en la siguiente el sol esté a las 12, o te preparas todas las localidades para las distintas luces del día.&lt;br /&gt;&lt;br /&gt;Las que suelen cuadrar son las tomadas desde la altura de la cabeza y de frente, ni hacia arriba ni hacia abajo, y con el sol arriba, sin excesivas sombras hacia poniente o naciente. De este modo las fotos son más fácilmente editables para darles la luz adecuada o las sombras que queramos llegado el caso. Más fácil es emborronar lo que sobra que sacar a la luz lo que no existe.&lt;br /&gt;De hecho lo ideal es un día nublado, sin sombras fuertes y con luz uniforme. Estas fotos son la mejor base para componer decorados.&lt;br /&gt;&lt;br /&gt;Es un criterio sólamente, todo vale si queremos, podemos entrar en un salón y poner como ilustración principal su maravilloso techo pintado por Michelángelo Buonarotti; o usar la foto de una botella de vino para ilustrar una bodega; o usar éstas cuando miramos al techo o miramos una botella. Pero para la entrada en la localidad queda extraña la focalización directa en uno de sus elementos, o un punto de vista retorcido como si el protagonista si hubiera tirado al suelo o apretado contra una pared.&lt;br /&gt;No obstante, a base de partes también se puede componer un buen conjunto global.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SDR5V1Frj-I/AAAAAAAABK8/6NKfv5k5pbE/s1600-h/trabajj.jpg"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SDR5V1Frj-I/AAAAAAAABK8/6NKfv5k5pbE/s400/trabajj.jpg" alt="" id="BLOGGER_PHOTO_ID_5202916885454884834" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;Lo' pogramas d'oy en día hacen de tó.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-8287017847706180868?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/8287017847706180868/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=8287017847706180868&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8287017847706180868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/8287017847706180868'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/05/fotografas-para-ilustraciones.html' title='fotografías para ilustraciones'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e0GwVJSRTtk/SDR5V1Frj-I/AAAAAAAABK8/6NKfv5k5pbE/s72-c/trabajj.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-2367374194816798212</id><published>2008-05-16T17:56:00.007+02:00</published><updated>2012-01-23T13:05:28.660+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proyectos'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>Mazmorror</title><content type='html'>&lt;span style="font-style: italic;"&gt;¡¡¡Regístralo!!! el nombre es la hostia, y no lo ha usado nadie ¡corre corre! ¡que se te puede adelantar alguien! (por ejemplo yo)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Se pueden sacar cómics, dibujos animados, camisetas, muñecos, juegos de ordenador, politonos, películas. El nombre es contundente.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Mazmorror es una serie de minirelatos de coña parodiando los juegos de rol, de &lt;a href="http://www.frankapilla.com/"&gt;Fran Kapilla&lt;/a&gt;, que debería estar &lt;a href="http://www.frankapilla.com/html/mazmorror.htm"&gt;aquí&lt;/a&gt;... pero no funciona el enlace.&lt;br /&gt;&lt;br /&gt;Tomo prestada la marca de la saga, cumpliendo mi amenaza al autor, para la próxima nano, cuyo título provisional es:&lt;span style=";font-family:georgia;font-size:130%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="color: rgb(102, 0, 0);font-family:arial;font-size:130%;"  &gt;Crónicas de Mazmorror - capítulo X&lt;br /&gt;2001 Puj y un brebaje de gazpacho&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Por supuesto, una parodia en un mundo fantástico de alevosas incoherencias y absurdos.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SC2v6FFrj8I/AAAAAAAABKs/McvAMKmFdqg/s1600-h/mazmorror_p.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SC2v6FFrj8I/AAAAAAAABKs/McvAMKmFdqg/s320/mazmorror_p.jpg" alt="" id="BLOGGER_PHOTO_ID_5201006557016068034" border="0" /&gt;&lt;/a&gt;&lt;span style="color: rgb(153, 102, 51);font-size:85%;" &gt;Sí, se parecen mucho... es que son de la misma camada&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-2367374194816798212?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/2367374194816798212/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=2367374194816798212&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/2367374194816798212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/2367374194816798212'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/05/mazmorror.html' title='Mazmorror'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/SC2v6FFrj8I/AAAAAAAABKs/McvAMKmFdqg/s72-c/mazmorror_p.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-4408075923663374763</id><published>2008-05-15T13:55:00.004+02:00</published><updated>2012-01-23T13:05:28.660+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='soliloquios'/><title type='text'>espeleoaventura</title><content type='html'>Hace unos meses me metí en un grupo de espeleología federado, tras un año yendo por mi cuenta, de "espeleo-loco", o espeleo-pirata.&lt;br /&gt;El caso es que repasando las aventuras que he hecho hasta la fecha, especialmente las largas, la mayor parte tienen cueva. Está claro que era una pasión que tenía que materializarse tarde o temprano, y afloró cuando se me puso delante de las narices, igual que tantas otras cosas.&lt;br /&gt;&lt;br /&gt;Igual que alguien puede tener predisposición para amar la navegación, pero no le da rienda suelta hasta que tiene la oportunidad de "conducir" un barco o se da de narices con uno de verdad.&lt;br /&gt;&lt;br /&gt;Aventuras que se desarrollan principalmente en cavidades naturales:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;La Guarida Valshar&lt;/li&gt;&lt;li&gt;En la Sima del Búho Maldito&lt;/li&gt;&lt;li&gt; Subterránea&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Aventuras en las que una parte de la historia se desarrolla en cavidades naturales:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Rimblendén&lt;/li&gt;&lt;li&gt;Las Llaves del Tiempo&lt;/li&gt;&lt;li&gt;La Caja de Sarimek&lt;/li&gt;&lt;li&gt;Regreso al Edén&lt;/li&gt;&lt;li&gt;Antes&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Aventuras en las que una parte de la historia se desarrolla en cavidades artificiales&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Del Otro Lado&lt;/li&gt;&lt;li&gt;El Octavo Pasajero&lt;/li&gt;&lt;li&gt;Zerogrados&lt;/li&gt;&lt;li&gt;El Edificio 25&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-4408075923663374763?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/4408075923663374763/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=4408075923663374763&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/4408075923663374763'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/4408075923663374763'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/05/espeleoaventura.html' title='espeleoaventura'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-5192275884635368059</id><published>2008-04-29T00:22:00.002+02:00</published><updated>2012-01-23T13:05:28.661+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>mi aventura me la robaron estando de romería</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SBZOVgzsUdI/AAAAAAAABH0/32aCbyd3DwA/s1600-h/miaventuramelarobaron.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SBZOVgzsUdI/AAAAAAAABH0/32aCbyd3DwA/s400/miaventuramelarobaron.jpg" alt="" id="BLOGGER_PHOTO_ID_5194425351709413842" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-5192275884635368059?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/5192275884635368059/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=5192275884635368059&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5192275884635368059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5192275884635368059'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/04/mi-aventura-me-la-robaron-estando-de.html' title='mi aventura me la robaron estando de romería'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/SBZOVgzsUdI/AAAAAAAABH0/32aCbyd3DwA/s72-c/miaventuramelarobaron.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-1307861037850239262</id><published>2008-04-26T18:46:00.003+02:00</published><updated>2012-01-23T13:05:28.661+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='PSI'/><title type='text'>sistema de conversación por adivinación</title><content type='html'>Para mi próxima aventura, he determinado utilizar como sistema de conversación aquel que ya esbocé hace años y he ido ultimando gracias a los avances de la tecnología. No es otra cosa que el&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Sistema de adivinación pulsométrico.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Las sinapsis neuronales del jugador generan unas imperceptibles interferencias con los campos energéticos del ordenador. Con el algoritmo adecuado, desarrollado gracias a una red neuronal bien entrenada para interpretar esas interferencias y traducirlas, podemos adivinar las intenciones del jugador.&lt;br /&gt;&lt;br /&gt;De modo que la conversación se reduce al comando "HABLAR CON", sin necesidad de especificar más.&lt;br /&gt;...&lt;br /&gt;Lamentablemente no es así... quiero decir afortunadamente. No creo que a nadie le hiciera gracia que apareciera una tecnología capaz de leerle el pensamiento (lo que no quita que nos gustase leer el de los demás, en exclusiva).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-1307861037850239262?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/1307861037850239262/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=1307861037850239262&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1307861037850239262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/1307861037850239262'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/04/sistema-de-conversacin-por-adivinacin.html' title='sistema de conversación por adivinación'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-7111700736099930749</id><published>2008-04-18T17:15:00.003+02:00</published><updated>2012-01-23T13:05:28.662+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><category scheme='http://www.blogger.com/atom/ns#' term='humor'/><title type='text'>carátulas (fake)</title><content type='html'>De la unión de &lt;a href="http://2.bp.blogspot.com/_RjUkqGxFK2c/SAfBDot-t8I/AAAAAAAAAYI/BQLutLXmrAc/s1600-h/golpe_a_los_nazis.jpg"&gt;ésta&lt;/a&gt; y &lt;a href="http://4.bp.blogspot.com/_RjUkqGxFK2c/SAfKSIt-uCI/AAAAAAAAAYo/yqUkqf_A354/s1600-h/mimoso.jpg"&gt;ésta&lt;/a&gt;, sale esta otra:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SAi7MQKiAhI/AAAAAAAABGs/jbGraE_ncZU/s1600-h/mimosos_fake.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SAi7MQKiAhI/AAAAAAAABGs/jbGraE_ncZU/s400/mimosos_fake.jpg" alt="" id="BLOGGER_PHOTO_ID_5190604389716460050" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-7111700736099930749?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/7111700736099930749/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=7111700736099930749&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/7111700736099930749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/7111700736099930749'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/04/cartulas-fake.html' title='carátulas (fake)'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/SAi7MQKiAhI/AAAAAAAABGs/jbGraE_ncZU/s72-c/mimosos_fake.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-6144416226590309610</id><published>2008-04-16T23:26:00.011+02:00</published><updated>2012-01-23T13:05:28.662+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><title type='text'>carátulas 4</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SAZvKwKiAaI/AAAAAAAABF0/dLTF0uhxeO8/s1600-h/como_el_diablo.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SAZvKwKiAaI/AAAAAAAABF0/dLTF0uhxeO8/s400/como_el_diablo.jpg" alt="" id="BLOGGER_PHOTO_ID_5189957851109523874" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SAZzHgKiAbI/AAAAAAAABF8/o7c03boBgyE/s1600-h/la_cara_oculta.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SAZzHgKiAbI/AAAAAAAABF8/o7c03boBgyE/s400/la_cara_oculta.jpg" alt="" id="BLOGGER_PHOTO_ID_5189962193321460146" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SAcw8gKiAfI/AAAAAAAABGc/d6nVBu89MzE/s1600-h/romanfredo.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SAcw8gKiAfI/AAAAAAAABGc/d6nVBu89MzE/s400/romanfredo.jpg" alt="" id="BLOGGER_PHOTO_ID_5190170911552176626" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SAc7jAKiAgI/AAAAAAAABGk/bW9CXcwN1Hg/s1600-h/lemniscata.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SAc7jAKiAgI/AAAAAAAABGk/bW9CXcwN1Hg/s400/lemniscata.jpg" alt="" id="BLOGGER_PHOTO_ID_5190182568093417986" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SAaKvAKiAdI/AAAAAAAABGM/tXN6UAlYUes/s1600-h/logo_rebotrobot_transp2.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SAaKvAKiAdI/AAAAAAAABGM/tXN6UAlYUes/s320/logo_rebotrobot_transp2.png" alt="" id="BLOGGER_PHOTO_ID_5189988160693731794" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SAaI7gKiAcI/AAAAAAAABGE/L8UqT4nUW8Y/s1600-h/logo_rebotrobot_transp.png"&gt;&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-6144416226590309610?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/6144416226590309610/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=6144416226590309610&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6144416226590309610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6144416226590309610'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/04/cartulas-4.html' title='carátulas 4'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/SAZvKwKiAaI/AAAAAAAABF0/dLTF0uhxeO8/s72-c/como_el_diablo.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-3944142348179620236</id><published>2008-04-14T16:18:00.007+02:00</published><updated>2012-01-23T13:05:28.663+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retro'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><title type='text'>carátulas 3</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SANn8AKiAQI/AAAAAAAABEk/5LqHXFCq0nI/s1600-h/la_guarida_valshar.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SANn8AKiAQI/AAAAAAAABEk/5LqHXFCq0nI/s400/la_guarida_valshar.jpg" alt="" id="BLOGGER_PHOTO_ID_5189105476194926850" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SANn8QKiARI/AAAAAAAABEs/aFP1VCkmqwI/s1600-h/rimblenden.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SANn8QKiARI/AAAAAAAABEs/aFP1VCkmqwI/s400/rimblenden.jpg" alt="" id="BLOGGER_PHOTO_ID_5189105480489894162" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SANn8gKiASI/AAAAAAAABE0/Fkj_KshCI9w/s1600-h/las_llaves_del_tiempo.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SANn8gKiASI/AAAAAAAABE0/Fkj_KshCI9w/s400/las_llaves_del_tiempo.jpg" alt="" id="BLOGGER_PHOTO_ID_5189105484784861474" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SANn8wKiATI/AAAAAAAABE8/0sc0SpZsnyU/s1600-h/en_la_sima_del_buho_maldito.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SANn8wKiATI/AAAAAAAABE8/0sc0SpZsnyU/s400/en_la_sima_del_buho_maldito.jpg" alt="" id="BLOGGER_PHOTO_ID_5189105489079828786" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SAY3YAKiAZI/AAAAAAAABFs/yw8oiv_UodM/s1600-h/nadie.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SAY3YAKiAZI/AAAAAAAABFs/yw8oiv_UodM/s400/nadie.jpg" alt="" id="BLOGGER_PHOTO_ID_5189896506091635090" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SAPlSAKiAWI/AAAAAAAABFU/4moJw9ZnGvY/s1600-h/el_octavo_pasajero.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SAPlSAKiAWI/AAAAAAAABFU/4moJw9ZnGvY/s400/el_octavo_pasajero.jpg" alt="" id="BLOGGER_PHOTO_ID_5189243293105520994" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SAYTdAKiAXI/AAAAAAAABFc/-Xrot9-KKUU/s1600-h/insomnio_de_verano.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SAYTdAKiAXI/AAAAAAAABFc/-Xrot9-KKUU/s400/insomnio_de_verano.jpg" alt="" id="BLOGGER_PHOTO_ID_5189857009572381042" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SAO80QKiAVI/AAAAAAAABFM/S72UyTeS3h0/s1600-h/domador_de_pulgas.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SAO80QKiAVI/AAAAAAAABFM/S72UyTeS3h0/s400/domador_de_pulgas.jpg" alt="" id="BLOGGER_PHOTO_ID_5189198801539301714" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SAYZHQKiAYI/AAAAAAAABFk/Jers6-N1ZCk/s1600-h/subterranea.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SAYZHQKiAYI/AAAAAAAABFk/Jers6-N1ZCk/s400/subterranea.jpg" alt="" id="BLOGGER_PHOTO_ID_5189863232979992962" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SAPlSAKiAWI/AAAAAAAABFU/4moJw9ZnGvY/s1600-h/el_octavo_pasajero.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-3944142348179620236?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/3944142348179620236/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=3944142348179620236&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3944142348179620236'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3944142348179620236'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/04/cartulas-3.html' title='carátulas 3'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e0GwVJSRTtk/SANn8AKiAQI/AAAAAAAABEk/5LqHXFCq0nI/s72-c/la_guarida_valshar.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-3718486327069870920</id><published>2008-04-14T13:55:00.002+02:00</published><updated>2012-01-23T13:05:28.663+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><title type='text'>carátulas 2</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SANGdQKiAMI/AAAAAAAABEE/m1xVUUD7oSA/s1600-h/regreso_al_eden_1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SANGdQKiAMI/AAAAAAAABEE/m1xVUUD7oSA/s400/regreso_al_eden_1.jpg" alt="" id="BLOGGER_PHOTO_ID_5189068664030232770" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/SANGdgKiANI/AAAAAAAABEM/5S5fziRnEp8/s1600-h/regreso_al_eden_2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/SANGdgKiANI/AAAAAAAABEM/5S5fziRnEp8/s400/regreso_al_eden_2.jpg" alt="" id="BLOGGER_PHOTO_ID_5189068668325200082" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/SANIZQKiAPI/AAAAAAAABEc/16Xf-A8AX1w/s1600-h/el_edificio25.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/SANIZQKiAPI/AAAAAAAABEc/16Xf-A8AX1w/s400/el_edificio25.jpg" alt="" id="BLOGGER_PHOTO_ID_5189070794334011634" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/SANGdwKiAOI/AAAAAAAABEU/RQ-8DVr-Osw/s1600-h/la_caja_de_sarimek.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/SANGdwKiAOI/AAAAAAAABEU/RQ-8DVr-Osw/s400/la_caja_de_sarimek.jpg" alt="" id="BLOGGER_PHOTO_ID_5189068672620167394" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-3718486327069870920?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/3718486327069870920/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=3718486327069870920&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3718486327069870920'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/3718486327069870920'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/04/cartulas-2.html' title='carátulas 2'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e0GwVJSRTtk/SANGdQKiAMI/AAAAAAAABEE/m1xVUUD7oSA/s72-c/regreso_al_eden_1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-427578558014760410</id><published>2008-04-14T01:53:00.003+02:00</published><updated>2012-01-23T13:05:28.664+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><title type='text'>repositorio</title><content type='html'>Eliuk está preparando un "&lt;span style="font-style: italic;"&gt;Repositorio de Cover-Art&lt;/span&gt;"...&lt;br /&gt;&lt;br /&gt;¡¡¡qué puñetas es eso!!!&lt;br /&gt;&lt;br /&gt;Una galería de carátulas.&lt;br /&gt;&lt;br /&gt;¡Ahhh!&lt;br /&gt;&lt;br /&gt;Actualización:&lt;br /&gt;La galería se traslada &lt;a href="http://coverarts.deviantart.com/"&gt;aquí&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-427578558014760410?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/427578558014760410/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=427578558014760410&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/427578558014760410'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/427578558014760410'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/04/repositorio.html' title='repositorio'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-5277123305801286637</id><published>2008-04-08T18:14:00.003+02:00</published><updated>2012-01-23T13:05:28.665+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='soliloquios'/><title type='text'>Aventuras conversacionales, Ficciones interactivas y emparedados</title><content type='html'>Respecto al uso de uno u otro término para denominar a los juegos de texto, ocurre lo mismo que con el sandwich.&lt;br /&gt;&lt;br /&gt;Sandwich en "guiri" es un bocadillo. Hemos heredado la palabra pero para nosotros es sólamente un tipo de bocadillo, no cualquiera, en concreto un emparedado con pan de molde.&lt;br /&gt;&lt;br /&gt;El mismo caso ocurre con la palabra francesa baguette, exclusiva para nosotros de un cierto tipo de barra de pan fina y alargada, no de cualquiera.&lt;br /&gt;&lt;br /&gt;Algunos consideran ficción interactiva sinónimo de aventura conversacional y otros no. Quizá la mayoría no, hay muchas connotaciones. A raíz del nombre que se les dé parece que puede haber dos tipos diferentes de "juegos de texto", o de enfoques: aventuras conversacionales huele a puzzle, y ficciones interactivas huele a texto.&lt;br /&gt;&lt;br /&gt;Es curioso cómo el vocabulario va cambiando de significado, derivándose o especializándose.&lt;br /&gt;&lt;br /&gt;CAAD conserva la denominación "aventuras conversacionales" por tradición, pero por ejemplo en los blogs y nuevas páginas de parsers cada vez veo más neologismos como "relatos interactivos", "ficciones interactivas"... y parece que el binomio palábrico "aventura conversacional" va a quedar relegado a juegos clásicos apolillados de tipos barbudos.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/R_ukbg5SuHI/AAAAAAAABC4/h-a3D8rgoms/s1600-h/sanac.jpg"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/R_ukbg5SuHI/AAAAAAAABC4/h-a3D8rgoms/s200/sanac.jpg" alt="" id="BLOGGER_PHOTO_ID_5186920188440918130" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-5277123305801286637?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/5277123305801286637/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=5277123305801286637&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5277123305801286637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/5277123305801286637'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/04/aventuras-conversacionales-ficciones.html' title='Aventuras conversacionales, Ficciones interactivas y emparedados'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e0GwVJSRTtk/R_ukbg5SuHI/AAAAAAAABC4/h-a3D8rgoms/s72-c/sanac.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-2628389632554109602</id><published>2008-04-08T15:15:00.012+02:00</published><updated>2012-01-23T13:05:28.665+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retro'/><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><title type='text'>carátulas</title><content type='html'>Vistas las carátulas que ha hecho Planseldon en &lt;a href="http://erasmusreloaded.blogspot.com/"&gt;su blog&lt;/a&gt;.&lt;br /&gt;Se me ha antojado hacer lo mismo :D&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/R_twZA5SuDI/AAAAAAAABCY/KUOgMFKS9Ew/s1600-h/regresoaleden_caratula_CPC.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/R_twZA5SuDI/AAAAAAAABCY/KUOgMFKS9Ew/s400/regresoaleden_caratula_CPC.jpg" alt="" id="BLOGGER_PHOTO_ID_5186862970886600754" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/R_t_Ng5SuGI/AAAAAAAABCw/cy8BJ8qKvmQ/s1600-h/elgenio_cpc.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/R_t_Ng5SuGI/AAAAAAAABCw/cy8BJ8qKvmQ/s400/elgenio_cpc.jpg" alt="" id="BLOGGER_PHOTO_ID_5186879265992521826" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/R_zJnQ5SuJI/AAAAAAAABDI/nGo6ngIhEvU/s1600-h/caratula_llaves.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/R_zJnQ5SuJI/AAAAAAAABDI/nGo6ngIhEvU/s400/caratula_llaves.jpg" alt="" id="BLOGGER_PHOTO_ID_5187242547211319442" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/SAD2ajKr4xI/AAAAAAAABDw/8QXuv8hztsw/s1600-h/caratula_edificio25.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/SAD2ajKr4xI/AAAAAAAABDw/8QXuv8hztsw/s400/caratula_edificio25.jpg" alt="" id="BLOGGER_PHOTO_ID_5188417706707903250" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/R_zJng5SuKI/AAAAAAAABDQ/qnHPjvnrv9k/s1600-h/caratula_randolph.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/R_zJng5SuKI/AAAAAAAABDQ/qnHPjvnrv9k/s400/caratula_randolph.jpg" alt="" id="BLOGGER_PHOTO_ID_5187242551506286754" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/R_1MfjKr4uI/AAAAAAAABDY/0_ixD3EJWBA/s1600-h/caratula_sentirgargola.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/R_1MfjKr4uI/AAAAAAAABDY/0_ixD3EJWBA/s400/caratula_sentirgargola.jpg" alt="" id="BLOGGER_PHOTO_ID_5187386450700395234" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/R_twZw5SuEI/AAAAAAAABCg/UyjVPqogetg/s1600-h/disquete1.jpg"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/R_twZw5SuEI/AAAAAAAABCg/UyjVPqogetg/s400/disquete1.jpg" alt="" id="BLOGGER_PHOTO_ID_5186862983771502658" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/R_twaA5SuFI/AAAAAAAABCo/9yvEm8gVBC8/s1600-h/disquete2.png"&gt;&lt;img style="border: 0px none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/R_twaA5SuFI/AAAAAAAABCo/9yvEm8gVBC8/s400/disquete2.png" alt="" id="BLOGGER_PHOTO_ID_5186862988066469970" border="0" /&gt;&lt;/a&gt;Los disquettes ya los tenía hechos, también inspirados, por las simulaciones de cajas de &lt;a href="http://postaventura.blogspot.com/"&gt;Sarganar&lt;/a&gt; en este caso. El segundo sale en las curiosidades del final.&lt;br /&gt;Los screenshots del fake de Las Llaves del Tiempo son imágenes descartadas de Regreso al Edén.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-2628389632554109602?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/2628389632554109602/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=2628389632554109602&amp;isPopup=true' title='8 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/2628389632554109602'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/2628389632554109602'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/04/cartulas.html' title='carátulas'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e0GwVJSRTtk/R_twZA5SuDI/AAAAAAAABCY/KUOgMFKS9Ew/s72-c/regresoaleden_caratula_CPC.jpg' height='72' width='72'/><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-4177815631163143529</id><published>2008-04-04T00:08:00.001+02:00</published><updated>2012-01-23T13:05:28.666+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='soliloquios'/><title type='text'>jugar solo</title><content type='html'>tengo una idea para una aventura cachonda&lt;br /&gt;resulta que estás jugando tan tranquilo...&lt;br /&gt;y de pronto se abre una ventana gráfica estrecha arriba&lt;br /&gt;y se asoma un viejo&lt;br /&gt;y luego llegan más mirones&lt;br /&gt;que observan cómo juegas&lt;br /&gt;y te gritan cosas&lt;br /&gt;venga ahí ahí, examina la mesa!!!&lt;br /&gt;graba la posición, que te van a matar!!&lt;br /&gt;cosa así&lt;br /&gt;jajajajaja!&lt;br /&gt;:D&lt;br /&gt;como en los años 80 con las máquinas recreativas&lt;br /&gt;"presión sicológica".&lt;br /&gt;cuando había uno jugando y 10 mirando&lt;br /&gt;sería como jugar acompañado&lt;br /&gt;ahora jugamos solos en nuestras casas, delante de nuestros ordenadores&lt;br /&gt;sería recuperar el espíritu juvenil y de la escasez&lt;br /&gt;cuando no todo el mundo tenía ordenador, y el que lo tenía, se le llenaba la casa de amigos del cole&lt;br /&gt;no jugabas solo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-4177815631163143529?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/4177815631163143529/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=4177815631163143529&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/4177815631163143529'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/4177815631163143529'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/04/jugar-solo.html' title='jugar solo'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-6952958375397522510</id><published>2008-04-02T11:38:00.008+02:00</published><updated>2012-01-23T13:05:28.666+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><category scheme='http://www.blogger.com/atom/ns#' term='PSI'/><title type='text'>PSIS en mallas</title><content type='html'>Tengo dos proyectos abiertos donde juego con el movimiento masivo de PSIS. Cada uno tiene una peculiaridad distinta.&lt;br /&gt;&lt;br /&gt;El &lt;span style="font-weight: bold;"&gt;proyecto A&lt;/span&gt;, para la Xcomp seguramente, es una malla bastante regular, con un cuello de botella cuyo paso se regula un poco a lo bruto, redirigiendo a los PSIS cuando su meta requiere atravesarlo.&lt;br /&gt;Los límites de la malla se detectan de la misma forma bruta: a mano.&lt;br /&gt;Los PSIS se mueven por objetivos. Una vez definidos los límites del mapa y la redirección por el cuello de botella, basta con asignar a cada PSI un valor en su propiedades objetivox y objetivoy, y éste realizará el trayecto automáticamente.&lt;br /&gt;Cuando se cumple un objetivo se reasigna otro, y así mismo existen acontecimientos masivos que afectan a bastantes PSIS: relevos de guardias, reuniones, accesos a edificios...&lt;br /&gt;&lt;br /&gt;Los PSIS están contínuamente moviéndose por la malla de la ciudad, deteniéndose de vez en cuando unos turnos, con bastante autonomía.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/R_Natw5St4I/AAAAAAAABBA/mFxCgwrG5Og/s1600-h/mapamalla1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/R_Natw5St4I/AAAAAAAABBA/mFxCgwrG5Og/s400/mapamalla1.jpg" alt="" id="BLOGGER_PHOTO_ID_5184587338299389826" border="0" /&gt;&lt;/a&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;(&lt;/span&gt;&lt;a style="color: rgb(51, 51, 255);" href="http://www.youtube.com/watch?v=3fa_DGju-HY"&gt;Pulsa aquí&lt;/a&gt;&lt;span style="color: rgb(51, 51, 255);"&gt; para ver el movimiento en vídeo)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Los PSIS cuentan con un generador pseudoaleatorio de rostros (con varios tipos de ojos, cejas, narices, rostros, pelos, complexiones, distancias entre los rasgos...) y nombres.&lt;br /&gt;Antes de comenzar cada partida se define aleatoriamente una "semilla del kaos", y en base a ese valor se determinarán las cosas que son diferentes en cada partida, pero que permanecerán constantes en el transcurso de la misma. Incluso el jugador será diferente: su rostro, su nombre y su género.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e0GwVJSRTtk/R_NauQ5St6I/AAAAAAAABBQ/4ox5aQ1OGo0/s1600-h/genpers.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_e0GwVJSRTtk/R_NauQ5St6I/AAAAAAAABBQ/4ox5aQ1OGo0/s400/genpers.jpg" alt="" id="BLOGGER_PHOTO_ID_5184587346889324450" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;En el &lt;span style="font-weight: bold;"&gt;proyecto B&lt;/span&gt; los movimientos son más burdos, se basan en detectar como objetivo al jugador (cosa factible también en el proyecto A, aunque no vaya a cuento con la historia), olfateándole para converger hasta él y atacarle. El típico movimiento del Minotauro en su laberinto.&lt;br /&gt;Su punto fuerte es la automatización de los límites. En este caso la malla no es regular, sino que es un laberinto de libre diseño.&lt;br /&gt;Usando la librería Newflags.h, reservo 10x10=100 flags para crear una máscara con la forma del minilaberinto: 0=vacío, 1=sólido.&lt;br /&gt;De este modo, tanto en los movimientos del jugador como en los de los PSIS se puede saber automáticamente las salidas disponibles en cada casilla, hacia dónde se puede pasar y hacia dónde hay pared.&lt;br /&gt;&lt;br /&gt;Cada PSI es una unidad-horda de enemigos compuesta por un número de ellos. Debido a la anchura de los túneles del laberinto, no cabe más de una horda en cada casilla, o en cada frente (cuatro frentes posibles) desde el que se aborde al jugador, por lo que unas hordas así mismo hacen de obstáculo a otras hordas, que aguardarán detrás para atacar. No obstante, según liquidemos enemigos y a medida que quede espacio, se producirán transvases de indivíduos de las hordas que esperan detrás hacia las hordas en primera fila.&lt;br /&gt;Aunque tengo que reconocer que desde el punto de vista conversacional este proyecto es un coñazo de jugar, por lo que está orientado a una parodia.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e0GwVJSRTtk/R_NauA5St5I/AAAAAAAABBI/fBWSj_sQ43k/s1600-h/mapamalla2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_e0GwVJSRTtk/R_NauA5St5I/AAAAAAAABBI/fBWSj_sQ43k/s400/mapamalla2.jpg" alt="" id="BLOGGER_PHOTO_ID_5184587342594357138" border="0" /&gt;&lt;/a&gt;Los mapas son para testeo, no salen en la perspectiva del juego. Aunque en el primer proyecto incluiré un acceso al mapa, porque merece la pena poder observar el deambular de los ciudadanos.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-6952958375397522510?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/6952958375397522510/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=6952958375397522510&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6952958375397522510'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6952958375397522510'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/04/psis-en-mallas.html' title='PSIS en mallas'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/R_Natw5St4I/AAAAAAAABBA/mFxCgwrG5Og/s72-c/mapamalla1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-6607191865163296023</id><published>2008-02-10T18:20:00.001+01:00</published><updated>2012-01-23T13:05:28.667+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='gráficos'/><category scheme='http://www.blogger.com/atom/ns#' term='salidas'/><title type='text'>brújula</title><content type='html'>Voy a poner una brújula gráfica que indique las salidas de cada localidad. Para aligerar en la medida de lo posible la aparición de vocabulario repetitivo en las descripciones: cosas como "puedes ir hacia el Norte..." o un listado de salidas no requerido por el jugador con el comando pertinente.&lt;br /&gt;&lt;br /&gt;Aunque en muchos casos será inevitable que aparezcan puntos cardinales en la descripción. De otro modo, si por ejemplo a lo lejos vemos un molino, sin más, podríamos tener que pasar por otros sitios antes de -por descarte- saber que la dirección que conduce a él es noroeste.&lt;br /&gt;&lt;br /&gt;Para lugares sin referencias lejanas ni caminos, como un bosque cerrado, funcionará bien.&lt;br /&gt;-Ahorra texto repetitivo en la descripción.&lt;br /&gt;-Ahorra tener que escribir el comando salidas.&lt;br /&gt;-Ahorra jugar a los coches de choque para buscar salidas.&lt;br /&gt;&lt;br /&gt;Primero hice un par de diseños que se basaban en dibujar un centro y en torno a él las diversas ramas de las direcciones, una a una en función de que existieran esas salidas.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e0GwVJSRTtk/R684travnNI/AAAAAAAAAwg/DehiPP2q37k/s1600-h/bruj1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_e0GwVJSRTtk/R684travnNI/AAAAAAAAAwg/DehiPP2q37k/s400/bruj1.jpg" alt="" id="BLOGGER_PHOTO_ID_5165409655017413842" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Pero finalmente he optado por poner un gráfico con la brújula entera, con todos los puntos cardinales, arriba y abajo, y entrar y salir; y oscurecer con PNG transparentes las salidas no disponibles. Es más sencillo y me permite cambiar los colores de la brújula editando un único gráfico.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e0GwVJSRTtk/R684ubavnOI/AAAAAAAAAwo/EL_dIBQM2hk/s1600-h/bruj2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_e0GwVJSRTtk/R684ubavnOI/AAAAAAAAAwo/EL_dIBQM2hk/s400/bruj2.jpg" alt="" id="BLOGGER_PHOTO_ID_5165409667902315746" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Para ello creo una ventana gráfica nueva en un lateral: gg_ventana2, y aprovecho la librería &lt;a href="http://ifarchive.org/if-archive/programming/inform6/library/contributions/newflags.h"&gt;NewFlags.h&lt;/a&gt;, que por otro lado voy a utilizar para más cosas.&lt;br /&gt;La función que dibuja la brújula será llamada cada vez que se repinten los gráficos, al cambiar de localidad, o manualmente cuando un evento modifique las salidas.&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;blockquote&gt;[dibujabrujula i loc;&lt;br /&gt;loc = location;&lt;br /&gt;&lt;br /&gt;!dibujo la brújula entera:&lt;br /&gt;glk_image_draw(gg_ventana2,GRAF_brujula_base,5,15);&lt;br /&gt;&lt;br /&gt;!pongo a 0 los flags que almacenarán las salidas viables:&lt;br /&gt;for(i=10:i&amp;lt;22:i++)ClearFlag(i);&lt;br /&gt;&lt;br /&gt;!busco direcciones viables... y VISIBLES,&lt;br /&gt;!parte de código copiado de la rutina de listado de salidas de la  librería en español:&lt;br /&gt;if(location~=TheDark)&lt;br /&gt;objectloop (i in compass)&lt;br /&gt;{&lt;br /&gt;if (loc provides (i.door_dir) &amp;amp;&amp;amp; metaclass (loc.(i.door_dir)) ~= nothing or string)&lt;br /&gt;{&lt;br /&gt;switch(i){!sw&lt;br /&gt;nw_obj: setflag(15);&lt;br /&gt;ne_obj: setflag(14);&lt;br /&gt;sw_obj: setflag(17);&lt;br /&gt;se_obj: setflag(16);&lt;br /&gt;&lt;br /&gt;n_obj: setflag(10);&lt;br /&gt;s_obj: setflag(11);&lt;br /&gt;e_obj: setflag(12);&lt;br /&gt;w_obj: setflag(13);&lt;br /&gt;&lt;br /&gt;in_obj: setflag(18);&lt;br /&gt;out_obj: setflag(19);&lt;br /&gt;u_obj: setflag(20);&lt;br /&gt;d_obj: setflag(21);&lt;br /&gt;}!sw&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;!sombreo las direcciones no disponibles con diversos PNG trasnparentes&lt;br /&gt;!ajustados a las formas de cada parte de la brújula:&lt;br /&gt;for(i=10:i&amp;lt;22:i++){&lt;br /&gt;if(Flagoff(i))switch (i){!sww&lt;br /&gt;10: glk_image_draw(gg_ventana2,GRAF_brujula_sombra0,65,14);&lt;br /&gt;11: glk_image_draw(gg_ventana2,GRAF_brujula_sombra0,65,94);&lt;br /&gt;12: glk_image_draw(gg_ventana2,GRAF_brujula_sombra90,4,75);&lt;br /&gt;13: glk_image_draw(gg_ventana2,GRAF_brujula_sombra90,84,75);&lt;br /&gt;&lt;br /&gt;14: glk_image_draw(gg_ventana2,GRAF_brujula_sombra45,83,34);&lt;br /&gt;15: glk_image_draw(gg_ventana2,GRAF_brujula_sombra135,25,34);&lt;br /&gt;16: glk_image_draw(gg_ventana2,GRAF_brujula_sombra135,83,93);&lt;br /&gt;17: glk_image_draw(gg_ventana2,GRAF_brujula_sombra45,25,91);&lt;br /&gt;&lt;br /&gt;18: glk_image_draw(gg_ventana2,GRAF_brujula_sombracuad,162,95);&lt;br /&gt;19: glk_image_draw(gg_ventana2,GRAF_brujula_sombracuad,162,132);&lt;br /&gt;20: glk_image_draw(gg_ventana2,GRAF_brujula_sombracuad,162,16);&lt;br /&gt;21: glk_image_draw(gg_ventana2,GRAF_brujula_sombracuad,162,55);&lt;br /&gt;}!sww&lt;br /&gt;}&lt;br /&gt;rtrue;&lt;br /&gt;];&lt;/blockquote&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-6607191865163296023?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/6607191865163296023/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=6607191865163296023&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6607191865163296023'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6607191865163296023'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/02/brjula.html' title='brújula'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e0GwVJSRTtk/R684travnNI/AAAAAAAAAwg/DehiPP2q37k/s72-c/bruj1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-342340287907174395</id><published>2008-02-05T15:34:00.001+01:00</published><updated>2012-01-23T13:05:28.668+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><category scheme='http://www.blogger.com/atom/ns#' term='parsing'/><category scheme='http://www.blogger.com/atom/ns#' term='PSI'/><title type='text'>conversaciones con PSIs</title><content type='html'>Intento sacar un buen sistema de conversación con &lt;span style="font-weight: bold;"&gt;PSI&lt;/span&gt;s, para lo cual el sistema de lectura de objetos de Inform me resulta fatal. Lo suyo sería implementar un modo de parseado alternativo dentro del propio parser, un sistema &lt;span style="font-weight: bold;"&gt;PAWSlike&lt;/span&gt; de reconocimiento de cadenas de texto, de chorizos de texto no acotados necesariamente por espacios ni por palabras completas.&lt;br /&gt;&lt;br /&gt;Mi antiguo parser en C, &lt;span style="font-weight: bold;"&gt;DISAC&lt;/span&gt; funcionaba así:&lt;br /&gt;Tenía 4 tablas de vocabulario: Verbos, Nombres, Objetos y Adjetivos, teniendo Verbos la obligación de ser la primera cadena de la orden, y Objetos estando en principio reservada para objetos cogibles.&lt;br /&gt;El parser buscaba coincidencias letra a letra sin importarle los caracteres que sobraran: signos de puntuación, espacios, sufijos, declinaciones, palabras extra... Cuando los espacios fueran importantes, sobre todo en palabras cortas que pudieran estar contenidas en otras, el espacio iba en la propia definición de vocabulario de esa palabra, con un cuadradito, tal que '#asi#'&lt;br /&gt;De modo que era vocabulario válido cosas como:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;'bebe', 'di#', 'por#que', 'te#llama', 'destruy', 'llave#roja', '#con#', '#en#'&lt;/span&gt;...&lt;br /&gt;&lt;br /&gt;No hacía falta ni introducir las palabras completas ni una a una: las "palabras" eran a veces cachos o trozos de frase.&lt;br /&gt;&lt;br /&gt;A la hora de buscar coincidencias, se jugaba con cuatro posibles valores de cada tabla:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;1- Vocabulario concreto encontrado.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;2- Indiferente de si ha habido coincidencia.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;3- No debe haber habido coincidencia.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;4- Debe haber habido alguna palabra de esa lista detectada, da igual la que sea.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;De cara a las conversaciones, esto permitía jugar con términos y trozos de frase por los que existiera una alta probabilidad de que el jugador tuviera que pasar para formular una pregunta concreta.&lt;br /&gt;Por ejemplo, para detectar una pregunta de ¿cómo te llamas?, la mayor parte de los casos con tuteo se podrían cazar definiendo dos cadenas:&lt;br /&gt;&lt;br /&gt;'te#llama' -&gt; Cómo te llamas, cómo te llaman.&lt;br /&gt;'tu#nombre' -&gt; cúal es tu nombre, dime tu nombre, quiero saber tu nombre.&lt;br /&gt;&lt;br /&gt;Teniendo en cuenta los posibles errores:&lt;br /&gt;-te llaman para cenar, no quiero saber cómo te llamas, tu nombre es muy feo.&lt;br /&gt;&lt;br /&gt;Pero prefiero que se conceda el beneficio de la duda.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Volvamos a Inform, aquí existe la librería &lt;span style="font-weight: bold;"&gt;Etemas&lt;/span&gt; que permite jugar con UN objeto con tres modos distintos de parsing:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;-parsing estricto: Deben aparecer todas las palabras de vocabulario del objeto-tema&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;-parsing normal: Pueden aparecer algunas, aunque falla si metes palabras no reconocidas delante.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;-parsing flexible: Con que aparezca una vale, las palabras desconocidas se ignoran&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;El problema es que las palabras deben estar enteras y no contener espacios, cuando ya he explicado por qué creo más útil un vocabulario definido a trozos e incluso incompleto: 'por#que' 'donde#est' ...&lt;br /&gt;&lt;br /&gt;Descartando una inteligencia artificial capaz de reconocer las gramáticas, cosa que hace el parser pero en un argot limitado a órdenes, veo más viable basarse en trozos. Como cuando estamos rodeados de ruido y tan sólo escuchamos fragmentos de las palabras de nuestro interlocutor, y a partir de trozos clave -y del contexto- tratamos de recomponer el mensaje completo.&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;He hecho un apaño en &lt;span style="font-weight: bold;"&gt;Etemas&lt;/span&gt; para poder jugar con cinco listas de vocabulario independientes por objeto, y barajo incluir más de un objeto en el parsing para poder tener 5+5+5... de forma independiente.&lt;br /&gt;Dos o tres sectores de vocabulario: uno para órdenes y encabezados de preguntas (averiguar si el jugador quiere saber dónde, cuándo, por qué, o si ordena que se vaya, que se quede, que vaya con él, que le dé algo); y el otro para saber el sitio, el objeto... etc.&lt;br /&gt;El orden en el que se escriban dará igual, los diversos objetos se sacarán del mismo texto barriéndolo repetidamente, será lo mismo escribir: di a pepe dame la manzana, que di a pepe la manzana dame&lt;br /&gt;&lt;br /&gt;Para eso, se añade a Etemas un cuarto modo de parsing: &lt;span style="font-weight: bold;"&gt;parsing_multiple&lt;/span&gt;, basado en el parsing_flexible:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;font-size:85%;"  &gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;font-size:85%;"  &gt;[ FlexIntnombreMultiple obj u i w n;&lt;br /&gt;for ( i = 0 : i  &amp;lt; consult_words : i++ ) {&lt;br /&gt;w=NextWordStopped();&lt;br /&gt;if( u== 1 )if (WordInProperty (w, obj, name)) n++;&lt;br /&gt;if( u== 2 )if (WordInProperty (w, obj, name_f)) n++;&lt;br /&gt;if( u== 3 )if (WordInProperty (w, obj, name_mp)) n++;&lt;br /&gt;if( u== 4 )if (WordInProperty (w, obj, name_fp)) n++;&lt;br /&gt;if( u== 5 )if (WordInProperty (w, obj, adjectives)) n++; }&lt;br /&gt;return n; ];&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Ésta función será llamada con dos parámetros, el objeto obj, y un valor 'u' que indica qué lista de vocabulario de ese objeto se consultará. En una primera fase se consultarán todas y se sumarán todos los valores para descubrir el objeto-tema ganador... excepto la lista de adjetivos, cuya puntuación no será tenida en cuenta, y si aparece en la función es porque sí que será necesaria para la segunda fase. Se puede ver en AveriguarTema cómo se realiza la suma disgregada como si se tratara de un objeto-tema normal con una sola lista name.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;font-size:85%;"  &gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;font-size:85%;"  &gt;[ AveriguarTema T i n k max tmax nn;&lt;br /&gt;max=0; ! La mejor puntuación de momento&lt;br /&gt;tmax=0; ! El objeto correspondiente a esta puntuación&lt;br /&gt;k=wn;&lt;br /&gt;objectloop (i in T) {&lt;br /&gt;&lt;br /&gt;!...etc&lt;br /&gt;&lt;br /&gt;if (i has parsing_multiple){&lt;br /&gt;wn=consult_from; nn=0;n=0;&lt;br /&gt;nn=FlexIntnombreMultiple (i,1);&lt;br /&gt;n=n+nn;wn=consult_from;&lt;br /&gt;nn=FlexIntnombreMultiple (i,2);&lt;br /&gt;n=n+nn;wn=consult_from;&lt;br /&gt;nn=FlexIntnombreMultiple (i,3);&lt;br /&gt;n=n+nn;wn=consult_from;&lt;br /&gt;nn=FlexIntnombreMultiple (i,4);&lt;br /&gt;n=n+nn;wn=consult_from;&lt;br /&gt;! nn=FlexIntnombreMultiple (i,5);&lt;br /&gt;! n=n+nn; !adjectives no suma de cara a la palabra ganadora&lt;br /&gt;}&lt;br /&gt;!...&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Y ahora la fase 2, justo antes de devolver el objeto ganador, analizamos nuevamente ese objeto, pero ésta vez dejando constancia de qué listas de ese objeto contienen vocabulario escrito por el jugador y cuales no:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;font-size:85%;"  &gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;font-size:85%;"  &gt;!... if(tmax&gt;0){&lt;br /&gt;i=1;&lt;br /&gt;wn=consult_from; !name&lt;br /&gt;if(FlexIntnombreMultiple(tmax,1)&gt;0)i=i*2;&lt;br /&gt;wn=consult_from; !name_f&lt;br /&gt;if(FlexIntnombreMultiple(tmax,2)&gt;0)i=i*3;&lt;br /&gt;wn=consult_from; !name_mp&lt;br /&gt;if(FlexIntnombreMultiple(tmax,3)&gt;0)i=i*5;&lt;br /&gt;wn=consult_from; !name_fp&lt;br /&gt;if(FlexIntnombreMultiple(tmax,4)&gt;0)i=i*7;&lt;br /&gt;wn=consult_from; !adjectives&lt;br /&gt;if(FlexIntnombreMultiple(tmax,5)&gt;0)i=i*11;&lt;br /&gt;}&lt;br /&gt;switch (T){&lt;br /&gt;temas:temas.capciones=i;&lt;br /&gt;temas2:temas2.capciones=i;&lt;br /&gt;!temas3:temas3.capciones=i; !...etc&lt;br /&gt;}&lt;br /&gt;return(tmax);   ! Y retornar el mejor hallado&lt;br /&gt;                          ! Observar que no hay intento de aclarar&lt;br /&gt;                          ! ambigüedades si dos o más coincidieran en&lt;br /&gt;                          ! puntuación&lt;br /&gt;];&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Usamos números primos para otorgar el valor final de la variable(propiedad) temas.capciones.&lt;br /&gt;Posteriormente, podremos jugar con ese valor, por ejemplo:&lt;br /&gt;Si temas.capciones vale 2, significa que sólo ha habido coincidencia en la lista de name.&lt;br /&gt;Si temas.capciones vale 66, significa que ha habido coincidencias en la listas de name, name_f y adjectives.&lt;br /&gt;&lt;br /&gt;Aquí un ejemplo de un tema, con sus valores de consulta:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;font-size:85%;"  &gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;font-size:85%;"  &gt;xTema tSaludos "" Temas&lt;br /&gt;with name 'hola' 'saludos' 'tal' 'como',&lt;br /&gt;name_f 'dias' 'noches' 'tardes',&lt;br /&gt;name_mp 'adios' 'voy' 'chao' 'adios' 'luego' 'vista' 'otra' 'vemos',&lt;br /&gt;name_fp 'haces' 'haciendo' 'pasa' 'ocurre' 'pasado' 'ocurrido',&lt;br /&gt;adjectives 'que' 'estas' 'hasta' 'buenas' 'buenos',&lt;br /&gt;;&lt;br /&gt;! (i==2) !hola&lt;br /&gt;! (i==22) !qué tal estás&lt;br /&gt;! (i==5 || i==15) !Adios&lt;br /&gt;! (i==77) !¿Qué haces?&lt;br /&gt;! (i==33) !Buenos días, tardes, noches&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Es conveniente al menos una segunda vuelta, para detectar otro objeto de la misma forma, y poder elaborar estructuras más complejas con objetos INDEPENDIENTES. Con una sola vuelta, aunque cada objeto tenga 5 listas, éstas dependen de estar contenidas en el mismo objeto.&lt;br /&gt;&lt;br /&gt;Ejemplo de objeto de primera vuelta:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;xTema tIR "" Temas1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;with name 'vete' 've' 'ponte' 'colocate' 'situate' 'subete' 'sube' 'dirigete' 'largate' 'marchate' 'metete' 'entra' 'pirate' 'sal',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;    name_f 'vente' 'ven' 'acompaname',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;    name_mp 'espera' 'esperame' 'quedate' 'aguarda',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;    !name_fp 'xxx',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;    !adjectives 'xxx',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;!(i%2==0) !vete, ve a...&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;!(i%3==0) !ven, acompañame&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;!(i%5==0) !espera&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;!(i%7==0) ! sin uso aún&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;!(i%11==0) ! sin uso aún&lt;/span&gt;&lt;/blockquote&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;" &gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Ejemplo de objeto de segunda vuelta:&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="color: rgb(0, 102, 0);"&gt;xTema tsitios1 "" Temas2&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;with name 'rio',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;    name_f 'camino',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;    name_mp 'casa',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;    name_fp 'norte',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;    adjectives 'sur',&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;!(i%2==0) -&gt; en algún río&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;!(i==6) -&gt; en/a el camino del río&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;!(i==105) -&gt; en/a el camino de la casa de pepe&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;!(i==35) -&gt; en/a la casa del norte&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;!(i==55) -&gt; en/a la casa del sur.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;!(i%2==0) -&gt; en algún río&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;!(i%35==0) -&gt; en la casa del norte, o en el camino de la casa del norte, o al sur de la casa del norte, o en el río de la casa del norte&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;!...etc&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;Los lugares que no quepan aquí se meten en otro tema del mismo objeto Temas y listo.&lt;br /&gt;Se podría crear una tercera vuelta de consulta, una cuarta... todos los objetos que se quieran a costa de velocidad de parseado, simplemente llamando repetidamente a AveriguarTemas(), con objetos contenedores de temas independientes, y previendo en el código el almacenamiento en variables diferentes del objeto ganador de cada ronda, así como sus capciones, para luego poder consultarlos en la función de conversación.&lt;br /&gt;&lt;br /&gt;Pongamos que tenemos tres objetos contenedores de temas:&lt;br /&gt;Temas1, Temas2, Temas3&lt;br /&gt;Cuyos objetos ganadores se almacenan en las variable: To1, To2 y To3&lt;br /&gt;Y las capciones en: Cap1, Cap2, Cap3&lt;br /&gt;Podríamos tener un código de conversación tal que:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;font-size:85%;"  &gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 102, 0);font-family:courier new;font-size:85%;"  &gt;[xxxhablarSub tema i;&lt;br /&gt;print "", (name)noun, " ";&lt;br /&gt;print "responde: ";&lt;br /&gt;to1=AveriguarTema(Temas1);&lt;br /&gt;to2=AveriguarTema(Temas2);&lt;br /&gt;to3=AveriguarTema(Temas3);&lt;br /&gt;&lt;br /&gt;if(to1==tIR){!a&lt;br /&gt;if(to2==tsitios1){!a1&lt;br /&gt;  !entiende "espera" y "casa" y "norte"&lt;br /&gt;  if(cap1%5==0 &amp;amp;&amp;amp; cap2==35)"Me estás diciendo que espere en la casa del norte.";&lt;br /&gt;}!a1&lt;br /&gt;!entiende "ve" y ningún sitio de la lista, luego suponemos un ¡márchate!&lt;br /&gt;if(cap1%2==0 &amp;amp;&amp;amp; to2==0)"Me estás diciendo que me vaya.";&lt;br /&gt;}!a&lt;br /&gt;if(to2==tsitios1){ if (cap2%3==0)"Quieres saber algo referente un camino ¿eh?";}&lt;br /&gt;!...etc&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;Otra corrección es unificar el sistema de conversación, que en Inform es disparatado, estando dividido en decir, preguntar sobre, ordenar, pedir...&lt;br /&gt;&lt;br /&gt;Mi sistema ideal es: PERSONAJE, MENSAJE&lt;br /&gt;aunque de momento lo he unificado como: DI A PERSONAJE MENSAJE&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-342340287907174395?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/342340287907174395/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=342340287907174395&amp;isPopup=true' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/342340287907174395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/342340287907174395'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/02/conversaciones-con-psis.html' title='conversaciones con PSIs'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7416527731872632017.post-6463979874860277633</id><published>2008-02-04T23:57:00.000+01:00</published><updated>2012-01-23T13:05:28.668+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ac'/><title type='text'>inauguración</title><content type='html'>Informitas e informitos, bienvenidos todos a la casa del compilador...&lt;br /&gt;[Corten... pareces un cura, tío]&lt;br /&gt;TOMA 2!&lt;br /&gt;&lt;br /&gt;Pues nada, aquí, que me voy a hacer un blog de mis cosillas con Inform...&lt;br /&gt;[¡Corten!... ahora parece el diario de una adolescente]&lt;br /&gt;TOMA 3!&lt;br /&gt;&lt;br /&gt;Hola, soy Jarel, me recordarán de aventuras como Las Llaves del Tiempo o Regreso al Edén...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7416527731872632017-6463979874860277633?l=informatetu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://informatetu.blogspot.com/feeds/6463979874860277633/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7416527731872632017&amp;postID=6463979874860277633&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6463979874860277633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7416527731872632017/posts/default/6463979874860277633'/><link rel='alternate' type='text/html' href='http://informatetu.blogspot.com/2008/02/inauguracin.html' title='inauguración'/><author><name>Herel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://2.bp.blogspot.com/-ITEC7bkmrO0/TqWj3oAsHCI/AAAAAAAAEU4/eljga6buN50/s220/minimdt.jpg'/></author><thr:total>2</thr:total></entry></feed>
