recox
Argentum Online Libre
Argentum Online Libre cumplio su primer año de vida y por eso les traigo un resumen de lo que se logro entre todas las personas que participan en el proyecto.
Para los que no conocen sobre el proyecto aqui un pequeño resumen, AO Libre es un proyecto colaborativo utilizando el open-source como bandera. Todos estan invitados a participar haciendo modificaciones a nivel codigo, graficos, sonidos, agregar items, hechizos, mapear o ser parte de la organizacion del juego dentro del server.
La idea se empieza a crear al ver tantos recursos buenos del juego sin uso, desde graficos, sonidos a codigos implementando sistemas para el juego. Por lo que se crean los repositorios publicos y se ponen servers online para que todos los cambios recibidos tengan un uso real y que todos tengan acceso a los avances o arreglos hechos por la comunidad
Esta es la web del proyecto: http://www.argentumonline.org
Empecemos con el resumen:
AO-Clasico (VB6):
Cliente/Server:
Se hicieron mejoras a nivel codigo de sistemas, arreglos de bugs, se traducio en al menos un 70% el juego al ingles, entre muchas otras dejo aqui el changelog
Changelogs completos y actualizados:
github.com
github.com
Historial de desarrollo de CVS A GIT
Se creo toda la organizacion de Github y se exporto todo el historial del CVS (sourceforge) a GIT para no perder el historial de desarrollo de los ultimos 13 años al menos. Se linkearon algunos viejos desarrolladores que pude encontrar como Pato Torres, Maraxus, AlejoLp entre otros.
Cree un tutorial para que puedan ver como fue el proceso de conversion del mismo:
medium.com
Launcher:
Se creo un Launcher el cual actualiza todas las aplicaciones del ecosistema AO desde github releases para que todos los cambios que recibamos en codigo la gente los pueda tener de manera simple. (Cliente, Server, Worldeditor, ClienteOffline para jugar con Bots, AO-Setup)
API:
Se creo una API hecha en Node.js para realizar operaciones como envio de emails cuando uno se crea una cuenta o se logea al juego, envio de emails, mostrar rankings en la web hacer backups de pjs a base de datos mysql, si bien estas operaciones se pueden hacer tranquiamente en VB6 en javascript es mucho mas facil.
Con el mismo se pueden crear un servidor y ponerlo online con tan solo 2 clicks como muestra el siguiente video:
Finisterra:
Finisterra (aka AO-Java) es el proyecto que inicio uno de los chicos aqui en el foro (@guidON.- ) y el mismo apunta a hacer un remake del AO con conceptos y tecnologias que son mas modernas. El mismo forma parte de la organizacion de github de ao-libre y estan todos invitados a colaborar en cualquier aspecto que esten interesados, desde musica hasta programacion los limites los ponen ustedes. Si bien el proyecto aun esta en una fase alpha hay un avance monumental.
Les dejo un resumen de lo logrado este tiempo:
Link del repo
github.com
------------------------
Y si tienen dudas o quieren colaborar usen el discord asi se ponen en contacto o mismo hagan threads aqui en el mismo foro de GS-ZONE que lugar mas completo con gente que esta involucrada activamente en la escena del AO no existe.
Desde ya muchas gracias a todos por participar del proyecto y aportar su grano de arena.
Para los que no conocen sobre el proyecto aqui un pequeño resumen, AO Libre es un proyecto colaborativo utilizando el open-source como bandera. Todos estan invitados a participar haciendo modificaciones a nivel codigo, graficos, sonidos, agregar items, hechizos, mapear o ser parte de la organizacion del juego dentro del server.
La idea se empieza a crear al ver tantos recursos buenos del juego sin uso, desde graficos, sonidos a codigos implementando sistemas para el juego. Por lo que se crean los repositorios publicos y se ponen servers online para que todos los cambios recibidos tengan un uso real y que todos tengan acceso a los avances o arreglos hechos por la comunidad
Esta es la web del proyecto: http://www.argentumonline.org
Empecemos con el resumen:
AO-Clasico (VB6):


