Garry's Mod

Garry's Mod

Not enough ratings
Gmod Técnico: ¿Como funciona el spawnlist?
By mox
Aprende como funciona y comporta el spawnlist (la lista de secciones que aparecen en la lista de objetos en el modo Sandbox), y tambien como crear los tuyos y configurar los que ya estan en los archivos de Garry's Mod.
   
Award
Favorite
Favorited
Unfavorite
Introduccion
Apenas se juega en el modo Sandbox, las listas de objetos son indispensables para poder interactuar con los contenidos del juego (como props, ragdolls, etc.), de otros juegos (como TF2, L4D, etc.) y de Addons instaladas desde la Steam Workshop. Sin ellas seria mucho mas complicado interactuar con tales objetos.

Los spawnlist tienen opciones que los hacen ser personalizabes segun el usuario desee, por ejemplo: creando un spawnlist con objetos provenientes de Addons (como ragdolls), y que permitan el acceso a objetos de juegos acoplados a Garry's Mod, por ejemplo: al acoplar Team Fortress 2, aparecera una lista llamada "Team Fortress 2" conteniendo la mayoria de objetos del juego; pero, no todos los juegos acoplados tienen sus propio spawnlist (como Portal 2, L4D2, etc.)(tambien aplica a los contenidos externos en la carpeta "addons"), que en esos casos, buscar los objetos de tal juego es mucho mas complicado o incluso imposible dentro del juego.

Por eso, esta guia te explicara como funcionan, a como configurarlos e incluso crear los spawnlists de juegos que no tienen (o tienen los contenidos externos) y de objetos provenientes de addons de la Steam Workshop, y de esa forma tener tu lista de objetos (menu "Q") mucho mas ordenada.
Definiciones
Click para ver la imagen completa
Desde ahora, los nombres estaran haciendo referencia a:
  • Lista de objetos: El menu de Sandbox.
  • Objeto/s: Los objetos pertenecientes a una seccion.
  • Seccion/es: Es la lista que contiene los objetos.
  • Spawnlist: La lista de secciones que posee la lista de objetos.
Ubicacion
La ubicacion de los archivos del spawnlist se encuentran en:
GarrysMod\garrysmod\settings\spawnlist.

Los archivos de las secciones son ".txt", y dependiendo de su contenido puedes modificar:
  • Los objetos que contendra.
  • Texto.
  • La ubicacion de esa seccion en la spawnlist.
  • Icono distintivo.
Y varias cosas mas. A continuacion veremos su estructura.
Estructura
En algunas secciones, siempre estara esta estructura (ejemplo de "011-Left 4 Dead.txt"):
"TableToKeyValues" { "parentid" "0" "icon" "games/16/left4dead.png" "id" "11" "contents" { } "needsapp" "left4dead" "name" "Left 4 Dead" "version" "3" }
  • parentid: define a que ID debe ser una sub-seccion. Si es 0, pertenece al nivel mas alto.
  • icon: el icono que representara a la seccion que aparecera en el spawnlist.
  • id: la ID que representa a la seccion (debe ser unico).
  • contents: los contenidos de la seccion (explicado mas adelante).
  • needsapp: define que juego se necesita estar acoplado a Garry's Mod para que la seccion aparesca (explicado mas adelante).
  • name: el nombre de la seccion que aparecera en el spawnlist.
  • version: en realidad... no lo se xD
La estructura que posee dentro de "contents" es la siguiente:
Texto en la lista de objetos:
"<numero>" { "type" "header" "text" "<texto que se desea>" }
Objetos representando modelos, props, ragdolls, etc.:
"<numero>" { "type" "model" "model" "<ubicacion del modelo>" "wide" "128" "tall" "512" }
  • numero: representa el orden de los objetos. No es necesario cambiarlo, se puede editar desde el mismo juego.
  • type: el tipo del objeto, si es "header", debe tener un texto, si es "model", debe contener un modelo.
  • text: el texto que se mostrara (el tipo del objeto debe ser "header").
  • model: la ubicacion del modelo que se mostrara (el tipo del objeto debe ser "model").
  • wide - tall: el tamaño con que aparecera el objeto. Si no aparecen esas lineas, es porque se esta utilizando el tamaño predeterminado (64x64). No es necesario cambiarlo, se puede editar desde el mismo juego.
