Pedido ¿importante?

He terminado los exámenes, y he decidido aprovechar para investigar algo, que tengo cosas que hacer antes de empezar las prácticas de empresa, y como todavía quedan un par de días para que me den los papeles para firmar y demás, tengo tiempo de sobra.

Hará una semana o así me llegó un correo de un tal "Lulito Presioso" (a saber quién es y por qué conoce mi e-mail) con asunto "Pedido importante".

Entre unas cosas y otras lo ignoré, no he estado yo estos días para tonterías de lusers, y menos de tiflobichos.

Pese a que con ese nombre para mostrar no puede ser nada bueno, me he arriesgado a abrirlo y... Copio y pego tal cual (modifico direcciones de e-mail por motivos obvios):

"De: Lulito Presioso
Para: Galor
Enviado el: 09/03/2016
Asunto: Pedido importante.

Hola, Galor!

A ber si usted me puede dar una manito, que tengo un problemita con mi computadora.

Como a usted, a mi me gustan los muds, y me e envarcado en el proseso de tradusir uno al español. Un amigo me dijo que nesesitaba intalar linux, y ya lo tengo intalado.

El problema es que cuando trato de compilar el MUD, resivo un error y no lo conzigo.

Yo e intentado compilar awakened wol, que se puede encontrar en su pagina ofisial http://www.awakenedworlds.net

Si usted pudiera ayudarme se lo agradesería."

Vale. El tío escribe de tal forma que a uno le entran ganas de inventar el LART a distancia y apalearlo hasta que aprenda por lo menos a poner una s en su sitio, pero quitando el destrozo gramatical, me ha quedado claro que como llevo mi propio MUD (sí, me gustan esos juegos online que se jugaban hace 20 años, son muy accesibles para ciegos y en inglés todavía sobreviven) podría ayudarle a empezar en el difícil camino de destrozar uno ya hecho y crear el suyo.

Con lo que no ha contado este luser es que para mantener un juego de este estilo hay que saber programar, y sobre todo sobre todo, escribir medio bien, si no es imposible. Pero ya que no tengo nada que hacer, voy a ver si lo compilo, ya por curiosidad. Conozco el juego, de hecho hace un par de años me vicié bastante, e intenté crearme mi propio servidor por la simple curiosidad de destriparlo, obviamente sin éxito. El código compilaba hace un par de años con gcc-4.1, e instalar eso es un poco coñazo.

Descargo la última versión estable, me tiro 20 minutos rescatando los archivos de la última versión no estabe, y me lío a reemplazar a mano, ya que el programador es un poquito cazurro y no ha hecho un .tar.gz con la no estable, de forma que si quieres usar algo de ahí tienes que ir bajando archivito por archivito. Y cuando ya lo tengo todo, pensando que el programador habrá actualizado el código para compilar con la última versión de gcc, que le ha tenido que dar tiempo en estos dos años...

root@galor-virtual-machine:~/prueba/AwakeMUD-0.8.20B/src# make
...
g++ -DDEBUG -Dlinux -Wno-deprecated -I /usr/local/include/ -ggdb -c -o handler.o handler.cpp
handler.cpp: In function ‘void equip_char(char_data*, obj_data*, int)’:
handler.cpp:1359:87: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
act("You are zapped by $p and instantly let go of it.", FALSE, ch, obj, 0, TO_CHAR);
^
handler.cpp:1360:86: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
act("$n is zapped by $p and instantly lets go of it.", FALSE, ch, obj, 0, TO_ROOM);
^
handler.cpp: In function ‘int get_number(char**)’:
handler.cpp:1449:46: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
if ((ppos = strchr((const char *)*name, '.'))) {
^
handler.cpp: In function ‘void extract_char(char_data*)’:
handler.cpp:1885:46: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
do_return(t_desc->character, "", 0, 0);
^
handler.cpp:1953:85: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
send_to_veh("The vehicle suddenly comes to a stop.\r\n", ch->in_veh, ch, FALSE);
^
handler.cpp:2036:78: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
send_to_veh("You slow to a halt.\r\n", ch->char_specials.rigging, NULL, 0);
^
handler.cpp:2044:27: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
do_return(ch, "", 0, 0);
^
In file included from structs.h:10:0,
from handler.cpp:16:
list.h: In instantiation of ‘bool List::Remove(T) [with T = obj_data*]’:
handler.cpp:1853:26: required from here
list.h:242:34: error: ‘FindItem’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation
[-fpermissive]
return RemoveItem(FindItem(item));
^
list.h:242:34: note: declarations in dependent base ‘listClass’ are not found by unqualified lookup
list.h:242:34: note: use ‘this->FindItem’ instead
list.h:242:35: error: ‘RemoveItem’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation
[-fpermissive]
return RemoveItem(FindItem(item));
^
list.h:242:35: note: declarations in dependent base ‘listClass’ are not found by unqualified lookup
list.h:242:35: note: use ‘this->RemoveItem’ instead
: recipe for target 'handler.o' failed
make: *** [handler.o] Error 1

La primera en la frente, mismo error que hace dos años. Todavía me pregunto como el mud sigue online en su servidor oficial, y como el programador puede ser tan vago como para no retocar el código. Total, que le respondo al Presioso este raro...

"Buenas tardes,

el MUD no se puede compilar con la última versión de gcc. Necesitas instalar una anterior (4.1 para ser exactos) o arreglar el código.

Un saludo."

Doy el tema por olvidado, aunque posteo en un foro dedicado a este tipo de juegos, a ver si alguien lo ha arreglado por ahí y decide compartir su sabiduría, que me apetece destripar un poco el código y hacerle un par de modificaciones, aunque no monte nada estable, que siempre se aprende algo cacharreando código. A la media hora me llega un e-mail del mismo señor, que ya no transcribo por que os puedo dejar sin ojos:

"¿usted podría arreglármelo? Le estaría agradecido."

¿Por qué, $Deity que no existes, por qué? ¿Por qué la gente se piensa que programar es pulsar dos botones? ¿Por qué a mí? Y lo más importante... ¿Desde cuando no poder compilar un software es tener un problema con el ordenador? Y me lo sigo preguntando... ¿Cómo le ha llegado mi correo a semejante bestia?

1 comentario

15
Mar

Madre mía. Maaaaaaaaadre mía. Da unas ganas de matar... A saber quien será el presioso ese raro xDDDDDDDD encima siendo para tiflobichos desagradecidos yo ni me molestaba en hacer nada de nada.