Cliente/Server:
Se hicieron mejoras a nivel codigo de sistemas, arreglos de bugs, se traducio en al menos un 70% el juego al ingles, entre muchas otras dejo aqui el changelog
- 0.13.3 (https://www.gs-zone.org/temas/cliente-y-servidor-13-3-dx8-v1.95611/)
* 26/07/2016 : Reemplazo de librería dx7 por dx8. (Shak)
* 26/07/2016 : Base para varios sistemas [Lanzamiento de proyectiles, auras, party draw, entre otros] (Shak)
* 26/07/2016 : Optimización» Textos del juego (A través de texturas) (Shak)
* 26/07/2016 : Lee gráficos comprimidos. (Shak)
* 26/07/2016 : Fix» Varios runtime's (Shak)
* 26/07/2016 : Agregado de mejoras en funciones y subs [extraído de HAO][Miqueas seguro fue este, negro fiero] (Shak)
* 26/07/2016 : Fix» Bugs propios de la versión (Shak)
* 27/07/2016 : Optimización» Quitado de código inutilizable [SeguridadAlkon] (Shak)
* 27/07/2016 : Optimización» Limpieza del mundo (Shak)
* 27/07/2016 : Arreglo» Npcs respetan su intervalo de golpe. (Shak)
* 27/07/2016 : Optimizacion» Sonidos de mapas desde el cliente. (Shak)
* 28/07/2016 : Varios timers fueron removidos. (Shak)
* 28/07/2016 : Optimización» MainLoop (Shak)
* 29/07/2016 : Se borró todo el código relacionado con "CENTINELAS" (Shak)
* 29/07/2016 : Array con los personajes encarcelados, para restarles los minutos de penas. (Shak)
* 03/08/2016 : Arreglo de pictures en el "frmcrearpersonaje" (No se dibujaban) (Shak)
* 03/08/2016 : Arreglo de pictures en el "frmmain" (No se dibujaban) (Shak)
* 03/08/2016 : Arreglo bug de skills. (Shak)
* 03/08/2016 : Arreglo en el dibujado de objetos "Herreria" y "Carpinteria" (Shak)
* 23/12/2016 : Las penas se restan en el GameTimer (Shak)
* 23/12/2016 : Intervalo de npc arreglado. (No pegaban algunos npcs) (Shak)
* 23/12/2016 : Fix a errores que me fui comiendo
(Shak)
* 23/12/2016 : Fix al chequeo de los limites del área (InGameArea) (Shak)
* 28/12/2016 : Strings de hechizos manejados desde el cliente (Shak)
- 0.13.6
* 11/08/2018 : Arreglado error de tiempo de la carcel y auto-transportacion hacia fuera de la misma (Recox)
* 12/08/2018 : Arreglado alpha blending, ahora los colores se ven mejor (Cucsifae)
* 13/08/2018 : Implementado auto-update en el repositorio del cliente y tambien se creo el repositorio del auto-update con su respectivo codigo. (Recox)
* 23/08/2018 : Bug solucionado: Problema que no deja tirar hechizos entre usuarios (Cucsifae)
* 25/08/2018 : Se activo Alphablending (Cucsifae)
* 29/08/2018 : Las superficies transparentes ahora se muestran en el color correcto (Cucsifae)
* 30/08/2018 : Bug solucionado: el multilinea no funcionaba cuando se veia un cartel (Cucsifae)
* 30/08/2018 : Bug solucionado: el techo de la carcel no se transparentaba al estar debajo (Cucsifae)
* 01/09/2018 : Bug solucionado: La lista de hechizos permanecia al cambiar de personaje (Cucsifae)
* 01/09/2018 : Se agrego animacion del arma al atacar (Cucsifae)
* 02/09/2018 : Se agrego Animacion de ataque: paquete para enviar la anim a otros users (Cucsifae)
* 06/09/2018 : Bug solucionado: Layer 2 no se renderizaba de la manera esperada (Cucsifae-Eqquss)
* 02/09/2018 : Se agrego solucion a problemas de encoding con .gitattributes, ahora los archivos siempre se guardan en CRLF (Recox)
* 10/09/2018 : Se arreglo sonido 3D y sonido al caminar (Cucsifae, Recox)
* 11/09/2018 : Se normalizo el nombre de las variables debido a que el IDE las cambia automaticamente y los PR's no se pueden revisar facil (Recox) (hay que seguir trabajando en esta)
* 12/09/2018 : Bug solucionado: El sonido de la lluvia no se escuchaba (Cucsifae)
* 12/09/2018 : Las particulas de lluvia son mas chicas y se renderizan mas particulas (Cucsifae)
* 17/09/2018 : Se cambio el comando /BORRARPENA a /MODIFICARPENA para reflejar la funcion real del comando (Cucsifae)
* 18/09/2018 : Se creo una lista de servidores que se descarga automaticamente al iniciar el cliente (Cucsifae)
* 19/09/2018 : Lo botones de los macros se colocaron en la posicion correcta (Cucsifae)
* 23/09/2018 : Bug solucionado: La lista de servidores no se cargaba al volver a la ventana de coneccion (Cucsifae)
* 24/09/2018 : Los Fx de las magias ahora pueden mostrarse en coordenadas del mapa (Cucsifae)
* 24/09/2018 : Bug solucionado: al matar a un Npc con magia no se mostraba el Fx de la misma (Cucsifae)
* 16/10/2018 : Implemented version checking with github releases, if the version differs it will open the app ao-autoupdate to do the update. (Recox)
* 27/11/2018 : Implemented Reddit's API to obtain all the posts and show them in the frmConnect (Recox)
* 28/11/2018 : #96 Fixed broken emoticons and fonts changing fonts.png and fonts.dat (Eqquss-Recox)
* 28/11/2018 : #96 Automation Error- Fixed Direct3D8 initial flag (Unused depth buffer, and discard mode prevent double buffering of the frame). - Fixed Direct3D8 nested BeginScene/EndScene, decoupled framebuffer's clear and present operation. - Removed unused specular vertex attribute. (Wolftein)
* 29/11/2018 : #105 Fixed show repeated news after reload the frmConnect (Recox)
* 03/12/2018 : Don't write file sinfo.ini with empty data if there is not https response. (Recox)
* 04/12/2018 : Check if nombre, password and confirm password are empty before submit in frmCrearPersonaje. (jopiortiz)
* 06/12/2018 : Update Changelog file with some old/legacy missing items made in 2016 by Shak (Recox)
* 06/12/2018 : #119 Keep selected server on list when an expected error appears like server offline, Clean code deleting unused functions. (CHOTS)
* 09/12/2018 : Optimize some string handling around the code to be more performant. more info:
http://www.aivosto.com/articles/stringopt.html (jopiortiz)
* 09/12/2018 : Nick and Clan text centered, Deleted DirectX 7 unused Functions (Juanmz)
* 11/12/2018 : Implemented IP API to obtain geolocation of the server (Recox)
* 11/12/2018 : Temporally fixed memory corruption in D3D. See comment to understand the problem https://github.com/ao-libre/ao-cliente/pull/132 (Wolftein)
* 18/12/2018 : Added modal to ask if close the game or just close session when the Close button is pressed (jopiortiz)
* 18/12/2018 : Optimization of map loading in memory. (jopiortiz)
* 21/12/2018 : Deleted weird character in the welcome message. (Recox)
* 21/12/2018 : Obtain latency with server doing Ping and show it in server's list. (Needs to be improved due this method don't work with ips that have Ping blocked) (Recox)
* 21/12/2018 : Integration of Accounts (10 charfiles per each) working with MySql Database or Accounts file system with charfiles. (CHOTS)
* 21/12/2018 : Obtain colours of characteres from the file colores.dat instead of the ones harcoded in frmPanelAccount (Recox)
- 0.13.7
* 01/02/2019 : #74 Fixed runtime error when someone tries to move the window in fullscreen mode (Juanmz)
* 01/02/2019 : Deleted unused validations in frmCrearPersonaje and General.bas (Recox)
* 11/02/2019 : Re-implemented centinela (jopiortiz)
* 12/02/2019 : Added new graphics [PRD2, Agua Azul, Dungeon 1, Dungeon Verde, Dungeon Azul, Dungeon Azul Oscura] (Bassinger)
* 14/02/2019 : Implemented multi-language module and added languages spanish.json and english.json (Recox - jopiortiz)
* 14/02/2019 : Re-implemented intro music when the game is loading (Recox)
* 19/02/2019 : Optimización: Eliminadas declaraciones de variables sin usar. (jopiortiz)
* 19/02/2019 : Elegir si querés buscar servidores del repositorio de GitHub o no. (jopiortiz)
* 19/02/2019 : Eliminados links muertos frmOpciones (jopiortiz)
* 25/02/2019 : Implementación: Sistema de Duelo entre Clanes (CvC) (jopiortiz)
* 26/02/2019 : Implementación de colores en los textos mediante JSON (jopiortiz)
* 26/02/2019 : Borradas funciones inutilizadas (jopiortiz)
* 07/03/2019 : Implementación: Mini-Mapa en Render con lectura de Imágenes. (jopiortiz)
* 07/03/2019 : Implementación: Drag and Drop en hechizos (jopiortiz)
* 07/03/2019 : Implementación: Efecto de desvanecimiento en techos. (jopiortiz)
* 07/03/2019 : Implementación: Evento - Juegos del Hambre. (jopiortiz)
* 11/03/2019 : Solución al bug de clones. (jopiortiz-Yhunja)
* 11/03/2019 : Eliminada la carga de MD5. (jopiortiz)
- 0.13.8
* 12/03/2019 : Implementación: Sistema de Quests via NPC's. (jopiortiz)
* 12/03/2019 : Optimizaciones varias, limpieza de codigo (jopiortiz)
* 14/03/2019 : Implementación: Amuleto del Silencio (Recox-jopiortiz)
* 15/03/2019 : Reemplazados caracteres especiales por normales (à á é í ó ú ñ Ñ) para evitar errores en encodeo y diferencias de codigo no deseadas en pull requests. (Recox)
* 20/03/2019 : Arreglado desde el codigo la obtencion de una propiedad inexistente al json de lenguajes (Recox)
* 22/03/2019 : Fix: Agregué una validacion (¿sos gm?) antes de abrir el frmBuscar. (jopiortiz)
* 27/03/2019 : Cambie el link del Manual y de las Reglas (Recox)
* 01/04/2019 : Se implemento la posibilidad de que cada servidor pueda elegir su propio mundo, el mismo se selecciona desde la propiedad Mundo en el archivo sinfo.dat (Recox)
- 0.13.8.1
* 04/04/2019 : Se usa el numero de versionTagRelease desde el archivo INIT\Config.ini para mostrar la version de juego en el render (Recox)
* 04/04/2019 : Se creo un boton para poder refrescar la lista de servidores (Recox)
* 04/04/2019 : Se simplifico el formulario de conectar borrando codigo innecesario (Recox)
- 0.13.8.2
* 08/04/2019 : Ahora la aplicacion no crashea al tratar de abrirla sin internet. (Recox)
* 08/04/2019 : Se agregaron todas las imagenes de minimapa faltantes (Recox)
* 08/04/2019 : Se modifico un poco el mapa 273 del battleserver y el 198 del deathmatch (Recox)
* 09/04/2019 : Ahora los sacerdotes de abajo y arriba curan en mapa deathmatch (198) (Recox)
- 0.13.8.3
* 11/04/2019: Se convirtio el mapa Escondrijo de las ruinas de earost en el mundo deathmatch con todos los npcs necesarios para un agite rapido. (Recox)
* 14/04/2019: Implementación - daño en render. (jopiortiz)
- 0.13.8.4
* 15/04/2019: Cuando un user ATACA a un NPC y viceversa.
Cuando un user CURA a un NPC o User y viceversa.
Cuando un elemental ataca a un NPC o user y viceversa.
Cuando un user FALLA un ataque a otro user o npc y viceversa.
Cuando un user obtiene un objeto al trabajar. Aparece un "+1" arriba de tu cabeza.
El mana recuperado al meditar. Aparece un "+valor recuperado" arriba de tu cabeza. (jopiortiz)
* 17/04/2019: Added Alkon map as default, needs to be improved (Recox)
* 17/04/2019: Se modifico la fuente para que se vean las coordenadas completas, se agregaron colores en el json de coordeandas para que la aplicacion no arrojase error (Recox)
- 0.13.8.5
* 05/05/2019: Arreglados algunas faltas de ortografia en el archivo de idiomas spanish.json (neoranger)
* 05/05/2019: Eliminadas librerias (.dll) sin usar. (jopiortiz)
* 05/05/2019: Ya no se actualiza la pantalla cuando elegis jugar en modo ventana, Se resetea la resolucion al cerrar desde el Sub CloseClient(). (jopiortiz)
* 05/05/2019: Encoded JSON lenguaje file to ANSI again (Recox)
* 10/05/2019: Se cambio la url del manual dentro de la ventana opciones por la guia actual: http://wiki.argentumonline.org/ (Recox)
* 13/05/2019: Mejoras en el frmBuscar y la invocación de NPC's. (jopiortiz)
- 0.13.9
* 21/05/2019: Ahora se actualiza el puntito rojo que indica la posición del usuario en el minimapa. (jopiortiz)
* 21/05/2019: Ahora se muestran los nombres al navegar. (jopiortiz)
* 21/05/2019: Las letras de los diálogos suben desde la cabeza. (jopiortiz)
* 21/05/2019: Extendido el tiempo en el que se renderiza el daño. (jopiortiz)
* 21/05/2019: Se respetan las mayúsculas/minúsculas al crear un personaje. (jopiortiz)
* 23/05/2019: Se eliminaron los archivos frmPasswd y frmRecuperar ya que no se usan. (Recox)
* 23/05/2019: Mejora y Arreglos en la conexion con el servidor. (jopiortiz)
* 23/05/2019: Implementado sistema cambio de passwords. (jopiortiz/Recox)
- v0.13.9.1
* 09/07/2019: Se reparo la fuente utilizada en el juego, se elimino el archivo INIT/font.dat ya que no se usa, se cambio la configuracion del archivo EXTRAS/font.dat en el archivo .gitattributes para evitar que el mismo se rompa. (Recox)
- v0.13.9.2
* 15/07/2019: Se arreglaron las estrellas en el frmCrearPersonaje para el paladin y el ladron (Recox)
* 15/07/2019: Se añadieron las clasicas imagenes de las profesiones al crear un personaje en el frmCrearPersonaje (Recox)
- v0.13.10
* 23/05/2019: Uso de la API de Windows para conectarse al servidor. Créditos a Dr. GoDKeR. (jopiortiz)
* 20/07/2019: Texto del daño deja de depender de los FPS y se suavizó la animación (Wyr0X)
* 24/07/2019: Fix nombres descentrados + fix emojis en nombres (Wyr0X)
* 07/08/2019: Ahora se puede elegir entre cargar los graficos comprimidos [Graphics.AO] o descomprimidos [*.bmp/*.png] mediante Properties -> Compiler Flags-> Compression = 0/1 (jopiortiz)
* 08/08/2019: Nuevo mini-mapa mas simple. (jopiortiz)
* 08/08/2019: Impletado sistema de skins. (RecoX)
* 09/08/2019: Carga y guardado de las configuraciones del cliente mediante clsIniManger. (jopiortiz)
* 09/08/2019: Eliminados Inicio.con, AO.dat y Ver.bin (jopiortiz)
* 09/08/2019: Recordar contraseña con encriptacion. (jopiortiz)
* 09/08/2019: Nueva funcion que devuelve los paths del cliente [Path(PathType)]. DEJEN DE USAR App.path & "\BLA-BLA-BLA\"
* 11/08/2019: Agregada opcion de elegir idioma del juego en la ventana opciones (Recox)
* 11/08/2019: Se cambio el checkbox de recordar password por un control de usuario de gsz-ao y se le coloco traduccion a su respectivo label. (Recox)
- v0.13.11
* 13/08/2019: Retos 1vs1,2vs2,3vs3,nVSn (MarinoLautaro)
- /RETOS
- /ACEPTAR NICK
* 15/08/2019: Se agrego el skin de cucsifae, se agregaron ventanas de cargando viejas y se agrego imagen de presentacion (Recox)
* 16/08/2019: Se arreglo skin de AO-Libre creado por Aizanoth, se puso como default el mismo (Recox)
* 16/08/2019: Se eliminaron las referencias a los Controles ActiveX inutilizados. (jopiortiz)
* 16/08/2019: Se eliminó todo el codigo referente a Sockets y Winsocks, ahora se usa la API ws2_32.dll por defecto. (jopiortiz)
* 16/08/2019: Se reemplazó el Control ActiveX MSINET.OCX por la API nativa WinInet. (jopiortiz)
* 20/08/2019: La consola ahora es transparente (jopiortiz)
* 20/08/2019: Es posible elegir la posicion del texto en la consola (jopiortiz)
* 20/08/2019: Se modifico la imagen de VentanaPrincipal del skin ao-libre para usar la consola transparente (Recox)
* 26/07/2016 : Reemplazo de librería dx7 por dx8. (Shak)
* 26/07/2016 : Base para varios sistemas [Lanzamiento de proyectiles, auras, party draw, entre otros] (Shak)
* 26/07/2016 : Optimización» Textos del juego (A través de texturas) (Shak)
* 26/07/2016 : Lee gráficos comprimidos. (Shak)
* 26/07/2016 : Fix» Varios runtime's (Shak)
* 26/07/2016 : Agregado de mejoras en funciones y subs [extraído de HAO][Miqueas seguro fue este, negro fiero] (Shak)
* 26/07/2016 : Fix» Bugs propios de la versión (Shak)
* 27/07/2016 : Optimización» Quitado de código inutilizable [SeguridadAlkon] (Shak)
* 27/07/2016 : Optimización» Limpieza del mundo (Shak)
* 27/07/2016 : Arreglo» Npcs respetan su intervalo de golpe. (Shak)
* 27/07/2016 : Optimizacion» Sonidos de mapas desde el cliente. (Shak)
* 28/07/2016 : Varios timers fueron removidos. (Shak)
* 28/07/2016 : Optimización» MainLoop (Shak)
* 29/07/2016 : Se borró todo el código relacionado con "CENTINELAS" (Shak)
* 29/07/2016 : Array con los personajes encarcelados, para restarles los minutos de penas. (Shak)
* 03/08/2016 : Arreglo de pictures en el "frmcrearpersonaje" (No se dibujaban) (Shak)
* 03/08/2016 : Arreglo de pictures en el "frmmain" (No se dibujaban) (Shak)
* 03/08/2016 : Arreglo bug de skills. (Shak)
* 03/08/2016 : Arreglo en el dibujado de objetos "Herreria" y "Carpinteria" (Shak)
* 23/12/2016 : Las penas se restan en el GameTimer (Shak)
* 23/12/2016 : Intervalo de npc arreglado. (No pegaban algunos npcs) (Shak)
* 23/12/2016 : Fix a errores que me fui comiendo
* 23/12/2016 : Fix al chequeo de los limites del área (InGameArea) (Shak)
* 28/12/2016 : Strings de hechizos manejados desde el cliente (Shak)
- 0.13.6
* 11/08/2018 : Arreglado error de tiempo de la carcel y auto-transportacion hacia fuera de la misma (Recox)
* 12/08/2018 : Arreglado alpha blending, ahora los colores se ven mejor (Cucsifae)
* 13/08/2018 : Implementado auto-update en el repositorio del cliente y tambien se creo el repositorio del auto-update con su respectivo codigo. (Recox)
* 23/08/2018 : Bug solucionado: Problema que no deja tirar hechizos entre usuarios (Cucsifae)
* 25/08/2018 : Se activo Alphablending (Cucsifae)
* 29/08/2018 : Las superficies transparentes ahora se muestran en el color correcto (Cucsifae)
* 30/08/2018 : Bug solucionado: el multilinea no funcionaba cuando se veia un cartel (Cucsifae)
* 30/08/2018 : Bug solucionado: el techo de la carcel no se transparentaba al estar debajo (Cucsifae)
* 01/09/2018 : Bug solucionado: La lista de hechizos permanecia al cambiar de personaje (Cucsifae)
* 01/09/2018 : Se agrego animacion del arma al atacar (Cucsifae)
* 02/09/2018 : Se agrego Animacion de ataque: paquete para enviar la anim a otros users (Cucsifae)
* 06/09/2018 : Bug solucionado: Layer 2 no se renderizaba de la manera esperada (Cucsifae-Eqquss)
* 02/09/2018 : Se agrego solucion a problemas de encoding con .gitattributes, ahora los archivos siempre se guardan en CRLF (Recox)
* 10/09/2018 : Se arreglo sonido 3D y sonido al caminar (Cucsifae, Recox)
* 11/09/2018 : Se normalizo el nombre de las variables debido a que el IDE las cambia automaticamente y los PR's no se pueden revisar facil (Recox) (hay que seguir trabajando en esta)
* 12/09/2018 : Bug solucionado: El sonido de la lluvia no se escuchaba (Cucsifae)
* 12/09/2018 : Las particulas de lluvia son mas chicas y se renderizan mas particulas (Cucsifae)
* 17/09/2018 : Se cambio el comando /BORRARPENA a /MODIFICARPENA para reflejar la funcion real del comando (Cucsifae)
* 18/09/2018 : Se creo una lista de servidores que se descarga automaticamente al iniciar el cliente (Cucsifae)
* 19/09/2018 : Lo botones de los macros se colocaron en la posicion correcta (Cucsifae)
* 23/09/2018 : Bug solucionado: La lista de servidores no se cargaba al volver a la ventana de coneccion (Cucsifae)
* 24/09/2018 : Los Fx de las magias ahora pueden mostrarse en coordenadas del mapa (Cucsifae)
* 24/09/2018 : Bug solucionado: al matar a un Npc con magia no se mostraba el Fx de la misma (Cucsifae)
* 16/10/2018 : Implemented version checking with github releases, if the version differs it will open the app ao-autoupdate to do the update. (Recox)
* 27/11/2018 : Implemented Reddit's API to obtain all the posts and show them in the frmConnect (Recox)
* 28/11/2018 : #96 Fixed broken emoticons and fonts changing fonts.png and fonts.dat (Eqquss-Recox)
* 28/11/2018 : #96 Automation Error- Fixed Direct3D8 initial flag (Unused depth buffer, and discard mode prevent double buffering of the frame). - Fixed Direct3D8 nested BeginScene/EndScene, decoupled framebuffer's clear and present operation. - Removed unused specular vertex attribute. (Wolftein)
* 29/11/2018 : #105 Fixed show repeated news after reload the frmConnect (Recox)
* 03/12/2018 : Don't write file sinfo.ini with empty data if there is not https response. (Recox)
* 04/12/2018 : Check if nombre, password and confirm password are empty before submit in frmCrearPersonaje. (jopiortiz)
* 06/12/2018 : Update Changelog file with some old/legacy missing items made in 2016 by Shak (Recox)
* 06/12/2018 : #119 Keep selected server on list when an expected error appears like server offline, Clean code deleting unused functions. (CHOTS)
* 09/12/2018 : Optimize some string handling around the code to be more performant. more info:
http://www.aivosto.com/articles/stringopt.html (jopiortiz)
* 09/12/2018 : Nick and Clan text centered, Deleted DirectX 7 unused Functions (Juanmz)
* 11/12/2018 : Implemented IP API to obtain geolocation of the server (Recox)
* 11/12/2018 : Temporally fixed memory corruption in D3D. See comment to understand the problem https://github.com/ao-libre/ao-cliente/pull/132 (Wolftein)
* 18/12/2018 : Added modal to ask if close the game or just close session when the Close button is pressed (jopiortiz)
* 18/12/2018 : Optimization of map loading in memory. (jopiortiz)
* 21/12/2018 : Deleted weird character in the welcome message. (Recox)
* 21/12/2018 : Obtain latency with server doing Ping and show it in server's list. (Needs to be improved due this method don't work with ips that have Ping blocked) (Recox)
* 21/12/2018 : Integration of Accounts (10 charfiles per each) working with MySql Database or Accounts file system with charfiles. (CHOTS)
* 21/12/2018 : Obtain colours of characteres from the file colores.dat instead of the ones harcoded in frmPanelAccount (Recox)
- 0.13.7
* 01/02/2019 : #74 Fixed runtime error when someone tries to move the window in fullscreen mode (Juanmz)
* 01/02/2019 : Deleted unused validations in frmCrearPersonaje and General.bas (Recox)
* 11/02/2019 : Re-implemented centinela (jopiortiz)
* 12/02/2019 : Added new graphics [PRD2, Agua Azul, Dungeon 1, Dungeon Verde, Dungeon Azul, Dungeon Azul Oscura] (Bassinger)
* 14/02/2019 : Implemented multi-language module and added languages spanish.json and english.json (Recox - jopiortiz)
* 14/02/2019 : Re-implemented intro music when the game is loading (Recox)
* 19/02/2019 : Optimización: Eliminadas declaraciones de variables sin usar. (jopiortiz)
* 19/02/2019 : Elegir si querés buscar servidores del repositorio de GitHub o no. (jopiortiz)
* 19/02/2019 : Eliminados links muertos frmOpciones (jopiortiz)
* 25/02/2019 : Implementación: Sistema de Duelo entre Clanes (CvC) (jopiortiz)
* 26/02/2019 : Implementación de colores en los textos mediante JSON (jopiortiz)
* 26/02/2019 : Borradas funciones inutilizadas (jopiortiz)
* 07/03/2019 : Implementación: Mini-Mapa en Render con lectura de Imágenes. (jopiortiz)
* 07/03/2019 : Implementación: Drag and Drop en hechizos (jopiortiz)
* 07/03/2019 : Implementación: Efecto de desvanecimiento en techos. (jopiortiz)
* 07/03/2019 : Implementación: Evento - Juegos del Hambre. (jopiortiz)
* 11/03/2019 : Solución al bug de clones. (jopiortiz-Yhunja)
* 11/03/2019 : Eliminada la carga de MD5. (jopiortiz)
- 0.13.8
* 12/03/2019 : Implementación: Sistema de Quests via NPC's. (jopiortiz)
* 12/03/2019 : Optimizaciones varias, limpieza de codigo (jopiortiz)
* 14/03/2019 : Implementación: Amuleto del Silencio (Recox-jopiortiz)
* 15/03/2019 : Reemplazados caracteres especiales por normales (à á é í ó ú ñ Ñ) para evitar errores en encodeo y diferencias de codigo no deseadas en pull requests. (Recox)
* 20/03/2019 : Arreglado desde el codigo la obtencion de una propiedad inexistente al json de lenguajes (Recox)
* 22/03/2019 : Fix: Agregué una validacion (¿sos gm?) antes de abrir el frmBuscar. (jopiortiz)
* 27/03/2019 : Cambie el link del Manual y de las Reglas (Recox)
* 01/04/2019 : Se implemento la posibilidad de que cada servidor pueda elegir su propio mundo, el mismo se selecciona desde la propiedad Mundo en el archivo sinfo.dat (Recox)
- 0.13.8.1
* 04/04/2019 : Se usa el numero de versionTagRelease desde el archivo INIT\Config.ini para mostrar la version de juego en el render (Recox)
* 04/04/2019 : Se creo un boton para poder refrescar la lista de servidores (Recox)
* 04/04/2019 : Se simplifico el formulario de conectar borrando codigo innecesario (Recox)
- 0.13.8.2
* 08/04/2019 : Ahora la aplicacion no crashea al tratar de abrirla sin internet. (Recox)
* 08/04/2019 : Se agregaron todas las imagenes de minimapa faltantes (Recox)
* 08/04/2019 : Se modifico un poco el mapa 273 del battleserver y el 198 del deathmatch (Recox)
* 09/04/2019 : Ahora los sacerdotes de abajo y arriba curan en mapa deathmatch (198) (Recox)
- 0.13.8.3
* 11/04/2019: Se convirtio el mapa Escondrijo de las ruinas de earost en el mundo deathmatch con todos los npcs necesarios para un agite rapido. (Recox)
* 14/04/2019: Implementación - daño en render. (jopiortiz)
- 0.13.8.4
* 15/04/2019: Cuando un user ATACA a un NPC y viceversa.
Cuando un user CURA a un NPC o User y viceversa.
Cuando un elemental ataca a un NPC o user y viceversa.
Cuando un user FALLA un ataque a otro user o npc y viceversa.
Cuando un user obtiene un objeto al trabajar. Aparece un "+1" arriba de tu cabeza.
El mana recuperado al meditar. Aparece un "+valor recuperado" arriba de tu cabeza. (jopiortiz)
* 17/04/2019: Added Alkon map as default, needs to be improved (Recox)
* 17/04/2019: Se modifico la fuente para que se vean las coordenadas completas, se agregaron colores en el json de coordeandas para que la aplicacion no arrojase error (Recox)
- 0.13.8.5
* 05/05/2019: Arreglados algunas faltas de ortografia en el archivo de idiomas spanish.json (neoranger)
* 05/05/2019: Eliminadas librerias (.dll) sin usar. (jopiortiz)
* 05/05/2019: Ya no se actualiza la pantalla cuando elegis jugar en modo ventana, Se resetea la resolucion al cerrar desde el Sub CloseClient(). (jopiortiz)
* 05/05/2019: Encoded JSON lenguaje file to ANSI again (Recox)
* 10/05/2019: Se cambio la url del manual dentro de la ventana opciones por la guia actual: http://wiki.argentumonline.org/ (Recox)
* 13/05/2019: Mejoras en el frmBuscar y la invocación de NPC's. (jopiortiz)
- 0.13.9
* 21/05/2019: Ahora se actualiza el puntito rojo que indica la posición del usuario en el minimapa. (jopiortiz)
* 21/05/2019: Ahora se muestran los nombres al navegar. (jopiortiz)
* 21/05/2019: Las letras de los diálogos suben desde la cabeza. (jopiortiz)
* 21/05/2019: Extendido el tiempo en el que se renderiza el daño. (jopiortiz)
* 21/05/2019: Se respetan las mayúsculas/minúsculas al crear un personaje. (jopiortiz)
* 23/05/2019: Se eliminaron los archivos frmPasswd y frmRecuperar ya que no se usan. (Recox)
* 23/05/2019: Mejora y Arreglos en la conexion con el servidor. (jopiortiz)
* 23/05/2019: Implementado sistema cambio de passwords. (jopiortiz/Recox)
- v0.13.9.1
* 09/07/2019: Se reparo la fuente utilizada en el juego, se elimino el archivo INIT/font.dat ya que no se usa, se cambio la configuracion del archivo EXTRAS/font.dat en el archivo .gitattributes para evitar que el mismo se rompa. (Recox)
- v0.13.9.2
* 15/07/2019: Se arreglaron las estrellas en el frmCrearPersonaje para el paladin y el ladron (Recox)
* 15/07/2019: Se añadieron las clasicas imagenes de las profesiones al crear un personaje en el frmCrearPersonaje (Recox)
- v0.13.10
* 23/05/2019: Uso de la API de Windows para conectarse al servidor. Créditos a Dr. GoDKeR. (jopiortiz)
* 20/07/2019: Texto del daño deja de depender de los FPS y se suavizó la animación (Wyr0X)
* 24/07/2019: Fix nombres descentrados + fix emojis en nombres (Wyr0X)
* 07/08/2019: Ahora se puede elegir entre cargar los graficos comprimidos [Graphics.AO] o descomprimidos [*.bmp/*.png] mediante Properties -> Compiler Flags-> Compression = 0/1 (jopiortiz)
* 08/08/2019: Nuevo mini-mapa mas simple. (jopiortiz)
* 08/08/2019: Impletado sistema de skins. (RecoX)
* 09/08/2019: Carga y guardado de las configuraciones del cliente mediante clsIniManger. (jopiortiz)
* 09/08/2019: Eliminados Inicio.con, AO.dat y Ver.bin (jopiortiz)
* 09/08/2019: Recordar contraseña con encriptacion. (jopiortiz)
* 09/08/2019: Nueva funcion que devuelve los paths del cliente [Path(PathType)]. DEJEN DE USAR App.path & "\BLA-BLA-BLA\"
* 11/08/2019: Agregada opcion de elegir idioma del juego en la ventana opciones (Recox)
* 11/08/2019: Se cambio el checkbox de recordar password por un control de usuario de gsz-ao y se le coloco traduccion a su respectivo label. (Recox)
- v0.13.11
* 13/08/2019: Retos 1vs1,2vs2,3vs3,nVSn (MarinoLautaro)
- /RETOS
- /ACEPTAR NICK
* 15/08/2019: Se agrego el skin de cucsifae, se agregaron ventanas de cargando viejas y se agrego imagen de presentacion (Recox)
* 16/08/2019: Se arreglo skin de AO-Libre creado por Aizanoth, se puso como default el mismo (Recox)
* 16/08/2019: Se eliminaron las referencias a los Controles ActiveX inutilizados. (jopiortiz)
* 16/08/2019: Se eliminó todo el codigo referente a Sockets y Winsocks, ahora se usa la API ws2_32.dll por defecto. (jopiortiz)
* 16/08/2019: Se reemplazó el Control ActiveX MSINET.OCX por la API nativa WinInet. (jopiortiz)
* 20/08/2019: La consola ahora es transparente (jopiortiz)
* 20/08/2019: Es posible elegir la posicion del texto en la consola (jopiortiz)
* 20/08/2019: Se modifico la imagen de VentanaPrincipal del skin ao-libre para usar la consola transparente (Recox)
- 0.13.6
* 23/08/2018 : Bug solucionado: Sacerdote no cura veneno (Cucsifae)
* 25/08/2018 : Se agrego Encriptacion de passwords (Cucsifae)
* 02/09/2018 : Se agrego Animacion de ataque: paquete para enviar la anim a otros users (Cucsifae)
* 07/09/2018 : Bug solucionado: al equiparse la fragata fantasmal no se veia el body (Cucsifae)
* 11/09/2018 : Se agrego solucion a problemas de encoding con .gitattributes, ahora los archivos siempre se guardan en CRLF (Recox)
* 11/09/2018 : Se normalizo el nombre de las variables debido a que el IDE las cambia automaticamente y los PR's no se pueden revisar facil (Recox) (hay que seguir trabajando en esta)
* 14/09/2018 : Bug solucionado: los guilds no funcionaban, se agregaron los archivos faltantes (Cucsifae)
* 16/09/2018 : Bug solucionado: el nombre de usuario se asignaba despues de intentar abrir su charfile (Cucsifae)
* 23/09/2018 : Ahora el servidor envia mensajes al cliente para mostrar Fx en coordenadas del mapa (Cucsifae)
* 25/08/2018 : Se agrego Encriptacion de passwords (Cucsifae)
* 26/09/2018 : Se agregaron Multiplicadores de Exp y oro en el Init (Cucsifae)
* 16/10/2018 : Implemented version checking with github releases, if the version differs it will open the app ao-autoupdate to do the update. (Recox)
* 01/11/2018 : Added parameter in server.ini to customize the time in jail and also the time for the "Antipiquete" (block paths or entries to cities) (Cucsifae)
* 02/11/2018 : Added multiplier parameter for "Oficios" such as "Tala" "Pesca" "Minar" in the server.ini (CHOTS)
* 04/11/2018 : Changed WritedGuldChat to WriteConsoleMsg to fix print of MOTD.ini messages (Cucsifae)
* 05/11/2018 : Configurable Dice values in Server.ini with parameters Ma
ados and MinDados (CHOTS)
* 10/11/2018 : Clean BanIps.dat file to avoid false positives, Reseted all the number in the file apuesta.dat to 0 (Recox)
* 11/11/2018 : Deleted unused properties in file Server.ini, deleted unused files and binaries from the repository (Recox)
* 04/12/2018 : Change command printed in message in the console when try to create a Pretoriano NPC with /ACC (CHOTS)
- 0.13.7
* 25/02/2019 : Implementación: Sistema de Duelo entre Clanes (CvC) (jopiortiz)
* 26/02/2019 : Muevo el código del timer Auditoria al MainLoop (jopiortiz)
* 07/03/2019 : Implementación: Drag and Drop en hechizos (jopiortiz)
* 07/03/2019 : Implementación: Evento - Juegos del Hambre. (jopiortiz)
* 11/03/2019 : Eliminada la carga de MD5. (jopiortiz)
- 0.13.8
* 12/03/2019 : Delete modHexaStrings.bas Este módulo pertenecía a la carga de MD5's. (jopiortiz)
* 12/03/2019 : Implementado mensaje "Tu clase no tiene la habilidad de aprender este hechizo." al querer usar un hechizo prohibido por clase. (jopiortiz)
* 12/03/2019: Implementación: Sistema de Quests via NPC's. (jopiortiz)
* 14/03/2019 : Implementación: Amuleto del Silencio (Recox-jopiortiz)
* 17/03/2019 : Ahora podes matar npcs de quest con elementales y te lo suma al dueñoindex de la quest (Juanmz)
* 18/03/2019 : Reemplazados caracteres especiales por normales (à á é í ó ú ñ Ñ) para evitar potenciales errores de encodeo y diferencias de codigo no deseadas en pull requests. (Recox)
* 20/03/2019: Ahora los users no pueden paralizar npcs arriba de portales (SOLO GMS) (JuanMz)
* 20/03/2019: Se creo una opcion en server.ini para poder hacer que en el server se caigan los objetos al morir o no (Recox)
* 23/03/2019: Cambio ñ por n en balances.dat (Recox)
* 23/03/2019: Fix JDH Pequeños arreglos. Y nueva función public WarpUserCharX para evitar pisadas. (JuanMZ)
* 23/03/2019: Indentación completa del código. (jopiortiz)
* 24/03/2019: Implementacion de inventario customizado desde el server.ini - Added possibility of customize the inventory when a player is created on server.ini (Recox)
* 26/03/2019: Agregados npcs de quests en Npcs.dat. (Recox)
* 01/04/2019: Implementacion de concepto de mundos, el mismo se elige desde el sinfo.dat del cliente (Recox)
* 01/04/2019: Se implemento posicion de nacimiento, junto con mapa si decidimos usar un Mundo propio (Recox)
* 01/04/2019: Creado Mundo Deathmatch(La boda) sobre Mapa 198 (Recox)
* 01/04/2019: Agregados 3 npcs de decoracion para Mundo Deathmatch(La Boda) (Recox)
* 01/04/2019: Creado Mundo BattleServer(Partenon de los Dioses) sobre Mapa 273 (Recox)
* 01/04/2019: Agregada customizacion de cada una de las estadisticas de un personaje al nacer desde el server.ini (Recox)
* 01/04/2019: Se Arreglo un bug que cuando se supera el maximo de oro permitido el cliente te kickea del server (Recox)
* 01/04/2019: Se arreglo bug que afectaba a los items por clases prohibidas (Recox)
* 04/04/2019: Se usa el numero de versionTagRelease desde el archivo sinfo.ini para mostrar la version juego en el titulo (Recox)
* 04/04/2019: Se muestra el mundo seleccionado desde el archivo Dat\Map.ini para mostrarlo en el titulo de la aplicacion (Recox)
* 07/04/2019: Se simplifico la customizacion de atributos iniciales, ahora se respetan los modificadores de raza/clase (Recox)
* 07/04/2019: Se arreglo un caracter roto cuando el sacerdote te cura. (Recox)
* 08/04/2019: Los gms ya no son expulsados del juego por inactividad (Recox)
* 08/04/2019: Se modifico un poco el mapa 273 del battleserver y el 198 del deathmatch (Recox)
* 09/04/2019: Ahora los sacerdotes de abajo y arriba curan en mapa deathmatch (198) (Recox)
* 11/04/2019: Chequeo si existen las carpetas "Account" y "Charfile" al iniciar el servidor. (jopiortiz)
* 11/04/2019: Se convirtio el mapa Escondrijo de las ruinas de earost en el mundo deathmatch con todos los npcs necesarios para un agite rapido. (Recox)
* 13/04/2019: El comando /CI ahora mete el item en el inventario en caso de que sea agarrable, si tiene el inventario lleno se tira al piso, los objetos no agarrables van al piso directamente (jopiortiz)
* 14/04/2019: Implementación - daño en render. (jopiortiz)
* 17/04/2019: Cambio la recursividad del HandleIncomingData, y ahora pasa a ser iterado y arregla el error de 'Out of stack space' (MateoMiccino)
* 17/04/2019: Se encapsulo el comportamiento de la funcion LiberarSlot y se rehusa alrededor de la aplicacion (jopiortiz/Juanmz)
* 21/04/2019: Deleted objs that are not indexed and breaks the application: OBJ1121, OBJ1122, OBJ1116, OBJ1113, OBJ1114, OBJ1115 (Recox)
* 21/04/2019: Agregado limite para la recepción de paquetes. (jopiortiz/Juanmz)
* 21/04/2019: Inicia en al ciudad elegida al crear pj (JuanMZ)
- 0.13.8.1
* 04/04/2019: Se usa el numero de versionTagRelease desde el archivo sinfo.ini para mostrar la version juego en el titulo (Recox)
* 04/04/2019: Se muestra el mundo seleccionado desde el archivo Dat\Map.ini para mostrarlo en el titulo de la aplicacion (Recox)
- 0.13.8.2
* 07/04/2019: Se simplifico la customizacion de atributos iniciales, ahora se respetan los modificadores de raza/clase (Recox)
* 07/04/2019: Se arreglo un caracter roto cuando el sacerdote te cura. (Recox)
- 0.13.8.3
* 08/04/2019: Los gms ya no son expulsados del juego por inactividad (Recox)
* 08/04/2019: Se modifico un poco el mapa 273 del battleserver y el 198 del deathmatch (Recox)
* 09/04/2019: Ahora los sacerdotes de abajo y arriba curan en mapa deathmatch (198) (Recox)
- 0.13.8.4
* 11/04/2019: Chequeo si existen las carpetas "Account" y "Charfile" al iniciar el servidor. (jopiortiz)
* 11/04/2019: Se convirtio el mapa Escondrijo de las ruinas de earost en el mundo deathmatch con todos los npcs necesarios para un agite rapido. (Recox)
* 13/04/2019: El comando /CI ahora mete el item en el inventario en caso de que sea agarrable, si tiene el inventario lleno se tira al piso, los objetos no agarrables van al piso directamente (jopiortiz)
* 14/04/2019: Implementación - daño en render. (jopiortiz)
- 0.13.8.5
* 17/04/2019: Cambio la recursividad del HandleIncomingData, y ahora pasa a ser iterado y arregla el error de 'Out of stack space' (MateoMiccino)
* 17/04/2019: Se encapsulo el comportamiento de la funcion LiberarSlot y se rehusa alrededor de la aplicacion (jopiortiz/Juanmz)
* 21/04/2019: Deleted objs that are not indexed and breaks the application: OBJ1121, OBJ1122, OBJ1116, OBJ1113, OBJ1114, OBJ1115 (Recox)
* 21/04/2019: Agregado limite para la recepción de paquetes. (jopiortiz/Juanmz)
* 21/04/2019: Inicia en al ciudad elegida al crear pj (JuanMZ)
- 0.13.8.6
* 05/05/2019: Eliminado cGarbaje. (jopiortiz)
* 10/05/2019: Borrada esta irrelevante linea de codigo .UpTime = .UpTime (Recox)
* 10/05/2019: El centinela ahora escribe un codigo de 4 caracteres en ves de 7 (Recox)
* 10/05/2019: Al poner el codigo correcto, ahora el centinela se va a tomar unos 30 mins antes de aparecer de nuevo para que no sea tan molesto (Recox)
* 10/05/2019: Ahora cuando no ingreso el codigo dentro del tiempo especificado, el centinela solo me manda a la carcel, ya no mata al personaje ni le borra todos los items. (Recox)
* 10/05/2019: Se le elimino la defensa magica al Murcielago y al Escorpion ya que son npcs que viven en el NW Dungeon y a un mago se le complica levelear. (Recox)
* 13/05/2019: No se caen los items y el oro al morir en Zona Segura. (jopiortiz)
* 13/05/2019: Fix a bug with HandleLoginNewAccount (CHOTS/JuanMZ)
* 13/05/2019: Arreglado - No se mataba el proceso al cerrar el servidor. (jopiortiz)
* 13/05/2019: Centinela activable/desactivable desde el Server.ini (jopiortiz)
* 13/05/2019: Se implemento conexion con API, endpoints BackupCharfiles, BackupAccount, BackupLogs (Recox)
* 13/05/2019: Arregladas omisiones en los manejadores de muchos paquetes. (jopiortiz)
* 13/05/2019: Se agrego boton forzar cerrar server en el frmMain. (Recox)
* 13/05/2019: Se comento el codigo la proteccion de contador de paquetes en 40ms, ya que al hacer WorldSave desconecta el personaje debido a que llegan mas paquetes en ese momento (debe ser arreglado) . (Recox)
- 0.13.9
* 15/05/2019: Actualización de armas vendidas por los herreros. (jopiortiz)
* 15/05/2019: Actualización de Hechizos vendidos por los comerciantes magos. (jopiortiz)
* 15/05/2019: Los carpinteros venderán arcos. (jopiortiz)
* 17/05/2019: Implementado xmlHttp para hacer AJAX requests (Recox)
* 17/05/2019: Implementado Endpoint de la API para el envio de emails al registrarse (Recox)
* 17/05/2019: Implementado Endpoint de la API para el envio de emails al iniciar sesion (Recox)
* 19/05/2019: Cast to Bool to some global properties (Recox)
* 21/05/2019: Implementacion endpoint Cambio de Contraseña mediante la API. (jopiortiz)
* 21/05/2019: Uso de clsIniManager para cargar Server.ini y Ciudades.dat (jopiortiz)
* 21/05/2019: Optimizada funcion NameIndex (JuanMZ)
* 22/05/2019: Se setea el Nivel Máximo desde Server.ini (jopiortiz)
* 22/05/2019: Implementado Endpoint para cambiar password mediante la api hecha en node.js (jopiortiz/Recox)
- v0.13.9.1
* 09/06/2019: Las llamadas hechas por xmlHttp ahora son asincronicas. (Recox)
- v0.13.9.2
* 11/07/2019: Se agrego Nemahuak como ciudad default otra vez. (Recox)
* 14/07/2019: Added Initial Mana on Paladin when the user is created (Recox)
* 14/07/2019: /Online muestra lista usuarios online, ahora se suman gms a la cuenta y a la lista de nombres (Recox)
* 14/07/2019: Added happy hour experience functionality (Recox)
- v0.13.9.3
* 24/07/2019: Bugfix los npcs de agua respawnean con menos frecuencia en tierra. (Wyr0X)
* 09/08/2019: Fix, los NPC's se quedaban trabados en los bloqueos. (jopiortiz)
- v0.13.11
* 13/08/2019: Retos 1vs1,2vs2,3vs3,nVSn (MarinoLautaro)
- Para retar, /RETOS
- Para aceptar, /ACEPTAR NICK
* 14/08/2019: Se cambiaron los mapas de duelos por otros que no sean ciudades. (Recox)
* 23/08/2018 : Bug solucionado: Sacerdote no cura veneno (Cucsifae)
* 25/08/2018 : Se agrego Encriptacion de passwords (Cucsifae)
* 02/09/2018 : Se agrego Animacion de ataque: paquete para enviar la anim a otros users (Cucsifae)
* 07/09/2018 : Bug solucionado: al equiparse la fragata fantasmal no se veia el body (Cucsifae)
* 11/09/2018 : Se agrego solucion a problemas de encoding con .gitattributes, ahora los archivos siempre se guardan en CRLF (Recox)
* 11/09/2018 : Se normalizo el nombre de las variables debido a que el IDE las cambia automaticamente y los PR's no se pueden revisar facil (Recox) (hay que seguir trabajando en esta)
* 14/09/2018 : Bug solucionado: los guilds no funcionaban, se agregaron los archivos faltantes (Cucsifae)
* 16/09/2018 : Bug solucionado: el nombre de usuario se asignaba despues de intentar abrir su charfile (Cucsifae)
* 23/09/2018 : Ahora el servidor envia mensajes al cliente para mostrar Fx en coordenadas del mapa (Cucsifae)
* 25/08/2018 : Se agrego Encriptacion de passwords (Cucsifae)
* 26/09/2018 : Se agregaron Multiplicadores de Exp y oro en el Init (Cucsifae)
* 16/10/2018 : Implemented version checking with github releases, if the version differs it will open the app ao-autoupdate to do the update. (Recox)
* 01/11/2018 : Added parameter in server.ini to customize the time in jail and also the time for the "Antipiquete" (block paths or entries to cities) (Cucsifae)
* 02/11/2018 : Added multiplier parameter for "Oficios" such as "Tala" "Pesca" "Minar" in the server.ini (CHOTS)
* 04/11/2018 : Changed WritedGuldChat to WriteConsoleMsg to fix print of MOTD.ini messages (Cucsifae)
* 05/11/2018 : Configurable Dice values in Server.ini with parameters Ma

* 10/11/2018 : Clean BanIps.dat file to avoid false positives, Reseted all the number in the file apuesta.dat to 0 (Recox)
* 11/11/2018 : Deleted unused properties in file Server.ini, deleted unused files and binaries from the repository (Recox)
* 04/12/2018 : Change command printed in message in the console when try to create a Pretoriano NPC with /ACC (CHOTS)
- 0.13.7
* 25/02/2019 : Implementación: Sistema de Duelo entre Clanes (CvC) (jopiortiz)
* 26/02/2019 : Muevo el código del timer Auditoria al MainLoop (jopiortiz)
* 07/03/2019 : Implementación: Drag and Drop en hechizos (jopiortiz)
* 07/03/2019 : Implementación: Evento - Juegos del Hambre. (jopiortiz)
* 11/03/2019 : Eliminada la carga de MD5. (jopiortiz)
- 0.13.8
* 12/03/2019 : Delete modHexaStrings.bas Este módulo pertenecía a la carga de MD5's. (jopiortiz)
* 12/03/2019 : Implementado mensaje "Tu clase no tiene la habilidad de aprender este hechizo." al querer usar un hechizo prohibido por clase. (jopiortiz)
* 12/03/2019: Implementación: Sistema de Quests via NPC's. (jopiortiz)
* 14/03/2019 : Implementación: Amuleto del Silencio (Recox-jopiortiz)
* 17/03/2019 : Ahora podes matar npcs de quest con elementales y te lo suma al dueñoindex de la quest (Juanmz)
* 18/03/2019 : Reemplazados caracteres especiales por normales (à á é í ó ú ñ Ñ) para evitar potenciales errores de encodeo y diferencias de codigo no deseadas en pull requests. (Recox)
* 20/03/2019: Ahora los users no pueden paralizar npcs arriba de portales (SOLO GMS) (JuanMz)
* 20/03/2019: Se creo una opcion en server.ini para poder hacer que en el server se caigan los objetos al morir o no (Recox)
* 23/03/2019: Cambio ñ por n en balances.dat (Recox)
* 23/03/2019: Fix JDH Pequeños arreglos. Y nueva función public WarpUserCharX para evitar pisadas. (JuanMZ)
* 23/03/2019: Indentación completa del código. (jopiortiz)
* 24/03/2019: Implementacion de inventario customizado desde el server.ini - Added possibility of customize the inventory when a player is created on server.ini (Recox)
* 26/03/2019: Agregados npcs de quests en Npcs.dat. (Recox)
* 01/04/2019: Implementacion de concepto de mundos, el mismo se elige desde el sinfo.dat del cliente (Recox)
* 01/04/2019: Se implemento posicion de nacimiento, junto con mapa si decidimos usar un Mundo propio (Recox)
* 01/04/2019: Creado Mundo Deathmatch(La boda) sobre Mapa 198 (Recox)
* 01/04/2019: Agregados 3 npcs de decoracion para Mundo Deathmatch(La Boda) (Recox)
* 01/04/2019: Creado Mundo BattleServer(Partenon de los Dioses) sobre Mapa 273 (Recox)
* 01/04/2019: Agregada customizacion de cada una de las estadisticas de un personaje al nacer desde el server.ini (Recox)
* 01/04/2019: Se Arreglo un bug que cuando se supera el maximo de oro permitido el cliente te kickea del server (Recox)
* 01/04/2019: Se arreglo bug que afectaba a los items por clases prohibidas (Recox)
* 04/04/2019: Se usa el numero de versionTagRelease desde el archivo sinfo.ini para mostrar la version juego en el titulo (Recox)
* 04/04/2019: Se muestra el mundo seleccionado desde el archivo Dat\Map.ini para mostrarlo en el titulo de la aplicacion (Recox)
* 07/04/2019: Se simplifico la customizacion de atributos iniciales, ahora se respetan los modificadores de raza/clase (Recox)
* 07/04/2019: Se arreglo un caracter roto cuando el sacerdote te cura. (Recox)
* 08/04/2019: Los gms ya no son expulsados del juego por inactividad (Recox)
* 08/04/2019: Se modifico un poco el mapa 273 del battleserver y el 198 del deathmatch (Recox)
* 09/04/2019: Ahora los sacerdotes de abajo y arriba curan en mapa deathmatch (198) (Recox)
* 11/04/2019: Chequeo si existen las carpetas "Account" y "Charfile" al iniciar el servidor. (jopiortiz)
* 11/04/2019: Se convirtio el mapa Escondrijo de las ruinas de earost en el mundo deathmatch con todos los npcs necesarios para un agite rapido. (Recox)
* 13/04/2019: El comando /CI ahora mete el item en el inventario en caso de que sea agarrable, si tiene el inventario lleno se tira al piso, los objetos no agarrables van al piso directamente (jopiortiz)
* 14/04/2019: Implementación - daño en render. (jopiortiz)
* 17/04/2019: Cambio la recursividad del HandleIncomingData, y ahora pasa a ser iterado y arregla el error de 'Out of stack space' (MateoMiccino)
* 17/04/2019: Se encapsulo el comportamiento de la funcion LiberarSlot y se rehusa alrededor de la aplicacion (jopiortiz/Juanmz)
* 21/04/2019: Deleted objs that are not indexed and breaks the application: OBJ1121, OBJ1122, OBJ1116, OBJ1113, OBJ1114, OBJ1115 (Recox)
* 21/04/2019: Agregado limite para la recepción de paquetes. (jopiortiz/Juanmz)
* 21/04/2019: Inicia en al ciudad elegida al crear pj (JuanMZ)
- 0.13.8.1
* 04/04/2019: Se usa el numero de versionTagRelease desde el archivo sinfo.ini para mostrar la version juego en el titulo (Recox)
* 04/04/2019: Se muestra el mundo seleccionado desde el archivo Dat\Map.ini para mostrarlo en el titulo de la aplicacion (Recox)
- 0.13.8.2
* 07/04/2019: Se simplifico la customizacion de atributos iniciales, ahora se respetan los modificadores de raza/clase (Recox)
* 07/04/2019: Se arreglo un caracter roto cuando el sacerdote te cura. (Recox)
- 0.13.8.3
* 08/04/2019: Los gms ya no son expulsados del juego por inactividad (Recox)
* 08/04/2019: Se modifico un poco el mapa 273 del battleserver y el 198 del deathmatch (Recox)
* 09/04/2019: Ahora los sacerdotes de abajo y arriba curan en mapa deathmatch (198) (Recox)
- 0.13.8.4
* 11/04/2019: Chequeo si existen las carpetas "Account" y "Charfile" al iniciar el servidor. (jopiortiz)
* 11/04/2019: Se convirtio el mapa Escondrijo de las ruinas de earost en el mundo deathmatch con todos los npcs necesarios para un agite rapido. (Recox)
* 13/04/2019: El comando /CI ahora mete el item en el inventario en caso de que sea agarrable, si tiene el inventario lleno se tira al piso, los objetos no agarrables van al piso directamente (jopiortiz)
* 14/04/2019: Implementación - daño en render. (jopiortiz)
- 0.13.8.5
* 17/04/2019: Cambio la recursividad del HandleIncomingData, y ahora pasa a ser iterado y arregla el error de 'Out of stack space' (MateoMiccino)
* 17/04/2019: Se encapsulo el comportamiento de la funcion LiberarSlot y se rehusa alrededor de la aplicacion (jopiortiz/Juanmz)
* 21/04/2019: Deleted objs that are not indexed and breaks the application: OBJ1121, OBJ1122, OBJ1116, OBJ1113, OBJ1114, OBJ1115 (Recox)
* 21/04/2019: Agregado limite para la recepción de paquetes. (jopiortiz/Juanmz)
* 21/04/2019: Inicia en al ciudad elegida al crear pj (JuanMZ)
- 0.13.8.6
* 05/05/2019: Eliminado cGarbaje. (jopiortiz)
* 10/05/2019: Borrada esta irrelevante linea de codigo .UpTime = .UpTime (Recox)
* 10/05/2019: El centinela ahora escribe un codigo de 4 caracteres en ves de 7 (Recox)
* 10/05/2019: Al poner el codigo correcto, ahora el centinela se va a tomar unos 30 mins antes de aparecer de nuevo para que no sea tan molesto (Recox)
* 10/05/2019: Ahora cuando no ingreso el codigo dentro del tiempo especificado, el centinela solo me manda a la carcel, ya no mata al personaje ni le borra todos los items. (Recox)
* 10/05/2019: Se le elimino la defensa magica al Murcielago y al Escorpion ya que son npcs que viven en el NW Dungeon y a un mago se le complica levelear. (Recox)
* 13/05/2019: No se caen los items y el oro al morir en Zona Segura. (jopiortiz)
* 13/05/2019: Fix a bug with HandleLoginNewAccount (CHOTS/JuanMZ)
* 13/05/2019: Arreglado - No se mataba el proceso al cerrar el servidor. (jopiortiz)
* 13/05/2019: Centinela activable/desactivable desde el Server.ini (jopiortiz)
* 13/05/2019: Se implemento conexion con API, endpoints BackupCharfiles, BackupAccount, BackupLogs (Recox)
* 13/05/2019: Arregladas omisiones en los manejadores de muchos paquetes. (jopiortiz)
* 13/05/2019: Se agrego boton forzar cerrar server en el frmMain. (Recox)
* 13/05/2019: Se comento el codigo la proteccion de contador de paquetes en 40ms, ya que al hacer WorldSave desconecta el personaje debido a que llegan mas paquetes en ese momento (debe ser arreglado) . (Recox)
- 0.13.9
* 15/05/2019: Actualización de armas vendidas por los herreros. (jopiortiz)
* 15/05/2019: Actualización de Hechizos vendidos por los comerciantes magos. (jopiortiz)
* 15/05/2019: Los carpinteros venderán arcos. (jopiortiz)
* 17/05/2019: Implementado xmlHttp para hacer AJAX requests (Recox)
* 17/05/2019: Implementado Endpoint de la API para el envio de emails al registrarse (Recox)
* 17/05/2019: Implementado Endpoint de la API para el envio de emails al iniciar sesion (Recox)
* 19/05/2019: Cast to Bool to some global properties (Recox)
* 21/05/2019: Implementacion endpoint Cambio de Contraseña mediante la API. (jopiortiz)
* 21/05/2019: Uso de clsIniManager para cargar Server.ini y Ciudades.dat (jopiortiz)
* 21/05/2019: Optimizada funcion NameIndex (JuanMZ)
* 22/05/2019: Se setea el Nivel Máximo desde Server.ini (jopiortiz)
* 22/05/2019: Implementado Endpoint para cambiar password mediante la api hecha en node.js (jopiortiz/Recox)
- v0.13.9.1
* 09/06/2019: Las llamadas hechas por xmlHttp ahora son asincronicas. (Recox)
- v0.13.9.2
* 11/07/2019: Se agrego Nemahuak como ciudad default otra vez. (Recox)
* 14/07/2019: Added Initial Mana on Paladin when the user is created (Recox)
* 14/07/2019: /Online muestra lista usuarios online, ahora se suman gms a la cuenta y a la lista de nombres (Recox)
* 14/07/2019: Added happy hour experience functionality (Recox)
- v0.13.9.3
* 24/07/2019: Bugfix los npcs de agua respawnean con menos frecuencia en tierra. (Wyr0X)
* 09/08/2019: Fix, los NPC's se quedaban trabados en los bloqueos. (jopiortiz)
- v0.13.11
* 13/08/2019: Retos 1vs1,2vs2,3vs3,nVSn (MarinoLautaro)
- Para retar, /RETOS
- Para aceptar, /ACEPTAR NICK
* 14/08/2019: Se cambiaron los mapas de duelos por otros que no sean ciudades. (Recox)
Changelogs completos y actualizados:
ao-libre/ao-cliente
Client for Argentum Online. Contribute to ao-libre/ao-cliente development by creating an account on GitHub.
ao-libre/ao-server
Server for Argentum Online. Contribute to ao-libre/ao-server development by creating an account on GitHub.
Historial de desarrollo de CVS A GIT
Se creo toda la organizacion de Github y se exporto todo el historial del CVS (sourceforge) a GIT para no perder el historial de desarrollo de los ultimos 13 años al menos. Se linkearon algunos viejos desarrolladores que pude encontrar como Pato Torres, Maraxus, AlejoLp entre otros.
Cree un tutorial para que puedan ver como fue el proceso de conversion del mismo:

Importar repositorio CVS a GIT (sourceforge a github) de manera facil
Esto fue hecho para el proyecto Argentum Online Libre (http://www.argentumonline.org) el cual es una continuacion del trabajo realizado…

Launcher:
Se creo un Launcher el cual actualiza todas las aplicaciones del ecosistema AO desde github releases para que todos los cambios que recibamos en codigo la gente los pueda tener de manera simple. (Cliente, Server, Worldeditor, ClienteOffline para jugar con Bots, AO-Setup)
API:
Se creo una API hecha en Node.js para realizar operaciones como envio de emails cuando uno se crea una cuenta o se logea al juego, envio de emails, mostrar rankings en la web hacer backups de pjs a base de datos mysql, si bien estas operaciones se pueden hacer tranquiamente en VB6 en javascript es mucho mas facil.
Con el mismo se pueden crear un servidor y ponerlo online con tan solo 2 clicks como muestra el siguiente video:
Finisterra:


Finisterra (aka AO-Java) es el proyecto que inicio uno de los chicos aqui en el foro (@guidON.- ) y el mismo apunta a hacer un remake del AO con conceptos y tecnologias que son mas modernas. El mismo forma parte de la organizacion de github de ao-libre y estan todos invitados a colaborar en cualquier aspecto que esten interesados, desde musica hasta programacion los limites los ponen ustedes. Si bien el proyecto aun esta en una fase alpha hay un avance monumental.
Les dejo un resumen de lo logrado este tiempo:
- Se creo una arquitectura arriba de Libgdx/ECS/Kryonet que soporta todos los features de AO.
- ECS brinda grandes beneficios al momento de agregar funcionalidades.
- Se migro el modelo de AO a uno más extensible, donde se pueden definir y reutilizar el mismo codigo, tanto en el cliente como en el servidor.
- Se escribieron gran cantidad de sistemas reconocidos en el AO, manteniendo asi la escencia del juego, entre ellos:
- Sistema de caminata con prediccion
- Sistema de combate (parcial, falta el combate con arcos)
- Sistema de NPCs con Path finding y movimientos independientes.
- Sistema de meditacion
- Sistema de Buffs
- Sistema de regeneracion de energia
- Sistema de footprints
- Sistema de relaciones/area
- Sistema de relaciones/area:
Se mantiene una relacion entre entidades en el juego, de tal manera que cada jugador solo sera notificado por cosas que suceden en su "area".
- Sistema de footprints: Esto se presta para entrar en detalles.
La idea de esto es combatir el ping, haciendo asi un sistema que guarda los timestamps de las acciones de combate, para luego validar en el servidor. Para esto se hace un sync del tiempo (cliente-servidor) constantemente. Esto mejora el rate de hit aun con un ping considerable. Esto se traduce a -> si tenes mucho ping, no hace falta tirar a un tile vacio y rezar a que le pegue.
- Prediccion (Testing):
La idea es nunca llegar a un estado inconsistente, chau a apretar la L cuando quedas lageado, evitar los saltos de personajes, etc.
- El nuevo diseño (a nivel codigo) brinda opciones para mejorar en varios aspectos, como por ejemplo:
- Podemos hacer que cada entidad en el juego pueda tener su propia velocidad.
- Reutilizar componentes entre personajes, npcs, arboles, etc.
- Control absoluto al momento de renderizar, pudiendo asi elegir el orden, criterio, forma.
- Kryonet (conexion cliente-servidor):
Gracias a kryonet y ECS, no tenemos que definir un protocolo ni tener que crear multiples paquetes para acciones simples, solo se mandan updates genericos, que el cliente sabe aplicar de una manera facil.
- Se agrego la posibilidad de ver mas alla de los mapas, es decir, simular la union entre ellos y asi evitar el salto de mapa. Teniendo asi visibilidad y interaccion con los mapas aledaños.
- Para la interfaz grafica utilizamos skins y scene2d.ui, lo que nos permite generar UI desde el codigo, pudiendo asi modificar cualquier tipo de caracteristica. Esto es mucho mas simple gracias al soporte de 9-patch.
- Compatibilidad:
Gracias a libgdx, se puede generar binarios para distintas plataformas, vease: Windows, Linux, Mac, entre otras que aun no tomamos ninguna accion, por ej: android/ios.
- Compilar:
Utilizamos JPackage (feature que viene a partir de Java 13, aun no releseado?) para generar un artefacto ejecutable, el cual viene con una JRE (Java) requerido para correr el juego. De esta manera no hace falta que el usuario tenga que tener pre instalado o configurado algun tipo de programa/library. Esta JRE depende del sistema operativo.
- ECS brinda grandes beneficios al momento de agregar funcionalidades.
- Se migro el modelo de AO a uno más extensible, donde se pueden definir y reutilizar el mismo codigo, tanto en el cliente como en el servidor.
- Se escribieron gran cantidad de sistemas reconocidos en el AO, manteniendo asi la escencia del juego, entre ellos:
- Sistema de caminata con prediccion
- Sistema de combate (parcial, falta el combate con arcos)
- Sistema de NPCs con Path finding y movimientos independientes.
- Sistema de meditacion
- Sistema de Buffs
- Sistema de regeneracion de energia
- Sistema de footprints
- Sistema de relaciones/area
- Sistema de relaciones/area:
Se mantiene una relacion entre entidades en el juego, de tal manera que cada jugador solo sera notificado por cosas que suceden en su "area".
- Sistema de footprints: Esto se presta para entrar en detalles.
La idea de esto es combatir el ping, haciendo asi un sistema que guarda los timestamps de las acciones de combate, para luego validar en el servidor. Para esto se hace un sync del tiempo (cliente-servidor) constantemente. Esto mejora el rate de hit aun con un ping considerable. Esto se traduce a -> si tenes mucho ping, no hace falta tirar a un tile vacio y rezar a que le pegue.
- Prediccion (Testing):
La idea es nunca llegar a un estado inconsistente, chau a apretar la L cuando quedas lageado, evitar los saltos de personajes, etc.
- El nuevo diseño (a nivel codigo) brinda opciones para mejorar en varios aspectos, como por ejemplo:
- Podemos hacer que cada entidad en el juego pueda tener su propia velocidad.
- Reutilizar componentes entre personajes, npcs, arboles, etc.
- Control absoluto al momento de renderizar, pudiendo asi elegir el orden, criterio, forma.
- Kryonet (conexion cliente-servidor):
Gracias a kryonet y ECS, no tenemos que definir un protocolo ni tener que crear multiples paquetes para acciones simples, solo se mandan updates genericos, que el cliente sabe aplicar de una manera facil.
- Se agrego la posibilidad de ver mas alla de los mapas, es decir, simular la union entre ellos y asi evitar el salto de mapa. Teniendo asi visibilidad y interaccion con los mapas aledaños.
- Para la interfaz grafica utilizamos skins y scene2d.ui, lo que nos permite generar UI desde el codigo, pudiendo asi modificar cualquier tipo de caracteristica. Esto es mucho mas simple gracias al soporte de 9-patch.
- Compatibilidad:
Gracias a libgdx, se puede generar binarios para distintas plataformas, vease: Windows, Linux, Mac, entre otras que aun no tomamos ninguna accion, por ej: android/ios.
- Compilar:
Utilizamos JPackage (feature que viene a partir de Java 13, aun no releseado?) para generar un artefacto ejecutable, el cual viene con una JRE (Java) requerido para correr el juego. De esta manera no hace falta que el usuario tenga que tener pre instalado o configurado algun tipo de programa/library. Esta JRE depende del sistema operativo.
Link del repo
ao-libre/finisterra
Java game client and server based on the popular argentina MMORPG Argentum Online - ao-libre/finisterra
------------------------
Y si tienen dudas o quieren colaborar usen el discord asi se ponen en contacto o mismo hagan threads aqui en el mismo foro de GS-ZONE que lugar mas completo con gente que esta involucrada activamente en la escena del AO no existe.
Desde ya muchas gracias a todos por participar del proyecto y aportar su grano de arena.