Todo lo que puedas dejar en mods/ se puede publicar en el Steam Workshop, y quien se suscriba no tiene nada que copiar: Steam descarga el objeto y el juego lo lee directamente desde la propia carpeta de descargas de Steam.
Diez minutos la primera vez, dos minutos después. Lo único que hay que asumir de entrada: Steam no tiene un botón para subir objetos al Workshop. El único canal es SteamCMD, la pequeña herramienta de línea de comandos de Valve. Es igual para todos los juegos de Steam.
Cómo llega un objeto a un jugador
1. Pon tu contenido en una carpeta
Un objeto del Workshop es una carpeta, no un archivo, aunque solo contenga un circuito. Créala donde quieras en tu disco. Su estructura refleja la de mods/, así que un mismo formato de creación sirve para los dos canales:
MyItem/
my_pack.db ← un pack de mods
circuits/monaco.circuit ← un circuito (o en la raíz del objeto)
lang/pl.txt ← un pack de idioma (o pl.txt en la raíz)
Todo es opcional y un mismo objeto puede llevar los tres. Un archivo en la raíz del objeto solo se lee como idioma si su nombre tiene forma de código de idioma, así que un readme.txt al lado se queda tranquilo.
Después añade una imagen de vista previa junto a la carpeta, no dentro: un PNG o JPG de menos de 1 MB. Una captura del editor, o del trazado, sirve perfectamente.
2. Instala SteamCMD
De Valve: developer.valvesoftware.com/wiki/SteamCMD.
- Windows — descomprime
steamcmd.exeen una carpeta propia y ejecútalo una vez para que se actualice. - Linux — instala el paquete
steamcmdo descomprime el tarball.
3. Escribe item.vdf
Un pequeño archivo de texto, junto a tu carpeta. Cambia las rutas y el título:
"workshopitem"
{
"appid" "4514930"
"publishedfileid" "0"
"contentfolder" "C:\\Users\\me\\Workshop\\MyItem"
"previewfile" "C:\\Users\\me\\Workshop\\preview.png"
"title" "Monaco 1994"
"description" "Un circuito urbano cerrado, 3,3 km, 19 curvas."
"changenote" "Primera versión."
"visibility" "0"
}
| Campo | Notas |
|---|---|
appid | 4514930 — The Undercut. No lo cambies nunca |
publishedfileid | 0 crea un objeto nuevo. Tras la primera subida, SteamCMD escribe aquí el id real por ti |
contentfolder | Ruta absoluta a la carpeta de tu objeto. En Windows, duplica cada barra invertida |
previewfile | Ruta absoluta a la imagen, de menos de 1 MB. Opcional: puedes añadirla luego en la página del objeto |
visibility | 0 público · 1 solo amigos · 2 oculto. Empieza oculto si quieres revisar antes la página |
4. Sube el objeto
En un terminal o símbolo del sistema, con la cuenta de Steam que posee el juego:
steamcmd +login TU_NOMBRE_STEAM +workshop_build_item "C:\Users\me\Workshop\item.vdf" +quit
Pide tu contraseña y tu código de Steam Guard — es interactivo, así que ejecútalo tú mismo en vez de desde un script. Al terminar imprime el id del objeto y lo escribe en item.vdf.
Conserva item.vdf. Es tu llave del objeto: es lo que hace que la siguiente subida sea una actualización y no un duplicado. (SteamCMD reescribe el archivo y borra cualquier comentario que le pongas, así que guarda tus notas en otro sitio.)
5. Acepta el acuerdo y completa la página
Abre la página del objeto en el Workshop — Steam → Comunidad → Workshop → The Undercut → Tus archivos. En la primera subida, Steam te pide aceptar el acuerdo legal del Workshop, y el objeto permanece invisible hasta que lo hagas. A partir de ahí, título, descripción, imágenes y etiquetas se editan ahí.
6. Comprueba que funciona
Suscríbete a tu propio objeto. Steam lo descarga solo; no hay nada que copiar. Arranca el juego:
- un pack aparece en Nueva carrera → Mods personalizados
- un circuito aparece en las listas de circuitos de la configuración de carrera
- un idioma aparece en Ajustes → Idioma
Si no, ejecuta el juego con --list-mods desde su carpeta: imprime la carpeta del Workshop que ha resuelto, cada objeto suscrito que ha encontrado y todo lo que ha recogido cada escaneo.
Actualizar un objeto publicado
Sustituye los archivos en la misma carpeta, pon un changenote nuevo en item.vdf y ejecuta el mismo comando. Como publishedfileid ya contiene el id de tu objeto, este se actualiza en su sitio: sin duplicados, y los suscriptores reciben la versión nueva automáticamente.
Mientras iteras, recuerda que un archivo en tu propia carpeta mods/ gana a la copia suscrita del mismo nombre. Así pruebas un cambio en algo que ya has publicado, sin cancelar la suscripción.
Si algo va mal
| Síntoma | Qué comprobar |
|---|---|
| «Failed to update workshop item» | Todas las rutas de item.vdf deben ser absolutas y existir; la imagen de vista previa debe pesar menos de 1 MB |
| Inicio de sesión rechazado | SteamCMD es interactivo: escribe el código de Steam Guard cuando lo pida. La cuenta debe poseer el juego |
| La página del objeto está vacía tras una subida con error | Un id entregado por una creación que luego falló es un fantasma: no se confirmó nada. Solo es real un id que puedas abrir en el Workshop |
| El contenido no aparece en el juego | Comprueba la extensión (.db, .circuit, .txt) y su sitio dentro de la carpeta del objeto, y luego ejecuta --list-mods |
| En la demo no funciona nada | La demo y las builds de Next Fest salen sin soporte de mods en absoluto |