Segun estas configuraciones, las secciones y objetos de este se comportaran diferente en el spawnlist.
Comportamiento
"id" y "parentid"
Click para ver la imagen completa
En este caso, utilizare como ejemplo mi spawnlist.

Como se puede ver aqui, la "ID" y el "parentID"son diferentes:

La ID es el numero que representa a cada seccion, debe ser unico, y determina el orden de los elementos. En la imagen esta escrito de color rojo.

El Parent ID representa la correspondencia de un sub-nivel a un ID, en la imagen esta escrito de color azul. Un ejemplo mas claro del funcionamiento del Parent ID utilizando una lista:
  • Seccion 1
  • Seccion 2
  • Seccion 3
    • Seccion 4 - Sub-nivel de Seccion 3
    • Seccion 5 - Sub-nivel de Seccion 3
      • Seccion 6 - Sub-nivel de Seccion 5
      • Seccion 7 - Sub-nivel de Seccion 5
  • Seccion 8
    • Seccion 9 - Sub-nivel de Seccion 8
    • Seccion 10 - Sub-nivel de Seccion 8
En otras palabras, Parent ID se puede definir como "sub-nivel de...", y si el valor es 0, pertenece al nivel mas alto (la carpeta "Tus listas de objetos").

No es necesario cambiarlo desde el ".txt", mas adelante explico como cambiarlo desde el mismo juego.



"needsapp"
Click para ver la imagen completa
La seccion solo aparecera en el spawnlist si el juego al que se le asigno esta acoplado a Garry's Mod. Como se ve en la imagen, si se desacopla Left 4 Dead 2, la seccion de dicho juego no aparecera, a menos que se vuelva a acoplar. Si no se tiene el juego acoplado, pero si los contenidos externos, solo con borrar la linea de "needsapp" de la seccion del juego lo hara aparecer en el spawnlist, y podras utilizar sus objetos.

Para asignar esta condicion a una seccion, debes tener en cuenta el nombre de la aplicacion, no del juego, aunque guardan un parecido, algunas veces puede ser diferente. Aqui algunos ejemplos:

Nombre del juego
Nombre de la aplicacion
Counter-Strike: Source
"cstrike"
Day of Defeat
"dod"
Counter-Strike: Global Offensive
"csgo"
Team Fortress 2
"tf"
Left 4 Dead
"left4dead"

Los valores de ID y Parent ID no cambiaran, es decir, si se vuelve a acoplar, la seccion aparecera en la misma posicion y orden en el spawnlist.

"contents"
Click para ver la imagen completa
El numero de rojo sobre cada objeto es el orden que se le asigno a los objetos (mas arriba definido como "<numero>").
No es necesario cambiarlo desde el ".txt", mas adelante explico como cambiarlo desde el mismo juego.









En este caso, los contenidos dentro del ".txt" estarian organizados de esta forma:
"1" { "type" "header" "text" "Gears" } "2" { "type" "model" "model" "models/props_phx/gears/bevel12.mdl" } "3" { "type" "model" "model" "models/props_phx/gears/bevel24.mdl" }
Para introducir un texto, debes crear un objeto de texto (explicado anteriormente), asegurandote que el "numero" sea unico (puede ser el sucesor del anterior).
"1" { "type" "header" "text" "Gears" } "2" { "type" "model" "model" "models/props_phx/gears/bevel12.mdl" } "3" { "type" "model" "model" "models/props_phx/gears/bevel24.mdl" } "4" { "type" "header" "text" "<texto que desees>" }
Mas adelante explico como hacerlo paso a paso.

"wide" y "tall"
Click para ver la imagen completa
Como mencione anteriormente, no es necesario cambiarlo desde el ".txt", ya que se puede hacer desde el mismo juego, simplemente tocando click derecho sobre el objeto y seleccionar "Resize". Mas adelante explico como hacerlo en un ejemplo.

Ahora que sabes como se comportan las secciones segun sus configuraciones en los archivos del juego, veamos ahora como crear una seccion personalizada.
Creacion
Crenado una seccion, puedes organizar tu spawnlist para que tus objetos esten mas organizados, incluyendo los objetos provenientes de addons de la Steam Workshop. Para este caso, creare una seccion que contendra ragdolls de Mortal Kombat.
http://steamproxy.net/sharedfiles/filedetails/?id=570852861
Crear una seccion
Click para ver la imagen completa
Para crear una seccion en el nivel mas alto, haz click derecho sobre la carpeta "Tus listas de objetos", y toca "New Category". Si quieres crear tu seccion dentro de otra seccion como sub-nivel, haz lo mismo: click derecho en la seccion y click en "New Category".









