Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate

Autor Topic: Mostrar CHAT INGAME en Web  (Visto 2284 veces)

0 Miembros and 1 Guest are viewing this topic.

Este tema esta marcado como solucionado. Pulsa aqui si quieres ver la solucion de este tema.

Online SaintZeus Posteado: March 19, 2025, 01:40:36 PM | Modificado: April 29, 2025, 05:45:13 PM by SaintZeus

  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 501
  • Gracias recibida: 3151
  • ar
Que es esto? nada que el chat INGAME se vea en tiempo real en tu web  comiendo

Detecta de que GS viene el chat (si tienes subservers)
Diferencia la cuenta del PJ (ósea muestra el PJ y no la cuenta)
No muestra los Chat Guild(son privados)
No muestra los Chat Gens(son privados)
No muestra los Chat Party(son privados)
Solo muestra los ultimos 10 mensaje (el ultimo arriba y asi...)
Se actualiza en tiempo real al juego (sin tener que recargar la web)
Muestra GMs y/o Admins con otro color (ambos distinto color)
Mensajes /post con su propio estilo
Mensajes /postitem con su estilo dorado
Filtro por tipo de mensaje
Tooltip completo (con estilo y deteccion de razas) de postitem
No almacena mensajes del tipo comando ej /make 0 1
Una consola externa hace todo
Bueno es una boludes ....



ono total












Gracias:


Online SaintZeus #1 Posteado: March 20, 2025, 11:19:49 AM

  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 501
  • Gracias recibida: 3151
  • ar
Ya distingue con colores a los GMs, Admins y user normales. bad
Remarca los /post con otro estilo  Musicx2



Offline xXSiniestroXx #2 Posteado: March 20, 2025, 11:22:55 AM

  • +2 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 332
  • Gracias recibida: 2378
  • ve
También puedes hacer que el usuario logeado en la web elija un character y pueda escribir desde la web al servidor


Online SaintZeus #3 Posteado: March 20, 2025, 11:25:44 AM

  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 501
  • Gracias recibida: 3151
  • ar
También puedes hacer que el usuario logeado en la web elija un character y pueda escribir desde la web al servidor
Lo pense pero ya seria un poco mas complejo eso y me dio fiaca intentarlo  Question2


Online SaintZeus #4 Posteado: March 20, 2025, 01:24:22 PM

  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 501
  • Gracias recibida: 3151
  • ar
Ya distingue los postitem con su estilo  kisss2:



Offline Cartman #5 Posteado: March 20, 2025, 02:51:45 PM

  • Php Coder
  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 309
  • Gracias recibida: 12404
  • pe
tengo una duda, esto solo funciona si la web esta instalada de forma local?? ya que asumo que esta sacando la informacion que bota el GS en sus logs solo lo estas mostrando en la web pero si esta en hosting no funcionaria???



Offline lunaticodeveloper #6 Posteado: March 20, 2025, 03:18:03 PM

  • MAESTRO

  • US. DE HONOR

  • +4 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 1.813
  • Gracias recibida: 26907
  • ar
Excelente , yo lo tengo programado desde hace un rato como un modulo externo con otros sistemas


Soporte premium ya sabes contactame!
Experto en MuOnline! Mira mis aportes de primera!

Gracias:


Offline Odisk #7 Posteado: March 20, 2025, 05:23:44 PM

  • Colaborador
  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 883
  • Gracias recibida: 13708
  • pr
Lol hace dias estaba pensando algo asi xD Pero no sabia por donde empezar.

one day

Gracias:


Offline kayito #8 Posteado: March 20, 2025, 05:31:50 PM

  • MAESTRO

  • C++ Coder
  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 1.069
  • Gracias recibida: 18662
  • ar
