Programar en Lua para MTA: eventos, cliente y servidor
Aprende cómo se organizan los scripts de MTA, cómo se comunican cliente y servidor y cómo hacerlo de forma segura.
MTA:SA usa Lua tanto en el cliente como en el servidor. Entender cómo se separan y se comunican es la base de cualquier recurso.
El meta.xml
Define los archivos del recurso y si se ejecutan en el cliente o en el servidor (type="client" o type="server"), además de archivos adicionales como imágenes o modelos.
Eventos
MTA funciona con eventos. Puedes reaccionar a eventos del juego (un jugador entra, muere, sube a un vehículo) y crear eventos propios.
Comunicación cliente-servidor
- El cliente envía con
triggerServerEvent. - El servidor envía con
triggerClientEvent. - Los eventos personalizados deben registrarse con
addEventy permitir su llamada remota.
Seguridad
Comprueba siempre en el servidor quién envía el evento (la variable client) y si tiene sentido. Nunca des dinero o permisos basándote solo en lo que dice el cliente.
Interfaces
Puedes crear interfaces con el sistema GUI integrado o con navegadores CEF para usar HTML y CSS.
Depuración
El comando de depuración muestra errores y avisos en el juego. Úsalo siempre mientras desarrollas.