Click para ver la imagen completa
Para editar el nombre e icono de tu seccion, haz click derecho sobre el y selecciona "Edit". Hay una gran lista de iconos para escojer.











Click para ver la imagen completa
Si deseas cambiar la posicion de tu seccion, arrastrala hasta la ubicacion que desees. En este caso, la transforme en un sub-nivel de la seccion "Addon Content" que yo habia creado.










Click para ver la imagen completa
Despues, busca el objeto que deseas añadir a tu seccion, puedes explorar la lista de objetos completa de addons de la Steam Workshop o de otros juegos acoplados en la seccion "Examinar" (no aplica a juegos con contenidos externos, en ese caso, revisa el comportamiento de "needsapp").











Click para ver la imagen completa
Teniendo el objeto que deseas añadir, arrastra el objeto a tu seccion y luego al espacio vacio. No funciona arrastrar y soltar sobre la seccion, debes esperar a que la seccion se abra al tener el objeto arrastrado sobre la seccion y luego arrastrarlo dentro.












Click para ver la imagen completa
Si deseas, puedes cambiar el tamaño de como se mostrara el objeto. Tocando click derecho sobre el objeto y seleccionando "Resize".

Tambien puedes cambiar el icono del objeto (la posicion en como se muestra el objeto) seleccionando "Edit Icon", pero eso no lo explicare ahora.







Click para ver la imagen completa
Cuando hayas terminado de organizar y añadir tus objetos, guarda los cambios presionando el boton que se muestra en la imagen.

De esta forma ya tendrias tu seccion creada, ahora veremos como colocar un texto dentro de nuestra seccion.











Crear un objeto de texto
Para organizar aun mas tu seccion, puedes agregar un objeto de texto. Aunque esto se hace fuera del juego.

Click para ver la imagen completa
Accede a la ubicacion de los archivos ".txt" de las secciones (mencionado anteriormente), y busca la seccion a la que quieres agregar el texto.







Click para ver la imagen completa
En este caso, abri el archivo de la seccion que acabamos de crear.






A continuacion, copiamos las lineas debajo de "contents":
"1" { "type" "model" "model" "models/iffy/mk9/sub-zero/bi-han.mdl" "wide" "128" "tall" "256" }
Click para ver la imagen completa
Y lo pegamos como se ve en la imagen. Se recomienda pegarlo en los ultimos objetos.






Click para ver la imagen completa
Luego editamos los valores:
  • El "numero" debe ser el sucesor del anterior.
  • El tipo de objeto debe ser cambiado a "header".
  • Debemos borrar las lineas "wide" y "tall".
  • Cambiar "model" por "text" y cambiar la direccion del modelo por el texto que queramos, en este caso "Mortal Kombat 9".
Luego guardamos y abrimos Garry's Mod.
Resultados
Si seguiste los pasos y no te confundiste, la seccion que creamos anteriormente deberia quedar asi:
Click para ver la imagen completa
Puedes arrastrar el objeto de texto para organizar mejor tu seccion, y no te olvides de guardar los cambios.

Y de esa forma ¡ya puedes hacer todo lo que quieras con tu spawnlist!.

Gracias por leer esta guia, espero que no se hayan confundido. Si te gusta la vida facil y quieres obtener las secciones de Left 4 Dead 2 y Portal 2, prueba estos addons:
http://steamproxy.net/sharedfiles/filedetails/?id=408771382
http://steamproxy.net/sharedfiles/filedetails/?id=465425937

Si te confundiste, te quedaste atascado en un paso, o necesitas mas informacion, no dudes en discutirlo en los comentarios.
2 Comments
felinelyContradiction 10 Mar, 2016 @ 5:29am 
Las instrucciones no fueron muy claras, mi pene quedo atascado en el cpu por alguna razon. ayuda
[UC]Jose76Tron (ESP) 8 Mar, 2016 @ 9:33am 
Muchas gracias!