Está buena la idea, la implementé hace unos años atrás y lo ideal es utilizarla sólo para mensajes importantes del servidor porque si el juego es muy concurrido, ese chat se explota enseguida de mensajes y es prácticamente ilegible, como los streams de streamers muy famosos.
A lo sumo dejaría por un lado un chat sólo para los posts y otro para los mensajes del servidor, mensajes de eventos, mensajes globales de administradores y mensajes genéricos como wars o duelos mostrando el inicio, el durante y el fin del duelo o war.

Gracias:


Offline xXSiniestroXx #9 Posteado: March 20, 2025, 05:49:57 PM

  • +2 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 332
  • Gracias recibida: 2378
  • ve
tengo una duda, esto solo funciona si la web esta instalada de forma local?? ya que asumo que esta sacando la información que bota el GS en sus logs solo lo estas mostrando en la web pero si esta en hosting no funcionaria???

Claro si es de manera local, basta con leer los logs.txt que se generan del GS, pero si la web esta en hosting el GS debe conectarse y enviar esa información para que sea guardada en un archivo (txt,xml,etc) y de ahí hacer la interpretación de la info.

Gracias:


Online SaintZeus #10 Posteado: March 20, 2025, 05:59:38 PM | Modificado: March 20, 2025, 06:19:42 PM by SaintZeus

  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 501
  • Gracias recibida: 3151
  • ar
Está buena la idea, la implementé hace unos años atrás y lo ideal es utilizarla sólo para mensajes importantes del servidor porque si el juego es muy concurrido, ese chat se explota enseguida de mensajes y es prácticamente ilegible, como los streams de streamers muy famosos.
A lo sumo dejaría por un lado un chat sólo para los posts y otro para los mensajes del servidor, mensajes de eventos, mensajes globales de administradores y mensajes genéricos como wars o duelos mostrando el inicio, el durante y el fin del duelo o war.
Mi idea solo era que cuando alguien nuevo entre a la web vea que dentro del juego estan activos y se animen a entrar... lo unico que muestro son chat normales, los chat globales y la venta de items...
Fijate si el chat de megamu es legible jeje  blush


Online SaintZeus #11 Posteado: March 20, 2025, 06:01:53 PM | Modificado: March 20, 2025, 06:20:08 PM by SaintZeus

  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 501
  • Gracias recibida: 3151
  • ar
tengo una duda, esto solo funciona si la web esta instalada de forma local?? ya que asumo que esta sacando la informacion que bota el GS en sus logs solo lo estas mostrando en la web pero si esta en hosting no funcionaria???
De momento si lo tengo con archivos logs csv ya que el formato txt confunde cosas.
Me diste una idea, intentare que se guarde en una tabla en MuOnline aunque hay que preparar el source del gs y dataserver   evilx2


Marcado como mejor respuesta por: SaintZeus Posteado March 20, 2025, 03:29:34 PM

Offline kayito #12 Posteado: March 20, 2025, 07:23:43 PM

  • MAESTRO

  • C++ Coder
  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 1.069
  • Gracias recibida: 18662
  • ar
tengo una duda, esto solo funciona si la web esta instalada de forma local?? ya que asumo que esta sacando la informacion que bota el GS en sus logs solo lo estas mostrando en la web pero si esta en hosting no funcionaria???

Esto no necesariamente tiene que ser así.

Por ejemplo la vez que lo hice yo fue poniendo un php a la escucha y generando una base de datos en tiempo real en la misma web.

Desde el gameserver yo podía disparar consultas HTTP de forma asíncrona por lo que armé un pequeño código en el que yo le pasaba una serie de datos y una url destino (por ejemplo "http://kayitoelmasmejor.com/servidor/posts.php") y simplemente armaba una solicitud HTTP de tipo POST, donde el cuerpo eran esos datos en formato JSON.

Entonces desde el gameserver al momento de procesar cuando un personaje escribía "/post hola", había una función que era por ejemplo "DataSendToAll" o una pavada así que enviaba el paquete de chat a todos los conectados con el texto "hola" en formato post, justo a continuación de esa función llamaba a la función encargada de enviarle la solicitud HTTP a la web.
De esa manera, enviaba a todos los usuarios el post y también a la web.

