Entrar | ¿No tienes cuenta?? Registrarse!
Chatting with Akananto

Charlando con el líder de los programadores

Escrito por Cipsoft (Traducido por Firoo) on viernes 06 noviembre 2009
Muchos ya conocéis a nuestro programador jefe por su personaje Akananto. Cuando es tiempo de test, es bien conocido por todos los testeadores. Es uno de los miembros de CipSoft que responden a preguntas sobre los bugs encontrados y arreglados.
A veces, los jugadores hacen preguntas sobre los programadores de CipSoft, así que los CMs hemos robado un rato del almuerzo de Akananto para charlar con él.

Lunch with Akananto


CMs: Akananto, ¿puedes contarnos un poco sobre ti ? ¿Hace cuánto tiempo que trabajas para CipSoft y cual es tu trabajo?
Akananto: Empezé a trabajar para CipSoft hace casi cinco años, lo que me hace el programador más viejo de Cipsoft. Durante el primer año y medio, he programado un editor de contenido nuevo para el equipo de contenido para ayudarles en su trabajo. Después de este proyecto me confiaron el cliente de Tibia y hasta ahora estoy siendo responsable de su desarrollo.
Como CipSoft creció más y más, la posición de líder de equipo se introdujo, y me convertí en líder del equipo de programadores. Así que, desde entonces, tengo que hacer mucho (y no muy divertido) trabajo de organización aparte de mis tareas de programación. Además, si alguien se presenta a un puesto de programador, yo soy una de las dos personas que están "en el otro lado de la mesa" en la entrevista de trabajo. Esa parte del trabajo es probablemente la más dura, pero es muy interesante también.



Bunch of programmersCMs: Así que, ya que eres el líder del equipo, ¿podrías introducirnos tu equipo?
Akananto: Claro. Tenemos 12 programadores aquí en CipSoft, además de Stephan, uno de los dioses, que también sigue haciendo un poco de programación. Además, actualmente tenemos a una persona en nuestro equipo que está redactando una tesis y dos internos más.
Seis de nosotros trabajamos exclusivamente en Tibia. Stephan está trabajando en el servidor del juego, otros dos están trabajando en Tibia Website y en las herramientas internas para la atención al cliente, por ejemplo. Otro trabaja en los sistemas y funciones de pago y uno de ellos está trabajando en el nuevo cliente de Tibia en flash. Además, yo soy el responsable del cliente del juego y del editor de contenido, y por supuesto me ocupo de las funciones de líder de equipo.
Tres de nuestros programadores trabajan en TibiaME: uno en el servidor del juego, uno en los clientes y otro en el sitio web. El editor de contenido para TibiaME es en realidad el mismo que para Tibia, ya que la tecnología de servidores de juego de ambos proyectos es muy similar y, como ya dije, yo soy responsable de ello.
Tres de nuestros programadores trabajan en nuestro nuevo proyecto de Fiction Fighters.
Finalmente, el miembro del equipo que queda es nuestro probador de software que comprueba cada cliente, servidor web y tiene una herramienta para comprobar que todo funciona según lo previsto. Además de eso, prueba todo el contenido nuevo.


CMs: Uhm ... ok, pero ¿quién programa las nuevas características entonces?¿Es el mismo que se encarga de la programación de los servidores?
Akananto: No necesariamente, depende de las características que deban aplicarse. Servidores, cliente del juego o sitio web. Normalmente es una mezcla de los tres. Tomemos el nuevo sistema de guerra, por ejemplo. Todo lo que necesitó ser cambiado en el cliente fueron los iconos. La mayoría de los cambios tuvieron que hacerse en los servidores, y toda la "función de declarar la guerra" se encuentra en la página web.

CMs: Ah, muchas gracias por explicarlo. ¿Y en qué estás trabajando actualmente?¿Puedes contarnoslo?
Akananto: Bueno, actualmente tenemos en nuestras manos el parche de Otoño, pero cuando se publique esta entrevista ya se debe de haber lanzado. El parche de otoño lleva por desgracia algo de retraso y algunas características ya deberían estar.
El programador del servidor de pagos tuvo que hacer grandes cambios para conseguir procesar pagos que no se relacionen con el premium time, con la compra de recovery keys ni otros servicios que estarán pronto disponibles.
Los programadores web están terminando su trabajo para hacer funcionar las características del parche de Otoño y las nuevas características de pago disponibles para todo el mundo a través de la página web. Además, acaban de terminar la tienda de negocios que abrirá nuevas oportunidades para los nuevos distribuidores oficiales y sus clientes.
Tanto el cliente de Tibia como el editor de contenidos no requieren muchos cambios para el parche de otoño, sin embargo, estoy trabajando en algunos cambios radicales en el editor, para nuevas funciones en el próximo año para Tibia y TibiaME - pero schhhh, no spoileeis!


