ยินดีต้อนรับสู่ทรัพยากรการดัดแปลงอย่างเป็นทางการสำหรับกัปตันของเกมอุตสาหกรรม
ปัจจุบัน COI มีให้บริการบน Steam และอยู่ในระยะเริ่มต้น ในขณะที่การดัดแปลงเป็นไปได้ แต่ก็ยังไม่ได้รับการสนับสนุนอย่างเป็นทางการ เรากำลังทำงานอย่างต่อเนื่องเพื่อปรับปรุงการสนับสนุนและเอกสารประกอบ
โปรดทราบว่าการสนับสนุน MOD เป็นการทดลองและ API อาจมีการเปลี่ยนแปลง หากคุณมีปัญหาให้ตรวจสอบบันทึกใน %APPDATA%/Captain of Industry/Logs
พวกเขามีข้อมูลที่เป็นประโยชน์มากมาย หากคุณต้องการหารือเกี่ยวกับหัวข้อการดัดแปลงกับชุมชนและ devs โปรดไปที่ Discord Channel #Modding-Dev-General ของเรา (คุณจะต้องกำหนดบทบาท Mod creation
ของตัวเองในช่องทาง #pick-your-roles-here
) นอกจากนี้คุณยังสามารถยื่นปัญหาได้ที่นี่ใน GitHub แต่เวลาตอบสนองจากทีมงานของเราอาจล่าช้า
ในการเริ่ม Modding COI คุณจะต้อง:
Properties...
-> Local Files
-> Browse
C:/Steam/steamapps/common/Captain of Industry
)COI_ROOT
และตั้งค่าให้กับเส้นทางรูทของเกมที่คัดลอกมาข้างต้น บน Windows ให้ใช้เครื่องมือ Edit environmental variables
มีประโยชน์เพียงเปิดเมนูเริ่มและพิมพ์ Edit env
และคุณควรดูExampleMod
ในการกำหนดค่า Release
ตัวที่ src/ExampleMod/ExampleMod.sln
เราขอแนะนำให้ใช้ Visual Studio แต่อย่าลังเลที่จะใช้เครื่องมืออื่น ๆ เช่นคำสั่ง dotnet build
Console ใน Visual Studio คุณควรเห็นแอสเซมบลีที่ขึ้นอยู่กับทั้งหมดที่เชื่อมโยงอย่างถูกต้อง ถ้าไม่และคุณเห็นข้อผิดพลาดมากมายให้ตรวจสอบตัวแปร COI_ROOT
สิ่งแวดล้อมของคุณลองรีสตาร์ทExampleMod.dll
ใน /bin/Release/net471
%APPDATA%/Captain of Industry
Mods
ข้างในให้สร้างไดเรกทอรีใหม่ที่มีชื่อเดียวกับ mod dll ของคุณในกรณีของเรามันเป็น ExampleMod
คัดลอก ExampleMod.dll
ที่คอมไพล์ที่นั่นเพื่อให้เป็น %APPDATA%/Captain of Industry/Mods/ExampleMod/ExampleMod.dll
โปรดทราบว่าชื่อไดเรกทอรีและชื่อ DLL ต้องตรงกันMiscellaneous
เปิดใช้งานการสนับสนุน MOD และรีสตาร์ทเกมเพื่อให้การตั้งค่ามีผลExampleMod
นั้นโหลดโดยการค้นหาโหนดใหม่ในแผนผังวิจัย (เปิดโดยใช้คีย์ G
) ในกรณีที่มีข้อผิดพลาดใด ๆ ให้ตรวจสอบบันทึกใน %APPDATA%/Captain of Industry/Logs
สินทรัพย์เช่นไอคอนหรือโมเดล 3 มิติสามารถสร้างได้โดยใช้ตัวแก้ไข Unity ขณะนี้เราใช้ Unity 2022.3.5F1 และขอแนะนำให้ใช้เวอร์ชันเดียวกันเพื่อหลีกเลี่ยงความไม่ลงรอยกัน
การตั้งค่าความสามัคคีครั้งเดียวที่จำเป็นสำหรับเครื่องมือ MAFI ในการทำงานอย่างถูกต้อง
src/ExampleMod.Unity
อย่าเปิดมันUnityRootSymlink
ใน srcExampleMod.UnityLibrary
ที่ชี้ไปที่โฟลเดอร์การติดตั้ง Unity (เช่น C:Program FilesUnityHubEditor2022.3.5f1
) ซึ่งสามารถทำได้โดยการเรียกใช้คำสั่ง mklink /D <target> <srouce>
ในหน้าต่างคอนโซลพร้อมกับผู้ดูแลระบบ ตัวอย่างเช่น: mklink /D "C:CaptainOfIndustryModdingsrcExampleMod.UnityLibraryUnityRootSymlink" "C:Program FilesUnity"
เมื่อคุณนำทางไปยัง UnityRootSymlink
คุณควรเห็นไดเรกทอรี Editor
เดียวในนั้นsrc/ExampleMod.Unity/Assets/DLLs/create_dll_hardlinks.bat
BATCH คุณจะต้องเรียกใช้ภายใต้สิทธิพิเศษของผู้ดูแลระบบ (คลิกขวาทำงานเป็นผู้ดูแลระบบ)src/ExampleMod.Unity/Assets/ExampleModScene.unity
ใน ENITY Editor สามารถทำได้ผ่าน Unity Hub โดยเลือก Open project from disk
ในแท็บ Projects
ตรวจสอบให้แน่ใจว่าคุณเลือกเวอร์ชัน Unity ที่เหมาะสมหากคุณติดตั้งหลายรายการMaFi
ในเมนูด้านบนบนตัวแก้ไข Unity หากไม่ได้มีการโหลด DLL ที่เชื่อมโยงอย่างถูกต้องและคุณจะไม่สามารถสร้างสินทรัพย์ได้ExampleModScene
โดย double-clickin บนนั้นในบานหน้าต่าง Proejct
(อยู่ภายใต้ไดเรกทอรี Assets
)Edit
-> Preferences
)External tools
-> External script editor
-> Open by file extension
สิ่งนี้จะหยุดการสร้างไฟล์โครงการใหม่และวางเส้นทางสัมบูรณ์แทนความสัมพันธ์General
-> Disable Editor Analytics
(ถ้าคุณสามารถและต้องการ)ขั้นตอนต่อไปนี้อธิบายถึงวิธีการบรรจุไอคอนตัวอย่างเช่นสำหรับผลิตภัณฑ์ใหม่
Assets
สร้าง <mod name>/<icons categor>
ไดเรกทอรี> ในกรณีของเรานั่นคือ ExampleMod/ProductIcons
Sprite (2D and UI)
และใช้การเปลี่ยนแปลงasdf
หรือเลือกชุดที่มีอยู่Copy Path
เส้นทางนั้นสามารถใช้ในการโหลดสำเร็จรูปของคุณในเกม หมายเหตุ: แตกต่างจากรุ่น 3 มิติพื้นผิวไม่จำเป็นต้องสร้าง prefab
ขั้นตอนต่อไปนี้อธิบายถึงวิธีการสร้างเทมเพลตโมเดล 3 มิติที่เป็นประโยชน์อย่างมากในการสร้างแบบจำลอง 3 มิติของอาคาร
ExampleMachineData.cs
)"TODO"
เนื่องจากเรายังไม่มีสำเร็จรูปgenerate_layout_entity_mesh_template
ตามด้วยรหัสเอนทิตีของคุณ สิ่งนี้จะสร้างไฟล์ OBJ ใน %APPDATA%/Captain of Industry/Misc/GeneratedMeshTemplates
ซึ่งแสดงถึงกล่องขอบเขต 3 มิติของเลย์เอาต์ของเอนทิตีใหม่ของคุณด้วยตำแหน่งพอร์ตที่แน่นอนขั้นตอนต่อไปนี้อธิบายถึงวิธีการจัดทำโมเดล 3 มิติ
Assets
สร้าง <mod name>/<model name>
ไดเรกทอรีในกรณีของเราที่เป็น ExampleMod/ExampleModel
.prefab
ใหม่ ในตัวอย่างของเราเราสร้าง prefab ในไดเรกทอรี <mod name>
asdf
หรือเลือกชุดที่มีอยู่Copy Path
เส้นทางนั้นสามารถใช้ในการโหลดสำเร็จรูปของคุณในเกม เมื่อสินทรัพย์ของคุณพร้อมให้ทำตามขั้นตอนเหล่านี้เพื่อจัดทำแพ็คเกจด้วย mod ของคุณ mods ถูกเผยแพร่ในไดเรกทอรีที่มีชื่อเดียวกับ mod dll ของคุณในกรณีของเราเรามี ExampleMod/ExampleMod.dll
ตอนนี้เราสามารถเพิ่มการรวมกลุ่มสินทรัพย์ลงในไดเรกทอรีเดียวกัน
Ctrl+S
)[MaFi] Build asset bundles
หลังจากการประมวลผลความสามัคคีเสร็จสิ้นไฟล์ชุดสินทรัพย์สามารถพบได้ในไดเรกทอรี src/ExampleMod.Unity/AssetBundles
src/ExampleMod.Unity/AssetBundles
ไปยังโฟลเดอร์ AssetBundles
ถัดจาก MOD DLL ตัวอย่างเช่น %APPDATA%/Captain of Industry/Mods/ExampleMod/AssetBundles
YourPrefabName_xxxx
โดยไม่ต้องขยาย) และไฟล์ mafi_bundles.manifest
ไฟล์ .manifest
อื่น ๆ ทั้งหมดสามารถลบได้เช่นเดียวกับไฟล์ AssetBundles
หากคุณทำการเปลี่ยนแปลงใด ๆ กับสำเร็จรูปของคุณเพียงสร้างกลุ่มสินทรัพย์ใหม่และคัดลอกใช้ไฟล์ใหม่จากไดเรกทอรี AssetBundles