Y la web simplemente recibía la solicitud, la guardaba localmente en un array de strings y podía dibujarlo en un simple módulo que hacía uso de ese array de strings mostrándolo en la web. Entonces se actualizaba siempre en tiempo real y podía limitarlo a que mostrara no sé... los últimos 20 posts.

De la misma manera se puede hacer con todos los tipos de mensajes que dispara el gameserver. Simplemente hay que hacer un código en c++ que dispare requests HTTP en formato POST y con un cuerpo específico en formato JSON y desde una url ustedes reciben eso, lo parsean y lo muestran.

Con ChatGPT lo hacen de taquito :P

Otra alternativa podría ser armar otro mini ejecutable (como el JoinServer por ejemplo) que reciba los paquetes del GameServer y se encargue por sus propios medios de enviarlos a la web (para no sobrecargar al GameServer). Yo lo llamaría WebServer jaja


Online SaintZeus #13 Posteado: March 20, 2025, 07:47:24 PM

  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 501
  • Gracias recibida: 3151
  • ar
Lol hace dias estaba pensando algo asi xD Pero no sabia por donde empezar.
Si yo pude hacerlo lo puede hacer cualquiera  cheesyy2


Offline lunaticodeveloper #14 Posteado: March 20, 2025, 08:01:04 PM

  • MAESTRO

  • US. DE HONOR

  • +4 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 1.813
  • Gracias recibida: 26907
  • ar
tengo una duda, esto solo funciona si la web esta instalada de forma local?? ya que asumo que esta sacando la informacion que bota el GS en sus logs solo lo estas mostrando en la web pero si esta en hosting no funcionaria???

Esto no necesariamente tiene que ser así.

Por ejemplo la vez que lo hice yo fue poniendo un php a la escucha y generando una base de datos en tiempo real en la misma web.

Desde el gameserver yo podía disparar consultas HTTP de forma asíncrona por lo que armé un pequeño código en el que yo le pasaba una serie de datos y una url destino (por ejemplo "http://kayitoelmasmejor.com/servidor/posts.php") y simplemente armaba una solicitud HTTP de tipo POST, donde el cuerpo eran esos datos en formato JSON.

Entonces desde el gameserver al momento de procesar cuando un personaje escribía "/post hola", había una función que era por ejemplo "DataSendToAll" o una pavada así que enviaba el paquete de chat a todos los conectados con el texto "hola" en formato post, justo a continuación de esa función llamaba a la función encargada de enviarle la solicitud HTTP a la web.
De esa manera, enviaba a todos los usuarios el post y también a la web.

Y la web simplemente recibía la solicitud, la guardaba localmente en un array de strings y podía dibujarlo en un simple módulo que hacía uso de ese array de strings mostrándolo en la web. Entonces se actualizaba siempre en tiempo real y podía limitarlo a que mostrara no sé... los últimos 20 posts.

De la misma manera se puede hacer con todos los tipos de mensajes que dispara el gameserver. Simplemente hay que hacer un código en c++ que dispare requests HTTP en formato POST y con un cuerpo específico en formato JSON y desde una url ustedes reciben eso, lo parsean y lo muestran.

Con ChatGPT lo hacen de taquito :P

Otra alternativa podría ser armar otro mini ejecutable (como el JoinServer por ejemplo) que reciba los paquetes del GameServer y se encargue por sus propios medios de enviarlos a la web (para no sobrecargar al GameServer). Yo lo llamaría WebServer jaja

Si es bastante sencillo , yo lo hice en C# para que simplemente de forma local haga la lectura y lo vaya actualizando en la db cada x tiempo no consume mas que kbs.

Despues tmbien lo hice exponiendolo al host con un webservice en c# pero fue mas facil y practico de la otra forma.

Soporte premium ya sabes contactame!
Experto en MuOnline! Mira mis aportes de primera!

Gracias:


