Descripción general
Además de utilizar Steam Workshop para alojar configuraciones, también se puede optar por empaquetar las configuraciones del juego directamente con los repositorios de este. Alojar configuraciones en repositorios de juegos ofrece una serie de beneficios:
- Las configuraciones oficiales se pueden verificar con Perforce u otras herramientas de control de versiones.
- La administración de las configuraciones entre diferentes ramas del juego o entre un id. de aplicación público y uno privado es más fácil.
- Las actualizaciones son atómicas en lugar de realizarse a través de los dos pasos de publicación en Steamworks.
Formato
El archivo de manifiesto de acciones es una extensión del
archivo de acciones en el juego que incluye una sección adicional con una lista de configuraciones oficiales separadas por tipo:
"Action Manifest"
{
"configurations"
{
}
"actions"
{
}
"localization"
{
}
}
Para obtener información sobre las secciones "action" y "localization", consulta el artículo
Archivo de acciones en el juego.
Lista de configuración
En la sección de configuración del control, las configuraciones se ordenan por tipo de control y, a continuación, por prioridad de carga. El valor "path" se indica de manera relativa a la ubicación del archivo del manifiesto de acciones en el disco.
"Action Manifest"
{
"configurations"
{
"controller_xboxone"
{
"0"
{
"path" "xbox_controller.vdf"
}
}
"controller_steamcontroller_gordon"
{
"0"
{
"path" "steam_controller.vdf"
}
"1"
{
"path" "steam_controller_motion_controls.vdf"
}
}
}
"actions"
{
}
"localization"
{
}
}
Cadenas de tipos de controles compatibles:
Control de Steam Deck | controller_neptune |
Steam Controller | controller_steamcontroller_gordon |
Xbox 360 | controller_xbox360 |
Xbox One | controller_xboxone |
Control Xbox Elite | controller_xboxelite |
Control de PlayStation 4 | controller_ps4 |
Control de PlayStation 5 | controller_ps5 |
Control Pro de Nintendo Switch | controller_switch_pro |
Controles genéricos | controller_generic |
Configuración de un archivo de manifiesto de acciones
Hay dos maneras principales de configurar un archivo de manifiesto de acciones: partiendo de cero o utilizando un archivo de acciones en el juego (IGA) ya existente.
Utilizando un archivo IGA ya existente
Paso 1: configuración del modo desarrollador para Steam Input
Antes de editar el Archivo de manifiestos de acciones, debemos activar el modo desarrollador de Steam Input para que podamos exportar configuraciones como desarrolladores y recibir mensajes de error si los cometemos al editar los manifiestos de acciones.
1) Ve al modo Big Picture de Steam ->Ajustes->Sistema y activa el modo desarrollador para Steam.
2) Ve a la sección de desarrolladores y activa el "Modo de desarrollo de disposiciones de Steam Input".
Paso 2: guarda una configuración
Si tienes un archivo IGA existente puedes guardar la configuración actual si vas a la pantalla de configuración del control.
1) Selecciona el ícono de engranaje.
2) Selecciona "Exportar disposición".
3) Selecciona un título y una descripción para tu juego y exporta la configuración.
Recordatorio: Tienes que verificar que hayas configurado tokens de localización en el manifiesto de acciones para cada idioma compatible con tu juego.
Paso 3: busca tu configuración
A continuación, tienes que ejecutar el siguiente URL de Steam para volcar la configuración en la carpeta de documentos específica de tu sistema operativo (p. ej., "Mis documentos" en Windows). URL:
Línea de comandos de Windows
start steam://dumpcontrollerconfig?appid=X
Línea de comandos de Linux
xdg-open steam://dumpcontrollerconfig?appid=X
Copia tanto la configuración como el archivo IGA ya existente en la ubicación deseada dentro de la carpeta del juego.
Paso 4: convierte el archivo IGA en archivo de manifiesto de acciones
Para convertir tu archivo IGA en un manifiesto de acciones, edita el archivo y agrega una sección "configuration" que incluya una entrada para la configuración de control que acabas de exportar. Este es un ejemplo del SDK de Steamworks:
"configurations"
{
"controller_xboxone"
{
"0"
{
"path" "xbox_controller.vdf"
}
}
"controller_steamcontroller_gordon"
{
"0"
{
"path" "steam_controller.vdf"
}
}
}
5) Establece la configuración de Steamworks.
Para establecer tu configuración de Steamworks en el sitio de asociados, navega hasta la configuración de Steam Input. A continuación, elige en el menú desplegable "Configuración personalizada (asociada con el juego)" e incluye la ruta donde se encuentra el manifiesto de acciones:
Depuración de juegos que utilizan archivos de manifiestos de acciones
Al ejecutar el juego por Steam se extraerá el archivo de manifiesto de acciones automáticamente de los repositorios del juego. Si estás ejecutándolo en un IDE y tienes el juego instalado, Steam también usará el archivo de manifiesto de acciones en tus repositorios de Steam. Por el contrario, si estás ejecutándolo sin tener el juego instalado en Steam, o si tienes cambios locales que necesitas implementar, entonces puedes sobrescribir la ruta del archivo de manifiesto de acciones con la llamada de la API SetInputActionManfiestPath. Esta sustitución será recordada en el resto de la sesión de Steam. Hay un ejemplo de su uso en el SDK de Steamworks:
char rgchCWD[1024];
if ( !_getcwd( rgchCWD, sizeof( rgchCWD ) ) )
{
strcpy( rgchCWD, "." );
}
char rgchFullPath[1024];
#if defined(_WIN32)
_snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s\\%s", rgchCWD, "steam_input_manifest.vdf" );
#elif defined(OSX)
_snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s/steamworksexample.app/Contents/Resources/%s", rgchCWD, "steam_input_manifest.vdf" );
#else
_snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s/%s", rgchCWD, "steam_input_manifest.vdf" );
#endif
SteamInput()->SetInputActionManifestFilePath( rgchFullPath );