L4D - Creación de Archivos .VPK 27-Jun-2009, por Jack_wade
Como ya sabrás, el sistema de creación y, sobre todo, distribución de los mapas que componen una campaña de Left 4 Dead, difiere bastante con respecto a otros títulos basados en el motor Source, como por ejemplo Team Fortress 2.
El gran tamaño (en ocasiones superior a 100 Mb) que pueden llegar a tener una sola campaña, y la cantidad de ficheros "auxiliares" necesarios para el mapa muestre, por ejemplo el póster durante la campaña de carga o la imágenes en miniatura en la interfaz del menú ha desembocado en la creación de un nuevo formato de archivo cuya finalidad es la de "compactar" todo aquello que un mapa necesite para funcionar correctamente en un único fichero para su fácil distribución entre la comunidad de jugadores. Estos ficheros tienen la extensión .VPK.
En este tutorial os mostraré los pasos necesarios para poder crear, a partir de los mapas individuales que forman una campaña, texturas, modelos, el póster y demás ficheros un único archivo .VPK que necesitaréis si queréis que vuestro mapa pueda ser jugado en los servidores que usan el sistema Matchmaking para la creación de partidas on-line.
0. Introducción
Si estás leyendo este tutorial, doy por sentado que es por que ya tienes tu mapa o tus mapas listo(s) junto con el resto de archivos y lo único que necesitas es saber cómo hacer para crear un único archivo .VPK, ya que en este artículo no se tocan temas relacionados con el mapeo para Left 4 Dead o la creación de los pósteres para las campañas.
Este turorial está basado en el original "L4D Campaign Add-on Tutorial", un artículo que podéis encontrar en la Wiki de Desarrollo de Valve Software, sin embargo no es una mera traducción al castellano del mismo, ya que en este se profundizan en aquellos temas en los que he considerado que la Wiki deja más "al aire".
Al igual que en artículo original, con el objeto de ejemplificar los pasos, se utilizará la campaña-modelo "Dead Line" creada por VALVe y publicada con la actualización del 25 de junio de 2009 para todas aquellas personas que tuviesen instaladas el pack de herramientas de desarrollo "Left 4 Dead Authoring Tools". Para todos los demás, la campaña puede ser descargada desde este enlace.
1. Instalando L4D Authoring Tools
Aunque es un paso obvio para la mayoría de los mappers sobre todo al tratarse de un artículo que habla sobre la creación de un archivo .VPK (la última en el proceso de creación de una campaña jugable para L4D) un tutorial debería empezar siempre por el principio, y en este caso, el principio no es otro que la instalación del SDK de Left 4 Dead, las Authoring Tools, un paso indispensable para poder acceder al archivo ejecutable que nos permitirá crear el fichero .VPK en la parte final de nuestro tutorial, aparte de proporcionarnos todas las herramientas necesarias para la creación del mapa en si.
Podrás descargarlas de forma completamente gratuita en la pestaña "Herramientas" de tu cliente Steam, bajo el original nombre "Left 4 Dead Authoring Tools".
2. Creando la carpeta Add-on
Sitúate en la carpeta "addons" que para las instalaciones por defecto de encuentra en la ruta
Una vez dentro, crea una carpeta que contendrá los ficheros que formarán el archivo .VPK. El nombre que le des a la carpeta será el mismo que recibirá el archivo .VPK, así que intenta darle un nombre sencillo, que identifique a tu campaña de forma fácil, pero que no contenga espacios ni letras mayúsculas.
En el caso de la campana "Dead Line" la carpeta se "bautizó" con el nombre deadline, de esta forma:
Los archivos principales, son, a diferencia de los secundarios, aquellos que son indispensables para el correcto funcionamiento de la campaña dentro del juego. Aunque en el título ponga "creando" el proceso no se limita mas que a separar y diferenciar los archivos primarios de los secundarios y mover cada uno a sus respectivas carpetas.
Mapas
Obviamente, la parte fundamental de la campaña. Los ficheros con la extensión .BSP y .NAV se incluyen dentro de esta categoría y deberán ser movidos a la carpeta "maps" dentro de la carpeta add-on que has creado en el paso anterior y que en el caso de la campaña de ejemplo "Dead Line" queda de esta forma:
CÓDIGO
...\left4dead\addons\deadline\maps
Siguiendo con el ejemplo, los mapas de los que se compone la campaña Dead Line y que se incluyeron dentro de esa carpeta fueron:
Texturas
Dentro de esta categoría se incluyen los ficheros .VTF y .VMT que, deberían ir en la carpeta "materials" dentro de la carpeta add-on que creaste en el paso 2 y que, en el caso de la campaña de ejemplo quedó de la siguiente forma
CÓDIGO
...\left4dead\addons\deadline\materials
Modelos
Los archivos con la extensión .MDL deberían ir en la carpeta "models", dentro de la carpeta add-on que creaste en el paso 2. En el caso de "Dead Line":
CÓDIGO
...\left4dead\addons\deadline\models
Los materiales necesarios para la creación de esos ficheros .MDL, deberían a su vez en una carpeta llamada "models" pero creada en vez de en la raíz de la carpeta add-on, en otra con el nombre "materials", de la siguiente forma:
CÓDIGO
...\left4dead\addons\deadline\materials\models
4. Creando los archivos secundarios
Los archivos secundarios son aquellos que no son indispensables para jugar la campaña, pero que otorgan a la misma cierto grado de "profesionalidad". Son el póster de la campaña y las imágenes "vista previa" que aparecen en el menú del juego y que deberán ser movidas a la carpeta "vgui" dentro de "materials", de la siguiente forma:
CÓDIGO
...\left4dead\addons\deadline\materials\vgui
Póster de campaña
En la carpeta que se ha especificado al inicio de este apartado deberás poner 2 archivos .VTF con sus respectivos .VMT's:
LoadingScreen_Nombredetumapa.vtf Es el póster que se muestra en la pantalla de carga de la partida. Su tamaño estándar es de 1024 x 1024 píxeles con un canal alfa para la transparencia.
OutroTitle_Nombredetumapa.vtf Es el título de la campaña que se muestra tras los créditos/estadísticas al finalizar la campaña. Su tamaño estándar es de 1024 x 256 píxeles. El diseño del mismo debería hacer un buen contraste con el fondo negro, pero a su vez no dificultar la visualización de las letras blancas que van apareciendo por delante de él.
Vista previa de las campañas
Aquí deberás incluir los ficheros .VMT y .VTF que servirán para mostrar en el menú "Capítulos" unas pequeñas imágenes que proporcionan a los jugadores una idea de cómo es tu mapa. Deberás crear una vista imagen de vista previa (una única imagen = 1 archivo .VTF y 1 archivo .VMT) por cada mapa que haya en tu campaña.
Los mapas iguales pero que se juegan en distintos modos pueden compartir imagen.
Las imágenes deberán tener unas dimensiones de 256 x 128 píxeles y deben llamarse igual que el archivo .BSP (el mapa) que pretenden representar. Se colocarán en la carpeta "maps" situada dentro de "materials\vgui", de la siguiente forma:
CÓDIGO
...\left4dead\addons\deadline\materials\vgui\maps
5. Archivos Metadata
Básicamente son aquellos que proporcionan información al sistema Matchmaking acerca del nombre de tu campaña, la versión de la misma y el lugar desde donde las personas que intenten entrar a una partida donde se este jugando la campaña y estas no lo tengan instalado, puedan bajárselo. Esta información se mostrará en el submenú "Add-ons", dentro del apartado "Extras" de L4D.
addoninfo.txt
Un fichero de texto que deberás incluir en la carpeta que creaste en el paso nº 2 de este tutorial y que en el caso de "Dead Line" es:
CÓDIGO
...\left4dead\addons\deadline
El archivo puedes copiarlo y pegarlo directamente del spoiler que te ofrezco a continuación, tan solo modificando las variables que se encuentran entre comillas siguiendo las instrucciones que se encuentran a la derecha, en cada línea. El archivo de ejemplo pertenece a la campaña Dead Line:
SPOILER
CÓDIGO
// The addoninfo.txt file is a metadata file that is required by all Left 4 Dead Add-ons.
"AddonInfo" { addontitle "Dead Line" // Título de no más de 20 carácteres de longitud addonversion 1.3 // Versión del Add-on. NO MODIFICAR addontagline "Catch the last subway... out of hell." // Sobrenombre de la campaña, de no más de 100 carácteres de longitud. addonauthor "Valve" // Nombre del Autor addonauthorSteamID "http://steamcommunity.com/groups/Valve" // Perfil de Steam o Grupo de Steam Community del creador del mapa.
addonContent_Campaign 1 // Conservar el valor 1 si los mapas conforman una campaña (múltiples mapas con un final) o cámbialo a 0 si es un único mapa para el modo supervivencia.
addonURL0 "http://media.steampowered.com/apps/513/deadline.html" //La dirección de Internet desde donde se puede bajar el fichero.
// Una pequeña descripción de la campaña addonDescription "Survivors must escape on a subway train in this short tutorial example campaign. Get source files and tools for creating your own campaigns by downloading the Left 4 Dead Authoring tools SDK, which is available under the 'Tools' tab in Steam."
}
Lo más importante de este archivo es especificar una URL de Internet desde donde los usuarios se puedan bajar el fichero .VPK. El lugar desde donde alojes el fichero final, debe de ser imperecedero, a fin de que no te lo borren y debe contar con un ancho de banda considerable, ya que si tu campaña se vuelve famosa... puede descargarlo mucha gente.
Aléjate de los hostings gratuitos de archivos que tienen la velocidad de descarga o el número de descargas por día limitados, como Megaupload o RapidShare. Personalmente te recomiendo FileFront.
Y ahora me dirás ¿Cómo puedo poner la dirección de Intertet desde donde se puede bajar el .VPK si todavía no me lo he creado? Pues bien, deberás poner la dirección de una página web que ofrezca el link de descarga del archivo cuando este este creado y subido a tu Hosting, como la dirección de tu blog, tu página web personal, tu Portafolio, etc. Puedes tomar como ejemplo la URL de referencia de la campaña "Dead Line".
missionfile.txt
Otro archivo de texto que deberás incluir en la carpeta "missions" de la siguiente forma:
CÓDIGO
...\left4dead\addons\deadline\missions
De nuevo puedes copiar y pegar la información que se encuentra dentro de este spoiler modificando las variables que se encuentran dentro de las comillas:
SPOILER
CÓDIGO
// Mission files describe the metadata needed by campaign-specific add-ons so they can be // integrated into Left4Dead. The data in this file is used by the game UI, matchmaking and server. // Although you may provide multiple Campaigns in one add-on by putting more than one .TXT file // in the missions folder, it's generally a good idea to stick to one per add-on. // // HOW TO DEBUG MISSION FILES: // In the console set "developer 2" // Then type "mission_reload" // This will make the game reload all the mission files and print out every chapter for every mode it // finds. It's very useful to ensure that your mission file is being correctly read.
"mission" { // El nombre de la campaña. Debe ser corto y único. "Name" "Dead Line"
// La versión de tu campaña/mapa. Cada vez que realices algún cambio deberás // incrementar el valor de esta variable. // Aquellas personas que tengan una versión anterior serán redirigidas a la web que // especifiques más adelante para que se descarguen la nueva versión. // Solo admite números enteros, "Version" "3"
// Autor de la campaña. "Author" "Valve"
// Página web desde donde las personas que no dispongan la campaña puedan bajársela "Website" "http://media.steampowered.com/apps/513/deadline.html"
// Nombre y sobrenombre/descripción de la campaña. "DisplayTitle" "Dead Line" "Description" "Catch the last subway... out of hell."
// La ruta del archivo .VMT que especificaste en el paso 4 de este tutorial // por ejemplo OutroTitle_Nombredetumapa.vtf. "OuttroImage" "vgui\OutroTitle_Deadline"
// Loading poster data // // El archivo .VMT del poster que especificastes en el paso 4 de este tutorial // Deja vacías las variables posterTitle y posterTagline si el póster ya incluye // un título y un subtítulo. "poster" { "posterImage" "LoadingScreen_DeadLine"
"posterTitle" "" "posterTitle_y" "360"
"posterTagline" "" "posterTagline_y" "372"
// Ajusta estas coordenadas para hacer coincidir a los supervivientes. // del póster con sus nombres. (0,0) es el centro del póster. // Usa un programa de edición fotográfica para determinar las coordinadas de // un punto en la imagen.
// En este apartado deberás especificar el modo de juego en el que se jugarán // tus campañas y el orden de los mapas. Puedes usar un mismo mapa en 2 // modos de juego, como sucede en el mapa l4d_deadline02, que se usa para coop // y para survival. // // Modos de juego soportados: "coop", "versus", "survival" // // Numera el capítulo al que pertenece cada mapa empezando por "1" // // En "Map" pones el nombre del mapa sin la extensión .bsp // En "DisplayName"el nombre del capítulo // En "Image" la ruta del archivo vista previa que creaste en el paso 4.
Si has realizado todos los pasos anteriores correctamente, tu campaña debería estar lista para ser empaquetada, pero antes te conviene comprobar que los parámetros que has introducido en los archivos metadata son correctos y que no te falta por mover ninguna textura o modelo.
Accede al menú "Add-ons" que se encuentra dentro del subapartado "Extras" del menú principal de Left 4 Dead. Deberías ver el título de tu campaña correctamente puesto. Puedes usar el comando path en consola para que esta muestre la ruta en donde se encuentran los archivos de la campaña y que debería coincidir con la que especificaste en el paso nº 2 de este tutorial.
Juega la campaña y comprueba que no te has dejado ninguna textura, modelo... que el póster de la campaña se carga correctamente, que aparecen las miniaturas de la vista previa, el órden de las campañas, su descripción, su título... en resumen, que todo esté bien.
7. Empaquetando
Ha llegado el momento de crear el archivo .VPK propiamente dicho. Accede a la ruta
y localiza el archivo vpk.exe. Crea un acceso directo del archivo en el escritorio, arrastra la carpeta que creaste en el paso nº 2 de este tutorial y que se encuentra dentro de "addons" sobre el acceso directo que acabas de crear y ¡voilá! tendrás un archivo .VPK justo al lado de la carpeta original.
Ahora prueba que el fichero funcione de forma correcta. Elimina o mueve a un lugar seguro la carpeta que creaste en el paso nº 2 junto con todo su contenido y haz doble click en el archivo de texto .VPK. El fichero debería descomprimir toda la carpeta que moviste o borraste anteriormente ¡como si nada hubiera pasado!.
Ahora crea una partida en red o sube el fichero a un servidor de juegos. Si todo es correcto aquellos jugadores que intenten unirse y que no tengan la campaña instalada, les debería aparecer la URL que especificaste en los archivos metadata para descargarse el fichero .VPK. Una vez descargado e instalado, no deberían tener ningún problema para jugar tu campaña.
#1 - 29-06-2009 por Theck
Te pongo errores que he visto.
Segundo párrafo (donde la imagen de francis):
CITA
ha desembocado en la creación de un nuevo formato de archivo cuya finalidad se la de "compactar" todo aquello que un mapa necesite para funcionar
Tercer párrafo
CITA
si queréis que vuestro mapa pueda ser jugado en los servidores de usan el sistema Matchmaking
Primer párrafo de la introducción:
CITA
Si estas leyendo este tutorial,
Esto no es una errata pero lo comento FYI:
CITA
Los materiales necesarios para la creación de esos ficheros .MDL, deberían a su vez en una carpeta llamada "models" pero creada en vez de en la raíz de la carpeta add-on, en otra con el nombre "materials", de la siguiente forma:
En realidad los puedes poner donde quieras dentro de materials, cuando compilas el modelo le dices con la propiedad cdmaterials donde están los materiales del modelo. Obviamente todo el mundo usa la carpeta models, pero ni tiene porque ser esa, ni tiene porque quedarse en models ya que puedes usar subcarpetas.
De todas formas, si has hecho modelos sabes donde los tienes
#2 - 29-06-2009 por Jack_wade
Gracias por las correcciones, Theck. Con respecto a lo último, yo no he creado nunca modelos así que me limité a traducir lo que ponía en el artículo original.
Saludos
#3 - 29-06-2009 por Elgroxo
PD: Buen tutorial, me ayudara mucho... cuando VALVE ARREGLE el tema de que el sdk me para las VOCES del l4d al INGLES
#4 - 29-06-2009 por Theck
Jack, me estoy dedicando a traducir al castellano la entrada de la wiki de Valve de donde has sacado la información, no te extrañe que acuda a tu tutorial en busca de algunos palabros porque creo que tu has esquivado de forma muy sutil tener que traducir "asset" xD
groxo, no se que impide el idioma de las voces hacer mapas, pero bueno, me preocupa más que 4 de 2 veces que le doy a "Flags" pete el Hammer, la verdad.
#5 - 29-06-2009 por Jack_wade
Yo es que de assets solo me se el significado "financiero" de la palabra, "activos" creo que es pero, assets tal y como viene en ese contexto no se como se traduce al castellano, así que me he salido por la tangente y he usado una "interpretación libre" de la palabra xD
Puedes copypastear lo que quieras, la información es de todos y cuando se trata de obtener diversión a través de ella pues aún mejor ^^
#6 - 29-06-2009 por kratos_29
genial!
y explicado como si fueramos tontitos, que es la mejor manera. Poco a poco y explicando cada detallito