Este proyecto genera un gráfico estadístico a partir de datos de texto generados por Argentum Online.
NOTA: El código de ejemplo puede necesitar modificaciones para adaptarse a la versión de AO que se esté usando.
- Incluir el módulo modStats.bas en el servidor de Argentum Online.
- Cuando se inicia el servidor, en
General.bas Sub Main()
añadir al inicio de la función:
Call modStats.RecordStat(modStats.EVENT_INITIALIZED, "")
- Cada vez que inicia sesión un personaje, en
TCP.bas Sub ConnectUser()
añadir debajo de.flags.UserLogged = True
:
Call modStats.RecordStat(modStats.EVENT_LOGIN, .Name)
- Cada vez que cierre sesión un personaje, en
TCP.bas Sub CloseUser()
añadir debajo de.flags.UserLogged = False
:
Call modStats.RecordStat(modStats.EVENT_LOGOUT, .Name)
- En algún Timer del servidor, que se ejecute cada 10~60 segundos, para verificar si ha cambiado el día, añadir:
If lastStatDate <> Day(Date) Then
Dim LoopC As Integer
For LoopC = 1 To MaxUsers
With UserList(LoopC)
If .ConnIDValida And _
.flags.UserLogged Then
Call modStats.RecordStat(modStats.EVENT_CONTINUE, .Name)
End If
End With
Next
Else
lastStatDate = Day(Date)
End If
- No olvidarse de añadir en el mismo lugar donde se encuentre el Timer, pero fuera de él, declarar la variable
lastStatDate
:
Private lastStatDate As Byte
- Cada vez que se inicie el servidor, se conecte un personaje, se desconecte, se creara una archivo .txt por día, en donde guardará el registro de eventos.
- Estos archivos se guardan en la carpeta
stats
del servidor. - Estos eventos se pueden visualizar en el archivo
stats.html
cuando se ejecute el generador de gráficos. - El archivo
stats.html
se puede abrir en cualquier navegador web o incluir dentro de otra web mediante iframe.
- Descargar el archivo compilado
ao-easy-stats.exe
desde la sección de releases. - Colocar el archivo
ao-easy-stats.exe
junto con la carpetastats
y ejecutar para generarstats.html
. - Abrir el archivo
stats.html
en un navegador web.