เอกสาร Steamworks
ไฟล์มานิเฟสต์คำสั่ง

ภาพรวม

นอกเหนือจากการใช้เวิร์กชอป Steam สำหรับโฮสต์การกำหนดค่าแล้ว เกมยังสามารถเลือกชุดรวมการกำหนดค่าเข้ากับดีโปเกมได้โดยตรงอีกด้วย ชุดรวมการกำหนดค่ามีประโยชน์หลายอย่างในดีโปเกมของคุณ:
  • การกำหนดค่าอย่างเป็นทางการสามารถตรวจสอบได้ใน Perforce หรือในเครื่องมือควบคุมการปรับปรุงอื่น ๆ
  • การจัดการการกำหนดค่าระหว่างแบรนช์ของเกมคุณที่ต่างกัน หรือระหว่างไอดีแอปสาธารณะและไอดีแอปส่วนตัวที่ทำได้ง่ายขึ้น
  • ใช้การอัปเดตแบบอะตอมแทนที่จะทำผ่านสองขั้นตอนการเผยแพร่ใน Steamworks

รูปแบบ

ไฟล์มานิเฟสต์คำสั่งเป็นส่วนขยายของ In-Game Actions File ซึ่งรวมหมวดพิเศษที่มีรายการของการกำหนดค่าอย่างเป็นทางการแยกตามประเภทไว้:
"Action Manifest" { "configurations" { } "actions" { } "localization" { } }
โปรดไปที่เอกสาร In-Game Actions File เพื่อดูข้อมูลเกี่ยวกับหมวดคำสั่งและการแปลภาษา

รายการการกำหนดค่า

ในหมวดการกำหนดค่าคอนโทรลเลอร์ การกำหนดค่าจะถูกจัดรายการไว้ตามประเภทคอนโทรลเลอร์ และจะโหลดตามลำดับความสำคัญ ค่า "พาธ" จะแสดงรายการที่เกี่ยวข้องกับตำแหน่งของไฟล์มานิเฟสต์คำสั่งบนดิสก์
"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" { } }

ประเภทสตริงคอนโทรลเลอร์ที่รองรับ:

คอนโทรลเลอร์ Steam Deckcontroller_neptune
Steam Controllercontroller_steamcontroller_gordon
Xbox 360controller_xbox360
Xbox Onecontroller_xboxone
คอนโทรลเลอร์ Xbox One Elitecontroller_xboxelite
คอนโทรลเลอร์ PlayStation 4controller_ps4
คอนโทรลเลอร์ PlayStation 5controller_ps5
คอนโทรลเลอร์ Nintendo Switch Procontroller_switch_pro
เกมแพดทั่วไปcontroller_generic

การตั้งค่าไฟล์มานิเฟสต์คำสั่ง

มีสองวิธีหลักในการตั้งค่าไฟล์มานิเฟสต์คำสั่ง ไม่ว่าจะเริ่มจากการสร้างใหม่หรือใช้ไฟล์ IGA ที่มีอยู่แล้ว

เริ่มต้นด้วยไฟล์คำสั่งในเกม

ขั้นตอนที่ 1 - การตั้งค่าโหมดผู้พัฒนาสำหรับ Steam Input

ก่อนที่จะแก้ไขไฟล์มานิเฟสต์คำสั่ง เราจำเป็นต้องเปิดใช้งานโหมดผู้พัฒนา Steam Input เพื่อให้เราสามารถส่งออกการกำหนดค่าในฐานะผู้พัฒนาและได้รับข้อความแสดงข้อผิดพลาดหากเราทำผิดพลาดเมื่อแก้ไขมานิเฟสต์คำสั่ง

1) ไปที่โหมด Big Picture บน Steam ->การตั้งค่า->ระบบ และเปิดโหมดผู้พัฒนาสำหรับ Steam

export_prestep_1.png

2) ไปที่หมวดผู้พัฒนาและเปิด "รูปแบบของ Steam Input โหมดผู้พัฒนา"

export_prestep_2.png

ขั้นตอนที่ 2 - บันทึกการกำหนดค่า

