Subtle tricks of light in the forest
0

Wednesday before sunrise, warm spring, no school today. Many things to do, but later.

I get out of the house very quietly, trying not to wake Mom. Then I stand still... it's so dark outside! It's all right, the sun will rise soon. It's all right. I run into the dark. I pass the church, the cemetery, I turn sharply right after the last house.

Alone in the forest!

I'll do all the stuff later. This is what's urgent now.

Tricks of light in the forest By Pseudavid

For instructions, click:

The end of the village

Loading, please wait

The end of the village
Directions:
Save game as:
Really restart this game?
Restore saved game
/* CAMBIO */-->

Display options

font:

font size:

Words and programming: Pseudavid (2022-2023).

This game was made with Gruescript. The author wishes to thank Robin Johnson for creating it.

Testing: Dawn Sueoka | Deborah Sherwood | Francesco Ariis | Jade | Larry Horsfield | Mike Russo | Milo van Mesdag | Ruber Eaglenest | Sarah Willson

Other tools: Hex Kit | HPS Cartography Set

### Inicialización ## Inicialización game Tricks of light in the forest id pseudavid-tricksoflight author Pseudavid version 1.0.0 person 1 examine on conversation off wait off # colores # colour page_background eeeeee # colour main_background eeeeee # colour room_background ddd # colour inventory_background ccc colour main_text 111 colour main_text_old 444 colour main_prompt 222 colour main_prompt_old 555 colour room_text 222 colour inventory_text 222 colour room_button aaa3 colour examine_button aaa3 colour inventory_button aaa3 colour save_button aaa3 colour room_button_text 333 colour examine_button_text 333 colour inventory_button_text 333 colour save_button_text 333 colour instructions_button aaa3 colour instructions_button_text 000 # mensajes personalizados localize exits Directions&colon; # ejecutar funciones iniciales run shufflethings ambient_photo_source ambient_photos run shufflethings ambient_sounds_source ambient_sounds run shufflethings ambient_fog_source ambient_fog run shufflethings ambient_smellintheair_source ambient_smellintheair run shufflethings ambient_physical_source ambient_physical run shufflethings blockingboar_text_source blockingboar_text run shufflethings ambient_godeep_lastpart_source ambient_godeep_lastpart run shufflethings ambient_photos_lastpart_source ambient_photos_lastpart run shufflethings ambient_windtower_source ambient_windtower run shufflethings invadingspecies_source invadingspecies run actionsbeforeboar_initialize # generar turno final de la niebla random randnum 6 add fogfinalturn $randnum # modo prueba run testingmodecheck ## Inicializar variables # Variables para el mecanismo injertador var proctorun none var procschedule none var focus none var focuscount 0 # Contador para la inserción de mensajes ambientales var ambientcount 0 # Límite para la inserción de mensajes ambientales. 0: cada turno. 1: cada dos turnos var ambientcountlimit 0 # Probabilidad de insertos ambientales (chance 1 ambientinsertchance) var ambientinsertchance 2 # Saber si en un turno ya se han injertado textos ambientales o eventos programados var thisturnprintedscheduleorambient false # Variables para el verbo listen var listenproc none var listendisablecount 0 # Turnos var turncount 0 # Variable genérica para reutilizar con valor aleatorio var randnum 0 # Fase global var globalstage fog var fogfinalturn 19 # Cambio de fase: jabalí var actionsbeforeboar_possible 0 var actionsbeforeboar_real 0 var boarapparitions none # esta variable servirá para la progresión de las apariciones del jabalí: none > firstgrunt > secondgrunt # Gráficos var currentmap none var currentframe none var currentbg none # Interruptor del modo de pruebas var testingmode false ## Procedimientos proc testingmodecheck is testingmode true open startroom out playground # Contador de acciones posibles antes de aparecer el jabalí # Estas acciones están clasificadas con la etiqueta actionbeforeboar en cada cosa fotografiable, tocable, etc. que corresponde a dicha fase del juego. En 2022, Gruescript no puede contar cosas con una combinación de dos etiquetas, pero se pueden hacer bucles. # El siguiente procedimiento simplemente ejecuta los múltiples bucles: proc actionsbeforeboar_initialize run actionsbeforeboar_countphotos run actionsbeforeboar_counttouch run actionsbeforeboar_countsmell run actionsbeforeboar_countplay run actionsbeforeboar_countbarefeet assign actionsbeforeboar_real $actionsbeforeboar_possible # Los procedimientos siguientes buscan en todas las etiquetas relacionadas con acciones relevantes y, en cada cosa etiquetada, comprueban si también existe la etiqueta actionbeforeboar, y si existe, incrementan el contador en 1: proc actionsbeforeboar_countphotos all tagged photographable has $this actionbeforeboar add actionsbeforeboar_possible 1 proc actionsbeforeboar_counttouch all tagged touchable has $this actionbeforeboar add actionsbeforeboar_possible 1 proc actionsbeforeboar_countsmell all tagged smellable has $this actionbeforeboar add actionsbeforeboar_possible 1 proc actionsbeforeboar_countplay all tagged playable has $this actionbeforeboar add actionsbeforeboar_possible 1 proc actionsbeforeboar_countbarefeet all tagged barefeet has $this actionbeforeboar add actionsbeforeboar_possible 1 ## Cosas # generaltags: contenedor para ciertas etiquetas de funcionamiento de efectos globales # permite comprobaciones sencillas, por ejemplo: has generaltags hideactions, que oculta algunas acciones del interfaz thing generaltags a dummy thing for quick tag checks tags justaplaceholder proc hideactions_cancel untag generaltags hideactions # printedtext # aprovechando la capacidad de etiquetar cosas, creo una cosa con etiquetas para tener una lista de textos impresos que se pueda utilizar para condiciones thing printedtext ### JAVASCRIPT Y CSS ## Javascript y CSS # Utilizamos la condición js de Gruescript para añadir y quitar clases al elemento body del HTML. # js tiene fuertes limitaciones. Si se ponen líneas de Gruescript debajo de js en el mismo bloque, no se ejecutan. Todo el Javascript tiene que incluirse en la misma línea js. Definir funciones en una línea js no funciona, y tampoco usar variables de Gruescript. rule #CSS fog is testingmode false has $room cssfog write currentbg bg-fog js bgchange('bg-fog') rule #CSS sunrise is testingmode false has $room csssunrise write currentbg bg-sunrise js bgchange('bg-sunrise') rule #CSS openair is testingmode false has $room cssopenair write currentbg bg-openair js bgchange('bg-openair') rule #CSS hut is testingmode false has $room csshut write currentbg bg-hut js bgchange('bg-hut') rule #CSS tower is testingmode false has $room csstower write currentbg bg-tower js bgchange('bg-tower') rule #mapa roca roja at redrockpath_fog is globalstage fog !has printedtext map_redrockpath_fog tag printedtext map_redrockpath_fog write currentmap a38d js mapchange('a38d') rule #mapa bifurcación at forkingpath_fog is globalstage fog !has printedtext map_forkingpath_fog tag printedtext map_forkingpath_fog write currentmap hg58 js mapchange('hg58') rule #mapa reforestación solo at reforestation_fog is globalstage fog !has printedtext map_reforestation_fog !has printedtext map_cavity_fog tag printedtext map_reforestation_fog write currentmap 8f3a js mapchange('8f3a') rule #mapa cavidad solo at bigholepath_fog is globalstage fog !has printedtext map_reforestation_fog !has printedtext map_cavity_fog tag printedtext map_cavity_fog write currentmap jg90 js mapchange('jg90') rule #mapa doble en reforestación at reforestation_fog is globalstage fog !has printedtext map_reforestation_fog has printedtext map_cavity_fog tag printedtext map_reforestation_fog write currentmap 12ab js mapchange('12ab') rule #mapa doble en cavidad at bigholepath_fog is globalstage fog has printedtext map_reforestation_fog !has printedtext map_cavity_fog tag printedtext map_cavity_fog write currentmap 12ab js mapchange('12ab') # el siguiente mapa aparece en evento: fin de la niebla rule #mapa con jabalí here blockingboar !has printedtext map_blockingboar tag printedtext map_blockingboar write currentmap it53 js mapchange('it53') # el siguiente mapa aparece en evento: solución al jabalí rule #mapa con roca alta at path_highrock !has printedtext map_highrock tag printedtext map_highrock write currentmap 1mmb js mapchange('1mmb') rule #mapa en turbina at path_windtower !has printedtext map_windtower tag printedtext map_windtower write currentmap 3sfw js mapchange('3sfw') # el siguiente mapa aparece en evento: cruzarse con los lagartos, librarse de los lagartos, final rule #mapa final at minemouth has minemouth looked !has printedtext map_final tag printedtext map_final write currentmap 752d js mapchange('752d') ## mapa # Procedimiento: mapset # Este procedimiento define la imagen del mapa en todos los turnos, pero sin mostrarlo thing mapvalues prop it53 mapset1 prop bvc6 mapset2 prop 1mmb mapset3 prop g654 mapset4 prop 3sfw mapset5 prop nxc3 mapset6 prop 0plk mapset7 prop 752d mapset8 prop l9u8 mapset9 prop 12ab mapset10 prop 8f3a mapset11 prop jg90 mapset12 prop hg58 mapset13 prop a38d mapset14 prop 6589k mapset15 proc mapset !is currentmap none run mapvalues.$currentmap proc mapset1 js mapchange( "it53" , false ) proc mapset2 js mapchange( "bvc6" , false ) proc mapset3 js mapchange( "1mmb" , false ) proc mapset4 js mapchange( "g654" , false ) proc mapset5 js mapchange( "3sfw" , false ) proc mapset6 js mapchange( "nxc3" , false ) proc mapset7 js mapchange( "0plk" , false ) proc mapset8 js mapchange( "752d" , false ) proc mapset9 js mapchange( "l9u8" , false ) proc mapset10 js mapchange( "12ab" , false ) proc mapset11 js mapchange( "8f3a" , false ) proc mapset12 js mapchange( "jg90" , false ) proc mapset13 js mapchange( "hg58" , false ) proc mapset14 js mapchange( "a38d" , false ) proc mapset15 js mapchange( "6589k" , false ) ### VERBOS GENERICOS ## Verbos verb go forest prompt walk further into the forest continue verb go home prompt walk towards home continue # verbo examine al final del juego # necesario que vaya antes que todos los demás verb examine at interruption has interruption endingsamplechoose lt $r 4 add r 1 continue verb examine at interruption has interruption endingsamplechoose say {$this.List}. {endchooseexamine.$r} thing endchooseexamine prop 1 Is it a good choice? What do I really want to tell? prop 2 Am I going to tell the truth about how I found this? prop 3 I don't know what I should do. I could ask Mom... Dad... better not asking. prop 4 # verbo examine añade etiquetas verb examine has $this photographable tag $this photoverb continue verb examine has $this smellable tag $this smellverb continue verb examine has $this touchable tag $this touchverb continue verb examine has $this collectable tag $this collectverb continue verb examine has $this playable tag $this playverb continue verb examine say {$this.desc} # verbo intransitivo escuchar que se activa en respuesta a ruidos setverb listen intransitive !is listenproc none verb listen run $listenproc assign listenproc none assign listendisablecount 0 rule # desactivar el verbo listen is listendisablecount 0 assign listenproc none rule # desactivar el verbo listen > reducir contador !is listenproc none add listendisablecount -1 proc enablelisten pr assign listenproc $pr assign listendisablecount 1 # verbo fotografiar setverb photograph has $this photoverb !has $this photographed !has generaltags hideactions !has $room hideactions # !has generaltags phonestatus_brokenknown # verb photograph has generaltags phonestatus_brokenunknown !has generaltags phonestatus_brokenknown say I take the phone out of my pocket and discover a spider web of delicate cracks across its screen. But it works! The camera works. say I notice an alert telling me the phone is offline. I try some apps... Phone calls are not working! Messages neither. ⚞ <strong>No connection</strong> ⚟ # *** # say How could this happen? Of course. I always do the silliest thing, specially since I live here. I always put the phone in the back pocket, and I fell on my butt when I saw the boar. tag generaltags phonestatus_brokenknown untag generaltags phonestatus_brokenunknown verb photograph !is $this.photo say {$this.photo} tag $this photographed # El verbo hace correr los contadores de la fase de niebla is globalstage sunrise add actionsbeforeboar_real -1 assign actionsbeforeboar_turnssince 0 verb photograph is $this.photo say I take some photos of the {$this}. tag $this photographed # El verbo hace correr los contadores de la fase de niebla is globalstage sunrise add actionsbeforeboar_real -1 assign actionsbeforeboar_turnssince 0 # verbo tocar setverb touch has $this touchverb !has generaltags hideactions !has $room hideactions verb touch !is $this.touch say {$this.touch} is globalstage sunrise add actionsbeforeboar_real -1 assign actionsbeforeboar_turnssince 0 verb touch is $this.touch say I touch {$this}. # El verbo hace correr los contadores de la fase de niebla is globalstage sunrise add actionsbeforeboar_real -1 assign actionsbeforeboar_turnssince 0 # verbo oler setverb smell has $this smellverb !has generaltags hideactions !has $room hideactions verb smell !is $this.smell say {$this.smell} is globalstage sunrise add actionsbeforeboar_real -1 assign actionsbeforeboar_turnssince 0 verb smell is $this.smell say I smell {$this}. # El verbo hace correr los contadores de la fase de niebla is globalstage sunrise add actionsbeforeboar_real -1 assign actionsbeforeboar_turnssince 0 # verbo jugar setverb play_with has $this playverb !has $this playedwith !has generaltags hideactions !has $room hideactions verb play_with !is $this.play say {$this.play} tag $this playedwith is globalstage sunrise add actionsbeforeboar_real -1 assign actionsbeforeboar_turnssince 0 verb play_with is $this.play say I play with the {$this}. tag $this playedwith # El verbo hace correr los contadores de la fase de niebla is globalstage sunrise add actionsbeforeboar_real -1 assign actionsbeforeboar_turnssince 0 # verbo descalzarse setverb remove_shoes intransitive has $room barefeet !has generaltags hideactions !has $room hideactions verb remove_shoes !is $room.barefeet say {$room.barefeet} untag $room barefeet # El verbo hace correr los contadores de la fase de niebla is globalstage sunrise add actionsbeforeboar_real -1 assign actionsbeforeboar_turnssince 0 ## Caja de muestras # La caja de muestras es una mecánica especial, que requiere personalizar una serie de verbos. # verbo recoger: el jugador guarda un objeto en la caja de muestras setverb collect has $this collectverb !has $this collected !has generaltags hideactions !has $room hideactions # El verbo recoger hace correr los contadores de la fase de niebla verb collect is globalstage sunrise add actionsbeforeboar_real -1 assign actionsbeforeboar_turnssince 0 continue # La primera acción específica del verbo es etiquetar la cosa recogida (para que aparezca en las descripciones de la caja) y desetiquetar la caja para mostrar el botón de examinarla (se ejecuta siempre pero solo es relevante la primera vez). También quita la etiqueta animalhere para el caso de animales con desaparición programada. verb collect tag $this collected untag $this animalhere untag $this taken untag $this list_last untag samplebox hidelook continue # Algunos objetos desaparecen del escenario cuando el jugador los guarda en la caja de muestras. Otros no desaparecen, aunque sí desaparece la opción de recogerlos. El autor etiqueta los segundos con nohidewhencollected. verb collect !has $this nohidewhencollected hide $this continue # Si el mensaje específico de recogida está definido en la cosa, se imprime verb collect !is $this.collect say {$this.collect} continue # Si el mensaje específico de recogida no está definido en la cosa, se imprime un mensaje genérico verb collect is $this.collect say I take the {$this} and put it in my box of samples. continue # La primera vez que el jugador guarda una cosa, cambiamos las etiquetas de la caja de muestras, lo que cambiará su descripción. verb collect has samplebox empty untag samplebox empty tag samplebox full say My first sample today! There must be hundreds of things I can pick. I'll keep the best samples and take the rest to school to work with. And I'll get an outstanding qualification like last term. # *** # # Definición de la caja thing samplebox my box of samples name box # tags empty taken list_last tags empty samplebox loc inventory # Examinar la caja vacía: imprime un mensaje y elimina la opción de mirar la caja hasta que se recoge algo (etiqueta hidelook). verb examine samplebox has samplebox empty say The school gave all of us a sample box like this. It is transparent to see what's inside, and it has a lock so stuff won't fall out. I just have to remember to lock it this time. <br><span class="br-fixer"></span>But I haven't put anything in the box yet. # *** # tag samplebox hidelook # Examinar la caja llena: mensaje genérico y lanzar procedimiento de descripción verb examine samplebox run counttagged collected has samplebox full gt $count_tagged_result 5 write txt I take a look at my sample box, full of strange things. run saylist collected {$txt} # Examinar la caja llena: mensaje genérico y lanzar procedimiento de descripción verb examine samplebox run counttagged collected has samplebox full lt $count_tagged_result 6 write txt I take a look at my sample box, where I've put a few things. run saylist collected {$txt} # El siguiente procedimiento genera una lista de cosas con una etiqueta determinada. Es necesario que la objeto tenga la propiedad list. # Este procedimiento se utiliza para describir la caja de muestras, pero es genérico y se podría utilizar potencialmente en otros casos. proc saylist type start write complete {$start} run saylistloop $type say {$complete} proc saylistloop type all tagged $type write saylistloopone {$complete} freeze saylistloopone write saylistlooptwo <br><span class="br-fixer"></span>-{$this.List} freeze saylistlooptwo write result {$saylistloopone} {$Saylistlooptwo} freeze result write complete {$result} # Procedimiento que cuenta cosas con etiquetas, y guarda el valor en la variable count_tagged_result # NOTA: he definido este procedimiento porque creo que hay un error en Gruescript que debería reportar. El siguiente comando no funciona y no entiendo por qué: count x tagged collected proc counttagged tagtocount assign count_tagged_result 0 all tagged $tagtocount add count_tagged_result 1 ## Inventario thing backpack my backpack name backpack tags taken list_last ignorehideactions prop beingused prop numberofitems 0 verb examine backpack say I open my backpack. write inventory.return {$room} freeze inventory.return write inventory.desc {$room.desc} — Examining my backpack freeze inventory.desc goto inventory room inventory The forest tags noeventschedule notambient verbs continue verb continue at inventory say I put on my backpack again. goto inventory.return verb take # carry $this # hide $this # tag $this taken say {$this.take} untag $this portable # tag $this list_last put $this inventory setverb use at inventory !has $this samplebox verb use run beingusedremove run usemove proc beingusedremove !is backpack.beingused log ( $turncount ) Desde el inventario, se guarda backpack.beingused untag backpack.beingused beingused untag backpack.beingused taken untag backpack.beingused list_last put backpack.beingused inventory proc usemove log ( $turncount ) Desde el inventario, se escoge $this para usar y se regresa a inventory.return say I pick the {$this}. tag $this taken tag $this beingused tag $this ignorehideactions tag $this list_last write backpack.beingused {$this} freeze backpack.beingused hide $this goto inventory.return setverb return_to_backpack has $this beingused verb return_to_backpack untag $this taken untag $this beingused untag $this list_last put $this inventory say I put the {$this} in the backpack again. ### MOTOR ## PINTOR # Estas reglas imprimen descripciones de las ubicaciones y de los movimientos # Bucle de impresión # Esta regla se ejecuta en todos los turnos y llama a procedimientos que pueden añadir distintos mensajes a la narración (ubicación, movimiento, eventos, ambientación...) # En vez de ser múltiples reglas, es 1 regla + múltiples procedimientos para visualizar claramente el orden de ejecución # Estos procedimientos se ejecutan DESPUES de que se imprima la respuesta a la acción escogida por el jugador rule # bucle de impresión !at backhome !at newgamecheck !at startroom run logverb assign thisturnprintedscheduleorambient false add ambientcount 1 add actionsbeforeboar_turnssince 1 # Antes de nada, el control de inventario run hideactionscheck run takenthings run takenthingsthatignorehideactions # Ahora el texto. Primero, si el jugador se mueve, descripción de ese movimiento run printmovementfromforest run printmovementfromhome # Segundo, si el jugador se mueve, descripción del punto de llegada run printroom2 run printroom1 # Tercero, imprimimos mensajes adicionales de un solo uso de la habitación run printroomonce # Ahora continuamos con las reglas para mensajes insertados (eventos programados y foco) run animalhide run event_schedule_run run focusthisturn run runschedule run focusnextturn run printfocusnow run cleanfocus # Insertos ambientales run ambientinsert # Pasamos el turno. Al situar esto aquí, lo primero que ocurre en un turno es la acción del jugador, y todo el contenido del bucle de impresión viene después. add turncount 1 run mapset log ( $turncount ) Turno $turncount > $room · · · · · · · · · · · · · # Finalmente, partida autoguardada js store_game( 'Autosaved game' , true ) # Procedimiento: logverb # logverb es el procedimiento que loguea a la consola el verbo escogido por el jugador en cada turno proc logverb is verb go log ( $turncount ) Acción - $verb $direction continue proc logverb !is verb go !is thing log ( $turncount ) Acción - $verb $thing continue proc logverb !is verb go is thing log ( $turncount ) Acción - $verb # hideactions es una etiqueta que se puede poner en una habitación o en generaltags y oculta todas las acciones intransitivas, los objetos del inventario, etc. proc hideactionscheck has generaltags hideactions run hideactionscheckdo continue proc hideactionscheck has $room hideactions run hideactionscheckdo # cuando la etiqueta hideactions está activa, todos los objetos del inventario se mueven a una ubicación fuera del mapa, quedando efectivamente ocultados. Sin embargo, al conservar la etiqueta taken, reaparecerán por sí solos cuando salgamos de hideactions. la etiqueta ignorehideactions exime a un objeto de este procedimiento proc hideactionscheckdo all tagged taken !has $this ignorehideactions put $this utility_hide_actions room utility_hide_actions utility room proc takenthings !at interruption !at inventory !has generaltags hideactions !has $room hideactions all tagged taken bring $this proc takenthingsthatignorehideactions !at interruption !at inventory has $room hideactions all tagged taken has $this ignorehideactions bring $this # imprimir descripción del recorrido dirección casa proc printmovementfromforest is verb go is direction home !has $room enteredfromforest say {$room.fromforest} tag $room enteredfromforest log # imprimir descripción del recorrido dirección bosque proc printmovementfromhome is verb go is direction forest !has $room enteredfromhome say {$room.fromhome} tag $room enteredfromhome continue proc printmovementfromhome is verb go is direction left !has $room enteredfromhome say {$room.fromhome} tag $room enteredfromhome continue proc printmovementfromhome is verb go is direction right !has $room enteredfromhome say {$room.fromhome} tag $room enteredfromhome # imprimir segunda descripción de ubicación proc printroom2 is verb go !has $room notvisited !is $room.desc2 say {$room.desc2} # imprimir primera descripción de ubicación proc printroom1 is verb go has $room notvisited !is $room.desc1 say {$room.desc1} untag $room notvisited # imprimir mensajes de un solo uso # estos mensajes se pueden asignar a habitaciones desde otra ubicación, y aparecerán solo una vez # uso típico: la última vez que estuve aquí había un lagarto proc printroomonce !is $room.printonce say {$room.printonce} write $room.printonce add ambientcount -1 log ( $turncount ) proc printroomonce en $room ## PROCSCHEDULE # MECANISMO PARA PROGRAMAR UN EVENTO PARA EL TURNO SIGUIENTE # Procedimiento: si hay un proceso específico para ejecutar, ejecutarlo proc runschedule !is proctorun none assign i 0 run $proctorun assign proctorun none assign ambientcount 0 assign thisturnprintedscheduleorambient true log ( $turncount ) runschedule > $proctorun ## INJERTADOR # MECANISMO DE INSERCION DE MENSAJES ALEATORIOS # Procedimiento: si se cumplen las condiciones, activar la ejecución posterior del texto aleatorio # Condiciones: no hay nada en procschedule, hay un foco activo proc focusthisturn is proctorun none !is focus none gt $ambientcount 0 assign shuffleprint yes log ( $turncount ) proc focusthisturn $focus # Procedimiento: el uso de proctorun y procschedule sirve para retrasar un turno la ejecución proc focusnextturn !is procschedule none assign proctorun $procschedule assign procschedule none log ( $turncount ) proc focusnextturn $proctorun # Procedimiento: imprimir el texto aleatorio, según el orden de la lista barajada, hasta terminarla proc printfocusnow is shuffleprint yes assign i $focus.index log ( $turncount ) proc printfocusnow buscará el índice i = $i assign itarget $focus.max add itarget 1 assign shuffleprint false lt $i $itarget run $focus.$i # aquí se ejecuta el siguiente procedimiento disponible (en la lista barajada) log ( $turncount ) proc printfocusnow ejecuta el procedimiento $focus.$i add $focus.index 1 add focuscount -1 log ( $turncount ) proc printfocusnow > focuscount después de imprimir = $focuscount assign ambientcount 0 assign thisturnprintedscheduleorambient true # una vez ejecutado todo, comprobamos si se han agotado los mensajes para bloquear la fuente eq $focus.index $focus.max untag $focus availablemessage # Procedimiento: después de ejecutar la anterior, ver si hay que eliminar el foco. proc cleanfocus eq $focuscount 0 !is focus none log ( $turncount ) proc cleanfocus > limpiar el foco $focus assign focus none # Procedimiento: barajar listas de mensajes # Este procedimiento solo se ejecuta al iniciar el juego, en el bloque game, para todas las listas # El procedimiento genera una lista desordenada aleatoriamente a partir de una lista inicial. El nombre de la lista desordenada tiene que estar declarado como cosa proc shufflethings source target assign n 0 assign $target.max $source.max assign $target.index 1 add $target.max 1 all shuffle numbers 1 $source.max add n 1 assign $target.$n $source.$this # Procedimiento: definir el foco activo proc setfocus subject count assign focus $subject assign focuscount $count log ( $turncount ) setfocus $subject $count # Procedimiento: cancelar manualmente el foco activo proc cancelfocus assign focus none assign focuscount 0 # insertar narración ambiental. esto se realiza al final. Se divide en dos procedimientos. # El primero comprueba si se cumplen las condiciones para hacer una inserción ambiental, escoge una temática aleatoriamente, y ejecuta el segundo. Estas condiciones incluyen: # -Si ha transcurrido suficiente tiempo desde la última inserción. ambientcount se incrementa en 1 al principio de cada turno, y se pone a 0 cada vez que imprime un texto aleatorio con printfocusnow. Esto significa que gt $ambientcount 1 no será cierto hasta el 2º turno después de cualquier inserción. No utilizamos valor 1 sino la variable ambientcountlimit # -Una vez se cumple la condición, y si la habitación permite inserciones (etiqueta notambient), la inserción se ejecutará con una probabilidad de 1 de cada X, siendo X el valor de la variable ambientinsertchance proc ambientinsert gt $ambientcount $ambientcountlimit !has $room notambient !has generaltags notambient chance 1 $ambientinsertchance pick ambienttype tagged availablemessage log ( $turncount ) proc ambientinsert </em> ambienttype = $ambienttype run ambientinsert2 # El segundo escoge un inserto de esa temática entre aquellos que todavía no se han usado, lo archiva en la variable focus y ejecuta el procedimiento printfocusnow proc ambientinsert2 !is ambienttype null !is ambienttype assign focus $ambienttype assign shuffleprint yes run printfocusnow assign focus none log ( $turncount ) proc ambientinsert tiene éxito # animalhide > procedimientos que comprueban si hay un animal presente y lo ocultan en el plazo correspondiente proc animalhide run animalhidezero run animalhidepositive # animalhidezero: el contador está a cero y el animal desaparece proc animalhidezero all tagged animalhere eq $this.turnstohide 0 run animalhidemessage $this hide $this untag $this animalhere untag $this taken untag $this list_last assign ambientcount 0 log ( $turncount ) proc animalhidezero > $this # animalhidepositive: el contador es positivo, restamos uno proc animalhidepositive all tagged animalhere gt $this.turnstohide 0 add $this.turnstohide -1 log ( $turncount ) proc animalhidepositive > $this = $this.turnstohide # animalhidemessage > el mensaje de desaparición solo aparece si a) el jugador sigue en la misma habitación que el animal (here); b) si el jugador tiene al animal en el inventario (carried) proc animalhidemessage animal here $animal say {$animal.hide} continue # proc animalhidemessage animal # carried $animal # say {$animal.hide} # continue # Interrupciones # Las interrupciones son momentos en el que el jugador deja de ver los objetos y salidas de la habitación en la que está y pasa a tener un conjunto de opciones limitado y definido manualmente, hasta que la interrupción termina y vuelve a la situación previa. # La habitación interrupt es la ubicación donde se envía al jugador cuando tiene lugar una interrupción. room interruption The forest tags noeventschedule notambient # El autor ejecuta este procedimiento para iniciar una interrupción. La etiqueta se utilizará para definir las opciones disponibles. El procedimiento guarda el punto de regreso y oculta los elementos del interfaz que no queremos. proc interrupt tagtoadd log ( $turncount ) interrupt con el parámetro $tagtoadd write interruption.return {$room} freeze interruption.return log Habitación de retorno = {interruption.return} write interruption.desc {$room.desc} freeze interruption.desc tag interruption $tagtoadd goto interruption js var tempfunc=function(){document.body.classList.add("hide-inventory");return true};tempfunc() # El autor ejecuta este procedimiento cuando tiene que terminar la interrupción. proc interruption_end assign ambientcount -1 # esto debería evitar que se imprimera cualquier mensaje ambiental justo al salir de una interrupción goto interruption.return js var tempfunc=function(){document.body.classList.remove("hide-inventory");return true};tempfunc() # EVENT SCHEDULE # Procedimiento genérico para retrasar eventos # No es posible crear un procedimiento dinámico capaz de generar tantas programaciones simultáneas como uno pueda necesitar # Este sistema tendrá un número limitado de programaciones. # Utilizamos una cosa, sus propiedades y sus etiquetas para llevar el control de qué slots están disponibles thing event_schedule tags slot_1_available slot_2_available slot_3_available slot_4_available slot_5_available prop success false # sirve para registrar el evento programado solamente en el primer slot disponible prop turn_used false # sirve para solo ejecutar un evento en cada turno, los demás se atrasan prop turns_1 prop proc_1 prop turns_2 prop proc_2 prop turns_3 prop proc_3 prop turns_4 prop proc_4 prop turns_5 prop proc_5 # schedule_an_event es el procedimiento que utiliza el autor en el texto para programar un evento a varios turnos proc schedule_an_event name number write event_schedule.success false add number $turncount add number -1 freeze number freeze name run schedule_in_slot_1 $name $number run schedule_in_slot_2 $name $number run schedule_in_slot_3 $name $number run schedule_in_slot_4 $name $number run schedule_in_slot_5 $name $number # Los procedimientos schedule_in_slot_x buscan el primer slot disponible para recoger el evento programado # Esto se sabe gracias a las etiquetas de event_schedule # Los datos del evento programado se guardan en las propiedades turns_x y proc_x proc schedule_in_slot_1 name number is event_schedule.success false has event_schedule slot_1_available untag event_schedule slot_1_available tag event_schedule slot_1_busy assign event_schedule.turns_1 $number assign event_schedule.proc_1 $name assign event_schedule.success true log ( $turncount ) schedule_an_event - el evento $name se ejecutará en el turno $number + 1 (posición 1) proc schedule_in_slot_2 name number is event_schedule.success false has event_schedule slot_2_available untag event_schedule slot_2_available tag event_schedule slot_2_busy assign event_schedule.turns_2 $number assign event_schedule.proc_2 $name assign event_schedule.success true log ( $turncount ) schedule_an_event - el evento $name se ejecutará en el turno $number + 1 (posición 2) proc schedule_in_slot_3 name number is event_schedule.success false has event_schedule slot_3_available untag event_schedule slot_3_available tag event_schedule slot_3_busy assign event_schedule.turns_3 $number assign event_schedule.proc_3 $name assign event_schedule.success true log ( $turncount ) schedule_an_event - el evento $name se ejecutará en el turno $number + 1 (posición 3) proc schedule_in_slot_4 name number is event_schedule.success false has event_schedule slot_4_available untag event_schedule slot_4_available tag event_schedule slot_4_busy assign event_schedule.turns_4 $number assign event_schedule.proc_4 $name assign event_schedule.success true log ( $turncount ) schedule_an_event - el evento $name se ejecutará en el turno $number + 1 (posición 4) proc schedule_in_slot_5 name number is event_schedule.success false has event_schedule slot_5_available untag event_schedule slot_5_available tag event_schedule slot_5_busy assign event_schedule.turns_5 $number assign event_schedule.proc_5 $name assign event_schedule.success true log ( $turncount ) schedule_an_event - el evento $name se ejecutará en el turno $number + 1 (posición 5) # Esta es la función que se ejecuta en todos los turnos, comprobando si hay programaciones activas y comprobándolas proc event_schedule_run hasany event_schedule slot_1_busy slot_2_busy slot_3_busy slot_4_busy slot_5_busy !has $room noeventschedule assign event_schedule.turn_used false log ( $turncount ) event_schedule_run se ejecuta run event_schedule_run_1 run event_schedule_run_2 run event_schedule_run_3 run event_schedule_run_4 run event_schedule_run_5 # La siguiente serie de procedimientos comprueba cada programación activa, y ejecuta el procedimiento si le ha llegado el turno proc event_schedule_run_1 has event_schedule slot_1_busy is event_schedule.turn_used false gt $turncount event_schedule.turns_1 tag event_schedule slot_1_available untag event_schedule slot_1_busy assign event_schedule.turn_used true log ( $turncount ) event_schedule_run_1 ejecuta el evento event_schedule.proc_1 assign ambientcount 0 run event_schedule.proc_1 proc event_schedule_run_2 has event_schedule slot_2_busy is event_schedule.turn_used false gt $turncount event_schedule.turns_2 tag event_schedule slot_2_available untag event_schedule slot_2_busy assign event_schedule.turn_used true log ( $turncount ) event_schedule_run_2 ejecuta el evento event_schedule.proc_2 assign ambientcount 0 run event_schedule.proc_2 continue proc event_schedule_run_2 has event_schedule slot_2_busy is event_schedule.turn_used true gt $turncount event_schedule.turns_2 add event_schedule.turns_2 1 log ( $turncount ) event_schedule_run_2 retrasa el evento event_schedule.proc_2 proc event_schedule_run_3 has event_schedule slot_3_busy is event_schedule.turn_used false gt $turncount event_schedule.turns_3 tag event_schedule slot_3_available untag event_schedule slot_3_busy assign event_schedule.turn_used true log ( $turncount ) event_schedule_run_3 ejecuta el evento event_schedule.proc_3 assign ambientcount 0 run event_schedule.proc_3 continue proc event_schedule_run_3 has event_schedule slot_3_busy is event_schedule.turn_used true gt $turncount event_schedule.turns_3 add event_schedule.turns_3 1 log ( $turncount ) event_schedule_run_3 retrasa el evento event_schedule.proc_3 proc event_schedule_run_4 has event_schedule slot_4_busy is event_schedule.turn_used false gt $turncount event_schedule.turns_4 tag event_schedule slot_4_available untag event_schedule slot_4_busy assign event_schedule.turn_used true log ( $turncount ) event_schedule_run_4 ejecuta el evento event_schedule.proc_4 assign ambientcount 0 run event_schedule.proc_4 continue proc event_schedule_run_4 has event_schedule slot_4_busy is event_schedule.turn_used true gt $turncount event_schedule.turns_4 add event_schedule.turns_4 1 log ( $turncount ) event_schedule_run_4 retrasa el evento event_schedule.proc_4 proc event_schedule_run_5 has event_schedule slot_5_busy is event_schedule.turn_used false gt $turncount event_schedule.turns_5 tag event_schedule slot_5_available untag event_schedule slot_5_busy assign event_schedule.turn_used true log ( $turncount ) event_schedule_run_5 ejecuta el evento event_schedule.proc_5 assign ambientcount 0 run event_schedule.proc_5 continue proc event_schedule_run_5 has event_schedule slot_5_busy is event_schedule.turn_used true gt $turncount event_schedule.turns_5 add event_schedule.turns_5 1 log ( $turncount ) event_schedule_run_5 retrasa el evento event_schedule.proc_5 proc schedule_cancel proceduretocancel log ( $turncount ) schedule_cancel $proceduretocancel freeze proceduretocancel run cancel_schedule_slot_1 $proceduretocancel run cancel_schedule_slot_2 $proceduretocancel run cancel_schedule_slot_3 $proceduretocancel run cancel_schedule_slot_4 $proceduretocancel run cancel_schedule_slot_5 $proceduretocancel proc cancel_schedule_slot_1 cancel eq event_schedule.proc_1 $cancel tag event_schedule slot_1_available untag event_schedule slot_1_busy log ( $turncount ) cancel_schedule_slot_1 cancela el evento event_schedule.proc_1 proc cancel_schedule_slot_2 cancel eq event_schedule.proc_2 $cancel tag event_schedule slot_2_available untag event_schedule slot_2_busy log ( $turncount ) cancel_schedule_slot_2 cancela el evento event_schedule.proc_2 proc cancel_schedule_slot_3 cancel eq event_schedule.proc_3 $cancel tag event_schedule slot_3_available untag event_schedule slot_3_busy log ( $turncount ) cancel_schedule_slot_3 cancela el evento event_schedule.proc_3 proc cancel_schedule_slot_4 cancel eq event_schedule.proc_4 $cancel tag event_schedule slot_4_available untag event_schedule slot_4_busy log ( $turncount ) cancel_schedule_slot_4 cancela el evento event_schedule.proc_4 proc cancel_schedule_slot_5 cancel eq event_schedule.proc_5 $cancel tag event_schedule slot_5_available untag event_schedule slot_5_busy log ( $turncount ) cancel_schedule_slot_5 cancela el evento event_schedule.proc_5 ### SITIOS Y COSAS # Esta sección contiene las habitaciones que forman el mapa y las cosas que existen en esas habitaciones, pero no todas, solamente las de tipo más estático, cosas fijas, no relacionadas con eventos narrativos o con textos dinámicos. # Alternamos las habitaciones con las cosas que están ubicadas en dichas ubicaciones. ## Inicio # playground # habitación secreta para colocar objetos durante el desarrollo, probar mecanismos, etc. room playground Welcome to the developer testing playground! tags noeventschedule prop desc The world suddenly becomes low-poly, low quality textures, invisible light sources and floating cows everywhere. in startroom # inicial room startroom Main menu tags start noeventschedule cssfog verbs start_game verb start_game say The game is saved automatically after each action. say If there's an existing game save, starting a new game will delete it. say Please choose "New game" or "Restore game". goto newgamecheck room newgamecheck New game verbs new_game verb new_game goto endofvillage js newgameremovemenu() room endofvillage The end of the village tags noeventschedule cssfog dir forest forestbeginning_fog prop printonce Wednesday before sunrise, warm spring, no school today. Many things to do, but later. <br><span class="br-fixer"></span>I get out of the house very quietly, trying not to wake Mom. Then I stand still... it's so dark outside! It's all right, the sun will rise soon. It's all right. I run into the dark. I pass the church, the cemetery, I turn sharply right after the last house. <br><span class="br-fixer"></span>Alone in the forest! <br><span class="br-fixer"></span>I'll do all the stuff later. This is what's urgent now. # ***** # ## Fase niebla # La primera parte del juego tiene lugar antes del amanecer, con niebla espesa. Dado que las descripciones y las cosas presentes son diferentes, la forma elegida para implementarlo ha sido crear una copia del mapa, con otros nombres. Cuando termina esa fase, el jugador es transportado de manera invisible a un segundo juego de habitaciones, con los mismos nombres y estructura. # A continuación, las habitaciones y cosas presentes en la fase de niebla. room forestbeginning_fog Village path, near the village tags notvisited noeventschedule cssfog dir forest redrockpath_fog prop desc1 The first thing that strikes me is the fog. It erases the colours, hides the treetops and flattens the hills. I've never seen fog like this. It makes the forest look so different, so new! <br><span class="br-fixer"></span>The light of dawn is still too feeble, but the sun will rise over the ridge any minute now, and then I will take photos and pick up samples and look for animal tracks and catch bugs with incredible colours! # **** # prop fromhome room redrockpath_fog Village path, red rock tags notvisited cssfog dir forest orcharddoor_fog prop desc1 I reach the red rock. This is the furthest I've gone on my own. They tell me very seriously not to walk too far from the house... but Dad's away until Saturday and Mom worked late so she'll sleep a few more hours.<br><span class="br-fixer"></span>From here on, the path enters a dense forest that covers the hillside, and then it branches and branches again, with different tracks going down to the brook, up to the hilltop, and further up the valley. <br><span class="br-fixer"></span>There's no way I can get lost. It's always clear which direction home is, and which leads further into the forest. # ***** # prop desc2 The red rock marks the beginning of the forest and the limit of the village, which is sunken in the fog. # *** # prop fromforest I leave the orchard behind. It's only a minute until the red rock. I'm not coming closer than that to home, not yet. # *** # prop fromhome thing redrock_fog a red rock name red rock tags touchable desc Dew sparkles on the red and brown surface of the rock. It's big as a bed and a bit taller than Mom, who is one of the tallest people I've ever met. # **** # prop touch Moisture makes the rock cold and slippy, but it isn't unpleasant. # *** # loc redrockpath_fog # El verbo escalar la roca roja solo estará disponible después de examinarla. Examinarla también activará ese verbo para la versión de la roca roja presente en la siguiente fase verb examine redrock_fog tag redrock_fog examined tag redrock examined continue setverb climb redrock_fog has redrock_fog examined verb climb redrock_fog !has redrock_fog climbed say I've noticed the rock is moist so I climb carefully. No slipping this time. # *** # say How high the rock seemed the first time I saw it. Last autumn. And how easy to climb when I finally dared. I laugh thinking of it. # *** # tag redrock_fog climbed goto redrockclimb_fog verb climb redrock_fog has redrock_fog climbed say I climb the red rock again. goto redrockclimb_fog # sobre la roca roja, movimientos y vistas room redrockclimb_fog Village path, on top of the red rock tags noeventschedule notvisited notambient cssfog down redrockpath_fog verb go down # torcerse el tobillo al bajar at redrockclimb_fog random randnum 3 say I get down from the rock. continue verb go down # torcerse el tobillo al bajar at redrockclimb_fog eq $randnum 3 say I slip! As I hit the ground I feel a sharp pain in my ankle. 'Agh!' I scream, and my cry feels like something very small here in the dark fog. say I rub my ankle to soothe it. It was just that it twisted when I landed. Why can't I be more careful? # **** # tag printedtext redrockslip tag twistedankle wounded continue thing twistedankle I twisted my ankle coming down from the red rock thing redrocklookforest_fog a view of the forest name view loc redrockclimb_fog desc Normally, there's a great view of the forest here, but now it's all fog. Floating stains are just a faint suggestion of treetops; the path itself looks different, as if it has shifted a few centimetres to one side. <br><span class="br-fixer"></span>Right of the path, the hill rises to its top, way above; left of the path, the slope descends to the brook, and further left, across the brook, there's another rising ridge, more rugged. Most of this is invisible now. # **** # thing redrockpanorama_fog a view opposite the forest name view loc redrockclimb_fog desc I should see everything between the valley below and the mountains fifty kilometres away&colon; plains, cultivated fields and rolling hills, the city of Pontafer five kilometres from here. But a grey veil hides everything. # **** # room orcharddoor_fog Village path, orchard tags notvisited cssfog dir home redrockpath_fog dir forest forkingpath_fog prop fromhome As I walk into the forest, I realize how different everything looks today. Chestnut trees barely emerge from the fog, pale and shapeless. I feel strange too. I'm not so keen about going further... but it's silly, I only have to wait a little longer for the sun.<br><span class="br-fixer"></span>A ⚞ping⚟ announces that the phone has chosen to leave me alone, blocking all incoming stuff except what's really important. # **** # prop desc1 The path passes by the village's last outpost&colon; a precarious fence, a closed gate and a messy orchard in a hollow behind it, surrounded by trees. It's almost pitch dark down there. # *** # prop desc2 There is a fence with a gate by the path, leading to an orchard hidden by the fog in the middle of the trees. # *** # prop fromforest thing orchard_fog orchard name orchard tags notvisited cssfog loc orcharddoor_fog prop desc I take a look at the orchard behind the gate, but it's very dark and I can barely make out the outlines. But I know what's there&colon; a staggering mess that I can't understand. # *** # room forkingpath_fog Village path, fork tags notvisited noeventschedule cssfog dir home orcharddoor_fog dir left descendingfork_fog dir right ascendingfork_fog prop fromhome As I walk further from home, the trees get thicker, the haze gets thicker too. Finally I reach the fork. This is the furthest down the path I have been on my own! If I keep going further, all by myself... I'll be going real deep. # *** # prop desc1 Here, the path from the village splits into two parallel branches. The left branch descends to meet the brook in a very pretty place, while the right branch, by the water tank, ascends towards the hilltop. <br><span class="br-fixer"></span>Just twenty metres from here, the two paths sink in shadows and fog. There's something mysterious about it... I could pretend I don't know where they lead. # *** # prop desc2 Here, the path from the village splits into two parallel branches&colon; the left downwards and the right upwards. # *** # prop fromforest thing watertank_fog a water tank name tank loc forkingpath_fog prop desc The water tank is on the uphill side of the path, between the trees. Now there's nothing but the suggestion of a solid shape behind the layers of fog. # *** # room descendingfork_fog Brook path, start tags notvisited cssfog dir home forkingpath_fog dir forest bigrootpath_fog prop fromhome A dilemma! Which way? I choose left. The brook. I love it down there but it must be dark. # *** # prop desc1 The left path starts descending steeply, almost like a ladder, before getting normal again. I tripped the last time I came, it won't happen today. <br><span class="br-fixer"></span>This particular place is wonderful. If only the fog lifted so I can see... # *** # prop desc2 This is a short steep slope at the beginning of the path towards the brook. # *** # prop fromforest I walk uphill. # *** # room bigrootpath_fog Brook path, big root tags notvisited brooksound cssfog dir home descendingfork_fog dir forest bigholepath_fog prop fromhome I keep walking downwards towards the brook. It <em>is</em> getting darker the further I descend. But it will be beautiful the moment the sun rises, I know! # **** # prop desc1 The path goes on between steep slopes on both sides. On the right side, the uphill side, a wall of dirt and rocks gets higher the further I descend. Tree roots stick out of it, while moss and plants cling to it. # **** # prop desc2 Tree roots stick out of the earth on one side of the path. # *** # prop fromforest thing stickingroot_fog a big root name big root loc bigrootpath_fog desc The faint light that steals the colours doesn't make it easy to make out what's earth and what's tree. # **** # room bigholepath_fog Brook path, vertical cut tags notvisited brooksound cssfog dir home bigrootpath_fog dir forest brook_fog prop fromhome I keep walking towards the brook. prop fromforest prop desc1 To the side, the uphill slope ascends abruptly, and in the middle there's a deep vertical cut. All I can see now is a dark, deep space. Unsettling. There could be an animal or a deep hole there and I wouldn't see it. # **** # prop desc2 The path passes by a deep vertical cut in the slope. I can hear the brook. # *** # prop printonce The brook is singing its song, and I'm close enough now to hear. # *** # thing verticalcut_fog vertical cut in the slope loc bigholepath_fog name vertical cut desc The fog and the darkness make it hard to distinguish anything in the cavity. Flickering fragments, glimpses. But it seems there are hundreds of roots and branches and whatever in the air. <br><span class="br-fixer"></span>Dad didn't let me go inside when I tried to. Today is my chance, if only the sun rises. # *** # room brook_fog Brook tags notvisited brooksound noeventschedule cssfog dir home bigholepath_fog dir forest source_fog prop fromhome I descend further towards the water song. # *** # prop desc1 And here is the brook, my first favourite place here. Trees and bushes form a corridor, a tunnel almost, and in the middle of it, five or six centimetres of water flow over stones. So little water sounds strong and lively. However, down here it seems almost like night. It's going to be so wonderful when there's light. <br><span class="br-fixer"></span>The path ends here, but it's possible to go a bit further upstream. # **** # prop desc2 Here is where one path ends at the brook, a tiny water stream at the bottom. # *** # prop fromforest I make my way downstream, setting aside hanging sprigs and stalks. # *** # room source_fog Brook's source tags notvisited brooksound noeventschedule cssfog dir home brook_fog prop fromhome I walk a few metres upstream, trying not to step on the water since there is no path here, only narrow spaces on both sides of the current. # *** # prop desc1 No further walking. There is a wall across the brook; water comes out of a small hole at the bottom.<br><span class="br-fixer"></span>I can barely see a thing and I can't keep going forward. # *** # prop desc2 This is the brook's source, and there is no way forward. # *** # room ascendingfork_fog Hill path, start tags notvisited cssfog dir home forkingpath_fog dir forest cutthroughrock_fog prop fromhome Up or down? Up&colon; the gentle slope to the right. # *** # prop desc1 This is where the path that reaches the top of the hill begins. It gets wider for a while; trees recede behind the fog, and it feels like I'm in the middle of a vast space. # *** # prop desc2 This is the beginning of the path that reaches the top of the hill. # *** # prop fromforest thing fog_inascendingfork fog loc ascendingfork_fog verb examine fog_inascendingfork prompt examine fog say I look around. This is the place where I see less of the forest and more of the fog. Even the closest trees are faded by a thin transparent layer, so this place looks like it doesn't have a definite size. I know it's small, but it feels big. An auditorium. # **** # say I used to live near skyscrapers, but <em>this</em> makes me feel small. # *** # hide fog_inascendingfork room cutthroughrock_fog Hill path, rock wall tags notvisited cssfog dir home ascendingfork_fog dir forest steepslope_fog prop fromforest prop fromhome I walk up the path, knowing that this mild slope will become harder soon. # *** # prop desc1 This section of the path is still wide and has a gentle slope, but here a huge rock wall rises on one side. It's impressive in daylight, but now it's flat and colourless. Underwhelming. Perhaps I shouldn't have left so early. # *** # prop desc2 The path is wide here, and an abrupt rock wall rises on the uphill side. # *** # room steepslope_fog Hill path, abrupt section tags notvisited cssfog dir home cutthroughrock_fog dir forest reforestation_fog prop fromforest I go downhill from the reforestation area, towards home. # *** # prop fromhome I walk further up the hill path, and suddenly its character changes completely. # *** # prop desc1 I reach a section where the path is steep and a lot narrower than before. To one side, the high branches of trees whose feet are ten metres below are so close I can almost touch them. But those trees are leafless, and they look sinister in the fog. # *** # prop desc2 This is the steep and narrow section of the path, where leafless treetops are almost at hand's reach. # *** # room reforestation_fog Hill path, reforestation zone tags notvisited noeventschedule cssfog dir home steepslope_fog prop fromhome I walk upwards. The path gets flat again and a bit wider, and then the forest clears. # *** # prop desc1 This must be the area where reforestation works have been ongoing, but I can't see far. This cursed fog. I don't like it anymore. <br><span class="br-fixer"></span>Being in the open with this fog feels worse than being surrounded by trees. I don't know why. I'm not going any further until the fog lifts. # *** # prop desc2 I'm in the part of the forest where reforestation works have been ongoing since last month. # *** # ## Principal 1 - inicio y camino izquierdo # A continuación, el mapa principal en el que el jugador se moverá una vez termina la fase de niebla. # Empezamos por las habitaciones y cosas correspondientes a la fase de amanecer. El límite de este mapa está cerrado inicialmente y solo se abrirá al pasar a una fase posterior. # roca roja room redrockpath Village path, red rock tags notvisited bringground csssunrise dir forest orcharddoor prop desc1 The rock is very different in daylight. It's so high compared to me that I see it outlined against far hilltops and the sky. The clear area around it is covered in grass and daisies and many other types of plants that I don't have a name for. <br><span class="br-fixer"></span>One turn of the path and I'd be back in the village, but I'm not returning so early. # **** # prop desc2 The red rock marks the beginning of the forest and the limit of the village, which is sunken in the fog. # *** # prop fromforest I leave the orchard behind. It's only a minute until the red rock. I'm not coming closer than that to home, not yet. # *** # thing redrock a red rock tags actionbeforeboar name red rock desc Someone told me what kind of rock it is but I forgot. Something to do with the old mines Dad said he would show me. What I know is that there is no other rock as big and as red here. # *** # loc redrockpath verb examine redrock tag redrock examined continue setverb climb redrock has redrock examined verb climb redrock !has redrock_fog climbed !has redrock climbed say How high the rock seemed the first time I saw it. Last autumn. And how easy to climb when I finally dared. I laugh thinking of it. # *** # continue verb climb redrock say I climb the red rock. It's not really high, but from the top I can get good views. # *** # tag redrock climbed goto redrockclimb # vértebra thing bigbone prop display strange white object tags actionbeforeboar loc redrockpath name white object prop desc It's white and has a strange shape. I take a closer look... a bone! But what kind of bone? It's big. It's almost as thick as my wrist. I think it's a vertebra. # *** # prop photo I make a photo of the bone. I want Mom and Dad to tell me what it is. # *** # prop smell This is going to be disgusting, but I smell the bone. <br><span class="br-fixer"></span>Nothing. <br><span class="br-fixer"></span>Nothing at all. # *** # verb examine bigbone say {bigbone.desc} write bigbone.display strange bone write bigbone.desc I look closely at the bone. I think it's a vertebra. It's white with a yellow-pinkish part in the centre. I'm not going to touch it. # *** # tag bigbone photoverb tag bigbone smellverb verb smell bigbone untag bigbone smellable untag bigbone smellverb continue # sobre la roca roja, movimientos y vistas room redrockclimb Village path, on top of the red rock tags noeventschedule notambient room down redrockpath verb go down # torcerse el tobillo al bajar at redrockclimb random randnum 2 say I get down from the rock. continue verb go down # torcerse el tobillo al bajar at redrockclimb eq $randnum 2 say One step before reaching the ground, my foot slips. I feel pain when my feet land&colon; a twisted ankle. Such an idiot. I've been here eight months, why can't I learn? It hurts! # *** # tag printedtext redrockslip tag twistedankle wounded continue thing redrocklookforest a view of the forest name view tags photographable actionbeforeboar loc redrockclimb desc There's a great view of the forest here. The dense forest on the right, up to the top of the hill, pure green against the pure blue of the sky. Mostly chestnut trees, nice trees, not too big, not too little. And the naked slope on the left, on the other side of the brook, rugged and steep. # *** # prop photo I take some pictures of the forest, but I can never make photos like these look good. # *** # thing redrockpanorama a view opposite the forest name view loc redrockclimb tags photographable actionbeforeboar desc From the top of the rock I can see the mountains fifty kilometres away. A bit of snow lingers on the mountaintops, and all grownups I know still find that amazing. This side of the mountains it's all agricultural lands, some of the most resilient in Southern Europe, the teachers say&colon; that's why so many people from the big cities are moving in, like us. The city of Pontafer is only five kilometres from here.</br>Though my school and my friends are down there, the view feels flat and unreal like a painting. I don't know why. # **** # prop photo I take some panoramic photos, but every time I do there's something wrong with the framing. # *** # room orcharddoor Village path, orchard tags notvisited bringground csssunrise dir home redrockpath dir forest forkingpath dir down orchard prop desc1 The orchard by the path is now visible. On the downhill side of the path, from tree to tree, a precarious fence with a gate. The orchard is behind, but why such a mess? I see lots of garbage, rusty tools, pieces of plastic. I don't know who owns it all, never seen anybody there, but the stuff inside changes very often. # **** # prop desc2 There is a fence and a gate by the path, leading to a weird orchard in the middle of the trees, dark and chaotic. # *** # prop fromhome As I walk away from the rock, the forest starts getting thick. More and more shadows cross my face. # *** # prop fromforest thing orchardstructure a heap of trash name heap of trash loc orcharddoor desc What are they building in there? That looks like three walls and a roof but it's built with loose bricks and concrete blocks and tyres and big pots and whatever they find. # *** # verb examine orchardstructure say {orchardstructure.desc} run schedule_an_event thinkaboutorchardstructure 1 proc thinkaboutorchardstructure !has printedtext thinkaboutorchardstructure say I keep thinking about the structure in the orchard. When we suffered the flood, water was half a metre high down there. # *** # run setfocus ambient_flood 2 tag printedtext thinkaboutorchardstructure thing treewithwhiteflowers name tree loc orcharddoor tags actionbeforeboar prop display tree with white flowers prop desc The cherry tree is only a bit taller than Mom I think. Its branches are covered in white flowers. <br><span class="br-fixer"></span>At school, they said cherry trees are flowering a bit later than they used to and that's great. They didn't explain why, I shoud ask. # *** # verb examine treewithwhiteflowers say {treewithwhiteflowers.desc} hide treewithwhiteflowers bring cherrytree thing cherrytree a cherry tree name cherry tree tags photoverb smellverb collectverb nohidewhencollected actionbeforeboar desc A small cherry tree, covered in white flowers. # *** # prop photo I try to take some good photos of the cherry tree flowers. I'll show them in Nature Recovery class. # *** # prop smell Only after inhaling several times I notice a very soft, almost imperceptible fragrance near the white flowers. # *** # prop collect I pick some white flowers for my sample collection. # *** # prop list small white flowers room orchard Orchard tags notvisited csssunrise dir path orcharddoor prop desc1 The gate to the orchard is a simple wooden board that I can easily climb. I jump&colon; I'm in! <br><span class="br-fixer"></span>It's a mess. This is not the recycle and reuse we learn at school every day, this is garbage. Only the actual patches of vegetables are somewhat tidy. It looks like the owner can't see anything abandoned and not bring it here. # *** # prop desc2 The orchard has some tidy vegetable patches and chaotic heaps of rubbish. # *** # thing orchardstructureclose a structure name structure tags photographable actionbeforeboar loc orchard desc It doesn't matter how I look at the structure, I can't make heads or tails of it. Perhaps it's not <em>anything</em>. Perhaps it's a way of making something with all the garbage around here. # *** # prop photo It's not funny, it's not pretty... but I take a photo of the structure. Just to have it. # *** # thing orchardtools heaps of old tools name tools loc orchard desc There are a few heaps of tools and implements mixed with other garbage. # ** # verb examine orchardtools say {orchardtools.desc} #tag orchardtools searchable tag orchardtools actionbeforeboar setverb search orchardtools has orchardtools searchable !has orchardtools searched verb search orchardtools say I start putting aside the things at the top of one of the heaps. The noise of metal scraping against metal makes me very nervous. And everytime something slips a little I cry. <br><span class="br-fixer"></span>I found a small hoe! # *** # bring hoe tag orchardtools searched thing hoe a hoe name hoe desc A hand hoe. # *** # tags portable prop take I put the hoe in my backpack. I'm only borrowing it! I'll put it back here when I return home. # *** # setverb drop hoe at orchard has hoe beingused verb drop hoe hide hoe untag hoe taken untag hoe list_last untag hoe beingused say I throw the hoe towards the heap. I don't even look where it ends. room forkingpath Village path, fork tags notvisited bringground csssunrise dir home orcharddoor dir left descendingfork dir right ascendingfork prop desc1 Now I have a better look at the two paths that start here. The path to the brook is darker and denser with undergrowth and fallen leaves. The path to the hilltop is wider and cleaner, touched by beams of sunlight that reveal the leaves' intensely bright colours. # **** # prop desc2 Here, the path coming from the village splits into two parallel branches&colon; the left one descends and the right one ascends. # *** # prop fromhome I walk further into the forest for another minute. It gets thicker. # *** # prop fromforest thing dandelion dandelions name dandelions loc forkingpath tags touchable photographable collectable nohidewhencollected actionbeforeboar desc I kneel and look at the dandelions on the path's side. They look small and haven't opened completely yet. Dandelions are so incredible... there's nothing else that looks like that. # *** # prop list a dandelion prop collect I carefully pick a dandelion without breaking any of its seeds. # *** # prop touch Dandelions are so fragile! I run my fingers through one of them and half the seeds fall. I don't like things that break so easily. # **** # prop photo I try to get a very close pic of a dandelion, but I can't get the phone to focus it. # *** # # arbusto de flores violetas thing purpleflowers bush with purple flowers name bush with flowers loc forkingpath tags smellable photographable touchable collectable nohidewhencollected actionbeforeboar desc Where the two parallel paths part, a tall bush explodes with purple flowers. The light bounces on them and green gets erased, forgotten. # *** # prop photo I try to capture the incredible colour and light of the purple flowers, but I fail. # *** # prop smell I think there is a trace of a scent near the purple flowers. Perhaps my brain is making it up. There is such an abundance of things here, unknown things, that I'm never fully sure of the reality of what I'm perceiving. # *** # prop touch I let the purple flowers caress my fingers. They are soft without seeming fragile. # *** # prop collect I pluck a stem with half a dozen flowers. # *** # prop list purple flowers verb examine purpleflowers write currentframe fra-7 js frachange('fra-7') continue thing watertank water tank name tank loc forkingpath tags photographable actionbeforeboar prop desc I take a quick look at the water tank. The supports are still doing their job; the walls haven't bent further out and water doesn't leak through the cracks we quickly filled with concrete. I remember how, right after the heavy rain, it seemed merely a moment away from collapsing. <br><span class="br-fixer"></span>They built it more than a hundred years ago; just a box to gather water from the hills. It was never intended to last this long. # *** # prop photo I try to get a nice photo of the water tank. The straight lines and the flat surface create a nice contrast against everything else. # *** # room descendingfork Brook path, start tags notvisited bringground csssunrise dir home forkingpath dir forest bigrootpath prop fromhome I feel a chill on my forearm as I turn to the path that goes down to the brook. The trees are so dense on both sides that no direct sunlight reaches down here. # *** # prop desc1 The slope gets steep at the beginning of the path. It's made of loose earth and covered in dry leaves, and slipping is very easy. But I'm alone today and I won't make a fool of myself! # **** # prop desc2 This is where a fork diverges from the main path and starts descending towards the brook. # *** # prop fromforest # trozo favorito de vegetación thing favouritepatch a patch of vegetation name vegetation loc descendingfork tags photographable touchable actionbeforeboar desc My favourite patch of vegetation is here, to one side of the path, at the foot of a big and very tangled root. It's my favourite because I can look at it for ten minutes and still find new species and things. # *** # verb examine favouritepatch say {favouritepatch.desc} goto favouritepatchdetail room favouritepatchdetail Brook path, favourite patch of plants tags noeventschedule csssunrise dir away descendingfork prop desc thing minutewhiteflowers minute white flowers loc favouritepatchdetail tags photographable touchable collectable nohidewhencollected actionbeforeboar name white flowers desc Flowers that seem to have a single white petal, small like a tear. I'm always surprised that something so small and fragile survives. # *** # prop list four or five tiny white flowers prop photo Taking a decent photo of the white flowers is hard because they are really really small, but I think I got it. I'm good. prop touch I touch a flower with the tip of my finger, very lightly, afraid of harming it. # *** # prop collect I pluck a stem with four or five flowers and put it in the box. It's too delicate, I know it won't get home. # *** # thing moss tags collectable nohidewhencollected touchable actionbeforeboar photographable loc favouritepatchdetail desc A patch of moss that looks like a carpet. prop touch When I touch the moss, it feels like a carpet too. A fresh, clean carpet, not like carpets in houses. There are unoccupied houses in the village with carpets that haven't been cleaned in a century, I think. # *** # prop list a piece of moss prop photo I take some moss pics. I try to not make them too boring, but they all look the same. # *** # prop collect I tear a small piece of moss. To the box! thing yellowflowers yellow flowers loc favouritepatchdetail tags photographable touchable collectable nohidewhencollected actionbeforeboar name yellow flowers desc The yellow flowers have two circles of petals like gears in one of Dad's drones. # *** # prop list a few yellow flowers prop collect I pluck some yellow flowers. # ** # prop touch I touch the yellow flowers and I remember some small flowers in a pot that someone used to have in a house back at the capital. Who was that? Anyway, those flowers were red, now that I think of it. # **** # verb examine yellowflowers write currentframe fra-6 js frachange('fra-6') continue room bigrootpath Brook path, big root tags notvisited brooksound bringground csssunrise dir home descendingfork dir forest bigholepath prop desc1 The path has a steep descending slope on one side, covered with pines, and a steeper one, almost a wall, on the other. Tree roots stick out of the earth, tangled like a plate of noodles. # *** # prop desc2 Tree roots that look like noodles stick out of the earth on one side of the path. # *** # prop fromhome prop fromforest thing stickingroot a big root name big root tags photographable touchable actionbeforeboar loc bigrootpath desc The root is a tangled knot of branches that protrude from the wall on one side of the path. It forms a lot of cavities and dark recesses that lots of plants seem to prefer for growing&colon; moss, grass, fungus and many things I still haven't learned to recognize. # *** # prop photo I take some photos of the large root, trying to light the different plants that live on its surface. I'll show them to Mom and Dad later so they can teach me what each plant is. # *** # prop touch The root is as hard as the trunk. The moss and little plants growing on the root feel different; some crunch, others are soft. # *** # # pinos y procesionaria thing pines loc bigrootpath tags actionbeforeboar desc I look closely at a pine. Among the branches I see things that look like grey wigs on mannequin heads. Dad told me how it looks when all the poisonous caterpillars burst out of those things and start walking to the ground. I don't want to see that, never. Not in daylight and not at night. # *** # verb examine pines hide pines bring nests say {pines.desc} thing nests prop display caterpillar nests tags photographable actionbeforeboar desc I look at one pine, and another, and another, and then another makes me scream. There must be hundreds of caterpillar nests! # *** # prop photo I take a few pics of the creepy caterpillar nests. # *** # room bigholepath Brook path, vertical cut tags notvisited brooksound bringground csssunrise dir home bigrootpath dir forest brook prop fromhome prop fromforest prop desc1 To one side of the path, on an abruptly ascending part of the slope, there's a deep vertical cut. # *** # prop desc2 The path passes by a deep vertical cavity cut in the slope. # *** # thing verticalcut vertical cavity on the slope tags photographable touchable actionbeforeboar loc bigholepath name vertical cut desc The cavity gives me a feeling of lack of air. Covered in loose rocks, crossed by roots and branches and stalks as thick as curtains, narrower than my fully extended arms, but deep. As the cut gets deeper into the slope, the walls, patched with moss, tangled roots and damp earth, get higher and higher&colon; seven or eight metres high at the deep end. # *** # prop touch I put my hand on the right wall of the cut. It's very dark, and the surface is wet and cold. I like the patches of moss, grass, soil and naked stone. It does not feel artificial. Kids in the capital never see anything like this, they can't imagine anything like this. # *** # prop photo setverb enter verticalcut at bigholepath thing handscratchverticalcut I scratched my hand when I entered that vertical cut verb enter verticalcut prompt enter cavity tag handscratchverticalcut wounded goto verticalcavity continue verb enter verticalcut !has verticalcavity notvisited say {verticalcavity.desc2} continue verb enter verticalcut has verticalcavity notvisited say {verticalcavity.desc1} untag verticalcavity notvisited room verticalcavity Brook path, inside vertical cut tags notvisited brooksound notambient noeventschedule csssunrise dir out bigholepath prop desc1 The vertical cavity is not like the path, wide and easy to walk. I stagger on loose stones, and if I look down at my feet, I can't see the branches that scratch my face. <br><span class="br-fixer"></span>After a couple of missteps and a red scrape on my left hand, I reach the end of the hole. I feel colder and damper. # *** # prop desc2 I carefully make my way to the deep end of the cavity. Cool and dark. # *** # verb go out at verticalcavity say Going down is harder than going up. Getting out is harder than getting in. continue setverb look intransitive at verticalcavity !has verticalcavity looked verb look at verticalcavity tag verticalcavity looked say At the end of the cavity, tall earth walls and twisted roots close around me, with broken branches and stems wrapped around them. Above me there are only leaves and earth, and in front of me only plants of the darkest green I've seen, because almost no light reaches this deep. I bet it will still be cool and dark in the middle of the summer, even in the heatwave days when nobody leaves the house. # **** # room brook Brook tags notvisited brooksound barefeet csssunrise dir home bigholepath dir forest source prop desc1 The path ends here, cut by the brook, strangled by protruding roots, knee-high weeds. <br><span class="br-fixer"></span>The brook was the first place I loved here, my first favourite. It's darker down here. It's hard even to know where the sun must be, down in this dark emerald tunnel where the water sings. <br><span class="br-fixer"></span>It's the first time I'm here without grownups around telling me not to do what I feel like doing. I'm twelve! I'm not going to put my head inside a lizard's mouth the minute there isn't a grownup watching me! # *** # prop desc2 Here is where the lush vegetation and the brook finish the path. # *** # prop fromhome I descend further towards the water's music. # *** # prop fromforest I make my way downstream, setting aside hanging sprigs and stalks. prop barefeet I take my shoes off and dip my feet in the brook, and I couldn't expect how cold the water is. No matter that we are in the middle of the spring already, no matter the heat is going to get serious in just four or five hours, the water is cold! And the stones are slippery and light splashes my face and I think this is the most wonderful place ever. # **** # setverb drink_from_the_brook intransitive at brook verb drink_from_the_brook at brook say I get onto my hands and knees and lower my lips to the current. It's so fresh! And its taste makes me think of stones and caverns and places where no one's ever been. # *** # setverb refresh intransitive at brook verb refresh at brook say I put my arms in the water up to the elbows, longer and longer, a minute, until they start feeling really cold, and then I cup my hands and splash my face. For a moment it feels like being a small fish in that same water. Something slippery and sparkling. # *** # # bolsa de patatas thing snackbag prop display something colourful under the water prop name colourful thing loc brook tags photographable collectable actionbeforeboar desc Tacky yellow and blue colours under the water catch my eye. The current has dragged a bag marked as 'snacks' and covered in bright colours. How can it be underwater and not dissolve? I don't think I've ever seen anything like it. Probably ancient trash. # *** # prop photo I take a photo of the snack bag to show Dad. # *** # prop collect The bag is tangled with some rocks at the bottom of the brook, just a few centimetres deep. The water is cold! It feels so good. I grab the bag; it is weird to touch, so smooth, and the colours are intact. I'm proud of cleaning the water and everyone at school will be amazed to see this. It's a treasure! # *** # prop list a plastic snack bag verb examine snackbag write snackbag.name snack bag write snackbag.display snack bag continue room source Brook's source tags notvisited brooksound noeventschedule csssunrise dir home brook prop desc1 And here my way comes to an end. The ground rises, almost like a wall; it's too high for me and it looks hard to climb; the water comes out of a small hole at the bottom. I can only turn back. # *** # prop desc2 There is no way forward. The ground rises abruptly, and the brook's water comes out of a hole at the bottom. # *** # prop fromhome I walk a few metres upstream, trying not to step on the water since there is no path here, only narrow spaces on both sides of the current. # *** # thing water_source source tags photographable loc source desc I think that the thing that blocks the brook is an enbankment, though I'm not totally sure what that word means. I don't know if it's natural or artificial. The water comes out of a hole at the bottom of a wall that's made of earth and stones and is covered in every kind of plant and fungus in the world. <br><span class="br-fixer"></span>It's not the real source of the brook, of course. Probably just a few metres where the water goes underground. The real source must be in the hills to the North, kilometres away. # *** # prop photo I take a pic of the enbankment, the water flowing out, all its greenery. # *** # # ramas colgantes con las que puedes chocar al moverte de brook a source y viceversa verb go forest at brook is hangingbranch.crash false run brookhangingbranch continue verb go home at source is hangingbranch.crash false run brookhangingbranch continue proc brookhangingbranch chance 1 3 say Ouch! I wasn't looking forward and I walked right into a branch hanging in front of my face. It's thorny! But I touch my face and I feel no scratch. write hangingbranch.crash true tag hangingbranchscratch wounded run brookhangingbranchbring thing hangingbranchscratch I walked right into a branch with thorns that was hanging in front of my face, down at the brook proc brookhangingbranchbring at brook put hangingbranch source proc brookhangingbranchbring at source put hangingbranch brook thing hangingbranch hanging branch name hanging branch prop crash false tags photographable collectable nohidewhencollected actionbeforeboar desc A branch hangs from a tree, reaching down to the height of my face. Hard, ugly and thorny. It's there on purpose for people to run into it! prop photo I try to get a good picture of the hanging branch, but it's thin and the phone keeps focusing on the background and I don't remember how to set it right. prop collecttries 0 prop collect Even more carefully, even more slowly, I grip a branch with two fingers, then I move it away from the other branches, then I grip it with the other hands and start twisting and twisting... Finally, it snaps! Into the box it goes. prop list thorny branch from a tree down by the brook verb collect hangingbranch eq hangingbranch.collecttries 0 say It would be nice to pick a piece of these thorny branches, but how can I do it without pricking my fingers? With great care, I grab a branch with my thinb and index finger and start twisting it, but it doesn't break. Let's use both hands then... ouch! I didn't see that thorn! <br><span class="br-fixer"></span>Tasting my own blood always makes me a bit nervous. add hangingbranch.collecttries 1 verb collect hangingbranch eq hangingbranch.collecttries 1 say I really want a piece of thorny branch. I look carefully at the branch... see all thorns on all sides... choose a good place to grip... argh! <br><span class="br-fixer"></span>I got a scratch on the back of my hand from a thorn on another branch. Why is this so hard? add hangingbranch.collecttries 1 tag hangingcollectscratch wounded thing hangingcollectscratch I got a scratch on the back of my hand when I tried to collect a thorny branch verb collect hangingbranch eq hangingbranch.collecttries 2 continue ## Principal 2 - camino derecho hasta bifurcación room ascendingfork Hill path, start tags notvisited bringground csssunrise dir home forkingpath dir forest cutthroughrock prop desc1 This is where the path that reaches the top of the hill begins. The path here is so wide that four people could walk hand in hand. prop desc2 This is where the path that reaches the top of the hill begins. prop fromhome prop fromforest # cartuchos thing gunshells loc ascendingfork tags photographable actionbeforeboar prop name blue objects prop display small blue objects on the ground prop photo I take a photo of the gun shells to show Dad. All wild animals in this area must be safe from furtive hunters. He has to catch them so the forest protection service can take away their guns. <br><span class="br-fixer"></span>Then I realize it&colon; if I show Dad this photo, he will know I came here. What can I do? # *** # verb examine gunshells !has gunshells examined tag gunshells examined write gunshells.display gun shells write gunshells.name gun shells say I kneel to see three small blue objects on the ground. What could they be? They are shaped like cylinders. Blue cylinders don't seem natural. Pieces of paper? Toys? Food wrapping? I realize&colon; gun shells! <br><span class="br-fixer"></span>Furtive hunters? Here?! Dad needs to know. # *** # write gunshells.desc I can't imagine any reason for gun shells to be here, in this path barely five minutes away from the village, other than furtive hunters. Like the old couple that insulted Dad two weeks ago. 'You should be ashamed of youselves,' Dad said. The man said nothing and the woman started to laugh. # **** # tag gunshells photoverb # continue verb photograph gunshells run schedule_an_event insertfurtivedadcomment 1 continue proc insertfurtivedadcomment say 'Furtive hunters don't do it for money,' Dad said. 'They think they have the right to turn the clock back and drag everyone to the time when people like them were in power. When they threw your grandad and grandma in jail. The Terror.' # ***** # # mata de moras thing blackberrybush name bush loc ascendingfork prop display blackberry bush desc A blackberry bush, I think. There are no berries now so I'm not sure. # ** # room cutthroughrock Hill path, rock wall tags notvisited bringground csssunrise dir home ascendingfork dir forest steepslope prop fromhome prop fromforest prop desc1 The path is wide here, with a gentle slope. Rocks fight for space on the uphill side of the road. The rock wall is impressive! I stand still to take a good look at it. Angular shadows, multicolour moss and a deep hole make a wonderful picture. # *** # prop desc2 This is the wide section of the path, not far from the fork, and flanked by an impressive rock wall. # *** # thing mossonrock moss loc cutthroughrock prop name moss tags touchable photographable collectable nohidewhencollected actionbeforeboar desc There are two kinds of moss on the rock here&colon; both are like carpets made up of green strings, but one has longer, thinner and lighter strings, while the others are shorter, thicker, and a less cheerful tone. prop display moss prop touch The thin one feels slightly wet, while the other makes cracking noises as if it were already dry and dead. prop collect I pull up a patch of moss, revealing nothing but rock underneath. I put the moss in my box. prop list a piece of green moss # túnel thing narrowtunnel narrow tunnel in the rock loc cutthroughrock name tunnel tags photographable actionbeforeboar prop photo I take some photos of the tunnel's mouth, but they are ugly and uninteresting. Nothing like the thing in front of me. desc There's a hole in the rock at ground level, straight and square as if a giant pencil had been stuck in the rock and then removed. It makes me curious because it's wide enough for me to crawl in, and terrifies me because I can't see how long it goes. I don't think it's natural. When did they make it? What for? setverb enter narrowtunnel !is globalstage afterflood verb enter narrowtunnel !has narrowtunnelentry entered say I crouch in the tunnel's mouth and feel a chill on my cheeks. My phone's flashlight barely makes any difference at all. The tunnel is littered with rocks and stones. say I can't crawl here, but it's high enough to squat. Carefully&colon; If I raise my head I hit the ceiling. say I go in. One metre deep. Two. Three. # *** # tag narrowtunnelentry entered goto narrowtunnelentry !has narrowtunnelentry listened run enablelisten narrowtunnelentrynoise verb enter narrowtunnel has narrowtunnelentry entered say I crouch and go into the tunnel. # *** # goto narrowtunnelentry !has narrowtunnelentry listened run enablelisten narrowtunnelentrynoise verb go out at narrowtunnelentry !has narrowtunnelentry outed tag narrowtunnelentry outed say I should have thought in advance that turning around in a narrow passage where I can't stand up would be painstaking. And that even the soft light of the morning, filtered by trees, would blind me. say I squint and crawl my way out of the tunnel, and when I'm out I take a deep breath. # *** # continue verb go out at narrowtunnelentry has narrowtunnelentry outed say I get out of the tunnel. Again, it's a bit of a relief. # *** # continue room narrowtunnelentry Hill path, tunnel entrance tags notambient noeventschedule cssfog out cutthroughrock prop desc1 prop desc2 proc narrowtunnelentrynoise say I listen carefully. Behind me, in the path, there are birds and wind and the brook singing. In front of me, there is nothing, and that nothing stretches towards me and tries to shield me from all the noise. To devour me. That's how it feels to me. tag narrowtunnelentry listened room steepslope Hill path, abrupt section tags notvisited bringground csssunrise dir home cutthroughrock dir forest reforestation prop desc1 This part of the path is very steep. There are some leafless trees on one side, and between them I can see that this is quite a bit higher than the trough's bottom. prop desc2 This part of the path is very steep. prop fromhome prop fromforest thing leaflesswhitetree leafless white trees name white trees loc steepslope desc Some trees are different here. Chestnut trees, I believe. They are pure white, without their outer layer of bark, which means that the tree is dead, according to Mom. And the branches are bare. The trees rise from the descending slope, ten metres below the path, and the branches at the top bend down above me, taller than our house. I can see further from here because the trees have no leaves. verb examine leaflesswhitetree say {leaflesswhitetree.desc} hide leaflesswhitetree bring deadchestnut bring viewbetweentrees bring bark # corteza thing bark bark tags touchable photographable collectable nohidewhencollected actionbeforeboar desc Dry bark on a tree, falling off piece by piece, layer by layer. prop touch I like putting my finger on the rough bark, following its lines, sticking my nails in the cracks. prop photo A macro photo of the bark reveals even more colours and shapes than my eyes can see! prop collect I tear a piece of bark made up of five or six stacked layers and put it in my sample box. prop list a piece of bark from a leafless tree thing deadchestnut dead chestnut trees name dead trees tags photographable actionbeforeboar desc Dead, white, bare chestnut trees. thing viewbetweentrees view between the dead trees name view tags photographable actionbeforeboar prop photo I take a couple of panoramic photos, but not very good ones. verb examine viewbetweentrees say This place is some ways up the hill. The bare trees let me see the descending slope, covered in thick forest and undergrowth, with a hundred shining hues of green and very dark shadows. The sun isn't high yet. say On the opposite side, beyond the brook, the other slope is rockier and almost bare. The trees that resisted the downpour last autumn could fall any day. bring fallingtrees thing fallingtrees uprooted trees name trees desc Some big trees on the opposite slope of the trough. They were almost uprooted last autumn by the downpour, and most of their roots are exposed. Everyone says they won't last until the end of the year. verb examine fallingtrees say {fallingtrees.desc} run setfocus ambient_flood 1 room reforestation Hill path, reforestation zone tags notvisited bringground cssopenair dir home steepslope dir forest anotherfork prop desc1 Suddenly I'm in the sun again, no forest around, just the sky. Last month, a crew came here, cut most of the old trees, turned over the soil and planted new saplings. prop desc2 I'm in the part of the forest where reforestation works have been ongoing since last month. prop fromhome prop fromforest thing reforestationsign a handwritten sign name sign prop display reforestation sign loc reforestation tags photographable actionbeforeboar prop desc A handwritten piece of paper on a stick&colon; "Reforestation action - oak, chestnut, ash, maple, cork oak, quince." The date is March 14<sup>th</sup>. <br><span class="br-fixer"></span>There's another piece of paper that says&colon; "Do not remove large logs - Forest furniture." prop photo I take a pic of the "Forest furniture" sign. I like making funny pictures! verb photograph reforestationsign tag reforestationsign photographed say {reforestationsign.photo} run setfocus ambient_photos 2 thing reforestationtrees newly planted trees name new trees loc reforestation prop desc The ground looks like an egg carton, only with thin, half-metre-tall trees instead of eggs. It's hard to imagine how these puny things could live long enough to become real trees. <br><span class="br-fixer"></span>Look! Some saplings seem broken already. thing reforestationtreesfixed newly planted trees name new trees prop desc The ground looks like an egg carton, only with thin, half-metre-tall trees instead of eggs. It's hard to imagine how these puny things could live long enough to become real trees. verb examine reforestationtrees say {reforestationtrees.desc} bring brokensapling # brote arrancado thing brokensapling a broken sapling name broken sapling prop desc I look at one of the broken saplings. On a closer look, it's not broken, it's uprooted. Perhaps an animal, but which one? verb examine brokensapling say {brokensapling.desc} tag brokensapling fixable # el brote arrancado se puede intentar replantar setverb fix brokensapling has brokensapling fixable # varios intentos fallidos de replantar el brote. mensajes diferentes verb fix brokensapling eq $fixbrokensapling 0 !has brokensapling dug assign fixbrokensapling 1 say I dig a new hole for the sapling, put it in upright and cover the roots with soil. <br><span class="br-fixer"></span>The sapling leans and falls over immediately. # este intento abre el camino al huerto donde se puede coger una azada verb fix brokensapling eq $fixbrokensapling 1 !has brokensapling dug assign fixbrokensapling 2 say I dig again, deeper, and put more soil over the roots. It's a bit tiring.<br><span class="br-fixer"></span>The sapling leans and falls over immediately. # *** # # open orcharddoor orchard orchard tag printedtext triedsapling tag orchardtools searchable write orchard.printonce The heap of garbage is there. Perhaps I could find something to dig. But there are sharp and rusty things in there. verb fix brokensapling eq $fixbrokensapling 2 !has brokensapling dug assign fixbrokensapling 3 say What the hell? I dig and plant and cover and I try to make it all better. I have sweat in my eyebrows. And the small tree falls over again.<br><span class="br-fixer"></span>I need tools. # *** # verb fix brokensapling eq $fixbrokensapling 3 !has brokensapling dug say I'm not doing anything else with this sapling without some tool to dig. # *** # # si tienes una azada, el mensaje es que caves primero verb fix brokensapling !has brokensapling dug here hoe say To set the sapling straight, I need to dig with the hoe first. # *** # # si tienes una azada y no has replantado, se activa el verbo cavar # nota: lo he implementado como intransitivo, puede ser conveniente cambiarlo a cverb si escribo más usos para la azada setverb dig hoe here brokensapling gt $fixbrokensapling 0 !has brokensapling dug # definición de cavar con la azada en esta situación verb dig hoe here brokensapling gt $fixbrokensapling 0 tag brokensapling dug say I grab the hoe and dig the best hole I can. # *** # # solución definitiva verb fix brokensapling has brokensapling dug hide reforestationtrees bring reforestationtreesfixed hide brokensapling bring fixedsapling say I set the sapling straight, put it in the hole and cover the roots with soil carefully. <br><span class="br-fixer"></span>It stays straight now! I did it! # *** # # brote arreglado thing fixedsapling the sapling I set straight name sapling tags photographable touchable actionbeforeboar desc I look at the tree sapling I set straight. It is as high as my stomach, and its leaves are a very light, translucid green. To me they sing with light. I have no idea what kind of tree it is but I love it. # *** # prop photo I take a few pictures of my sapling. It's so pretty and I'm so happy to have saved it! I set a picture as background on my phone, I want to see it all the time. # *** # prop touch I caress the sapling. It's soft and flexible but I'm sure it wouldn't break easily. # *** # room anotherfork Hill path, second fork tags notvisited bringground csssunrise dir home reforestation dir left leafcoveredpath prop desc1 The path forks again. The main branch makes a sharp turn to the right, and a steep climb to the top of the hill follows, or so Dad says. He also said the path was impossible and there was nothing at the top but trees and bush, not even a good view. They told him there are traces of a Celtic settlement, but he didn't find them. I'm certainly not going that way.<br><span class="br-fixer"></span>The other branch goes further up the trough until meeting the brook further upstream. Mom said I couldn't go there because the path is unused and gets blocked. From here, I see the ground is covered in thick leaf litter. # *** # prop desc2 The second fork in the path. Right goes up to the hill's summit, and left follows the trough between the slopes. Right is a cul-de-sac and left was forbidden by Mom. # *** # prop fromhome prop fromforest room leafcoveredpath Valley path, leaf carpet tags notvisited barefeet bringground csssunrise dir home anotherfork prop desc1 I take the left branch and my shoes get buried in leaf litter. This path is wide, comfortable, but no one comes here. <br><span class="br-fixer"></span>I'm quite far from home now. Mom told me never to follow this path any further, I have to return. # *** # prop desc2 This the the beginning of the path that goes up the valley. I'm not going any further. prop barefeet I take my shoes off and let the leaf litter tickle my feet. One year ago, when we lived in the capital, I couldn't walk barefoot. I thought it was disgusting. I don't know what made me change. <br><span class="br-fixer"></span>I enjoy crushing the leaves with my feet, then I put on the shoes again. # **** # prop fromhome prop fromforest # alfombra de hojas caídas thing leafcarpet a carpet of fallen leaves prop name fallen leaves loc leafcoveredpath tags touchable smellable actionbeforeboar prop desc I can't see the ground here. It's covered in a thick carpet of fallen leaves. # *** # prop touch I run my fingers through the dry leaves. They make a crackling sound as I squeeze them. My hand catches a bit of moisture. It feels wonderful. It's funny that I didn't use to like this. Now I don't want anything to do with people who don't love this stuff. There are some kids like that at school in Pontafer and they are the worst there. # **** # prop smell I put my nose to the ground to smell all the dry leaves. To me, it smells of moist earth. Pleasant at first, but heavy. # *** # setverb clear leafcarpet has leafcarpet clearverb !has leafcarpet cleared verb examine leafcarpet tag leafcarpet clearverb continue verb clear leafcarpet say I start sweeping leaves to the side of the path. Let's see if I can clean a bit of the path, see the ground beneath the carpet. Useless! But I don't stop. Only a little more and I will get something done... No good. Why can't I stop? say Then the tip of something white surfaces. # *** # bring rib_unexamined tag leafcarpet cleared # costilla thing rib_unexamined prop display something white prop name something white prop desc I dig the object up from the leaves. What is it? Well, as I told Marta at school one day, if it's white and hard, in the forest, it's almost always a bone. She said that was disgusting. And she has lived here all her life. I'm the one who never saw a bone until last year because I lived in the capital! <br><span class="br-fixer"></span>This one is long like a hand, clean, slender and curved. I think it's a rib! I think I'm smart, am I not? # **** # thing rib prop display a rib prop name rib tags photoverb collectverb actionbeforeboar prop desc An animal rib that was buried under dry leaves. prop collect The rib is just big enough to fit diagonally in my sample box. # *** # prop list a rib prop photo I take a photo of the rib. I want Mom to confirm that I have guessed the kind of bone it is. # *** # verb examine rib_unexamined hide rib_unexamined bring rib continue ## Principal 3 - de la bifurcación al final room path_fallentree Valley path, a fallen tree tags notvisited bringground csssunrise dir home leafcoveredpath dir forest foresttunnel prop fromhome prop fromforest prop desc1 A fallen tree crosses the path like a fence, diagonally, from the ground on one side of the path to my head's height on the other. All around the forest is thick like a tunnel. # *** # prop desc2 A fallen tree crosses the path from left to right, in a dense part of the forest. # *** # thing fallentree fallen tree loc path_fallentree prop name fallen tree tags touchable photographable collectable nohidewhencollected prop desc I have no idea what species the tree was. Its trunk is as thick as my body, and very straight. The wood must be hard&colon; the trunk didn't bend or break when it fell. It isn't rotten, and it hasn't been colonized by fungus, moss or insects. <br><span class="br-fixer"></span>Right now, it shines with a warm vibrant colour against a muted background. # *** # prop touch I caress the tree. Rough but not too rough, clean but not too clean. prop collect I tear a piece of bark off the tree. # *** # prop list bark from a fallen tree # *** # verb collect fallentree prompt collect something from the fallen tree continue verb examine fallentree tag fallentree verblookunder continue setverb look_under fallentree !has fallentree lookedunder has fallentree verblookunder at path_fallentree verb look_under fallentree prompt look under the fallen tree say I kneel under the highest part of the fallen tree. The underside is different from the top. Cold, a bit damp, softened. Eaten by bugs? Small circles of white and yellow fungus thrive in the shade. Some day, not too far, they will weaken the wood so much that the trunk will finally break. # *** # tag fallentree lookedunder # de alguna manera tengo que programar que al cruzar esta habitación, preguntar al jugador si quiere pasar por encima o por debajo del árbol room foresttunnel Valley path, tree tunnel tags notvisited bringground csssunrise dir home path_fallentree dir forest openairdescendingpath prop fromhome prop fromforest prop desc2 A tunnel made of trees! Is this natural? It feels like a miracle. # *** # prop desc1 The trees here are thicker than I have seen in my entire life! Branches from both sides of the path are entwined above my head, creating a solid roof. Only a few holes in the canopy allow rays of light to come through. It's a tree tunnel! # *** # # flores moradas colgantes thing hangingpurpleflowers hanging purple flowers name purple flowers loc foresttunnel tags photographable touchable smellable collectable nohidewhencollected desc There's a tree that looks like a wedding decoration, all emerald leaves and hanging purple flowers that brush against my face. The flowers look so delicate... two petals only, one large and the other small, shaped like open mouths with yellow tongues. # ***** # prop touch The purple flowers feel both delicate and strong between my fingers. Softer than any clothes I have, but sturdier. # **** # prop photo I take an amazing photo of the purple flowers. Their colours shine in the center of the pic, like an explosion. # **** # prop smell Sometimes I wonder why people say that flowers smell so good. I don't smell anything at all on the purple flowers. # *** # prop collect I pluck a purple flower from its stalk and put in the sample box. # *** # prop list a purple and yellow flower room openairdescendingpath Valley path, no trees tags notvisited bringground cssopenair dir home foresttunnel dir forest path_redbushes prop fromhome prop fromforest prop desc2 The forest that starts near our village ends here. # *** # prop desc1 The tree tunnel ends after a couple of turns, at a blinding circle of light. My eyes take half a minute to adapt to the hard and hot morning light, which has obliterated any trace of the fog. There are almost no trees beyond this point, and the path starts descending. It is overrun with weeds and barely visible a few metres from here. No one comes this far. <br><span class="br-fixer"></span>An idea comes to me and I check the sky. Perhaps a forestry drone is there to see me. One of Dad's, even. But there's nothing. # *** # rule at openairdescendingpath write currentframe fra-8 js frachange("fra-8") thing descendingpathlandscape the landscape name landscape loc openairdescendingpath tags photographable prop desc From here I see that the valley gets narrower and more rugged. I see a path on the other side of the creek. My way back! In a straight line, it must be less than thirty metres from here. But I look down and despair. Getting down to the brook from here would be... an interesting challenge. And climbing up on the other side until the path? Killing myself. I have to keep following the path here and hope it crosses to the other side at some point. # **** # thing slopebush sparse shrubs name shrubs loc openairdescendingpath tags smellable photographable desc The downhill side is steep, and covered with sparse shrubs. There's a plant I haven't seen before, a tall bush with few dark leaves, but crowned with incredible yellow flowers, many many of them. I want to smell and touch them but I can't go down there. <br><span class="br-fixer"></span>I can't see the brook, but it must be thirty or forty metres downhill. # *** # prop smell I inhale deeply, trying to catch a whiff of scent from the yellow flowers, but they are too far away. # *** # prop photo I snatch a pic of the nearest shrub with yellow flowers. # *** # verb smell slopebush untag slopebush smellverb continue room path_redbushes Valley path, red bushes tags notvisited bringground cssopenair dir home openairdescendingpath dir forest path_highrock prop fromhome prop fromforest prop desc2 A section of the path with striking red bushes on the uphill side. # *** # prop desc1 The path bends left and right to hug the slope of the hill, where trees are now scarce. <br><span class="br-fixer"></span>A striking red-purple shape appears further down. I gasp when I reach it&colon; thick bushes have formed a sort of natural hedge, and the colour is something I have never seen in any plant before. # *** # thing redbushes red bushes name red bushes loc path_redbushes tags photographable touchable prop touch The red bushes have rigid branches and strong leaves, like carton. There's nothing soft in this plant. # *** # prop desc The hedge is a thick tangle of branches and millions of leaves sprouting in every direction. The leaves are straight, long and thin like spears, fiery red. Spiderwebs hang between them. <br><span class="br-fixer"></span>I remember something. I've already seen bushes like this, not long ago. I said I loved them, but Mom and Dad shook their heads and had a serious expression. # *** # verb examine redbushes bring spiderweb continue thing spiderweb tags photographable touchable collectable prop desc Spiders seem to love the empty spaces of this red bush to build their webs, their shiny thin threads. After looking carefully, I realize some webs are just random threads with no shape I can understand; others are made of parallel lines, and others are beautiful, dense spirals. Different spider species? # *** # prop photo I take a photo of the biggest and most elegant web. # *** # prop touch I destroy a spiderweb with the slightest touch of my finger, and I can't even feel it. verb collect spiderweb say I think that if I cut the spiderweb's ends with my finger perhaps I'll get something that I can put inside my box... No. What a silly idea. In the end I rub my hand on the ground to remove the sticky remains of the web. untag spiderweb collectable untag spiderweb collectverb thing swarm a swarm of small flies prop name swarm loc path_redbushes tags photographable alive prop desc Another swarm of tiny flying bugs, like the one I keep seeing near our home's door, always floating over the same random spot, not near a tree, flowers or anything at all. Week after week, although these bugs, which look tinier than a grain of sand, don't live longer than a few days. <br><span class="br-fixer"></span>I don't want any of those bugs to touch me. # *** # prop photo I try to take a photo of the bug cloud, knowing that these fast-moving minute white things won't appear in the pic. # *** # room path_twistedtree Valley path, twisted tree tags notvisited bringground cssopenair # dir home path_redbushes # dir forest path_highrock dir home path_highrock dir forest pathunderhut prop fromhome prop fromforest prop desc2 A sharp bend in the path, with a really twisted tree perched on one side. # *** # prop desc1 Weeds and dense shrubbery choke the path as I walk further away from the village. The sun is moving higher, there's no shade from trees and I'm starting to feel seriously hot. There's a sharp bend to the right, and an amazing tree sticks out on the left side. <br><span class="br-fixer"></span>A few birds dark dart in front of my eyes. When I move my gaze in their direction, they are almost gone. They fly like they are pursuing something, but I didn't see anything fleeing from them. I don't know if anyone I know can explain why they did that. # *** # thing twistedtree a twisted tree loc path_twistedtree tags photographable touchable prop name twisted tree prop desc Leafless, white, smooth&colon; probably dead. The trunk is almost horizontal at ground level, then it contorts upwards and grows like a spiral. The branches are like the limbs of a doll when a little child tests how far they can bend. # *** # prop touch I caress the soft surface of the tree. # *** # thing fakeplant prop name curious plant prop display a curious plant loc path_twistedtree tags photographable collectable prop desc There are some huge leaves lying on the ground as if they have fallen from a tree. But they look different to the trees here and feel very strange to touch. Unlike any other plant I have ever touched. They feel... artificial? <br><span class="br-fixer"></span>An artificial plant. What sense does that make? Why would anyone make one? <br><span class="br-fixer"></span>But that's what it is. Plastic, surely. An old plastic plant that somehow ended up here with millions of living plants. <br><span class="br-fixer"></span>Madness. Interesting, funny, but mad. # **** # prop collect I tear out one leaf of the fake plant and put it in my box. # *** # prop list a piece of plastic that looks like a plant # *** # verb examine fakeplant write fakeplant.name fake plant write fakeplant.display a fake plant continue room path_highrock Valley path, flat rock tags notvisited bringground cssopenair # dir home path_twistedtree # dir forest pathunderhut dir home path_redbushes dir forest path_twistedtree prop fromhome Suddenly, something far, something white gleams under the sun, blinding me. I don't know what it is; I can barely see it through the bush. prop fromforest prop desc2 A big flat rock near a turn in the path. prop desc1 The path goes up to a corner, turns and starts descending again. On the corner lays a flat rock overlooking the slope. On the uphill side there is tall shrubbery and some scattered trees. thing highrock the rock name rock loc path_highrock prop desc The rock is incredibly cracked, porous, rough to the touch. It's as intricate and detailed as the patches of moss and vegetation. But these features are not growing, they are scars. verb examine highrock tag highrock examined continue setverb climb highrock has highrock examined verb climb highrock say I climb the flat rock. # *** # goto path_highrockclimb room path_highrockclimb On top of the flat rock tags noeventschedule notambient cssopenair down path_highrock setverb look_at_landscape intransitive at path_highrockclimb verb look_at_landscape at path_highrockclimb has path_highrockclimb lookedlandscape say This time the landscape doesn't make me nervous. I know I'm not too far from home, even though I can see nothing I recognize. # *** # continue verb look_at_landscape at path_highrockclimb !has path_highrockclimb lookedlandscape tag path_highrockclimb lookedlandscape say I stand at the rock's tip and look around. There's nothing I recognize! Even the striking red bushes I saw nearby are hidden behind something else. I can't say if the ridge is the same one I saw before, and the faraway forest doesn't have any features like the places I know. say What if I'm I lost? say Calm down. There's only one path. # *** # continue verb look_at_landscape at path_highrockclimb !has path_windtower seenfromclose !has path_windtower seenfromrock say And then I see something else. Why did nobody tell me this was here? What if I am the first person to discover it? say It's a piece of the tower of a wind generator, a hundred metres from here. It lies on the trough's bottom, a little above the brook, like a tree bridging both sides. It's horribly white and absurdly big and it makes the whole landscape feel strange and fake. say I notice I'm not breathing. # **** # tag path_windtower seenfromrock verb look_at_landscape at path_highrockclimb has path_windtower seenfromclose !has path_windtower seenfromrock say I take another look at the landscape, but my gaze turns to the fallen wind generator again and again. Too big, too white, an invading species from a different landscape. # *** # tag path_windtower seenfromrock room pathunderhut Valley path, dense bush tags notvisited bringground cssopenair dir home path_twistedtree dir forest path_windtower prop fromhome prop fromforest prop desc2 This part of the path is the steepest, and the shrubbery is the densest. prop desc1 The path descends abruptly&colon; the slope is the steepest I have seen so far today, and dense bush on both sides make it feel almost like a corridor. # * # thing bigfeather a big feather name feather tags photographable touchable collectable loc pathunderhut prop desc I pick a feather from the ground. It's amazing! Slender, longer than my two hands put together, many shades of brown. What bird is so big? # *** # prop collect I put the large feather in my sample box. I could hang this near my window, like the one I had back at the capital. # *** # prop list a big feather # *** # prop touch The feather is very soft and its barbs feel pleasant under my fingertips, like some kind of rhythm. # *** # prop photo I take some photos of the feather, both from a distance and very close to the barbs. # *** # # piedra negra con fósil thing blackstoneheap heap of black stones prop name stones loc pathunderhut tags touchable collectable photographable nohidewhencollected desc It looks like a thin streak of black blood running down the slope until getting cut by the path. It's made of black stones, most like leaves, some big like a hand. The rocks look flat, plain black and featureless. <br><span class="br-fixer"></span>But if you rummage a little, you find that some stones have a relief&colon; fossilised plants from deep time. prop touch The black stones are cold and soft. I don't feel anything different when I touch the fossil relief. Perhaps my fingers are not sensitive enough? Should I worry about that? prop photo I take some photos of the heap and stones with bigger fossils, but it doesn't really show in the picture. prop collect I haven't shown these fossils at school. I put one in my sample box&colon; surely that will impress them. prop list a stone with a fossilized plant room pathtohut Valley path, hidden track tags notvisited bringground cssopenair dir uphill hut_outside dir downhill pathunderhut prop desc2 A hidden path near the wind turbine, leading uphill. Hidden on purpose? # *** # prop desc1 Behind the bushes, it looks like there <em>is</em> a path going uphill. It's invaded by weeds and the overgrowth on both sides reaches as high as my elbows, but it's not too difficult to traverse. <br><span class="br-fixer"></span>Is the path hidden on purpose? I don't know. # *** # room hut_outside tags notvisited noeventschedule notambient bringground cssopenair dir downhill pathtohut dir inside hut prop desc2 A small, half-ruined building. prop desc1 I was right! The hut I saw from the fallen wind turbine is here! <br><span class="br-fixer"></span>Brick walls, some kind of synthetic roof, horrible windows, so ugly. It looks like they built it in a couple of hours and then the forest corroded it for decades. <br><span class="br-fixer"></span>I walk around the hut. Small but not too small. There's only one door, and the two windows on the front, and nothing attached to the hut. But at least it's still standing. Perhaps there's something inside that I can use to drive the lizards away. # *** # room hut tags notvisited noeventschedule notambient csshut dir out hut_outside prop desc2 Inside the dark hut. # ** # prop desc1 I push the door, first carefully, but it doesn't budge, so I push hard. The screech is like a needle in my ear! The door opens and I get inside but I can't see a thing. Something makes a deep noise to my right, I look, but nothing yet! I cover my eyes with my hand and wait, then look again. Now I see shapes. <br><span class="br-fixer"></span>Nothing moves, nothing seems threatening. # *** # verb go out at hut has hut exited say I leave the hut. # *** # continue verb go out at hut !has hut exited tag hut exited say I look for the door, I protect my eyes against the light with my hand, and I leave. But the morning light blinds me all the same. say Besides, it's really hot now. # *** # continue room path_windtower Brook crossing and fallen tower tags notvisited bringground csstower dir home pathunderhut prop desc2 This is where the path crosses the brook. The wind tower fell on top of it. prop desc1 And here it is, finally. I was right!<br><span class="br-fixer"></span>The path descends to the brook and continues on the other side, but it makes a U-turn and goes back downstream, to the lower part of the valley, past the village. And then I'll be able to cross the brook again and be back home in time for Mom to give me a good dressing-down. # *** # prop fromhome prop fromforest # Reglas: cambiar la descripción inicial en función de si has mirado desde la roca plana o no rule # descripción de la turbina at path_windtower has path_windtower seenfromrock !has path_windtower seenfromclose tag path_windtower seenfromclose say But there's also the fallen wind tower. <br><span class="br-fixer"></span>I feel something like a blow to my whole body, because it's in full sunlight and so white that its glow is like a hammer. # *** # rule # descripción de la turbina at path_windtower !has path_windtower seenfromrock !has path_windtower seenfromclose tag path_windtower seenfromclose say And then I see something else. say Why did nobody tell me this was here? What if I am the first person to discover it? say It's a piece of the tower of a wind generator. It lies on the trough's bottom, a little above the brook, like a tree bridging both sides. It's horribly white and absurdly big and it makes the whole landscape feel strange and fake. say I notice I'm not breathing. # **** # room afterwindtower Path home, near the brook and the wind generator tags notvisited noeventschedule cssopenair dir run pathafterlizards dir walk pathafterlizards # variante lenta # la forma de programarlo sería poner dos direcciones diferentes que llevan al mismo destino, pisar los dos verbos, y dejar las descripciones en blanco, trasladarlas a esos verbos. # cuando deja de correr, el verbo correr deja de estar disponible # hay 2 variantes lentas: si dejas de correr ahí y si sigues andando desde un paso anterior # como esta es la primera habitación, solo hay 1 variante lenta rule at afterwindtower write currentframe fra-9 js frachange("fra-9") verb go run at afterwindtower say I start running down the path. My feet, my hands, my knees, my arms, my side, all hurt. The path is narrow, winding and rough; the thicket is scratching my bare legs. # *** # tag generaltags lasthomerun tag thickettowerscratch wounded continue thing thickettowerscratch My legs are full of scratches from the thicket when I ran like mad after crossing the wind tower verb go walk at afterwindtower say I look for any signs of the lizards. I don't see anything, not even in the shadow under the tower. If they are there, they have to be in the deepest part. say I turn to the path and walk away from the brook and the generator. I throw quick glances behind me. The lizards are not coming after me. The path is narrow, winding and rough, and I have to be careful with the thicket to prevent scratches on my legs. close pathafterlizards run close pathalongslope run close minemouth run tag generaltags lasthomewalk tag printedtext afterlizardwalk continue room pathafterlizards Path home tags notvisited noeventschedule afterlizardskylandscape cssopenair dir run pathalongslope dir walk pathalongslope thing afterlizardslandscape the landscape prop name landscape tags photographable prop desc I look all around me. This side of the brook doesn't have trees or any large plants, and nothing blocks my vision. I see things I know&colon; the broken wind tower like a giant pencil; the hut, which looks more sinister now; the twisted tree and the flat rock. From afar, the hillside looks like a colored carpet; red, green, brown, white and even blue. The brook is ten metres below. prop photo thing afterlizardsky the sky prop name sky prop desc The sky is incredibly clean. Back at the capital, it was so unusual to have such a clear blue sky, without any orange dust from the Sahara. I'm still unused to the colour. <br><span class="br-fixer"></span>But there's no shade here, and the morning is quite hot. I better keep moving. verb examine afterlizardsky tag afterlizardsky examined continue verb examine afterlizardslandscape tag afterlizardslandscape examined continue rule # el cielo y el paisaje acompañan al jugador hasta que los examina has $room afterlizardskylandscape has printedtext afterlizardwalk !has afterlizardsky examined bring afterlizardsky rule # el cielo y el paisaje acompañan al jugador hasta que los examina has $room afterlizardskylandscape has printedtext afterlizardwalk !has afterlizardslandscape examined bring afterlizardslandscape verb go run at pathafterlizards say I'm not going to take risks. It doesn't matter if my legs already feel like somebody else's backpack. I keep running. say This side of the brook, everything is rockier, steeper, harder to traverse. It seems that the path is clear though. I hope I'll be able to get home. continue verb go walk at pathafterlizards has generaltags lasthomewalk say I keep walking carefully, looking back from time to time, but now I really think I'm out of danger. tag printedtext afterlizardwalk continue verb go walk at pathafterlizards has generaltags lasthomerun untag generaltags lasthomerun tag generaltags lasthomewalk tag printedtext afterlizardwalk say Running is too exhausting and I don't think I should be so worried anyway. Those animals are faster than they seem but I don't really think they could have run behind me so long and so fast. I look behind me and I see neither any monitor, nor the fallen tower itself. say So, finally, I slow down and just walk and look. continue verb go walk at pathafterlizards close pathafterlizards run close pathalongslope run close minemouth run tag printedtext afterlizardwalk say This side, the slope is a lot steeper and the ridge is higher. Some sections are rocky and almost vertical. There are only a few scattered trees, some broken or uprooted during the flood. But I see that the path is a clear, continuous line downstream, going up and down to find places to pass through. say It'll lead me home. continue room pathalongslope Path home tags notvisited noeventschedule afterlizardskylandscape cssopenair dir run minemouth dir walk minemouth thing uprootedtrees trees prop name trees prop display trees loc pathalongslope tags photographable prop desc Three nearby trees are still standing straight, close to one another, like a family. But there's another even closer that is uprooted and resting at an angle between two large rocks. To its right, there is the stump of a young and thin tree, broken in half. The upper part of the tree is nowhere in sight, but after the flood I saw all the trunks that were dragged, four kilometres downstream. <br><span class="br-fixer"></span> I had seen floods in the capital, and fires, and windstorms, but nothing like that night. Nothing like those sounds. <br><span class="br-fixer"></span>And Mom and Dad believed it would be less dangerous here! # **** # prop photo I take photos of the three standing trees, and also the others. # *** # verb go run at pathalongslope say I climb a short steep slope, and I don't think I can run like this much longer. say After the slope, I see a small flat area to the right and a cave mouth. I don't get any details. continue verb go walk at pathalongslope has generaltags lasthomerun tag printedtext afterlizardwalk say This is enough. I can't run like this anymore. I don't think I should be so worried anyway. Those animals are faster than they seem but I don't really think they could have run behind me so long and so fast. I look behind me and I see neither any monitor, nor the fallen tower itself. continue verb go walk at pathalongslope tag printedtext afterlizardwalk say The path goes up a little longer and I run, impatient to see the view finally open. say My back itches under the sun. On the opposite slope I see the forest I went over, and I miss it. So I run faster to escape from the sun. say I remember the lizards and the boar and the overgrowth and the fog. I keep running. And I get to the top, hoping that I won't see just another curve hugging the hill, but the city and the village and a clear way to get home. # *** # continue room minemouth Path home, top of the slope tags notvisited noeventschedule afterlizardskylandscape cssopenair notambient setverb look intransitive at minemouth !has minemouth looked verb look at minemouth !has minemouth looked tag minemouth looked open minemouth walk endofthepath say And I see the church's roof, the treetops of the chestnut trees and pines, the scar left by the water from the tank. verb go walk at minemouth say And the path goes on and on, gently descending through clear hills where no big animal can hide, so I can stroll until I get to the main road and return home. say Or perhaps keep going further. Not deeper but further. There's nothing to stop me. continue room endofthepath Path home tags notvisited noeventschedule cssopenair setverb return_home intransitive at endofthepath setverb keep_walking intransitive at endofthepath verb keep_walking say I walk. The sun rises higher in front of me, and everything becomes a blurry bright stain; the roofs of Pontafer blurrier and brighter than anything else, blinding, sweltering. The column of smoke rises in the hills behind the city. I hope Dad's fire brigade doing ok. say I keep walking and walking and walking and seeing things. For a long while. say Eventually, I open the front door at home, and move from the bright and hot outside to the dark and cool interior. # *** # run return_home_ending verb return_home say I walk. The sun rises higher in front of me, and everything becomes a blurry bright stain; the roofs of Pontafer blurrier and brighter than anything else, blinding, sweltering. The column of smoke rises in the hills behind the city. I hope Dad's fire brigade doing ok. say After not too long I open the front door at home, and move from the bright and hot outside to the dark and cool interior. # *** # run return_home_ending proc return_home_ending say Mom's not home. I'll worry about that later. say What an adventure! What did I get out of it? # *** # tag generaltags hideactions count numberofsamples tagged collected count numberofwounds tagged wounded count numberofphotos tagged photographed goto backhome js frachange('fra-0') ### EVENTOS ## Fase: niebla # La fase de la niebla tiene su propio mapeado, idéntico al normal pero con descripciones diferentes # La siguiente regla hace el paso de la niebla al mapa normal # De momento es una simple cuestión de número de turnos rule # transición a la fase amanecer is globalstage fog !at interruption !at inventory gt $turncount $fogfinalturn is thisturnprintedscheduleorambient false run event_stageendfog # Para pruebas setverb test_sunrise intransitive is globalstage fog is testingmode true !at newgamecheck !at startroom !at endofvillage !at forestbeginning_fog verb test_sunrise run event_stageendfog proc event_stageendfog write globalstage sunrise say I feel a sudden gust of wind, so cold it makes me shake. Tree branches and leaves dance to a multicolour rhythm. Sunlight! Sunlight all around, green and gold and loud. The fog recedes fast and now I can see everything around me, shining in many notes. # ***** # say At last! I can finally start! There are so many things around me. # Mensajes ambientales tag ambient_sounds availablemessage tag ambient_physical availablemessage tag ambient_smellintheair availablemessage untag ambient_fog availablemessage run cancelfocus # Cambiamos la probabilidad de mensajes ambientales assign ambientcountlimit 2 assign ambientinsertchance 6 assign actionsbeforeboar_turnssince 0 # Nos aseguramos de que no quede ninguna opción colgada de la fase de niebla assign listenproc none assign listendisablecount 0 # verbo listen # Programación: ruido de jabalí 5-30 turnos random randnum 25 add randnum 5 run schedule_an_event boarfirstgrunt $randnum run schedule_an_event event_sunrise_birdsong 1 run schedule_an_event event_sunrise_euphoria 3 # Movemos al jugador al nuevo mapa # put samplebox endfog.$room put backpack endfog.$room goto endfog.$room log ( $turncount ) event_stageendfog > Fin de la fase de niebla run endfogframe run endfogbg proc endfogframe write currentframe fra-1 js frachange('fra-1') proc endfogbg write currentbg bg-sunrise js bgchange('bg-sunrise') proc event_sunrise_birdsong say Birds are starting to sing. Everywhere. # **** # write currentmap l9u8 js mapchange('l9u8') proc event_sunrise_euphoria say The sun! I remember what teachers always say. <em>Absorb! Everything! Around! You!</em> Make yourself feel it. say I stand still. I absorb. Light, breeze, birdsong, colours... What was the word? Ah. <em>Euphoria.</em> # **** # thing endfog prop redrockpath_fog redrockpath prop redrockclimb_fog redrockclimb prop orcharddoor_fog orcharddoor prop forkingpath_fog forkingpath prop descendingfork_fog descendingfork prop bigrootpath_fog bigrootpath prop bigholepath_fog bigholepath prop brook_fog brook prop source_fog source prop ascendingfork_fog ascendingfork prop cutthroughrock_fog cutthroughrock prop steepslope_fog steepslope prop reforestation_fog reforestation ## Lagartos en la niebla # Este evento dispara la narración sobre lagartos nocturnos en la fase de niebla # Empezamos por una regla disparadora del evento rule # evento del lagarto en la niebla gt $turncount 5 !has forkingpath_fog notvisited !has printedtext interruptioncradlelizards is thisturnprintedscheduleorambient false tag printedtext interruptioncradlelizards run schedule_an_event interruptioncradlelizards0 1 # Una vez se cumple la regla, se ejecuta una serie de procedimientos, turno tras turno proc interruptioncradlelizards0 is globalstage fog say I haven't seen any animals yet. Which one will be the first to come out? Or the last nocturnal animal to hide? I haven't heard any noises either. Should I be worried? Really? # *** # run schedule_an_event interruptioncradlelizards2 1 run schedule_an_event ambientfogenable 4 # Además de sus propios mensajes, este evento activa dos temas de mensajes aleatorios proc ambientfogenable tag ambient_fog availablemessage tag ambient_godeep availablemessage # Nota: la numeración de los procedimientos salta de 0 a 2 porque he sacado el texto que estaba numerado 1 fuera de este evento proc interruptioncradlelizards2 is globalstage fog say I remember something. <br><span class="br-fixer"></span><em>The eyes of eight large monitor lizards behind the glass doors of an abandoned skyscraper. All fixed on me.</em> # **** # say I was only ten! Compared to that, this forest is safe as a baby's cradle. So quiet, so silent. # **** # run schedule_an_event interruptioncradlelizards3 1 run schedule_an_event noises_twonoisesinfog 4 # En este punto empieza una interrupción, y las opciones normales (movimientos, cosas) desaparecen. # La interrupción, y el evento entero, terminan cuando se ejecuta interruption_end proc interruptioncradlelizards3 is globalstage fog say <em>Safe as a cradle...</em><br><span class="br-fixer"></span>This silence is making me nervous. I should do something about my nerves. I want to make some noise. # *** # run interrupt laughorsing # verbos de la interrupción setverb sing intransitive at interruption has interruption laughorsing setverb laugh intransitive at interruption has interruption laughorsing setverb do_nothing intransitive at interruption has interruption laughorsing # Fin de la interrupción y del evento verb do_nothing at interruption has interruption laughorsing untag interruption laughorsing say What if I made some noise...? No. A scared child would do that. What would my classmates say if they saw me freak out like that? I'll keep going like nothing's happening. # *** # run interruption_end verb sing at interruption has interruption laughorsing untag interruption laughorsing tag interruption laughorsing_singlouderorsoft say I start singing... very softly, the way you lull a baby. The forest is still silent, vast behind the fog... I feel unsettled. # **** # verb laugh at interruption has interruption laughorsing tag interruption laughorsing_runorwatch untag interruption laughorsing say I laugh, just to hear something. Here in the fog it sounds violent. It doesn't sound like me. It sounds a bit scared and a bit threatening. say Did I see something move among the trees? # *** # setverb run intransitive at interruption has interruption laughorsing_runorwatch setverb look intransitive at interruption has interruption laughorsing_runorwatch verb run at interruption has interruption laughorsing_runorwatch tag interruption laughorsing_standup untag interruption laughorsing_runorwatch say I don't want to be sure if anything really moved! I start running but my foot hits something hard and I fall flat on my face. I don't want to stand up. I close my eyes, I focus on the silence, and then I do hear something, a soft rustle close, and another rustle a bit further, and another one, and that's all. # *** # tag fellrunning wounded thing fellrunning I fell flat on my face running after thinking something moved behind the trees. setverb stand intransitive at interruption has interruption laughorsing_standup # Fin de la interrupción y del evento verb stand at interruption has interruption laughorsing_standup untag interruption laughorsing_standup say I open my eyes. Nothing seems different. say I stand up and look around. Nothing strange is happening, sure? I thought I saw something, I ran, I tripped over a stone, there's nothing. That's it. This is a bit silly, isn't it? I better move on. # *** # run interruption_end # Fin de la interrupción y del evento verb look at interruption has interruption laughorsing_runorwatch untag interruption laughorsing_runorwatch say I thought something at the edge of my vision moved, somewhere between the trees to my right. I observe the area with all my attention. It's mute, colourless, flat and static, as if the landscape had been replaced with a picture on a sheet of paper. Nothing more. This is a bit silly, isn't it? I better move on. # *** # run interruption_end setverb sing_louder intransitive at interruption has interruption laughorsing_singlouderorsoft setverb sing_softly intransitive at interruption has interruption laughorsing_singlouderorsoft # Fin de la interrupción y del evento verb sing_louder at interruption has interruption laughorsing_singlouderorsoft say I raise my voice. Mom used to say that singing makes the dark go away. But it doesn't light the fog. I was very little when Mom said that. My song changes nothing in the forest, and after a while that starts to feel menacing. An animal could be hidden, quietly watching me. I sing more softly. A moment later, I stop. # *** # untag interruption laughorsing_singlouderorsoft run interruption_end # Fin de la interrupción y del evento verb sing_softly at interruption has interruption laughorsing_singlouderorsoft say Singing louder feels wrong. A scared child makes loud noises to be less afraid. What would my classmates say if they saw me freak out like that? I keep singing softly... say This is a bit silly, isn't it? I stop singing. # *** # untag interruption laughorsing_singlouderorsoft run interruption_end ## Sonidos de animales en la niebla proc noises_twonoisesinfog say Two noises rip through the quiet. First something snaps, a quick, loud and distinct sound; then a low rustle, a mix of soft frictions lasting for a few seconds until it fades. And that's it. # *** # run enablelisten noises_twonoisesinfoglisten run schedule_an_event event_monitorinfog 3 proc noises_twonoisesinfoglisten say I stand perfectly still and stop breathing to listen. But the silence reigns again. # *** # ## Visión de un varano en la niebla proc event_monitorinfog is globalstage fog say A lizard! say A monitor emerges from the bush and stays in the middle of the way, only four or five metres away. The first time I've seen one so close since we moved here. Not very big. say But I'm sure it's the poisonous kind. say I notice something in its mouth. Can't say what. # *** # tag printedtext monitorinfog log ( $turncount ) proc event_monitorinfog write monitorinfog.lastlocation {$room} freeze monitorinfog.lastlocation run schedule_an_event event_lizardthoughts 4 put monitorinfog interruption tag interruption monitorinfog tag interruption monitorinfog2 add fogfinalturn 8 run interrupt event_monitorinfog2 thing monitorinfog monitor lizard prop lastlocation name lizard tags alive setverb examine monitorinfog has interruption monitorinfog setverb go_away intransitive has interruption monitorinfog verb examine monitorinfog has interruption monitorinfog2 untag interruption monitorinfog2 tag interruption monitorinfog3 prompt watch monitor say I take a couple of steps back while watching the monitor. Even in this half light that steals colours, its scales glisten like orange and black beads. But the black eye is hidden in the shadow of a deep crevice in the head. That makes it seem less alive and more dangerous. # *** # say Its front legs are stretched and the front half of the body is in the air, while the rest of the body and the tail remain flat on the ground, but no part is moving. # *** # verb examine monitorinfog has interruption monitorinfog3 untag interruption monitorinfog untag interruption monitorinfog3 say I wait a little longer, watching the monitor. Suddenly it flicks its tongue; it raises its head; it hisses, first a long breath, then short rhythmic sounds. I'm getting scared. say It turns around and returns into the bush, disappearing. The rustle fades slowly. # *** # hide monitorinfog run interruption_end verb go_away has interruption monitorinfog say I walk backwards without taking my eyes off the lizard, until it's behind the trees. Then I turn and run. # *** # # si corres, no tienes que volver a la habitación previa a la interrupción, sino a una de sus salidas. Los siguientes procesos determinan cuál assign eventreturn interruption.return freeze eventreturn run event_monitorinfog_goawaydirection freeze interruption.return # vaciamos la interrupción hide monitorinfog untag interruption monitorinfog untag interruption monitorinfog2 untag interruption monitorinfog3 # finalmente, añadimos un mensaje de un solo uso en la habitación donde apareció el lagarto write tempvar {monitorinfog.lastlocation} freeze tempvar write $tempvar.printonce I look in all directions, but the monitor that was here last time is nowhere to be seen. I look up, to see if it's perched on a tree and can fall on me. I look for it between the bushed on the sides of the path. Nothing. It's really gone. # *** # run interruption_end proc event_monitorinfog_goawaydirection is direction forest assign interruption.return $eventreturn.dir.home log event_monitorinfog_goawaydirection forest continue proc event_monitorinfog_goawaydirection is direction left assign interruption.return $eventreturn.dir.home log event_monitorinfog_goawaydirection left continue proc event_monitorinfog_goawaydirection is direction right assign interruption.return $eventreturn.dir.home log event_monitorinfog_goawaydirection right continue proc event_monitorinfog_goawaydirection is direction home !is interruption.return forkingpath_fog assign interruption.return $eventreturn.dir.forest log event_monitorinfog_goawaydirection home !at forkingpath_fog continue proc event_monitorinfog_goawaydirection is direction home is interruption.return forkingpath_fog log event_monitorinfog_goawaydirection home at forkingpath_fog assign event_goawaydirection_chance true chance 1 2 assign interruption.return descendingfork_fog write descendingfork_fog.printonce I didn't even know which direction I was running. I find myself in the path that goes down. # *** # assign event_goawaydirection_chance false continue proc event_monitorinfog_goawaydirection is direction home is interruption.return forkingpath_fog is event_goawaydirection_chance true assign interruption.return ascendingfork_fog write ascendingfork_fog.printonce I didn't even know which direction I was running. I find myself in the path that goes up. # *** # verb examine monitorinfog has monitorinfog unexamined untag monitorinfog unexamined tag monitorinfog examined1 log ( $turncount ) examine monitorinfog 1 run schedule_cancel monitorinfog_hide run schedule_an_event monitorinfog_hide 1 verb examine monitorinfog has monitorinfog examined1 log ( $turncount ) examine monitorinfog 2 hide monitorinfog run schedule_cancel monitorinfog_hide proc monitorinfog_hide hide monitorinfog write tempvar {monitorinfog.lastlocation} freeze tempvar write $tempvar.printonce I look in all directions, but the monitor that was here last time is nowhere to be seen. I look up, to see if it's perched on a tree and can fall on me. I look for it between the bushed on the sides of the path. Nothing. It's really gone. # *** # proc event_lizardthoughts is globalstage fog say I glimpse something move... it's gone. The lizard appears again in my mind. A leak from a different age, not fully there. Even after moving, it looked like a life-size model, with lifeless eyes and no brain behind them to watch me. I cannot think of it as a real animal. # *** # say I wonder if other animals see me the same way I see the lizards. A thing that is too big and doesn't have a right to be here. # **** # tag printedtext lizardthoughts ## Gruñidos de jabalí # primer gruñido proc boarfirstgrunt # acciones de aparición assign boarapparitions firstgruntalert say Suddenly, a low, strong grunt startles me. It sounds a bit like a large dog's bark but I know no dog made that sound. I think it came from somewhere uphill. say I know what it was. A boar. # *** # tag printedtext boarfirstgrunt run cancelfocus run enablelisten boarfirstgruntlisten tag $room boarfirstgrunt_lookuphill run schedule_an_event event_boarfirstgrunt_lookcancel 1 # tag generaltags hideactions # run schedule_an_event hideactions_cancel 2 random randnum 8 add randnum 8 run schedule_an_event event_boarsecondgrunt $randnum all tagged animal hide $this proc event_boarfirstgrunt_lookcancel untag $room boarfirstgrunt_lookuphill setverb look_uphill intransitive has $room boarfirstgrunt_lookuphill verb look_uphill has $room boarfirstgrunt_lookuphill say Looking uphill, the sun shines between the trees. Nothing but tall shadows against a white background, all details erased, all things abstracted to dark outlines. Nothing that moves. # *** # untag $room boarfirstgrunt_lookuphill proc boarfirstgruntlisten say I listen. Leaves caressed by the breeze. Buzzing bugs. So many different birds I can't count them. But no grunts. # *** # # segundo gruñido proc event_boarsecondgrunt assign boarapparitions secondgruntalert say Another grunt echoes in the area, making me shiver. Did it sound angry? Aggressive? Again, the sound came from somewhere between the trees uphill. # *** # run cancelfocus # run enablelisten boarfirstgruntlisten tag $room boarsecondgrunt_lookuphill run schedule_an_event event_boarsecondgrunt_lookcancel 1 tag generaltags hideactions run schedule_an_event hideactions_cancel 2 all tagged animal hide $this proc event_boarsecondgrunt_lookcancel untag $room boarsecondgrunt_lookuphill setverb look_uphill intransitive has $room boarsecondgrunt_lookuphill verb look_uphill has $room boarsecondgrunt_lookuphill say I look uphill, nervously looking for anything that moves, anything that doesn't look like a tree or a fallen trunk or a bush, anything boar-shaped. But these concepts are not so clear-cut in the forest. # *** # untag $room boarsecondgrunt_lookuphill ## Ruido en la mata de moras rule at ascendingfork !has printedtext event_noiseinblackberrybush !has printedtext boarblocksthepath chance 1 2 gt $ambientcount 0 run event_noiseinblackberrybush # PENDIENTE: ESCRIBIR SITUACION EN LA QUE UN ANIMAL APARECE proc event_noiseinblackberrybush say Rustling noises startle me. Louder than usual! How big must the animal be? Perhaps it's a lizard crawling under the blackberry bush over there. # *** # tag blackberrybush event_noise tag printedtext event_noiseinblackberrybush # tag generaltags hideactions run schedule_an_event event_noiseinblackberrybush_cancel 2 assign ambientcount 0 proc event_noiseinblackberrybush_cancel untag blackberrybush event_noise untag blackberrybush event_noise_2 untag generaltags hideactions verb examine blackberrybush has blackberrybush event_noise say I stand very still and look at the blackberry bush with great attention, trying to understand all the different colours and shapes behind the exterior layer. But it's too dark, too tangled, too jumbled, too exuberant; and nothing moves. # *** # tag blackberrybush event_noise_2 untag blackberrybush event_noise assign ambientcount 0 setverb throw_rock blackberrybush has blackberrybush event_noise_2 setverb poke blackberrybush has blackberrybush event_noise_2 verb throw_rock blackberrybush prompt throw rock at bush say I pick a rock. I have to do this hard. # *** # run notdisturbanything say I stand back a couple of metres and throw the stone at the blackberry bush the hardest I can. The stone goes inside! It makes a lot of noise and then... nothing. # *** # untag blackberrybush event_noise_2 assign ambientcount 0 verb poke blackberrybush say I pick a long stick to poke the bush. # *** # run notdisturbanything say I hope I manage to disturb this one. say I bang the bush with the stick. First soft, then hard. I bang it again and again, then I put the end of the stick inside the bush and shake it. Nothing happens, at all. say I give up. # *** # untag blackberrybush event_noise_2 assign ambientcount 0 ## Not disturb anything # Reutilizar este texto en otras situaciones. y "not distub anything" se convierte en una coletilla de Lara proc notdisturbanything !has printedtext notdisturbanything say Mom and Dad always tell me not to disturb anything here if I don't have to. But you know what? They are big city people like me. They lived in the capital longer than me! They remember the glass skyscrapers when they weren't used only by the poor and their lizards. They remember the city when it had twice the population it has today. <br><span class="br-fixer"></span>People here are different. The thought of messing with the forest things doesn't paralyze them. # **** # tag printedtext notdisturbanything continue proc notdisturbanything has printedtext notdisturbanything !has printedtext notdisturbanything2 say Mom and Dad always tell me not to scare the animals, specially if I can't see them. What if there's a venomous snake there? A scorpion? My classmates say they have never seen a scorpion here, but Dad insists. Never disturb things there! # **** # tag printedtext notdisturbanything2 ## Comentarios históricos de Lara cuando pasa del túnel rule at openairdescendingpath !has printedtext terrorcountry assign ambientinsertchance 1000000000000 # esta línea evita los insertos ambientales hasta que terminan estos pensamientos tag printedtext terrorcountry run schedule_an_event insertterrorcountry1 1 proc insertterrorcountry1 say Now that I'm far from the village, on a path full of weeds because nobody comes out here... I know what I may come upon. Terror Country. # *** # run schedule_an_event insertterrorcountry2 1 proc insertterrorcountry2 say Terror Country. The stuff of horror stories my classmates make up. Human skulls. Ghosts of murdered people. Nightmares driving people mad. # *** # run schedule_an_event insertterrorcountry3 1 proc insertterrorcountry3 say Stuff you overhear grownups saying. "The reforestation people are going to find bodies sooner or later." The anger when Dad mentions his parents. "I'll never stop." # *** # assign ambientinsertchance 4 rule at path_twistedtree !has printedtext invadingspecies tag printedtext invadingspecies run setfocus invadingspecies 5 ### MENSAJES ALEATORIOS # Esta sección implementa mensajes que se insertan en la narración de forma parcialmente aleatoria: observaciones, recuerdos, pequeños eventos como ruidos. # La implementación está copiada de un ejemplo publicado en Twitter por Robin Johnson. Una cosa tiene propiedades numeradas con los nombres de unos procedimientos. Esos nombres se barajan con una función. El mecanismo injertador, cuando le toca incluir texto, selecciona la propiedad siguiente en la lista barajada, obtiene el nombre del procedimiento y lo ejecuta. # Cada cosa recopila insertos sobre un tema determinado. ## Niebla thing ambient_fog thing ambient_fog_source prop 1 ambientfog1 prop 2 ambientfog2 prop 3 ambientfog3 prop 4 ambientfog4 prop 5 ambientfog5 prop 6 ambientfog6 prop 7 ambientfog7 prop max 7 # escuchar el silencio en la niebla proc ambientfog1 say No colours, no details draw my attention. <br><span class="br-fixer"></span>And the silence. # *** # run enablelisten ambientfog1_listen proc ambientfog1_listen say I stay still to listen to the silence, try to hear what's behind. It's as if the fog chokes the birds and kills the wind. Are there animals that come out so early? In daylight this place looks so full and now it's barely a place. I hope it's not too long till dawn. # *** # proc ambientfog2 say The fog is not completely gray. Sometimes there's a greenish hue, sometimes a hint of yellow. Sometimes it even seems like there's some pulsating blue light far, far behind the fog. # *** # proc ambientfog3 say For a moment, something that could be a ray of sunlight falls on a tree. But its direction is just not possible. The light fades softly. <br><span class="br-fixer"></span>Was it just my imagination? # *** # proc ambientfog4 say The fog comes closer, obscuring even the lowest part of the treetops. If this doesn't get better I should go home. # *** # proc ambientfog5 say And this is the coldest moment of the whole day? Dad said it's so hot that some lizards are becoming nocturnal. He's worried about the cooling of the atmosphere slowing down. # **** # proc ambientfog6 say I look up and I see moving threads of fog, and suddenly a window to the pale blue sky opens. Only two seconds. But the sky wasn't that dark! Sunlight is minutes away. All insects and birds and lizards will come out and this forest will remember what it is. # *** # proc ambientfog7 say Light and colours are muted and noises are sleeping underground, but smells are intense. Too many smells. I imagine it's moss, wood, leaves, animal droppings, earth, all wet and cold and with the smell of fog itself. # *** # ## Go deep # godeep son reminiscencias de Lara sobre las personas que le han hablado de internarse en lo profundo del bosque. # Siempre empieza con un mensaje introductorio único, que es un tema de insertos con un solo mensaje. Ese único inserto activa el tema principal, con múltiples mensajes aleatorios. thing ambient_godeep prop 1 ambient_godeep prop max 1 prop index 1 # Este es el mensaje inicial. Importante desactivarlo con untag, si no se podría repetir proc ambient_godeep tag amb_godeep_adv availablemessage untag ambient_godeep availablemessage say Five words come to my mind&colon; <em>You have to go deep.</em> # *** # # run setfocus amb_godeep_adv 1 run schedule_an_event amb_godeep1 1 # A partir de aquí, los otros mensajes aleatorios proc amb_godeep1 say <em>'You have to go deep.'</em> say That's what the woman at the forest protection centre told my class. She told us about finding bears. 'You can't find them if you stay on the road. You can't do the work.' # *** # say We loved that. tag printedtext godeep_adv run schedule_an_event amb_godeep2 1 proc amb_godeep2 say <em>'You have to go deep.'</em> say That's what kids always say when someone shows something from the forest in class. 'You didn't go deep enough.' Always challenging ourselves. # *** # tag printedtext godeep_adv # Las siguientes reglas activan mensajes ambientales de la fase final rule at openairdescendingpath has printedtext godeep_adv !has openairdescendingpath taggedgodeep tag ambient_godeep_lastpart availablemessage tag openairdescendingpath taggedgodeep rule at openairdescendingpath has printedtext ambient_photo !has openairdescendingpath taggedphoto tag ambient_photos_lastpart availablemessage tag openairdescendingpath taggedphoto thing ambient_godeep_lastpart thing ambient_godeep_lastpart_source prop 1 ambient_godeep_last1 prop max 1 proc ambient_godeep_last1 say Well, here I am. say Nobody can tell me now that I didn't go deep enough. # **** # run schedule_an_event ambient_godeep_lastcontinue 1 proc ambient_godeep_lastcontinue say This going deep thing is silly anyway. We should go deep together. With people who can teach us. To learn. # *** # ## Inundación thing ambient_flood prop 1 flood1 prop 2 flood2 prop 3 flood3 prop max 3 prop index 1 proc flood1 say <em>Last autumn's flood... </em> say We had just moved here from the capital. My first impression was that things felt safer here, more reliable... there weren't so many crumbling buildings, malfunctioning devices... Then the flood happened. # **** # proc flood2 say Again&colon; the image of the flood, of the rain, the sound of the rattling... I only hope that, next time it rains like then, we have finally fixed the roof. # *** # run schedule_an_event floodroof 1 proc floodroof say I keep remembering the flood and thinking about the roof, the roof. Yes. I could work a bit on fixing the roof today. Later. # *** # proc flood3 say I think I had a nightmare about the flood last week. I didn't remember anything of the nightmare but had a vague impression of the rattling. # **** # ## Pensamientos sobre fotos thing ambient_photos thing ambient_photo_source prop 1 ambient_photo1 prop 2 ambient_photo2 prop 3 ambient_photo3 prop max 3 proc ambient_photo1 say Everyone likes the photos I take. They ask me to take photos because they say mine are always the funniest and prettiest. I feel good when they say that! # *** # tag printedtext ambient_photo proc ambient_photo2 say Thinking about my photos... perhaps I should study some taka a photography course. Perhaps I could work taking photos when I'm older! # *** # tag printedtext ambient_photo proc ambient_photo3 say Everyone likes the photos I take. And Dad says that taking photos is very important. Many things are disappearing before having their pictures taken. # *** # tag printedtext ambient_photo thing ambient_photos_lastpart thing ambient_photos_lastpart_source prop 1 ambient_photo_lastpart1 prop max 1 proc ambient_photo_lastpart1 say I wonder how long it is since anybody took a photo here. # *** # ## Sonidos thing ambient_sounds thing ambient_sounds_source prop 1 sounds1 prop 2 sounds2 prop 3 sounds3 prop 4 sounds4 prop 5 sounds5 prop 6 sounds6 prop 7 sounds7 prop 8 sounds8 prop 9 sounds9 prop 10 sounds10 prop max 10 proc sounds1 say A bug buzzes past my ear! I wave my hand, but these bugs are always faster than you. I hate them. # *** # proc sounds2 say A droning buzz descends on me like snow. A nest of bees above in the treetops? I'll never get used to hearing them but not seeing them. # *** # run enablelisten sounds2cont proc sounds2cont say I listen carefully. Sometimes it's hard to know if it's many bugs far from you, or a few bugs very close to you, but not this time. This is a big sound, but it's so far up that I'll never see where it's coming from. # *** # proc sounds3 say 'Ooh Ooooooh!' Ah, the bird that neither Mom or Dad can identify is there. Can it only say that word? Doesn't it have other things to say to its friends? 'Ooh Ooooooh!' # *** # run enablelisten sounds3cont proc sounds3cont say I listen&colon; the bird sings the same two tones. This species must have been doing that for millions of years. # *** # proc sounds4 say The cuckoo says hello! I can try to answer. It has to work eventually, I guess. # *** # bring cuckoo tag cuckoo animalhere thing cuckoo a singing cuckoo, somewhere name cuckoo tags animal alive verbs call desc I can't see the cuckoo anywhere. # *** # prop turnstohide 1 prop hide prop callcounter 0 verb call cuckoo eq cuckoo.callcounter 0 add cuckoo.callcounter 1 add cuckoo.turnstohide 1 say I whistle my response to the cuckoo. It sings again in a second! Was it an answer? Are we having a conversation? # *** # verb call cuckoo eq cuckoo.callcounter 1 say I whistle again, and I wait and wait, but the cuckoo is silent now. # *** # hide cuckoo proc sounds5 say Two birds sing against each other. One sounds like a trumpet, the other like a flute. # *** # proc sounds6 say Many birds are singing now. They ignore the others completely, as if they were living in separate worlds. Do they know how they depend on everything else, like we know? # *** # proc sounds7 say Little notes of birdsong fall on me like a pleasant drizzle. # **** # proc sounds8 say Sometimes it feels like there's a musical rhythm to the different birds. A moment later the impression fades and I can't tell if anything about it was real. # ***** # proc sounds9 say The electric buzz of a bumblebee orbits me for a moment, then stops. There it is, perched on a leaf. # *** # bring bumblebee tag bumblebee animalhere # abejorro # pendiente añadir apariciones posteriores thing bumblebee a bumblebee tags animal alive tags photoverb desc Perched on a leaf, a dangerous-looking bumblebee. I know I shouldn't be afraid of it, bumblebees are hard to anger. They told me that. <br><span class="br-fixer"></span>But just look at it. # **** # prop turnstohide 0 prop hide Where's the bumblebee? I stopped paying attention to it and now I can't see or hear it. # *** # verb examine bumblebee add bumblebee.turnstohide 1 continue verb photograph bumblebee #has bumblebee photoattempt1 say I'll try to take a photo of the bumblebee in macro mode. What direction would be better for the approach? I'll move directly from the top. Still blurry... closer... blurry... say The bumblebee flies before I can take a clear picture! Bummer. # *** # hide bumblebee untag bumblebee animalhere tag bumblebee photoattempt1 proc sounds10 say Somewhere far away, a rooster says hello to the morning. # *** # ## Olores thing ambient_smellintheair thing ambient_smellintheair_source prop 1 smellintheair1 prop 2 smellintheair2 prop 3 smellintheair3 prop 4 smellintheair4 prop max 4 proc smellintheair1 say Suddenly, the breeze brings a fresh smell to me. # *** # proc smellintheair2 say I notice a peculiar smell, something strong and unpleasant... and then the breeze dispels it before I can find where it came from. # *** # proc smellintheair3 say A whiff of something rotten. It only lasts a moment. # *** # proc smellintheair4 say I breathe deeply. I smell this natural place. I can't tell one scent from another, I don't know what they are, just nature. But it's overwhelming all the same. # *** # ## Físicos thing ambient_physical thing ambient_physical_source prop 1 physical1 prop 2 physical2 prop 3 physical3 prop 4 physical4 prop 5 physical5 prop 6 physical6 prop 7 physical7 prop max 7 proc physical7 say Something big flaps right in front of my eyes! say I step back, falter and fall on my butt, and I cry, yes I scream in fear. And then I laugh. It was a large honey colour butterfly. I watch it flutter, and suddenly it comes right at me and I stay totally still and it sits right on my nose. say I hold my breath. say The butterfly is blurry but I feel its legs moving on me. say I try to remember the list of dangerous animals than Mom and Dad and I learned before moving here. There were no butterflies. say I blink; it's gone. proc physical6 say A metallic glint catches my attention. A beetle! A <em>gigantic</em> beetle!! bring largebeetle run schedule_an_event hidebeetle 10 proc hidebeetle hide largebeetle thing largebeetle large beetle tags photographable prop photo The beetle has the best pose ever! I take as many photos as I want and it doesn't move a centimetre. These photos are great. prop name beetle prop display beetle verb examine largebeetle !has largebeetle examined say Longer than my fingers, with some kind of horns that bigger than its legs. What was the name they told us at school? A stag beetle. 'Look for them, the adults appear in May.' Could be that. It isn't only huge, it's majestic. tag largebeetle examined tag largebeethe photoverb verb examine largebeetle has largebeetle examined say The beetle has not moved a bit, as if it is sunbathing. tag largebeethe photoverb proc physical5 say If I look all around, there are places where a lot of shadows meet and it gets very dark, and places where the pure white sky reminds me of the flood that razed so many trees. It's hard on the eyes. I should ask Mom for shades. # *** # proc physical4 say Something hits my head. say 'Aaaah!' I scream and turn around. Nothing moves. But it was a very, very light touch, and I don't find anything entangled in my hair. The ground is covered in leaves, pieces of bark, small broken branches. I won't find out what touched me. # *** # proc physical3 say I hear a cracking noise and I feel something getting crushed under my foot. An eggshell! With a nice blue colour and brown-purple spots. But only minute fragments remain after I stepped on it. # *** # proc physical1 say I feel something very small on the back of my hand. So small that it's hard to find&colon; a tiny green insect, smaller than an ant. # *** # bring greeninsect tag greeninsect taken tag greeninsect animalhere tag greeninsect list_last thing greeninsect a very small green insect on my hand name green insect prop display green insect tags photographable collectable playable animal alive desc The green insect is so small that the little hairs on the back of my hand are taller than it and thicker than its legs. The only feature I can make out on its body is a black eye. To this bug, I'm bigger than the tallest skyscraper in the world is to me. <br><span class="br-fixer"></span>It has an incredible green glow. I wonder if it's the sunshine passing through its body. # ***** # prop turnstohide 1 prop collect I open the sample box and blow the green insect off my hand and into the box. # *** # prop list a tiny green insect prop play I put a finger in front of the green insect. Will it climb? No, it walks the other way. I try to surround it, giving it no option but climbing on my finger. It runs left and right and back, like a ball bouncing. I'm not giving up. I try again. And again! And once more, twice. But I can't trick the insect into doing what I want. # *** # prop photo I try to take a pic of the green insect on my hand, but it moves, I can only use one hand, and the macro mode is hard to use, so I think all the photos are going to be blurred. # *** # prop hide I look at my hand again, but the tiny green bug is nowhere. # *** # verb examine greeninsect add greeninsect.turnstohide 1 continue verb play_with greeninsect add greeninsect.turnstohide 1 continue verb photograph greeninsect add greeninsect.turnstohide 1 continue proc physical2 # PENDIENTE PENDIENTE PENDIENTE say Suddenly I have an impression of movement... where? I look at the ground and notice a black spot that moves a few centimetres before staying still. Ah! A cricket! # *** # bring cricket tag cricket animalhere # grillo thing cricket a large black cricket name cricket tags photographable collectable animal alive desc Wow. That cricket is one of the largest insects I've ever seen. Dad said once that it was great to find one when he was a kid because they were so rare then. # **** # prop turnstohide 0 prop list a black cricket prop photo I take the cricket's photo from a distance because I'm afraid it will escape and I want the pic for Dad. # *** # prop hide Oh! The cricket disappeared while I wasn't looking. # *** # verb examine cricket add cricket.turnstohide 1 continue verb collect cricket !carried smallstick say That cricket doesn't look like something I could catch with nothing but my hands. Perhaps with a little stick... <br><span class="br-fixer"></span>Wait! The cricket has disappeared into the ground. # *** # hide cricket untag cricket animalhere # puedes intentar coger al grillo si tienes un palo verb collect cricket has smallstick taken random cricketchance 2 run cricketcollect # caza del grillo solo tiene éxito a veces proc cricketcollect eq $cricketchance 2 tag cricket collected untag samplebox empty tag samplebox full hide smallstick hide cricket untag cricket animalhere say Will I scare it if I breathe too hard? This won't be easy. I slowly put the stick in front of the cricket; I move it forward towards its front legs; very, very slow. say The cricket walks forward! It's on the stick! say Now lift the stick, move it towards the sample box, slowly, place it inside, slowly... Fast, the lid! I have the cricket now. # *** # proc cricketcollect eq $cricketchance 1 hide cricket untag cricket animalhere say Catching a cricket can't be easy, can it? I take the stick in my pocket and slowly move it towards the insect... It jumps towards me! <br><span class="br-fixer"></span>Do I do I do I? Have it on me? I run and jump and shake everything from my clothes? Do I? <br><span class="br-fixer"></span>Cool down. It's not on me. It's gone. # *** # # pendiente de desarrollar: cuando abres la caja, el grillo se escapa # pendiente de desarrollar: más apariciones del grillo # el palo corto solo debe aparecer en las siguientes apariciones del grillo thing smallstick a small stick desc A small stick like a million others here. # *** # name small stick tags portable prop take I pick a small stick and put it in my pocket. # *** # thing invadingspecies thing invadingspecies_source prop 1 invadingspecies1 prop 2 invadingspecies2 prop max 2 proc invadingspecies2 say Invading species versus native ones. The monitors that came from far deserts versus the boars. And us. Most of us, trying to prevent the atmosphere from heating ever again. But not all of us. # *** # proc invadingspecies1 say Invading species from places that used to be warmer. We had a class about them, how to root them out. I'd love to be able to remember any. Perhaps some bush, some flower here is one of those, like the monitors? # *** # thing ambient_history thing ambient_history_source ### ACCIDENTE CON EL JABALI # Esta sección contiene el evento más complejo del juego: el jabalí que bloquea el camino. ## Mecanismos para saltar de fase # Este verbo permite ejecutar inmediatamente la aparición del jabalí setverb test_boar intransitive is globalstage sunrise is testingmode true verb test_boar run event_boarblocksthepath # Este verbo permite ejecutar inmediatamente la inundación setverb test_flood intransitive is globalstage sunrise is testingmode true verb test_flood write globalstage afterflood run blindboar_end goto forkingpath ## Aparición del jabalí # Estas reglas comprueban las condiciones que disparan la aparición del jabalí # La regla 1 es un agregador: ejecuta los procedimientos que comprueban las 3 condiciones. El funcionamiento es el siguiente: # La primera vez que se cumpla una condición se dispara el evento. Las reglas solo se ejecutan en la fase anterior al jabalí. Las reglas dejan de ejecutarse cuando aparece el jabalí. Las reglas no se ejecutan en las habitaciones entre la bifurcación y la habitación inicial. rule #1 aparición del jabalí is globalstage sunrise !at redrockclimb !at orcharddoor !at orchard !at forkingpath is thisturnprintedscheduleorambient false log ( $turncount ) Regla que dispara las comprobaciones para aparición del jabalí log >>> actionsbeforeboar_real = $actionsbeforeboar_real log >>> actionsbeforeboar_turnssince = $actionsbeforeboar_turnssince run check_boarblock_possible run check_boarblock_turnssince run check_boarblock_hardlimit # Condición 1: número de acciones relevantes realizadas # Si el jugador realiza un número suficiente de acciones relevantes disponibles en la fase "sunrise", el jabalí aparece. Esta condición usa la variable actionsbeforeboar_real. El valor está hardcoded porque Gruescript no permite multiplicaciones ni divisiones (para calcular un porcentaje); hay que revisar el valor a medida que avanza la programación del juego. proc check_boarblock_possible is globalstage sunrise lt $actionsbeforeboar_real 20 log >>> check_boarblock_possible se cumple run event_boarblocksthepath # Condición 2: turnos desde que el jugador hizo algo relevante # Si el jugador pasa muchos turnos sin realizar ninguna acción relevante, el jabalí aparece. Esta condición usa la variable actionsbeforeboar_turnssince. proc check_boarblock_turnssince is globalstage sunrise gt $actionsbeforeboar_turnssince 50 log >>> check_boarblock_turnssince se cumple run event_boarblocksthepath # Condición 3: contador absoluto de turnos # Como medida de último recurso para que sea imposible que el jugador se atasque, el jabalí aparecerá tras un turno determinado. El valor está hardcoded y es necesario revisar el valor a medida que avanza la programación del juego. proc check_boarblock_hardlimit is globalstage sunrise gt $turncount 180 run event_boarblocksthepath # Procedimiento: aparición del jabalí # Este procedimiento efectivamente pone al jabalí en la habitación correspondiente proc event_boarblocksthepath write forkingpath.printonce I hear a grunt. I look around and look everywhere and then I notice a dark shape. <br><span class="br-fixer"></span>I freeze. Fear comes like a fist gripping my throat. It's a boar, a very big boar, lying right in the middle of the path. <br><span class="br-fixer"></span>I can't go home until it moves. <br><span class="br-fixer"></span>The boar grunts and I fall, landing on my butt. I crawl to one side of the path, behind some bushes. The hog is not moving. assign globalstage boarisblocking put blockingboar forkingpath close forkingpath home hide dandelion hide purpleflowers tag forkingpath hideactions tag forkingpath notambient tag forkingpath noeventschedule tag forkingpath eventboarstart tag fellafterboar wounded run cancelfocus log ( $turncount ) proc event_boarblocksthepath thing fellafterboar I fell hard on my butt when the boar startled me rule # regla especial para cuando encuentras al jabalí en su habitación at forkingpath has forkingpath eventboarstart log ( $turncount ) Regla especial para jabalí en su habitación untag forkingpath eventboarstart untag forkingpath bringground tag printedtext boarblocksthepath run schedule_an_event event_blockingboarthink 6 run schedule_an_event event_blockingboarperhapsleave 1 # Mensaje al turno siguiente proc event_blockingboarperhapsleave say What if the boar comes up behind me? I look back... there's nothing on the path. It didn't notice me, or it didn't care about me, or perhaps it doesn't dare mess with me. Perhaps? say If I wait a while the boar will move, I'm sure. I just have to take a little walk before going back there. # ** # write forkingpath.printonce The boar is still there. <br><span class="br-fixer"></span>What am I going to do? # ** # # Mensaje en pocos turnos proc event_blockingboarthink is globalstage boarisblocking !at interruption !at inventory say I glimpse something that moves... Another boar? What if boars come down and block all the paths? Be smart. I need that boar to move. Think, Lara, think! # *** # ## Intento de telefonear # Definimos el verbo de telefonear y sus condiciones. Hay dos textos diferentes, en función de si llama antes de la inundación o después. setverb phone_mom intransitive has generaltags phonestatus_brokenunknown !has generaltags phonestatus_brokenknown !has generaltags nophonemom verb phone_mom is globalstage boarisblocking tag generaltags phonestatus_brokenknown say Mom will know what to do about the boar. say I take the phone out of my pocket and discover a spider web of delicate cracks across its screen. But it works! I tap the phone icon and Mom's photo... ⚞ <strong>No connection</strong> ⚟ say I try it again. ⚞ <strong>No connection</strong> ⚟ I test other functions of the phone. I can take photos, I can take notes... but no matter what I try, I can't call or message anyone. ⚞ <strong>No connection</strong> ⚟ say I fell on my butt when the boar startled me! Now I think I felt something crack. Why do I put the phone in that pocket? Why am I such a dork? # *** # verb phone_mom is globalstage afterflood tag generaltags phonestatus_brokenknown say Mom will know what to do. She'll come and help me go home. say I take the phone out of my pocket and discover a spider web of delicate cracks across its screen. But it works! I tap the phone icon and Mom's photo... ⚞ <strong>No connection</strong> ⚟ say I try it again. ⚞ <strong>No connection</strong> ⚟ I test other functions of the phone. I can take photos, I can take notes... but no matter what I try, I can't call or message anyone. ⚞ <strong>No connection</strong> ⚟ say I fell on my butt when the boar startled me! Now I think I felt something crack. Why do I put the phone in that pocket? Why am I such a dork? # *** # # El verbo de telefonear está disponible desde el primer turno que se descubre al jabalí, pero no antes: rule !has generaltags phonestatus_brokenunknown here blockingboar tag generaltags phonestatus_brokenunknown ## Cosa: jabalí y sus descripciones # Lo definimos como cosa para que aparezca en el listado de cosas examinables, y para poder añadirle verbos. thing blockingboar a boar name boar tags alive unseen desc The boar is lying in the middle of the path, but it's not sleeping. From time to time, it raises its head to look around. Or it moves its ears. # *** # # Mensajes aleatorios del jabalí # Las siguientes reglas muestran mensajes aleatorios con acciones del jabalí. 2 imprime un mensaje aleatorio proveniente de blockingboar_text. 1 vuelve a barajar los mensajes aleatorios cuando se han imprimido todos. 3 evita que se imprima un mensaje aleatorio en el primer turno donde se ve al jabalí. # ¿En qué orden se ejecutaría esta regla? tiene que estar al final. # Por otra parte, también debemos bloquear cualquier otro mensaje ambiental. rule #1 mensaje aleatorio del jabalí here blockingboar eq blockingboar_text.index blockingboar_text.max run shufflethings blockingboar_text_source blockingboar_text log ( $turncount ) blockingboar > volvemos a barajar los mensajes rule #2 mensaje aleatorio del jabalí here blockingboar !has blockingboar unseen assign i blockingboar_text.index log ( $turncount ) i = $i > blockingboar_text.$i say {blockingboar_text.$i} log ( $turncount ) blockingboar > imprimimos blockingboar_text.index add blockingboar_text.index 1 rule #3 mensaje aleatorio del jabalí here blockingboar has blockingboar unseen untag blockingboar unseen thing blockingboar_text thing blockingboar_text_source prop 1 The boar moves its ears back and forth. # *** # prop 2 The boar raises its head. I start to panic. Can it see me, hear me? Smell me? # **** # prop 3 The boar grunts softly. # *** # prop 4 The boar lies still. # *** # prop 5 The boar makes a strange high-pitched noise. It sounds like it's whining. # *** # prop 6 Two butterflies fly close to the boar's snout, but it doesn't move. # *** # prop 7 I don't see the boar move at all, but from here, its eyes seem open. # *** # prop 8 The boar rubs its face on the ground, as if digging, but only for a moment. # *** # prop 9 Suddenly the boar stands up and walks a couple of steps in my direction before lying down again. # *** # prop 10 I watch the boar. A bird starts singing and I feel the breeze cooling my nape. Nothing changes. # **** # prop 11 The boar tilts its head to one side. # *** # prop max 11 # A partir de aquí, se definen las diferentes cosas y acciones que permiten solucionar el problema del jabalí y pasar a la siguiente fase ## Solución 1: basura en camino derecho thing cutrockslopedown something on the side of the path loc cutthroughrock prop display something on the side of the path name something on the side of the path verb examine cutrockslopedown say I take a closer look at the descending slope to the side. Something draws my attention. Garbage? Here, in the middle of nature? I don't understand. say A small heap of garbage, perched a metre below me. say A bit beyond there is a hole. It's hard to see through the shrub but the hole seems to get deeper and wider, cutting through the slope like a trench. # ** # say Down by the brook there is a vertical hole in the slope, I've seen it a few times. Perhaps this is the top end! log ( $turncount ) bloque 1 verb examine cutrockslopedown hide cutrockslopedown bring cutrockhole bring cutrockgarbage thing cutrockhole a hole name hole prop display hole prop desc A large and deep cut in the descending slope. I think it goes all the way down to the other branch of the path, near the brook. # ** # thing cutrockgarbage some garbage name garbage prop display garbage prop desc I know some people leave rubbish in the unlikeliest places, but here? Why even bring it here in the first place? <br><span class="br-fixer"></span>And how old is this garbage? It could be thirty days old or thirty years old. There are some household items, even big ones, like a mirror; also a broken tennis racket, a long brown coat with dark stains, an empty photo frame. # ** # verb examine cutrockgarbage tag cutrockgarbage cleanverb continue setverb clean cutrockgarbage has cutrockgarbage cleanverb !has cutrockgarbage triedtoclean verb clean cutrockgarbage tag cutrockgarbage triedtoclean say I kneel down, crawl down the slope a little, stretch my hand towards the mirror... and back away when my knee slips a little and I think I'm going to roll down through the bush. # ** # say The garbage is too far for me to grab. Perhaps I can reach it with a long stick... # ** # setverb look_for_a_stick intransitive has cutrockgarbage triedtoclean !has generaltags longsticktaken !has $room lookedforastickonce !at interruption !at inventory verb look_for_a_stick !has generaltags lookedforastickonce tag generaltags lookedforastickonce tag $room lookedforastickonce say I check the ground, looking for a stick that seems long and solid enough, at least as long as my arm or more... but I don't see any here. # ** # verb look_for_a_stick has generaltags lookedforastickonce say Let's look see if I can find a stick here... There! That one seems good enough. A bit heavy, but I can lift it ok. # ** # bring longstick tag generaltags longsticktaken thing longstick a long stick name stick prop desc A broken branch just like any other. Long and thick enough to use as a walking cane. tags portable prop take I pick up the stick. It's as long as a cane and as thick as I can grip comfortably. I fasten it to my backpack. # ** # setverb poke_garbage longstick has cutrockgarbage triedtoclean !has cutrockgarbage pushed here cutrockgarbage verb poke_garbage longstick tag cutrockgarbage pushed put largemirror verticalcavity prompt push garbage with stick write cutrockgarbage.desc There are some household items, like a broken tennis racket, a long brown coat with dark stains, an empty photo frame. There was a mirror, but I pushed it down the hole. # ** # write cutrockhole.desc A large and deep cut in the descending slope. I think it goes all the way down to the other branch of the path, near the brook. I pushed a mirror down there. # ** # say The stick is long enough to touch the mirror! With a few pushes, I release the mirror from the bushes that support it and, with a final shove, I throw it down the hole! # ** # write verticalcavity.printonce The mirror I pushed from the upper path is here! It's dangling a bit higher than me. # *** # # setverb push_with_stick cutrockgarbage # has cutrockgarbage triedtoclean # !has cutrockgarbage pushed # here longstick # # verb push_with_stick cutrockgarbage # tag cutrockgarbage pushed # put largemirror verticalcavity # prompt push garbage with stick # write cutrockgarbage.desc There are some household items, like a broken tennis racket, a long brown coat with dark stains, an empty photo frame. There was a mirror, but I pushed it down the hole. # ** # # write cutrockhole.desc A large and deep cut in the descending slope. I think it goes all the way down to the other branch of the path, near the brook. I pushed a mirror down there. # ** # # say The stick is long enough to touch the mirror! With a few pushes, I release the mirror from the bushes that support it and, with a final shove, I throw it down the hole! # ** # # write verticalcavity.printonce The mirror I pushed from the upper path is here! It's dangling a bit higher than me. # *** # ## Solución 2: espejo thing largemirror a mirror name mirror desc When I pushed the mirror from the upper path to this hole, some branches stopped its fall, and it's dangling some centimetres above me. # *** # setverb take largemirror !has largemirror triedtaking verb take largemirror tag largemirror triedtaking say I stretch my arm and try to reach the mirror. Just a little further... # *** # say A moment later I'm cleaning dirt from my face while I stand up. # *** # setverb poke_mirror longstick here largemirror verb poke_mirror longstick prompt poke mirror with stick say I wave the stick up, trying to poke the mirror... almost... almost! I jump, I hit the mirror and it falls, landing on a moss patch, while my face lands on the dirt. say I sit up, wipe my face and throw the let out a cry of victory. # *** # hide largemirror bring largemirroronground put longstick inventory untag longstick taken untag longstick beingused untag longstick list_last # setverb poke_with_stick largemirror # here longstick # # verb poke_with_stick largemirror # prompt poke mirror with stick # say I wave the stick up, trying to poke the mirror... almost... almost! I jump, I hit the mirror and it falls, landing on a moss patch, while my face lands on the dirt. # say I sit up, wipe my face and throw the stick away with a cry of victory. # *** # # hide largemirror # bring largemirroronground # hide longstick # untag longstick taken thing largemirroronground a mirror name mirror prop desc A mirror as big as my arm. # *** # setverb take largemirroronground !has largemirroronground takenonce verb take largemirroronground prompt take mirror say I take the mirror and play a bit with it. # *** # say I drop the mirror. It's too big to carry comfortably. # *** # tag largemirroronground takenonce proc myselfinmirror setverb break_with_stone largemirroronground has largemirroronground takenonce !has largemirroronground broken verb break_with_stone largemirroronground prompt break mirror with stone say I pick up a stone. This is going to be the first time I ever break glass. say The cry of the breaking glass is another thing that doesn't feel right here and now, in this forest in the morning. say I use a couple of sticks to separate one of the broken pieces, which I then pick up very slowly, and put in my backpack with zero cuts. I have a mirror now! # ** # put mirror inventory # tag mirror list_last tag mirror ignorehideactions untag mirror portable tag largemirroronground broken write largemirroronground.desc A mirror as big as my arm, broken in many pieces. thing mirror a broken piece of a mirror prop name mirror prop desc A shard of a mirror I've just broken. ## Solución 3: ejecución setverb look_at mirror here mirror !here blockingboar !here monitorontower verb look_at mirror !has mirror used !here blockingboar say I take a look at myself in the mirror. Not looking bad today. Then I move the mirror around until it catches a ray of sunlight. I carefully move the mirror and play with the blinding triangle of light that it reflects on the ground, the trees or anywhere I want. # *** # run myselfinmirror tag mirror used verb look_at mirror has mirror used !here blockingboar say I take another look at the mirror. Besides looking at myself and reflecting the sun, I don't know what else to do with it. # *** # setverb use mirror here blockingboar verb use mirror here blockingboar say There are some bushes with patches of light and shadow, not too close to where the boar is lying. I kneel behind the leaves, put out the mirror and place it under the light. say A shiny triangle appears on the path. # ** # run interrupt blindboar setverb blind_boar intransitive at interruption has interruption blindboar verb blind_boar say Pointing the light is hard. The slightest trembling of the mirror sends the triangle of light metres away. The boar is only a stone's throw away. say Finally, I steady my hands and turn the mirror until the light flashes on the boar's body. I take a deep breath and move the light towards one of its eyes. say After just a moment, the boar squeals. say It stands up. say It lunges forward. In my direction. # ** # untag interruption blindboar tag generaltags nophonemom tag interruption blindboar_escape put mirror inventory untag mirror taken untag mirror beingused untag mirror list_last hide blockingboar hide watertank write globalstage afterflood write currentframe fra-10 js frachange("fra-10") setverb escape intransitive at interruption has interruption blindboar_escape verb escape at interruption has interruption blindboar_escape say Suddenly the boar turns sharply and rushes uphill, next to the water tank. Then it seems to slip, lose its balance and roll. Its body bangs against one of the supports we placed against the wall and throws it into the air. The hog's squeals pierce the forest while its body rolls and breaks a second support, and a third one. say The boar lands on the path. It gets on its feet, goes around disoriented, and eventually runs uphill again and disappears. say A high-pressure water jet bursts out of the tank. # ** # untag interruption blindboar_escape tag interruption blindboar_watertank setverb look_at_the_tank intransitive at interruption has interruption blindboar_watertank verb look_at_the_tank at interruption has interruption blindboar_watertank say A quick look at the water tank shows me that it's going to break. It's just a box of concrete, more than a century old, and filled to the brim with water. A second piece of concrete flies away, broken by another water jet. say I better run before this gets ugly. # ** # untag interruption blindboar_watertank tag interruption blindboar_runfromtank setverb run intransitive at interruption has interruption blindboar_runfromtank verb run at interruption has interruption blindboar_runfromtank say Uphill! Water will go the other way. I run towards the ascending path. say After a few seconds, a terrible noise makes me stop and turn. say A three-metre-high wall of water is bursting out of the tank! It hits the path, blurred and thunderous like a high-speed train. The ground shakes and everything before my eyes becomes an angry, booming chaos. say I don't know for how long water keeps flowing, until it stops. # ** # untag interruption blindboar_runfromtank tag interruption blindboar_examinedisaster setverb look intransitive at interruption has interruption blindboar_examinedisaster verb look at interruption has interruption blindboar_examinedisaster say The thunderous roar of the water has died down now, but a choir of animals is singing a song of terror. say I walk carefully towards the tank. Where the hog broke the supports, the wall has disappeared. And below... say I stop at the edge. I can't believe this. say Right where the path forks, water has dug a trench. Three metres deep? Four? And steep, and slippery, and full of loose stones and protruding roots and mud... And the other side? I can't jump there. say The way back home is cut off. # ** # run blindboar_end untag interruption blindboar_examinedisaster write interruption.return forkingpath run interruption_end write currentmap bvc6 run schedule_an_event mapchangeboarend 1 proc mapchangeboarend js mapchange('bvc6') proc blindboar_end untag generaltags nophonemom close forkingpath home close forkingpath left open forkingpath through_the_forest forkingpath open leafcoveredpath forest path_fallentree tag forkingpath flooded tag forkingpath notambient tag forkingpath noeventschedule tag printedtext boaraccident write forkingpath.desc2 At the point where the path forked, there is now a big hole. I'm stuck at the path that goes uphill. # ** # write leafcoveredpath.desc1 I take the left branch and my shoes get buried in leaf litter. This path is wide, comfortable, but no one comes here. <br><span class="br-fixer"></span>I'm quite far from home now. # ** # write leafcoveredpath.desc2 This the the beginning of the path that goes up the valley. write anotherfork.printonce What's the best way to go back home? I'm sure the top of the hill would be a dead end. But the left path might take me closer to the brook; perhaps I can cross to the other side and then <em>perhaps</em> I can follow the brook downstream. That side is rugged and rocky and has no trees, but I think there are paths. <em>Perhaps</em> I can walk down the valley a couple of kilometres, until the forest ends, and find another place to cross the brook and return to the village. # *** # write path_fallentree.printonce There I go. To places I've never seen. Remember how they taunted you at school, Lara! The Tamer's Daughter they called me. Because Mom works with big animals. <br><span class="br-fixer"></span>Be a tamer's daughter now. write currentframe fra-2 js frachange ('fra-2') verb go through_the_forest at forkingpath close forkingpath through_the_forest say Perhaps I can try climbing the hillside behind the ruined tank, where the boar was trying to go, then go around the tank and reach the way home! say I try. But I'm not a boar and it slipped for good reasons. That part is steep. It's almost a wall with trees emerging between the stones! I can't climb. I can't go round the tank, and I can't reach the way home. # ** # ### LAGARTOS EN EL CRUCE ## Turbina caída y lagartos thing fallentower a fallen wind tower name fallen tower loc path_windtower tags lookableunder photographable prop photo I walk back up the path to take a photo that gives a slight idea of how big the wind tower is. # ** # verb examine fallentower say How old must the fallen tower be? Quite old, for sure, but the metal still looks whiter than bone under this sunlight. And it looks organic like bone too, elegantly curved except where it's crumpled like paper. say It's just a broken section of the tower, but it is bigger than any tree in sight, thirty or forty metres long. say I can't tell. say Its size feels so out of place here. It's a bit like a photo collage I did at school, but real and solid at the same time. # ** # tag fallentower examined random randnum 7 add randnum 5 run schedule_an_event windtower0 $randnum setverb look_under fallentower has fallentower lookableunder verb look_under fallentower say Under the tower I can see the course of the stream, two metres under its central segment; irregular rocks; and trees that the tower must have crushed and dragged when it fell. I notice that going down there from where I stand would be very difficult, it's almost vertical. say There is a dark hollow under the opposite end of the tower, almost like a cave. Slightly less dark shapes wave back and forth. Some kind of plant, in the wind. # *** # untag fallentower lookableunder tag fallentower lookedunder setverb climb fallentower has fallentower lookedunder has fallentower examined verb climb fallentower !has fallentower climbed say At the tower's end, where it broke and separated from the base, the metal is twisted and crumpled, and I use that to climb to the top. say I take a few careful steps, ready to slip and fall to the ground and why not break a leg too... but I don't! The tower's surface is rough and level. I think I can use it as a bridge to cross the brook. So I'm actually lucky. If this wasn't here, getting to the other side would be a lot harder. # *** # tag fallentower climbed goto ontopoftower verb climb fallentower here soakedrags has soakedrags taken tag soakedrags ignorehideactions continue verb climb fallentower has fallentower climbed say I climb to the top of the tower again. goto ontopoftower room ontopoftower On top of the wind tower tags notambient noeventschedule csstower dir down path_windtower dir cross afterwindtower prop desc1 prop desc2 # Frases descriptivas que deberían aparecer como respuesta a acciones # say Up close, the tower's whiteness turns out to be an illusion. There's rust, leaves, dry mud, deep scratches, stains. verb go cross at ontopoftower is globalstage beyondtower goto afterwindtower verb go cross at ontopoftower !here monitorontower !has ontopoftower firstcrossmovement tag ontopoftower firstcrossmovement tag ontopoftower observationverbs say I walk to the point where the brook flows exactly under the fallen tower and look around. say The air seems to play the tower like a drummer; my own footsteps reverberate, like that Aeolian harp they have at school. # *** # setverb look_at_the_brook intransitive at ontopoftower !here monitorontower !is globalstage beyondtower has ontopoftower observationverbs setverb look_at_the_landscape intransitive at ontopoftower !here monitorontower !is globalstage beyondtower has ontopoftower observationverbs verb look_at_the_brook at ontopoftower say Downstream, I see the small valley at my feet, the forest I came through on the left, the barren slope I'm heading for on the right. The village and the city are out of sight. <em>I</em> am out of sight. say There's barely more than a trickle of water flowing over the rocks, but I love its funny gurgling noises. # *** # verb look_at_the_landscape at ontopoftower say My eyes feast on the landscape. On my side of the brook, small bushes flowering between red rock outcrops. On the other, a rocky wall where only small flexible trees dare to grow, safe from any animal but goats. # *** # verb go cross at ontopoftower !here monitorontower has ontopoftower firstcrossmovement say I start looking for an easy way to climb down on the other end of the tower and finally start my way home. say The white metal vibrating under the sun is blinding. I notice shapes over the whiteness, moving... crawling. I stop. Instinctively. say I squint. A shape gets focused and clear. say It's a monitor right in front of me. # *** # bring monitorontower close ontopoftower cross close ontopoftower down run cancelfocus tag ontopoftower hideactions untag path_windtower bringground #hide ground thing monitorontower a monitor tags unexamined prop name monitor prop display a monitor prop photo I need proof. I take some pics and videos of the monitors. # *** # # primera descripción del varano, que hace aparecer al segundo verb examine monitorontower has monitorontower unexamined untag monitorontower unexamined say The monitor looks large... larger than myself! Is that possible? Not merely long, it looks bulky. Its colour is muted. I think that means it's older. Its head is turned to me and it's flicking its tongue... say Another shape moves fast. A lizard is running out of the dark hollow under the tower. Running! I didn't know they could move so fast. And it has something in its mouth... some kind of mouse. say More monitors come out. say I look. I feel I can't move. say Seven monitors, three on the tower's end, four more on the ground, perfectly still, hold my gaze. # *** # write monitorontower.display monitors write monitorontower.name monitors tag printedtext examinemonitorundertower # descripciones subsiguientes del varano. Habría que reutilizar el método usado en el jabalí para dar mensajes diferentes. verb examine monitorontower !has monitorontower unexamined !is monitorontower.name monitors say The monitor doesn't move. Or perhaps it's moving, but I'm not noticing it. # *** # verb examine monitorontower !has monitorontower unexamined is monitorontower.name monitors say The monitors don't move, except two of them which are slowly chewing something. # *** # verb go cross at ontopoftower here monitorontower say The monitors are still near the end of the tower. I'm certain that if I try to go past them they can bite me. # *** # # puedes mirar a tu alrededor después de haber mirado al lagarto setverb examine_the_surroundings intransitive at ontopoftower here monitorontower has printedtext examinemonitorundertower !has printedtext examinedtowersurroundings verb examine_the_surroundings say Perhaps I can descend from the tower without going near the lizards? I don't think so. I need to pass right by the monitors to reach the very end of the tower to find rocks, trunks and twisted pieces of metal to help me climb down. say What about jumping directly into the brook? I look down and I flinch. I could break a dozen bones. say Perhaps I can drive them away like I did with the boar. Not that <em>that</em> was totally succesful though. # *** # tag printedtext examinedtowersurroundings setverb move_back intransitive at ontopoftower has printedtext examinemonitorundertower !has ontopoftower movedback verb move_back say I walk backwards to the tower's end, with my eyes fixed on the animals. I turn to look at the way down to see where to put my foot... and the image of a lizard running towards me and biting my leg erupts in my mind. say I gasp and look. The lizards haven't moved. The closest one is more than twenty metres away. say Making up imaginary dangers won't help. I look at the way down. say <em>... a monitor, sinking its teeth into me...</em> # *** # tag ontopoftower movedback tag monitorontower photoverb open ontopoftower down path_windtower verb go down at ontopoftower !here monitorontower has printedtext downfromtoweronce say I descend. Climbing down is more arduous than climbing up. # *** # goto path_windtower verb go down at ontopoftower here monitorontower !has printedtext downfromtoweronce tag printedtext downfromtoweronce say Everything is fine. Let's go down. say As I climb down, something draws my attention. The thicket only lets me glimpse its upper end, but it's clearly a building, a hut or cabin. say It's hard to guess how far uphill it is, but I'd say one to two hundred metres from here. I can't tell if there is any track leading to it, but I didn't see any fork as I came. If I retrace my steps, I will look carefully. say If the village was almost abandoned, how long since someone went to that cabin last? # *** # run schedule_an_event lizardthoughtsaftertower 1 # Se activa el verbo para buscar caminos a la cabaña, en una primera fase tag path_redbushes hutpathsearch tag path_twistedtree hutpathsearch tag path_highrock hutpathsearch tag pathunderhut hutpathsearch tag generaltags hutpathsearchbeforerock write path_highrock.printonce Perhaps from the top of the rock I see a way to reach the hut. # *** # goto path_windtower rule #mapa con lagarto at path_windtower has printedtext downfromtoweronce !has printedtext map_towerlizard tag printedtext map_towerlizard write currentmap nxc3 js mapchange('nxc3') proc lizardthoughtsaftertower say It had to be monitors. I hate them, everyone hates them, invading species from a different age, everyone wants them to disappear. Then we could feel a bit less afraid. say Feeling good is better than facing the facts. The climate won't recover that fast. The monitors will stay here for centuries. # *** # run schedule_an_event lizardthoughtsaftertower2 1 proc lizardthoughtsaftertower2 say I've seen lizards in parks, I've seen them in closed underground stations as my train passed, I've seen them from my bedroom window in the capital. I've had classmates taken to hospital because they were allergic to the toxins in the monitors' bite. When kids want to sound tough and brave, they make up horror stories about monitors. # *** # verb go down at ontopoftower here monitorontower has printedtext downfromtoweronce say Reluctantly, I look away from the lizards and work my way down the tower. goto path_windtower # introducir estos pensamientos en turnos después de bajar proc windtower0 run setfocus ambient_windtower 4 thing ambient_windtower thing ambient_windtower_source prop 1 windtower1 prop 2 windtower2 prop 3 windtower3 prop 4 windtower4 prop max 4 proc windtower1 say Why did the wind turbine fall? I know. I've seen the old videos. It was during the Terror. When Mom and Dad were children. say They blew the whole thing up with explosives. # **** # proc windtower2 say How did the wind turbine fall? Did it roll down the mountainside, uprooting trees, crushing deer and lizards? Was it night or day? It's hard to imagine it in daylight but even harder to imagine it in nighttime. # *** # proc windtower3 say The wind tower is longer than some streets in the village. Did anybody see it collapse? Did they feel the crash? What did they hear? say Do they still have nightmares about it? # *** # proc windtower4 say I can think of many details about the wind turbine's fall, but it's impossible for me to imagine it <em>happening</em> for real. # *** # # Verbo para buscar caminos a la cabaña. En la primera fase nunca tiene éxito setverb look_for_path intransitive has generaltags hutpathsearchbeforerock has $room hutpathsearch !has $room hutpathsearchbeforerockdone verb look_for_path has generaltags hutpathsearchbeforerock has $room hutpathsearch !has $room hutpathsearchbeforerockdone tag $room hutpathsearchbeforerockdone continue verb look_for_path !has generaltags hutpathsearchafterrock at path_redbushes say The red bushes are not hard to push aside, but I don't see any trace of an opening. # *** # verb look_for_path !has generaltags hutpathsearchafterrock at path_twistedtree say I push aside some weeds and bushes. It isn't hard, but there's nothing behind but thicker bushes. When I get two metres deep, something makes a scratch on my left leg. I can barely move anymore, it's too thick. I don't see the cabin up the hillside, and I see that the colour of the bushes, a grayish mix of green and purple, is uniform up the slope. say I return to the path. # *** # tag pathsearchscratch wounded thing pathsearchscratch I got a long scratch on my leg from the thick bush when I searched for the path to the hut verb look_for_path !has generaltags hutpathsearchafterrock at path_highrock say The shrubbery is very high here and it grows on a steep slope. The trunks sprout from the ground at my eye level, and the whole bush leans forward. Jumping is no good. I can't reach the bushes and I can't see anything. If the path to the cabin was here, I can't get to it. # ** # verb look_for_path !has generaltags hutpathsearchafterrock at pathunderhut say I stare at the bushes that border the path on the uphill side. Perhaps there used to be a path that led to the hut I saw but it's been overrun by vegetation. Would that leave any trace? A small opening, a slightly less dense part? I don't see anything like that. The path to the hut must have been somewhere else. # ** # say I try pushing some bushes aside, but they are both thick and rigid. I don't think I can do anything here. # Sobre la roca, se puede buscar la cabaña. Esto desactiva el verbo genérico de buscar caminos y lo activa en la ubicación apropiada setverb look_for_hut intransitive at path_highrockclimb has generaltags hutpathsearchbeforerock verb look_for_hut untag generaltags hutpathsearchbeforerock tag generaltags hutpathsearchafterrock say From the top of the rock, I try to locate the hut. There! An opening in the bushes and trees lets me glimpse it. And on the slope below the hut there is a stretch of ground that seems clearer. All that is to my left... I guess it's quite close to the wind turbine, I should look for a path there! # ** # write pathunderhut.printonce The clear area I saw below the cabin, when I looked from the top of the rock, seemed to point to this part of the path. # ** # # Verbo para buscar el camino a la cabaña, en una segunda fase. En la ubicación apropiada, tiene éxito setverb look_for_path intransitive at pathunderhut has generaltags hutpathsearchafterrock verb look_for_path at pathunderhut has generaltags hutpathsearchafterrock open pathunderhut uphill pathtohut untag generaltags hutpathsearchafterrock say The hut should be up this slope... but the bush is the densest, I can't see anything! Perhaps I could use the heap of black stones? It stretches two or three metres up the slope, making a small opening in the first line of bushes. say I start climbing. The stones slip under my feet, but I crawl, I move very slowly, and I ascend little by little. I get scratches from bush branches, but I keep going on. And after a couple of minutes going up there are no more stones. say I stand up very slowly... I was right! The hut is up there, and the shrubbery is less dense, as if this used to be a path. I can keep going forward. # ** # setverb use mirror here monitorontower has mirror beingused !has monitorontower triedmirror verb use mirror here monitorontower tag monitorontower triedmirror say Perhaps the mirror will work again?... say I move the mirror to catch the sun and then I try to direct it towards the monitor's eye... And nothing happens. Nothing at all. say I knew I wouldn't be so lucky twice. untag mirror taken untag mirror beingused untag mirror list_last put mirror inventory setverb make_noise longstick here monitorontower has longstick beingused !has monitorontower triedmetal verb make_noise longstick prompt make noise with the stick tag monitorontower triedmetal say Maybe some noise will scare the lizards. say I have to do this hard. It doesn't matter if it makes me feel strange. Do it as hard as I can. say I smash the stick against the metallic surface I'm standing on. The bang is deafening. Then another time. Another. Bang, bang! 'Go away!' I scream. And I hit the metal again, and the stick breaks in two. say I gaze at the two pieces, then at the monitors. It's as if they haven't noticed. I throw the sticks away. hide longstick untag longstick taken untag longstick beingused untag longstick list_last ## En la cabaña setverb smell_air intransitive at hut !has hut smelled setverb look_around intransitive at hut !has hut lookedaround verb smell_air at hut tag hut smelled prompt smell the air say The air inside smells different. But not totally different. Traces of people have dissipated from the air, and the smells of the forest have invaded the room, but under that there's also something different and I don't know what it is. # ** # verb look_around at hut tag hut lookedaround say Finally! It felt like my eyes would never adapt fully to this darkness. say I glimpse a table, three chairs, shelves, heaps of rubbish. Things too small to tell. Things I don't recognize, things nobody has taught me how to use yet. say What did they do here? It's in an abrupt slope surrounded by forest and far from the village. It doesn't look like they had a farm here. # *** # bring huttable bring hutchairs bring hutshelves # bring hut_door bring rags bring brokendrone js frachange ('fra-0') thing brokendrone a broken drone prop name broken drone prop display broken drone tags photographable prop desc Something really interesting lies on a corner&colon; a flying drone. It used to have four arms with propellers, but one is missing. There's something that looks like a camera, and there are stains and scratches all over it. This is different from the drones Dad uses. It must be decades old. Why is it here? thing huttable a table prop name table prop desc There is a wooden table in the middle of the room, with the chairs nearby. It doesn't look too aged, other than some dark stains that must be very old. # ** # thing hutshelves shelves name shelves prop desc There are many shelves, but they are almost empty. # ** # verb examine hutshelves !has hutshelves examined bring bowl bring bleach bring smallmetallicthings tag hutshelves examined say There are four or five shelves on the walls, placed at random or so it seems. I see a yellow container, like a big bottle, and a large blue bowl. Their colours are so brilliant... Perhaps they are plastic? Real plastic! These are some of the biggest plastic things I've ever seen. # *** # say There's little else on the shelves. Nothing else on the walls. # ** # thing smallmetallicthings small metallic things prop name small metallic things prop display small metallic things prop desc On a corner of the shelf there's something small, dark, half buried in dust, and I don't know what it is until I pick it up and clean it. It's a pair of earrings! Shaped like twigs and leaves. And a ring too! They've lost all their polish, I don't know what colour they used to be, but they are not broken and they look nice. Nicer than anything Mom and Dad have. # *** # verb examine smallmetallicthings say {smallmetallicthings.desc} hide smallmetallicthings bring ring bring earrings thing earrings tags photographable collectable prop desc A couple of old earrings with faded colours but nicely shaped. prop photo I arrange the earrings on the table and take a good pic. prop collect I've been thinking of keeping the earrings since I saw how cool they are. No one else is coming back here to look for them. So I put them in the box. I'll hide them from Mom and Dad or make up some story. prop list old earrings verb examine earrings tag earrings bleachable continue thing ring tags collectable photographable prop desc The ring is simple, just an undecorated metal band. It could be three years old or three hundred. prop list ring verb examine ring tag ring bleachable continue thing hutchairs three chairs name chairs prop display three chairs verb examine hutchairs !has hutchairs examined tag hutchairs examined say The three chairs are placed around the table. Two are chairs one could have found in any house in the village, chairs made like they made them centuries ago. Just a few pieces of wood, put together in the simplest way. <br><span class="br-fixer"></span>The other reminds me of the chairs I've seen at the doctor's, or at the dentist's. It's big, it looks heavy, comfortable, and there are straps around the arms. I don't know what it's for. # ** # bring hutbigchair bring hutstraps write hutchairs.display small chairs write hutchairs.desc Two small, simple wooden chairs carelessly placed near the table. # ** # write pathtohut.printonce So, was this Terror Country for me? Nothing but a farmer's hut with old garbage? # ** # write pathunderhut.printonce I have an idea&colon; I convince Mom or Dad for a long walk along this path and I bring them up to the cabin. See what they tell me. <br><span class="br-fixer"></span>Then I realize. In my imagination, Mom and Dad don't find out what I've done today. Funny me. # ** # thing hutbigchair a big chair name big chair prop desc A big heavy chair with high back, straps attached to the arms, lined with torn fabric. # ** # thing hutstraps chair's straps name chair's straps tags smellable prop desc Each arm of the big chair has three straps attached, with metal buckles. What for, tying somebody's arms to the chair? What sense does that make here?<br><span class="br-fixer"></span>What are they made of? I think it's leather! This chair is really old! # *** # prop smell I smell the straps. It's faint, they must be very old... but it's still there. And it's amazing! What would it be like when it was new? <br><span class="br-fixer"></span>I think it's the second time in my entire life I've smelled leather. # *** # verb examine hutstraps tag hutstraps examined continue setverb pull hutstraps has hutstraps examined !has hutstraps pulled verb pull hutstraps say I try a strap with a weak tug, then I pull harder, and then I pull real hard. This chair was made to be sturdy. # *** # tag hutstraps pulled # la puerta es decorado y ambiente thing hut_door a door name door tags openverb prop desc It seems there is another room in the hut. # ** # setverb open hut_door has hut_door openverb verb open hut_door say The door is locked. Unlike everything else here, unlike the hut itself, the lock, though old, looks good and solid, some kind of safety lock. I push and kick the door, but it doesn't move a centimetre. If I ever tell anyone that I was here, I should tell them there must be something valuable behind this door. # *** # write hut_door.desc A strongly locked door. # *** # untag hut_door openverb thing bleach yellow container tags openable takable name container prop desc The big yellow bottle <em>is</em> made of plastic. The label is almost totally faded, but I can still read "bleach". # ** # verb examine bleach tag bleach examined write bleach.display bleach container say {bleach.desc} setverb take bleach has bleach examined has bleach takable verb take bleach untag bleach takable say The container is very heavy! I can move it, but if I tried to go downhill with it I'd probably end up tried for plant poisoning. # ** # setverb open bleach has bleach examined has bleach openable verb open bleach untag bleach openable untag bleach takable tag bleach opened say I try to remove the cap from the bleach container, but it doesn't budge a milimetre! The cap and the container have become a single solid. say I won't give up. I grip the cap as hard as I can and I try to turn it, left, right, left, right, my hand starts to stiffen, left, right, left, and suddenly it gives in with a crackle and I unscrew the cap completely. say The smell is strong. There's still a lot of bleach in there. I'd like to ask Mom what they'd use it for... but I still have hopes she hasn't noticed I'm gone! # ** # thing bowl bowl name bowl prop desc The bowl is made of plastic. Very light, brilliant colour, dirty but it doesn't feel worn out. Just so weird. # ** # prop take I pick up the bowl. # ** # verb examine bowl tag bowl examined continue setverb pour bleach here bleach !has bleach poured has bleach opened !has bowl examined verb pour bleach prompt pour bleach say I need a pot or something to pour the bleach in. # ** # setverb pour_in_bowl bleach here bleach !has bleach poured has bleach opened has bowl examined verb pour_in_bowl bleach prompt pour bleach in the bowl has bowl examined tag bleach poured say Raising the bottle and pouring bleach in the bowl is difficult! It's heavy and I don't have a good grip. The smell of bleach goes right through my nostrils into my throat and my lungs. My whole body springs! I cough and cough and I drop the bottle and keep coughing. say God. say When the coughing subsides I notice two things&colon; bleach spilled on the floor, and spatters all over my clothes. # ** # hide bowl bring bowlwithbleach thing bowlwithbleach bowl with bleach name bowl prop desc The bowl is half filled with bleach. Strong chemical smell. # ** # thing rags name rags prop desc Some rags. This crap is probably older than Mom and Dad. Might have been towels decades ago. # ** # prop take I pick up a few pieces of cloth. # ** # verb examine rags !has rags taken tag rags portable tag rags bleachable continue # Mecanismo para sumergir cosas en lejía setverb wash_earrings bowlwithbleach has earrings bleachable verb wash_earrings bowlwithbleach prompt wash the earrings with bleach say I put the earrings in the bleach and rub them a little. I take them out, put them on the table and examine them. Some parts have a bit of shine now. I wonder if they are expensive, like jewels, or trifles. # *** # tag earrings bleached untag earrings bleachable untag earrings collected bring earrings setverb wash_ring bowlwithbleach has ring bleachable verb wash_ring bowlwithbleach prompt wash the ring with bleach say The ring has a silvery colour, with some dark stains. I put it in the bowl with the bleach and scrub the darker parts. Then I put it on the table and look. What's happening? It has more dark stains now! # *** # tag ring bleached untag ring bleachable untag ring bring ring setverb soak_rags bowlwithbleach has rags bleachable verb soak_rags bowlwithbleach prompt soak the rags in bleach say I soak the pieces of rag in the bleach. Then I wrap my hand in another piece of cloth, I remove the rags, I drop them on the floor and press them with my feet to release some bleach. say Finally I lay the soaked rags on the table. tag rags bleached untag rags bleachable untag rags taken hide rags bring soakedrags write ontopoftower.printonce <em>Tamer's daughter.</em> thing soakedrags rags soaked in bleach tags portable name rags prop desc Seven or eight pieces of cloth soaked in bleach. The smell is dizzying. # *** # prop take I put the soaked rags in my backpack. # *** # setverb throw_at_lizards soakedrags at ontopoftower here soakedrags verb throw_at_lizards soakedrags prompt throw the soaked rags at the lizards untag soakedrags taken hide soakedrags hide monitorontower open ontopoftower cross afterwindtower close ontopoftower down write globalstage beyondtower say I crumple a piece of bleach-soaked cloth into a ball. Now I have to get close. A step towards the nearest lizard. Another step. say I almost slip! say I'm too nervous. I wait, then another step. I come closer and closer. Now I'm four metres away from the monitor. I stare at it, and I that doesn't tell me anything. I don't know if it's seen me, if it's afraid or aggressive. Nothing. I throw the cloth as close to the lizard as I can, and I run backwards. say I count one, two, three, four, five, and the monitor turns back and runs! And it doesn't just move back a little, it keeps running and climbs down the tower and disappears from sight! # *** # run interrupt towermonitorsfinish setverb throw_the_rest_of_the_rags intransitive at interruption has interruption towermonitorsfinish verb throw_the_rest_of_the_rags at interruption untag interruption towermonitorsfinish tag interruption towermonitorsfinishrun say This is the moment! I make a ball with each piece of soaked cloth, run near each monitor and try to make the ball land right in front of its nose. And the monitors hate the bleach! One after another, they turn their backs and run under the tower. say After a minute, there's not a monitor in sight. # ** # setverb run_to_the_other_side intransitive at interruption has interruption towermonitorsfinishrun verb run_to_the_other_side at interruption untag interruption towermonitorsfinishrun write interruption.return afterwindtower say The lizards have fled, but how far? If I don't run they may attack me later! So I run. say I run along the generator tower. say I jump to the ground without looking at how high the jump is. say I don't land on my feet but on my knees. I roll. I get up. Everything hurts. The way home is in front of me. # ** # run interruption_end write currentmap 0plk js mapchange('0plk') ### FINAL DEL JUEGO room backhome Home tags noeventschedule hideactions cssopenair thing endgallery photos loc backhome thing endsamples sample box loc backhome thing endme myself loc backhome rule at backhome !here endgallery !here endme !here endsamples say Is that it? Am I done? say I'm not sure. say I've been thinking about all I've seen&colon; the living things that thrive in the light and the dark, but also the traces of disaster, the secrets of Terror Country, the invading species, the heat. say I have the feeling that I'm missing something. That there is something to be understood in the middle of all this, which I can't understand, I can't even guess. # ** # say say die THE END verb examine endgallery eq $numberofphotos 0 hide endgallery say How come? I took no pics with my phone. verb examine endme eq $numberofwounds 0 hide endme say Incredible! I have no scratches! verb examine endsamples eq $numberofsamples 0 hide endsamples say Seems I didn't have the time to pick samples this morning. verb examine endgallery gt $numberofphotos 0 prompt check the photos I took hide endgallery say These are all the photos in my phone's gallery&colon; all tagged photographed say - {$this.Display} verb examine endme gt $numberofwounds 0 prompt check myself say Do I have any scratches? Sore spots? Torn clothes? hide endme all tagged wounded say - {$this.Display} verb examine endsamples gt $numberofsamples 0 prompt check my samples hide endsamples run endingputsamplesininterrupt run interrupt endingsamplechoose say I spread the things I picked on my table at the cellar's workshop. It's a treasure chest, and I want to keep them all, but I'll only take one to class the next time we have to show something. Which one do I prefer? proc endingputsamplesininterrupt all tagged collected put $this interruption write $this.display {$this.list} freeze $this.display assign r 0 setverb choose at interruption has interruption endingsamplechoose verb choose say {$this.List}. That's it. It may not be very impressive as a souvenir of today's walk, but I don't think I want to tell how deep I went yet. # ** # tag interruption endingphotochoose run interruption_end