CMs: Ok, no lo spoileamos, que pena...
Pasemos al siguiente tema. Muchos de nuestros jugadores también están interesados en los lenguajes de programación y a menudo preguntan qué lenguajes de programación se utilizan en Tibia. ¿Podrías revelar esto, tal vez en palabras que todo el mundo entienda?
Akananto: Ok, voy a intentarlo ... Casi todos los servicios del servidor están programados en C++ y se ejecutan en servidores basados en Linux. El buen rendimiento es un gran problema con todos nuestros servidores y con respecto a la velocidad, C++ es todavía uno de los mejores.
Para nuestros sitios Web, usamos PHP y servidores web Apache ejecutados en sistemas basados en Linux.
El cliente actual de Tibia se hace con C++ también y se ejecuta tanto en Windows como en Linux. El cliente de Flash experimental está escrito en ActionScript 3 y hecho con Flex SDK.


CMs: Has dicho cliente en Flash "experimental" -¿Qué pasa con eso?¿Estamos haciendo algún progreso?
Akananto: En primer lugar, quiero decir que nada es inamovible y que el cliente Tibia Flash es todavía un experimento interior de CipSoft. Vemos grandes oportunidades y posibilidades al ofrecer un cliente de Tibia basado en la tecnología Flash.
Cuando tuvimos la idea, empezamos varias pruebas sobre si sería posible desde el punto de vista técnico, y todas resultaron positivas. Así que fue contratado un programador que está trabajando todo el tiempo en él. Ya podemos ver algunos avances en nuestro servidor de pruebas interno. Por ejemplo, el inicio de sesión funiona, los personajes se conectan en los mundos correctos, y el propio mundo se muestra correctamente: paisajes, animales, efectos, textos e incluso algunas cosas nuevas que el Tibia actual no tiene. Además, el sistema de chat funciona muy bien.
Sin embargo, el movimiento y la interacción es aún muy limitado, hay mucho trabajo por delante. Tenemos también algunos problemas inesperados con las hotkeys y menús de contexto del juego, pero estamos evaluándolo todo y vamos a tratar de encontrar soluciones a todos los problemas. Si tenemos éxito, habrá un cliente de Flash. Si no lo tenemos, no lo habrá. Estamos muy dedicididos a hacer que el cliente de Tibia Flash tenga éxito, y en nuestra mente es un proyecto grande, pero es demasiado pronto para garantizar si realmente tendrá éxito.


CMs: Cruzaremos los dedos para que todo salga bien. Volvamos al Tibia actual. La planificación de un parche o una actualización - ¿Cómo funciona todo esto, qué pasa en tu equipo de programadores durante una actualización?
Akananto: Déjame explicar esto con el parche actual. Después de la introducción de la black skull, el nuevo sistema de guerras entre guilds es la segunda parte de los resultados de una serie de discusiones internas en relación al PvP en Tibia. Al final de estas conversaciones, los directores del producto de Tibia, Guido y Craban, nos dieron una lista de cambios y características. Normalmente los programadores tienen algunas preguntas acerca de estas características, así que hubo algunas reuniones entre los directores de producto y los programadores, hasta que se aclararonn todos los detalles. Después de esto, los programadores empiezan a programar y cargar las nuevas características y cambios en nuestros servidores de prueba internos para que podamos probar las cosas tan pronto como sea posible. Después de la llamada "feature freeze" fecha, no pueden crearse nuevas características. Sólo las ya existentes pueden ser modificadas. Una vez que el examinador da el "ok" sobre las nuevas funciones a los directores de producto, hay que empezar a preparar todo para la actualización de los servidores públicos.
Por supuesto un probador no puede encontrar todos los errores posibles, por lo que por lo general hacemos un test server. Tan pronto como los jugadores abarroten el test server, encuentran todos los fallos que quedan.


CMs: Entonces, ¿los programadores jugáis a Tibia para saber las nuevas funcionalidades del código?
Akananto: Algunos de nosotros lo hicimos durante bastante tiempo y montamos una guild en secreto de CipSoft, pero actualmente la actividad dentro del juego se ha reducido. Por extraño que parezca, para nosotros Tibia es nuestro trabajo y cuando llegamos a casa al final del día, agradecemos tomar cierta distancia de nuestro trabajo y dejar que nuestra mente piensa en otras cosas. Y bien, yo personalmente estoy muy activo en el test server. Es divertido ver que hacen los jugadores con las nuevas características y cómo tratan de manejar ciertas cosas o situaciones. Y, por supuesto, también es emocionante saber si todavía hay algún error.

hackingCMs: Parece que realmente disfrutas en el test server.
Tenemos un par de preguntas más para ti, si todavía tienes un poco de tiempo, son de carácter más general y se refieren a temas importantes entre los jugadores de Tibia. Por ejemplo, los hackeos. Algunos jugadores afirman que el cliente de Tibia no es seguro. ¿Qué puedes contarnos como persona responsable del cliente de Tibia?

