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.

No hay comentarios: