Noticias:

Debes de estar registrado para poder ver el contenido indicado. Registrate o Conectate

Menú Principal

L2JDevs Events Engine

Iniciado por u3games, Ago 12, 2022, 01:37 AM

Tema anterior - Siguiente tema

u3games

¿Qué es? ¿Cuál es el objetivo?

L2JDevs Events Engine es un proyecto escrito totalmente en java, que tiene por objetivo crear un sistema de eventos libre y gratuito para todo tipo de servidores L2J. Esto significa que si tienes un servidor, ya sea un fork o no, el engine funcionará igual sin necesidad de realizar grandes cambios.

¿Cómo funciona?

Para que sea algo mas comprensible, el engine posee la siguiente arquitectura:



- API para cada tipo de servidor, las mismas sirven para adaptar el Core del sistema de eventos al Core del servidor que estén usando. Gracias a este sistema, ya no será necesario editar vuestro servidor para incorporarlo, el engine se ocupara de todo el solito.
- Event engine core, es donde se contiene toda la lógica del sistema de eventos, lo contiene el mismo engine.
- API Plugin, es la interfaz que existe entre el Core del engine y los eventos. Los eventos consumen dicha API, brindando una capa de abstracción a cómo el Engine funciona internamente y manteniéndolos de manera separada (sin dependencias de L2J, por lo cual no importa el servidor que uses para programar el evento).

¿Cómo es eso de que los eventos están aparte?

Los eventos se compilan como JARs independientes. Al ser colocados en la carpeta events, una vez que levante el servidor son inicializados por el sistema de eventos. Dicho en otras palabras, teniendo el sistema de eventos instalado, instalar nuevos eventos es tan sencillo como copy-paste.

Si sos programador y querés hacer tus propios eventos, tan sólo tenés que consumir dicha API para crearlos. Así de simple. Además, subiremos plantillas de eventos para facilitaros aun más las cosas.

¿Qué funcionalidades tiene?

- Propio sistema de configuraciones. La verdad es que XML nunca me pareció muy práctico y menos para programadores que necesitan hacer las cosas rápido. Es así que el Engine cuenta con un sistema de creación y utilización de configuraciones propio. Utiliza el formato de archivo HOCON (es usado en el framework Play) que es un pseudo JSON un poco más amigable lo cual permite generar configs más complejas (por ejemplo, la información de un equipo). Dicho archivo es mapeado en un objeto por medio de Gson (library de Google). ¡Y listo! (Podés leer la wiki del proyecto o preguntar para más información).
- Carga en tiempo de ejecución de los eventos. Como bien está descrito más arriba, el sistema carga los JARs que contienen los eventos mientras el servidor está inicializando. ¡No hay que modificar ninguna línea en el Core para que reconozca tu evento!
- Propio sistema de votos. Al cargar eventos y habilitar la configuración de votos (cambiar un false por un true), el sistema hará una votación antes de empezar un evento para que los propios usuarios elijan qué quieren jugar.
- Propio sistema de registro. Acá simplemente no tenés que hacer nada, con cargar el evento ya es suficiente.
- Sistema multilanguage.
- Anti-afk protection.
- Anti-dualbox protection.
- Soporte para eventos en instancias.
- Muchos helpers para que sea más fácil programar los eventos (por ejemplo, poder ordenar los equipos dependiendo de la cantidad de kills).
- Y mucho más....

¿Cómo hago para ganar dinero?

Dado que el core no necesita de modificaciones para correr los eventos, podrás crear tus propios eventos y venderlos como JARs independientes.

Links útiles

Estado actual del proyecto -> Debes de estar registrado para poder ver el contenido indicado. Registrate o Conectate