Offline xXSiniestroXx #15 Posteado: March 21, 2025, 10:10:51 AM

  • +2 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 332
  • Gracias recibida: 2378
  • ve
tengo una duda, esto solo funciona si la web esta instalada de forma local?? ya que asumo que esta sacando la informacion que bota el GS en sus logs solo lo estas mostrando en la web pero si esta en hosting no funcionaria???

Esto no necesariamente tiene que ser así.

Por ejemplo la vez que lo hice yo fue poniendo un php a la escucha y generando una base de datos en tiempo real en la misma web.

Desde el gameserver yo podía disparar consultas HTTP de forma asíncrona por lo que armé un pequeño código en el que yo le pasaba una serie de datos y una url destino (por ejemplo "http://kayitoelmasmejor.com/servidor/posts.php") y simplemente armaba una solicitud HTTP de tipo POST, donde el cuerpo eran esos datos en formato JSON.

Entonces desde el gameserver al momento de procesar cuando un personaje escribía "/post hola", había una función que era por ejemplo "DataSendToAll" o una pavada así que enviaba el paquete de chat a todos los conectados con el texto "hola" en formato post, justo a continuación de esa función llamaba a la función encargada de enviarle la solicitud HTTP a la web.
De esa manera, enviaba a todos los usuarios el post y también a la web.

Y la web simplemente recibía la solicitud, la guardaba localmente en un array de strings y podía dibujarlo en un simple módulo que hacía uso de ese array de strings mostrándolo en la web. Entonces se actualizaba siempre en tiempo real y podía limitarlo a que mostrara no sé... los últimos 20 posts.

De la misma manera se puede hacer con todos los tipos de mensajes que dispara el gameserver. Simplemente hay que hacer un código en c++ que dispare requests HTTP en formato POST y con un cuerpo específico en formato JSON y desde una url ustedes reciben eso, lo parsean y lo muestran.

Con ChatGPT lo hacen de taquito :P

Otra alternativa podría ser armar otro mini ejecutable (como el JoinServer por ejemplo) que reciba los paquetes del GameServer y se encargue por sus propios medios de enviarlos a la web (para no sobrecargar al GameServer). Yo lo llamaría WebServer jaja

Otra opción a parte de la que estan dando, es crear una api.

Puedes usar un framework como codeigniter para que te facilite la vida, ahí desarrollas tu api que lea los archivos que genere el gs y que permita enviar esa información por la url (no es información delicada y tampoco es que van a poder hacer put ni nada ya que solo es lectura de info).

Ejemplo:


Yo lo hice con las noticias de la webengine, a través de la api mandando una solicitud por la url ($_GET) puedes obtener las noticias que hay disponible en mi web

Gracias:


Offline kayito #16 Posteado: March 21, 2025, 10:50:23 AM

  • MAESTRO

  • C++ Coder
  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 1.069
  • Gracias recibida: 18662
  • ar
tengo una duda, esto solo funciona si la web esta instalada de forma local?? ya que asumo que esta sacando la informacion que bota el GS en sus logs solo lo estas mostrando en la web pero si esta en hosting no funcionaria???

Esto no necesariamente tiene que ser así.

Por ejemplo la vez que lo hice yo fue poniendo un php a la escucha y generando una base de datos en tiempo real en la misma web.

Desde el gameserver yo podía disparar consultas HTTP de forma asíncrona por lo que armé un pequeño código en el que yo le pasaba una serie de datos y una url destino (por ejemplo "http://kayitoelmasmejor.com/servidor/posts.php") y simplemente armaba una solicitud HTTP de tipo POST, donde el cuerpo eran esos datos en formato JSON.

Entonces desde el gameserver al momento de procesar cuando un personaje escribía "/post hola", había una función que era por ejemplo "DataSendToAll" o una pavada así que enviaba el paquete de chat a todos los conectados con el texto "hola" en formato post, justo a continuación de esa función llamaba a la función encargada de enviarle la solicitud HTTP a la web.
De esa manera, enviaba a todos los usuarios el post y también a la web.

Y la web simplemente recibía la solicitud, la guardaba localmente en un array de strings y podía dibujarlo en un simple módulo que hacía uso de ese array de strings mostrándolo en la web. Entonces se actualizaba siempre en tiempo real y podía limitarlo a que mostrara no sé... los últimos 20 posts.

De la misma manera se puede hacer con todos los tipos de mensajes que dispara el gameserver. Simplemente hay que hacer un código en c++ que dispare requests HTTP en formato POST y con un cuerpo específico en formato JSON y desde una url ustedes reciben eso, lo parsean y lo muestran.

Con ChatGPT lo hacen de taquito :P

Otra alternativa podría ser armar otro mini ejecutable (como el JoinServer por ejemplo) que reciba los paquetes del GameServer y se encargue por sus propios medios de enviarlos a la web (para no sobrecargar al GameServer). Yo lo llamaría WebServer jaja

Otra opción a parte de la que estan dando, es crear una api.

Puedes usar un framework como codeigniter para que te facilite la vida, ahí desarrollas tu api que lea los archivos que genere el gs y que permita enviar esa información por la url (no es información delicada y tampoco es que van a poder hacer put ni nada ya que solo es lectura de info).

Ejemplo:


Yo lo hice con las noticias de la webengine, a través de la api mandando una solicitud por la url ($_GET) puedes obtener las noticias que hay disponible en mi web

Yo no estoy muy de acuerdo con leer los archivos de logs todo el tiempo. Soy más de eficientizar las lecturas y leer desde disco es la peor decisión y ni hablar si lo tiene que hacer constantemente. Por eso mi propuesta tiene que ver con que el gameserver o un ejecutable soporte sea el encargado de enviarle la información directamente por http (claramente protegiendo la comunicación con algún sistema de token tipo JWT) a una web que esté simplemente a la escucha de solicitudes por url (una API Rest funciona perfectamente) y que lo que reciba, lo almacene en estructuras propias.
Luego al momento de renderizar desde la web, simplemente se leen esas estructuras y se muestra la información. Es mucho más eficiente que andar leyendo permanentemente desde el disco los archivos de log.

Gracias:


Offline xXSiniestroXx #17 Posteado: March 21, 2025, 11:56:14 AM

  • +2 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 332
  • Gracias recibida: 2378
  • ve
tengo una duda, esto solo funciona si la web esta instalada de forma local?? ya que asumo que esta sacando la informacion que bota el GS en sus logs solo lo estas mostrando en la web pero si esta en hosting no funcionaria???

Esto no necesariamente tiene que ser así.

Por ejemplo la vez que lo hice yo fue poniendo un php a la escucha y generando una base de datos en tiempo real en la misma web.

Desde el gameserver yo podía disparar consultas HTTP de forma asíncrona por lo que armé un pequeño código en el que yo le pasaba una serie de datos y una url destino (por ejemplo "http://kayitoelmasmejor.com/servidor/posts.php") y simplemente armaba una solicitud HTTP de tipo POST, donde el cuerpo eran esos datos en formato JSON.

Entonces desde el gameserver al momento de procesar cuando un personaje escribía "/post hola", había una función que era por ejemplo "DataSendToAll" o una pavada así que enviaba el paquete de chat a todos los conectados con el texto "hola" en formato post, justo a continuación de esa función llamaba a la función encargada de enviarle la solicitud HTTP a la web.
De esa manera, enviaba a todos los usuarios el post y también a la web.

Y la web simplemente recibía la solicitud, la guardaba localmente en un array de strings y podía dibujarlo en un simple módulo que hacía uso de ese array de strings mostrándolo en la web. Entonces se actualizaba siempre en tiempo real y podía limitarlo a que mostrara no sé... los últimos 20 posts.

De la misma manera se puede hacer con todos los tipos de mensajes que dispara el gameserver. Simplemente hay que hacer un código en c++ que dispare requests HTTP en formato POST y con un cuerpo específico en formato JSON y desde una url ustedes reciben eso, lo parsean y lo muestran.

