ao-libre / ao-server

Server for Argentum Online
GNU Affero General Public License v3.0
51 stars 44 forks source link
argentum argentum-online argentumonline game game-2d mmorpg mmorpg-client visualbasic6

Codigo Fuente Servidor Argentum Online.

GitHub GitHub issues Discord GitHub All Releases

Importante, no bajar el codigo con el boton Download as a ZIP de github por que lo descarga mal, muchos archivos por el encoding quedan corruptos.

Tenes que bajar el codigo con un cliente de git, con el cliente original de la linea de comandos seria:

git clone https://www.github.com/ao-libre/ao-server

AO Logo

Sponsors:

https://minehost.com.ar/

https://www.conreco.com.ar/

ScreenshotVersionNueva

ScreenshotVersionVieja

Diagrama Arquitectura Aplicaciones AO-LIBRE

https://www.reddit.com/r/argentumonlineoficial/comments/f402p9/argentum_online_libre_diagrama_arquitectura/

Wiki Desarrollo Argentum Online

Manual para entender el codigo de Argentum Online.

Logs publicos de nuestro Server

AO es un juego open-source y por ello abrimos nuestros logs del server al publico para que puedan ver que errores hay en el servidor y poder ayudar a repararlos

Montar Servidor:

Guia para montar mi propio servidor:.

Tips Montar para montar un server:

Comandos para la administración del servidor:

Guía de Comandos para la administración del servidor (en Reddit)

Archivos Definicion:

ArmadurasFaccionarias.dat: En este archivo se especifican a que índice de objeto corresponden las diferentes armaduras faccionarias.

ArmadurasHerrero.dat: En este archivo se especifica el índice de las armaduras a la venta por el herrero.

ArmasHerrero.dat: En este archivo se especifica el índice de las armaduras a la venta por el herrero.

Balance.dat: En este archivo se encuentra la configuración del balance de las clases y los grupos.

BanIps.dat: En este archivo se registran las IP's bloqueadas por el servidor o un Game-Master.

Ciudades.dat: En este archivo se especifican las coordenadas de las ciudades del juego.

Head.dat: En este archivo se especifican la cantidad de cabezas que posee disponible cada raza en el juego.

Hechizos.dat: En este archivo se especifica toda la información de los hechizos disponibles en el juego.

Help.dat: En este archivo se especifican los mensajes de ayuda en el juego.

Invokar.dat: Este comando solo está disponible para los Game-Masters. En este archivo se especifican los NPC's disponibles para invocar.

Map.dat: En este archivo se especifica la ubicación de la carpeta Maps y la cantidad de mapas que se cargarán en el servidor.

Motd.ini: En este archivo se pueden escribir textos que apareceran a los usuarios al conectarse al servidor.

NPCs.dat: En este archivo se especifica toda la información de los NPC's o Non-Playing-Characters del juego.

NombresInvalidos.dat: En este archivo se especifican los nombres de personajes que no se pueden usar en el juego al crear uno.

ObjCarpintero.dat: En este archivo se especifican los objetos que pueden crearse con la habilidad de carpinteria.

Pretorianos.dat: En este archivo se especifica el índice de los NPC's que pertenecen al Clan Pretoriano.

apuestas.dat: En este archivo se registra la informacion de las jugadas del sistema de apuestas.

bkNPCs.dat: En este archivo se especifica la información de los NPC's cuando el servidor se inicia desde el BackUp. (Confirmar que esta informacion sea 100% correcta)

obj.dat: En este archivo se especifica toda la información de los objetos disponibles en el juego.

AreasStats.dat y Consultas.dat (que no estoy seguro de lo que es)

FAQs:

Error - Librerias faltantes (missing .dll)

En la carpeta Librerias estan todas las librerias necesarias para iniciar el server sin errores, copiar el contenido de la carpeta en c:/Windows

Error - Al abrir el proyecto en Visual Basic 6 no puede cargar todas las dependencias:

Este es un error comun que les suele pasar a varias personas, esto es debido que el EOL del archivo esta corrupto. Visual Basic 6 lee el .vbp en CLRF, hay varias formas de solucionarlo:

Opcion a: Con Notepad++ cambiar el EOL del archivo a CLRF

Opcion b: Abrir un editor de texto y reemplazar todos los '\n' por '\r\n'

Server.ini - Summary:

Sumario explicando cada una de los valores utilizados en el archivo de configuracion Server.ini.

Summary explaining how to use each value in the configuration file Server.ini.

https://www.reddit.com/r/argentumonlineoficial/comments/9v4dln/serverini_sumario_explicando_parametros/

Autoupdates:

El programa al iniciar comparara la actual version del programa que se encuentra en server.ini en el parámetro VersionTagRelease con la ultima version que se encuentra en el Endpoint Github Releases. En caso de ser diferente, se ejecuta nuestro programa ao-autoupdate para poder hacer el update.

Para mas información sobre este proceso:

Funcion para comparar versiones

Codigo fuente ao-autoupdate

Codigo fuente utilizado como base: http://www.gs-zone.org/temas/cliente-y-servidor-13-3-dx8-v1.95611/

Revisar/Probar Pull Requests:

En caso que se quiera probar un PULL REQUEST hay que estar en el branch master y luego hacer un pull del Pull Request de la siguiente manera: git pull origin pull/135/head donde 135 es el numero de Pull Request

Como hacer un release?

Aqui se deja explicado como hacer un release para cualquiera de las aplicaciones de Argentum Online Libre https://github.com/ao-libre/ao-cliente/wiki/How-to-create-and-publish-Releases%3F

Documentacion oficial Visual Basic 6

While the Visual Basic 6.0 IDE is no longer supported, Microsoft's goal is that Visual Basic 6.0 applications continue to run on supported Windows versions. The resources available from this page should help you as you maintain existing applications, and as you migrate your functionality to .NET.

https://docs.microsoft.com/en-us/previous-versions/visualstudio/visual-basic-6/visual-basic-6.0-documentation