用于操作《博德之门3》文件的工具
let bg3 = URL.homeDirectory.appending(path: "Library/Application Support/Baldur's Gate 3/")
let url = bg3.appending(path: "Mods/<mod>.pak")
let pak = try ModLSPK(url: url)
guard let moduleInfo = pak.meta.moduleInfo else {
return // File does not contain a meta.lsx with ModuleInfo
}
guard let moduleInfo = moduleInfo.publishVersion else {
return // ModuleInfo does not contain publish version info
}
// Access desired information e.g.
print(moduleInfo.uuid) // UUID
print(moduleInfo.name) // Name
print(moduleInfo.folder) // Folder
let bg3 = URL.homeDirectory.appending(path: "Library/Application Support/Baldur's Gate 3/")
let url = bg3.appending(path: "PlayerProfiles/Public/modsettings.lsx")
guard let lsx = LSX(url: url) else {
return // Unable to read or parse given LSX file
}
guard let moduleSettings = LSX.ModuleSettings(lsx: lsx) else {
return // LSX is not in the correct format
}
// Access desired information e.g.
print(moduleSettings.modOrder) // Mod Order
print(moduleSettings.mods) // Mods
如果没有 Norbyte 的 LSLib,这个软件包就不可能存在。
此软件包旨在提供 LSLib 功能的一小部分子集,并以 Swift 重新实现,使其可在 Apple 平台上使用。
请参阅 LICENSE