miércoles, 14 de enero de 2009

Asalto y Castigo

Este será el título definitivo de esta precuela de "El Trono de Inglaterra".

Argumento

¿Qué estbaa haciendo Ulfius durmiendo en su casa cuando Kay le despierta pq le llama el rey? En esta aventura veremos bastantes explicaciones del comportamiento de Ulfius en "El Trono de Inglaterra", en el que llega a detestar la violencia.

Parser
El juego es para Speccy, y originalmente estaba pensado para participar en una cateogoría de juegos en BASIC, así que está hecho en BASIC del spectrum.

Es tipo PAWS en el sentido de que prescinde de aquellas palabras que no sean significativas, entendiendo frases del tipo "verbo [nombre1 [nombre2]]".

Es tipo Inform en el sentido de que cada acción soportada tiene un comportamiento básico si no está contemplado lo que quiere hacer el jugador. Si el juego no entiende un verbo, avisa de ello. En ningún momento se visualiza "no puedes hacer eso", a no ser que suceda algo que yo no haya contemplado, porque la tristemente famosa frase sí que está. :-)

¿Cuándo estará listo?

La aventura está terminada, pero estoy la estoy depurando. Está en fase alfa, lo cuál quiere decir que la estoy betatesteando yo. Estará en fase beta en cuanto se la pase a mi betatester favorita (si la admite jugar, claro).

Yo le calculo, teniendo en cuenta el trabajo de la vida real, un par de meses, a lo sumo.

Otra cuestión es que me gustaría compilarla, ya que el parser tarda de 1 a 4 segundos en responder por cada acción, y hoy en día no estamos acostumbrados a eso. PAra eso me estoy viendo el compilador de BASIC de HiSoft, a ver si lo hago funcionar :-).

Espero que os guste.

viernes, 2 de enero de 2009

Trabajando con BASIC

Hace bastante tiempo que no he publicado nada de nada en el blog. Por un lado, la vida real me ha tenido atrapado, como todo el mundo, pero por otro lado he estado metido en un proyecto muy interesante.

He programado en parser en Sinclair Basic. Lo empecé hace bastane tiempo, ya que lo quería para entregar una aventura al concurso de Bytemaniacos. La cuestión es: no he llegado a tiempo. Y en parte por la vida real, pero por otra parte por pensar, "bah, si ya casi está hecho", y cosas así. Aún así, me gustaría comentar un poquillo como ha sido la experiencia:

Lo divertido

El caso es que es divertido programar un parser. Claro, cuando empiezas con cosillas más complicadas, es cuando e das cuenta de que no es ninguna coña. Yo lo he hecho com una parte dedicada a procesos, y otra dedicada a respuestas. La primera prueba que hice con coger, me cogí un objeto estático (un altar de piedra) y me lo llevé conmigo. En realidad estaba previsto, arreglarlo fue cosa de una subcondición más en un IF. Ahí es donde te das cuenta de que lo importante es escribir la aventura, Los parsers ya están hechos, hay para elegir.

Las localidades y objetos las hice con Inferno. Así que la parte más pesada (los datas con las conexiones entre las localidades y cosas así), ya me las creó Inferno. Sólo tuve qu copiarlas y pegarlas en el código. Claro, porque al principio empecé programando en un Speccy +2 gris, pero al llegar al momento de fundir el parser tuve que pasarlo con el divIDE+ y al PC, y seguir con el Basin.

Lo no tan divertido

Yo no quería un parser que constantemente dijera "no puedes hacer eso". También me limité a 180 caracteres por localidad. Las últimas veces que programé características de la aventura, me ponía "2k free for BASIC".

El BASIC del Spectrum es leeeeeeeeeeeeeeeeeeento. Los que jueguen a la aventura en un speccy real podrán moverse con soltura por la aventura, pero examinar la espada tarda la friolera de 3-4 segundos en ser procesado. Lo podría hacer mejor con truquillos, pero quiero portarlo al CPC más tarde, así que sin triquiñuelas.

En fin, son cosas que pasan. Lo terminaré y lo presentaré al público, aunque no haya ningún concurso.