Akananto: El cliente de Tibia es tan seguro (o inseguro) como el equipo en que está corriendo.
No hay absolutamente nada que el cliente Tibia pueda hacer cuando ya hay virus, troyanos, keyloggers o programas maliciosos en el ordenador. Es cierto que alguna información del cliente de Tibia se podría ocultar un poco más, pero eso sólo haría que los chicos malos buscaran un poco más, y definitivamente se encontraría de todos modos. El hecho es que toda la información necesaria para jugar al juego debe estar en el cliente, y alguien con malas intenciones lo encuentra por muy oculto que esté.
El mejor consejo para evitar los hackeos es jugar a Tibia solamente en un equipo en el que tienes absoluta confianza, un equipo que esté libre de programas malévolos. Mientras juegas Tibia de un equipo "limpio", la conexión de red entre el cliente y el servidor es completamente segura. Hemos puesto mucho esfuerzo en el cifrado de la conexión de red y el uso de la tecnología que está a disposición del público y ha demostrado ser segura, por lo que su contraseña y su character y su conversación con los demás está a salvo de interceptación.


CMs: Algunos jugadores dicen que si actualizas tu software antivirus con regularidad, no serás hackeado. ¿Es esto correcto?
Akananto: En realidad, no. Por supuesto, tienes que actualizar tu software antivirus, pero no te ayudará contra keyloggers de programas externos para Tibia, por ejemplo. El software antivirus protege tu ordenador contra virus bien conocidos y ampliamente extendidos. Un keylogger en un contador XP externo, por ejemplo, o un cheattool no es un virus muy conocido y ampliamente extendido, se creó sólo para otros jugadores de Tibia, con el propósito de robar la información de su cuenta. Un software antivirus no ayudaría en tal caso. Lo más probable es que ni siquiera se dé cuenta.

CMs: Gracias por aclarar esto, Akananto.Es un error común.
Otro tema. Los jugadores de Tibia culpan a veces a los programadores de los kicks, freezes y lags. ¿Qué puedes decir acerca de esta acusación?

Akananto: Hay generalmente tres tipos diferentes de "lag":
Hay lag en el cliente cuando el cliente necesita demasiado tiempo para procesar la información y la velocidad de fotogramas cae drásticamente. En Tibia esto puede suceder si entras en un lugar con varios cientos de criaturas por primera vez. El cliente tiene que cargar todos los gráficos de cada criatura en la tarjeta gráfica, y simplemente le lleva tiempo.
Hay también lag en los servidores. Esto sucede cuando el servidor del juego necesita demasiado tiempo para procesar la información. Recuerdo un incidente, cuando alguien empujó una bolsa con todos los items al interior de su Guild Hall de unos 80.000 artículos desde una limpieza automática de su depot a su Guild Hall de nuevo. El servidor se colgaba un par de segundos cada vez que la bolsa era empujada. Lo arreglamos, por lo que ya no sucede. Si alguna vez se da alguna situación similar a esta, encontraremos una manera de resolverlo también. Hay un archivo de registro creado por el servidor del juego, especialmente para el lag del servidor, donde quedan registradas todas las incidencias de este tipo, por lo que nos daremos cuenta rápidamente si hay algun tipo de retraso que pueda evitarse.
La última forma y, lamentablemente, más común de lag es el retraso de la red. Los programadores no tienen ninguna influencia sobre esto. Me explico: Esto ocurre cuando el tráfico de red entre el cliente del juego y el servidor del juego se prolonga. Todos los paquetes de red tienen que recorrer un camino largo entre tu ordenador y nuestro servidor de juego. Tienen que ir por todo el mundo, a través de varias redes y varios proveedores. Y en todas partes puede que haya retrasos. Los jugadores tienen control sobre una parte muy breve de esa conexión, exactamente desde su PC a su proveedor de servicios de Internet. Y CipSoft tiene el control sobre una parte muy breve de esa conexión, desde el servidor de juego a los proveedores de servicios de Internet de CipSoft.


CMs: Muy bien. Así que stas diciendo que sólo tenéis influencia en algunas situaciones de lag, y que, desafortunadamente, los programadores no pueden hacer nada contra el lag más común.
Bueno, no tenemos más preguntas, por lo que te dejaremos seguir. Gracias por darnos tanto tiempo, ¡y por sacrificar tu hora del almuerzo!

Akananto: No hay problema, ¡es un placer!

Esperamos que hayáis disfrutado de esta pequeña entrevista con Akananto tanto como lo hemos hecho nosotros, y que te proporcione respuestas a algunas preguntas que te hacías.

¡Diviértete en Tibia y disfruta de las características que nuestros programadores han creado para ti!
Tus Communiy Managers.