Con ChatGPT lo hacen de taquito :P

Otra alternativa podría ser armar otro mini ejecutable (como el JoinServer por ejemplo) que reciba los paquetes del GameServer y se encargue por sus propios medios de enviarlos a la web (para no sobrecargar al GameServer). Yo lo llamaría WebServer jaja

Otra opción a parte de la que estan dando, es crear una api.

Puedes usar un framework como codeigniter para que te facilite la vida, ahí desarrollas tu api que lea los archivos que genere el gs y que permita enviar esa información por la url (no es información delicada y tampoco es que van a poder hacer put ni nada ya que solo es lectura de info).

Ejemplo:


Yo lo hice con las noticias de la webengine, a través de la api mandando una solicitud por la url ($_GET) puedes obtener las noticias que hay disponible en mi web

Yo no estoy muy de acuerdo con leer los archivos de logs todo el tiempo. Soy más de eficientizar las lecturas y leer desde disco es la peor decisión y ni hablar si lo tiene que hacer constantemente. Por eso mi propuesta tiene que ver con que el gameserver o un ejecutable soporte sea el encargado de enviarle la información directamente por http (claramente protegiendo la comunicación con algún sistema de token tipo JWT) a una web que esté simplemente a la escucha de solicitudes por url (una API Rest funciona perfectamente) y que lo que reciba, lo almacene en estructuras propias.
Luego al momento de renderizar desde la web, simplemente se leen esas estructuras y se muestra la información. Es mucho más eficiente que andar leyendo permanentemente desde el disco los archivos de log.

Bueno en este caso como es un chat, debería ser lo más preciso posible y si es un server con full usuarios ps si va a joder que tengas que estar leyendo cada milisegundo el log.txt, así que sí sería mala idea, aunque si te da igual la vida también es una opción.

Ahora ¿Entonces como se haría si no se tiene el código fuente del GS? Porque desde ahí sale la info del chat del juego y para evitar leer esos txt entonces se debería sacar directo del GS esa info.


Offline kayito #18 Posteado: March 21, 2025, 12:11:25 PM

  • MAESTRO

  • C++ Coder
  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 1.069
  • Gracias recibida: 18662
  • ar
tengo una duda, esto solo funciona si la web esta instalada de forma local?? ya que asumo que esta sacando la informacion que bota el GS en sus logs solo lo estas mostrando en la web pero si esta en hosting no funcionaria???

Esto no necesariamente tiene que ser así.

Por ejemplo la vez que lo hice yo fue poniendo un php a la escucha y generando una base de datos en tiempo real en la misma web.

Desde el gameserver yo podía disparar consultas HTTP de forma asíncrona por lo que armé un pequeño código en el que yo le pasaba una serie de datos y una url destino (por ejemplo "http://kayitoelmasmejor.com/servidor/posts.php") y simplemente armaba una solicitud HTTP de tipo POST, donde el cuerpo eran esos datos en formato JSON.

Entonces desde el gameserver al momento de procesar cuando un personaje escribía "/post hola", había una función que era por ejemplo "DataSendToAll" o una pavada así que enviaba el paquete de chat a todos los conectados con el texto "hola" en formato post, justo a continuación de esa función llamaba a la función encargada de enviarle la solicitud HTTP a la web.
De esa manera, enviaba a todos los usuarios el post y también a la web.

Y la web simplemente recibía la solicitud, la guardaba localmente en un array de strings y podía dibujarlo en un simple módulo que hacía uso de ese array de strings mostrándolo en la web. Entonces se actualizaba siempre en tiempo real y podía limitarlo a que mostrara no sé... los últimos 20 posts.

De la misma manera se puede hacer con todos los tipos de mensajes que dispara el gameserver. Simplemente hay que hacer un código en c++ que dispare requests HTTP en formato POST y con un cuerpo específico en formato JSON y desde una url ustedes reciben eso, lo parsean y lo muestran.

