
Multi Theft Auto (MTA) es un proyecto de software que agrega la funcionalidad de juego de red a la serie de juegos de Autoft Auto de Rockstar North, en el que esta funcionalidad no se encuentra originalmente. Es una modificación única que incorpora un elemento de juego de red extensible en un juego de PC comercial para un juego para un jugador.
Tenga en cuenta que si es un desarrollador de horquilla, lea esta nota con cuidado. Hemos cambiado el tipo de compilación predeterminado de nuevo a personalizado en
Shared/sdk/version.h. Si se está desarrollando sin el anti-trato en mente, digamos en la configuración de depuración, esto no le afecta en absoluto. Ahora, si planea probar a su cliente personalizado con habilitado contra el trato, debe cambiar su tipo de compilación aUNTESTED. Si desea publicar una versión de su cliente personalizado, debe cambiar a una versión endurecida denetc.dll. Lea nuestra página Wiki Wiki Forks_Full_AC para obtener más información.
Auto de robo múltiple se basa en las técnicas de inyección y enganche de código mediante las cuales el juego se manipula sin alterar ningún archivo original suministrado con el juego. El software funciona como un motor de juego que se instala como una extensión del juego original, agregando una funcionalidad central, como las redes y la representación de la GUI, al tiempo que expone la funcionalidad del motor del juego original a través de un lenguaje de secuencias de comandos.
Originalmente fundada a principios de 2003 como una pieza experimental de software C/C ++, desde entonces se ha convertido en un auto de robo múltiple en una plataforma multijugador avanzada para jugadores y desarrolladores de terceros. Nuestro software proporciona un juego mínimo de estilo sandbox que se puede extender a través del lenguaje de secuencias de comandos LUA de muchas maneras, lo que permite a los servidores ejecutar modos de juego creados personalizados con contenido personalizado para hasta cientos de reproductores en línea.
Anteriormente un proyecto de fuente cerrada, hemos migrado a una fuente abierta para alentar a otros desarrolladores a contribuir y mostrar información sobre el código fuente y el diseño de nuestro proyecto por razones educativas.
Auto de robo múltiple se basa en el concepto "azul" que implementa un marco de motor de juego. Dado que el diseño de clase de nuestro marco de juego se basa en el diseño de Grand Theft Auto, podemos insertar nuestro código en el juego original. El juego se extiende en gran medida al proporcionar una nueva funcionalidad del juego (incluidos los ajustes y las correcciones de bloqueo), así como una interfaz gráfica completamente nueva, redes y componentes de secuencias de comandos.
Por defecto, Multi Deft Auto proporciona el juego mínimo de estilo sandbox de Grand Theft Auto. El juego puede extenderse en gran medida mediante el uso del lenguaje de secuencias de comandos LUA que se ha integrado en el software del cliente y el servidor. Tanto el servidor que aloja el juego, así como el cliente que juega el juego, son capaces de ejecutar y sincronizar los scripts de Lua. Estos scripts están en capas en la parte superior del marco de juegos de Auto de Multift Auto que consiste en muchas clases y funciones para que el juego se pueda ajustar de manera prácticamente de cualquier manera posible.
Todo el contenido de juego, como los scripts, imágenes, sonidos, modelos o texturas de Lua, se agrupa en un "recurso". Este recurso no es más que un archivo (que contiene el contenido) y un archivo de metadatos que describe el contenido y cualquier información adicional (como dependencias de otros recursos).
El uso de un marco basado en recursos tiene una serie de ventajas. Permite que el contenido se transfiera fácilmente a clientes y servidores. Otra ventaja es que podemos proporcionar una forma de importar y exportar la funcionalidad de secuencias de comandos en un recurso. Por ejemplo, los diferentes recursos pueden importar la funcionalidad (a menudo básica) de uno o más recursos comunes. Estos se descargarán e iniciarán automáticamente. Otra característica que vale la pena mencionar es que los administradores del servidor pueden controlar el acceso a recursos específicos asignando varios derechos de usuario diferentes para ellos.
El repositorio de códigos de nuestro proyecto se puede encontrar en el repositorio de MultiThefteuto/MTASA-Blue Git en GitHub. Siempre estamos buscando nuevos desarrolladores, así que si está interesado, aquí hay algunos enlaces útiles:
Requisitos previos
win-create-projects.batMTASA.sln en el directorio Buildwin-install-data.batVisite el artículo de Wiki "Compilar MTASA" para obtener información adicional y la resolución de problemas de errores.
Puede construir el servidor MTA: SA en distribuciones GNU/Linux solo para arquitecturas de CPU x86, x86_64, ARMHF y ARM64. Las arquitecturas de los brazos se encuentran actualmente en fase experimental , lo que significa que son inestables, no probados y pueden bloquearse al azar. Tenga cuidado de que solo apoyamos oficialmente la construcción de X86_64 y eso incluye la compilación cruzada para X86, ARM y ARM64.
Construir dependencias
Siempre lea los DockerFiles para dependencias de compilación actualizadas. Nota: No es necesario NCFTP para construir el servidor MTA: SA.
Instrucciones de compilación: script
Nota: Este script siempre elimina Build/ y Bin/ directorios y hace una construcción limpia.
$ ./linux-build.sh [--arch = x86 | x64 | arm | arm64] [--config = debug | release]
$ ./linux-install-data.sh # optional step Si no se proporciona Build Architecture --arch , entonces se toma de la variable de entorno BUILD_ARCHITECTURE (predeterminada a: x64).
Si no se proporciona la configuración de compilación --config , entonces se toma de la variable de entorno BUILD_CONFIG (predeterminada a: versión).
Si está tratando de compilar de otra arquitectura, entonces establezca las variables de entorno AR , CC , CC, CXX , GCC_PREFIX (ver DockerFile.Arm64 para un ejemplo).
Instrucciones de construcción: Manual
$ ./utils/premake5 gmake
$ make -C Build/ config=release_x64 all
$ ./linux-install-data.sh # optional step Si no desea construir la configuración de lanzamiento para la arquitectura x86_64, puede elegir otra configuración de compilación de: {debug|release}_{x86|x64|arm|arm64} .
Si tiene problemas para resolver las dependencias requeridas o desea la máxima compatibilidad, puede usar nuestro entorno de compilación dockerizado que envía todas las dependencias necesarias. También utilizamos este entorno para construir los binarios oficiales.
Tirar de la imagen Docker
$ docker pull ghcr.io/multitheftauto/mtasa-blue-build:latest| Arquitectura | Etiqueta de imagen Docker |
|---|---|
| x86_64 | el último |
| x86 | i386 |
| brazo | armhf |
| brazo | brazo |
Edificio con Docker
Estos ejemplos suponen que su directorio actual es el directorio de pago azul MTASA. También debe saber que /build es el directorio de código requerido por nuestras imágenes Docker dentro del contenedor. Si el directorio actual no es un repositorio Git válido, en su lugar crea un clon (poco profundo) del repositorio mtASA-azul. Después de compilar, encontrará los binarios resultantes en ./Bin . Para construir la construcción de depuración no optimizada, agregue -e BUILD_CONFIG=debug a los argumentos Docker Run.
| Arquitectura | Comando de construcción |
|---|---|
| x86_64 | docker run --rm -v `pwd`:/build ghcr.io/multitheftauto/mtasa-blue-build:latest |
| x86 | docker run --rm -v `pwd`:/build ghcr.io/multitheftauto/mtasa-blue-build:i386 |
| brazo | docker run --rm -v `pwd`:/build ghcr.io/multitheftauto/mtasa-blue-build:armhf |
| brazo | docker run --rm -v `pwd`:/build ghcr.io/multitheftauto/mtasa-blue-build:arm64 |
Ejecutar win-create-projects.bat
A menos que se especifique lo contrario, todo el código fuente alojado en este repositorio tiene licencia bajo la licencia GPLV3. Consulte el archivo de licencia para obtener más detalles.
Grand Theft Auto y todas las marcas comerciales relacionadas son © Rockstar North 1997–2024.