หากคุณมีไฟล์ IGA อยู่แล้ว คุณสามารถบันทึกการกำหนดค่าปัจจุบันไว้ได้ในหน้าจอการกำหนดค่าคอนโทรลเลอร์

1) เลือกไอคอนรูปเฟือง

export_step_1.png

2) เลือก "ส่งออกรูปแบบ"

export_step_2.png

3) เลือกชื่อและคำอธิบายให้เกมของคุณแล้วส่งออกการกำหนดค่า
อย่าลืม: คุณจะต้องตรวจสอบอีกครั้งว่า คุณได้จัดเตรียมโทเค็นการแปลภาษาในมานิเฟสต์คำสั่งไว้ให้แต่ละภาษาที่เกมของคุณรองรับแล้ว

ขั้นตอนที่ 3 - ค้นหาการกำหนดค่าของคุณ

ขั้นถัดไป คุณจะเรียกใช้ URL Steam ต่อไปนี้เพื่อดัมป์การกำหนดค่าไปยังโฟลเดอร์ "Documents" ที่เฉพาะเจาะจงกับระบบปฏิบัติการของคุณ ตัวอย่างเช่น โฟลเดอร์ "My Documents" บน Windows URL:

บรรทัดคำสั่ง Windows
start steam://dumpcontrollerconfig?appid=X
บรรทัดคำสั่ง Linux
xdg-open steam://dumpcontrollerconfig?appid=X

คัดลอกทั้งการกำหนดค่าและไฟล์ IGA ที่คุณมีอยู่แล้วไปยังตำแหน่งที่ต้องการภายในโฟลเดอร์เกม

ขั้นตอนที่ 4 - แปลงไฟล์ IGA เป็นไฟล์มานิเฟสต์คำสั่ง

หากต้องการแปลงไฟล์ IGA ของคุณเป็นมานิเฟสต์คำสั่ง ให้แก้ไขไฟล์และเพิ่มหมวด "การกำหนดค่า" ในรายการของการกำหนดค่าคอนโทรลเลอร์ที่คุณเพิ่งส่งออกไป นี่คือตัวอย่างจาก Steamworks SDK:
"configurations" { "controller_xboxone" { "0" { "path" "xbox_controller.vdf" } } "controller_steamcontroller_gordon" { "0" { "path" "steam_controller.vdf" } } }

ขั้นตอนที่ 5 - กำหนดการตั้งค่า Steamworks

ในการกำหนดการตั้งค่า Steamworks บนเว็บไซต์พันธมิตร ให้ไปที่การตั้งค่า Steam Input ขั้นถัดไป เลือกเมนูดรอปดาวน์เป็น "การกำหนดค่าแบบกำหนดเอง (ชุดรวมพร้อมเกม)" และกรอกพาธตำแหน่งที่ตั้งของมานิเฟสต์คำสั่ง:

gamebundledconfigdropdown.PNG

การดีบักเกมที่ใช้ไฟล์มานิเฟสต์คำสั่ง

เมื่อเรียกใช้เกมผ่าน Steam ไฟล์มานิเฟสต์คำสั่งจะถูกดึงจากดีโปเกมของคุณโดยอัตโนมัติ หากคุณเรียกใช้ผ่าน IDE และมีเกมติดตั้งไว้แล้ว Steam จะใช้ไฟล์มานิเฟสต์คำสั่งจากดีโป Steam ของคุณเช่นกัน อย่างไรก็ตาม หากคุณเรียกใช้ไฟล์โดยไม่ติดตั้งเกมใน Steam หรือจำเป็นต้องเปลี่ยนแปลงภายในเครื่อง คุณก็สามารถกำหนดค่าทับพาธของมานิเฟสต์คำสั่งด้วยการเรียก SetInputActionManfiestPath API ได้ การกำหนดค่าทับนี้จะจดจำไว้ตลอดเวลาที่เหลืออยู่ในเซสชัน Steam ตัวอย่างการใช้งานใน Steamworks SDK ได้แก่:
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 );