Buena pregunta.
Hace casi dos años se me ocurrió cómo hacer un programa que traduzca Visual Basic a otro lenguaje de programación. Este tipo de programas se llaman compiladores.
No es perfecto, tiene errores, pero es un gran avance poder cambiar de lenguaje para, como dice CULD, poder evolucionar el proyecto. El AO funciona con pequeños pasos, la gente que ayuda lo hace en su tiempo libre, y pasó tanta gente por el proyecto que si mirás la seccion de STAFF HISTORICO de la web del AO, la lista es eterna. Los planes sobre el futuro del proyecto tienen que tener esto en cuenta. Nadie puede esperar tener un staff tiempo completo trabajando en AO, no va a ocurrir.
Tampoco podemos esperar tener otro Maraxus en el proyecto. Con Maraxus, cuando había que hacer algo, se lo ponía en los hombros y no paraba hasta tenerlo resuelto. Maraxus ya no está más en programación.
La idea del traductor no es nueva. No solo hay una página de Wikipedia (
https://en.wikipedia.org/wiki/Software_modernization ) que explica exactamente las ventajas y desventajas de lo que hice, sino que también me tomé el trabajo de escribir una pequeña historia de Dakara, con la motivación del proyecto, y donde también cuento detalles técnicos sobre la traducción de VB6 a C++.
La podés leer acá.
La idea del traductor tampoco fue del 2014, la vengo maquinando en mi cabeza hace muchos años: ¿cómo puedo conciliar la rotación y poca disponibilidad de gente con poder evolucionar el proyecto a una tecnología moderna, que escale, y poder conseguir ayuda? Este es el punto importante: el grupo de gente del AO original ya no está más, NADIE QUIERE TOCAR NI CON UN PALO A VB6. Hace falta sangre nueva, lo venimos viendo hace años y hoy cada vez más.
Hace unos años, cuando todavía estaban varios de los grosos programadores del AO en el staff de desarrollo, nos juntamos en la casa de Marco, y les tiré la idea de hacer algo automático para migrar VB6 a una herramienta moderna.
Nadie me dió ni cinco de pelota.
Cuando Zama renunció como director del proyecto, me ofrecí a hacerme cargo del grupo de programación.
Nadie me dió ni cinco de pelota.
Hace dos años, cuando había empezado a trabajar en mi herramienta de traducción automática de VB6, todavía no había elegido C++ como lenguaje. Le escribí a los que estaban en desarrollo, ofreciendo convertir el código del servidor a Java.
Nadie me dió ni cinco de pelota.
EDIT. ¿Por qué Java? Java tiene una ventaja estratégica muy importante: mucha gente sabe usarlo, y los que no lo saben, es muy fácil de aprender a usar. Realmente. Programar en Java no es difícil, y conseguir programadores Java es un millón de veces más fácil que de VB6. Exactamente lo que AO necesita (Java en el server, en el cliente del juego podemos discutirlo un poco más).
Entonces, en vez de Java, elegí C++, porque Java no me gusta. Y nació Dakara, que es mi intento de poder terminar, de una vez, lo que quise empezar hace 13 años: poder modernizar el código del AO de una forma copada. Con orgullo hoy puedo decir que soy capaz de escribir un compilador de un lenguaje de programación.
En vez de quedarme con lo que hice para mi propio uso personal, lo publiqué en Internet para que cualquiera lo pueda usar, y no me importa que otros abran sus propios servers con mi trabajo. Lo vienen haciendo hace 13 años ya.
No se trata de una cuestión de ego, no me creo mejor que otros. Hace poco alguien me escribió por privado interesado en Dakara, pero sin experiencia en programación. Me tomé el trabajo de escribir un post (en GS Zone) explicando cómo instalar Visual Studio 2015 para poder trabajar con Dakara. Otra persona me escribió por privado también interesada, y por Skype le fui diciendo qué puede hacer para trabajar con Dakara, y le di una tarea muy simple para que se vaya familiarizando con el proyecto.
Los banco y quiero mucho a Nightw, Zama, y muchos de los que hoy están en el proyecto. Se me partió el alma cuando apareció Morgo hace dos años y se llevó puesto el proyecto (buscá mis posts en el thread de 3D Games).
Ganas de ayudar nunca me faltaron, pero no puedo obligar a que acepten mi ayuda.