Con ChatGPT lo hacen de taquito :P

Otra alternativa podría ser armar otro mini ejecutable (como el JoinServer por ejemplo) que reciba los paquetes del GameServer y se encargue por sus propios medios de enviarlos a la web (para no sobrecargar al GameServer). Yo lo llamaría WebServer jaja

Otra opción a parte de la que estan dando, es crear una api.

Puedes usar un framework como codeigniter para que te facilite la vida, ahí desarrollas tu api que lea los archivos que genere el gs y que permita enviar esa información por la url (no es información delicada y tampoco es que van a poder hacer put ni nada ya que solo es lectura de info).

Ejemplo:


Yo lo hice con las noticias de la webengine, a través de la api mandando una solicitud por la url ($_GET) puedes obtener las noticias que hay disponible en mi web

Yo no estoy muy de acuerdo con leer los archivos de logs todo el tiempo. Soy más de eficientizar las lecturas y leer desde disco es la peor decisión y ni hablar si lo tiene que hacer constantemente. Por eso mi propuesta tiene que ver con que el gameserver o un ejecutable soporte sea el encargado de enviarle la información directamente por http (claramente protegiendo la comunicación con algún sistema de token tipo JWT) a una web que esté simplemente a la escucha de solicitudes por url (una API Rest funciona perfectamente) y que lo que reciba, lo almacene en estructuras propias.
Luego al momento de renderizar desde la web, simplemente se leen esas estructuras y se muestra la información. Es mucho más eficiente que andar leyendo permanentemente desde el disco los archivos de log.

Bueno en este caso como es un chat, debería ser lo más preciso posible y si es un server con full usuarios ps si va a joder que tengas que estar leyendo cada milisegundo el log.txt, así que sí sería mala idea, aunque si te da igual la vida también es una opción.

Ahora ¿Entonces como se haría si no se tiene el código fuente del GS? Porque desde ahí sale la info del chat del juego y para evitar leer esos txt entonces se debería sacar directo del GS esa info.

Si no disponés del código fuente, en ese caso sí estás totalmente limitado a lo que se tire en logs. Aunque hoy día la mayoría usa base muemu, de la cual casi todos disponen de la fuente, y a lo sumo se pueden integrar scrips en LUA para cumplir esa función.
Pero bueno, en caso extremo que no se disponga ni el source ni sistema de scripting, no queda otra que limitarse a los logs de los txt, lo cual también es muy acotado ya que dependés 100% de lo que haya decidido el desarrollador meter en el log. Por ejemplo logs de eventos, logs de duelos, logs de wars, si el desarrollador no los consideró necesarios para loguear, no vas a poder hacer nada al respecto jaja
pero si es posible evitar la lectura de los logs, se evita porque en cada refresco de la página, hay que releer el log y en términos de rendimiento y eficiencia no se recomienda para nada.

Gracias:


Online SaintZeus #19 Posteado: March 21, 2025, 01:09:06 PM | Modificado: March 21, 2025, 06:36:33 PM by SaintZeus

  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 501
  • Gracias recibida: 3151
  • ar
No estoy leyendo desde los logs txt (o en mi caso csv), lo hago desde la DB. Modifique el source para que almacene todo en una tabla y se sobre escriban los últimos 10 msj para que no crezca tanto:



Y de ahi saco los datos para la web  comiendo


Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate


 

Related Topics

  Subject / Started by Replies Last post
8 Replies
2917 Views
Last post July 07, 2018, 08:09:01 AM
by Deidad
6 Replies
9648 Views
Last post June 24, 2020, 09:17:03 PM
by zebah
6 Replies
1202 Views
Last post June 15, 2020, 07:37:04 PM
by Karuritoku
1 Replies
463 Views
Last post August 11, 2021, 11:21:17 AM
by Kapocha33
0 Replies
508 Views
Last post October 20, 2021, 04:23:28 AM
by roshux