ES/Resources

From Multi Theft Auto: Wiki
Revision as of 18:58, 16 February 2011 by The Kid (talk | contribs) (MUCHOS errores corregidos.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Los recursos son una parte clave de la MTA. Un recurso es básicamente un archivo de carpetas o zip que contiene una colección de archivos - incluso archivos de comandos, además de una meta archivo que describe cómo el recurso debe ser cargado. Un recurso puede ser visto como parte equivalente a un programa que se ejecuta en un sistema operativo - que puede ser iniciado y detenido, y múltiples recursos se pueden ejecutar al mismo tiempo. Vale la pena recordar, sin embargo, que a diferencia de los programas en un sistema operativo, no hay multitarea entre los recursos.

Terminología

  • Resource - Un archivo zip o carpeta que contiene un archivo meta.xml y una serie de elementos de recursos. Estos se colocan en la carpeta "%Archivos de Programa%/%MTA San Andreas%/server/mods/ deathmatch/resources/.
  • Archivo - Un archivo contenido dentro de un recurso,esto puede ser un mapa, musica, imágenes, etc

El Archivo Meta

El archivo de Meta es el núcleo de cada recurso. En él se describe exactamente los archivos que el recurso debe utilizar y cómo. El siguiente es un ejemplo que cubre todas las opciones que hay, los archivos de metadatos puede tener tantas o tan pocas de estas etiquetas como tú quieras:

<meta>
    <info author="eAi" description="Ejemplo basico de Script" version="4"/>

    <include resource="radarblips"/>
    <include resource="markermanagement" />

    <script src="ctf.lua" />
    <script src="flag.lua" />
    <script src="ctf_client.lua" type="client" />

    <file src="model.dff" />
    <file src="quitbutton.png" />
    <file src="killed.png"  />

    <html src="test.htm" default="true"/>
    <html src="logo.png" raw="true" />

    <export function="multiply" http="true" />
    <export function="getPlayerList" />
    <export function="getElementOwner" type="client"/>

    <config src="vehicle-list.xml" type="client" />
    <config src="markerconfig.xml" type="server"  />

    <map src="somestuff.map" dimension="99" />
</meta>

Si bien un mapa CTF puede tener un meta.xml que se parece a:

<meta>
    <include resource="ctf" />
    <map src="myuberl33tctfmap.map" />

    <info author="Tom" instructions="this is uber l33t !!!!!1111111" type="map" />
</meta>


Nótese que en cada nodo del archivo meta, aparecen 2 atributos: "Script / File / Config" y "Type". Éstos especifican si el script/resource necesita enviar los datos al cliente, o (por defecto) al servidor.

Las etiquetas incluyen especificaciones como recursos que se deben iniciar antes de un resource que se ha iniciado. Por ejemplo, si su resource tiene dependencia a otro, puede incluirlo en meta.xml para que el resource al que el suyo depende, se inicie primero.


Cada recurso tiene su propia máquina virtual (VM). Este contiene todos los scripts en el recurso. Esto significa que las variables no se comparten con otros recursos. La mejor manera de comunicarte con otros recursos es mediante la exportación'etiquetas y exportación de una función. Por Esto hara Que Otros scritp Hagan la Fucion llamada Otros Haciendo funcionar.


Los scripts se envían a los clientes para que se inicien tan pronto como hayan sido descargados.

Los scripts son capaces de leer y escribir en su carpeta de recursos propios con funciones tales como xmlCreateFile y fileCreate. También pueden leer y escribir a otros recursos, pero debe tener permiso del ACL.

Cada recurso sólo puede ser cargado una vez, en el servidor que sea. Si un recurso se incluye más de una vez, la misma instancia serán utilizados por cada recurso que incluye.

Archivos almacenados

Los archivos Resources pueden ser almacenados en un .zip o un directorio. Se encuentra en:

server/mods/deathmatch/resources/ (Si tienes el server instalado con el cliente)

o

mods/deathmatch/resources/ (para server dedicados)

Cada recurso puede tener un archivo zip, un directorio o ambos. En el caso de los dos existentes, el directorio tiene precedencia sobre el archivo zip, ya que este tipo de archivos se pueden colocar en el directorio a pasar por encima de los archivos en el archivo zip. Esto permite a los directorios que se utilizará para las pruebas y el desarrollo de mapas / scripts mientras que los archivos zip utilizados por los usuarios finales.

Otras cosas a notar

  • Los nombres de los resources no pueden contener puntos.
  • Si el recurso es cualquier almacenamiento de archivos, los nombres de archivo utilizados no deben aparecer en el archivo meta.xml
  • Los archivos mostrados en meta.xml sólo deberían ser leídos por tus scripts. No los modifiques con xmlSaveFile, FileSave etc.
  • Cuando hagas la versión ZIP de tu resource, no incluyas archivos de guardado. Si tu resource los usa, que los cree cuando sea necesario.
  • Y cuando hagas la versión ZIP, sólo incluye a los archivos que se muestren en meta.xml. No incluyas "archivos de ejemplo", o cosas malas podrían pasar...
  • Y evita usar espacios o caracteres raros en los nombres de tus resources.

Script functions

Actualmente, los resources pueden ser manipulados por medio de scripts. Abajo las funciones correspondientes:


Los siguientes eventos también están ligados a los resources:


Traductores:

  • Corregido por The Kid
  • F4ST3R