【免费下载链接】LostOdysseyRecompExperimental native PC port of Lost Odyssey using static recompilation. No game assets included.项目地址https://gitcode.com/gh_mirrors/lo/LostOdysseyRecomp点击查看免费下载《Lost Odyssey》失落的奥德赛Xbox 版是一款四碟游戏PC 移植项目LostOdysseyRecomp通过静态重编译static recompilation把它带到 Windows、Linux 和 macOS并实现了四碟自动换碟原盘请求换碟时模拟器自动加载已导入的discN目录全程无需人工干预。更妙的是它利用硬链接把四张光盘里完全相同的资源包只存一份约 20 GB 的游戏数据实际只占用约 14.5 GB。本文用一次换碟的完整流程 硬链接原理把这两件事一次讲透。一、为什么自动换碟是四碟游戏的刚需 原版《Lost Odyssey》分为四张光盘游戏在章节边界会主动向系统发起换碟请求。如果让模拟层弹一个请插入 Disc 2的对话框玩家就得来回翻文件夹体验极差。LostOdysseyRecomp 的做法是四张光盘一次性全部导入换碟时由宿主host代码自动完成。官方说明见 disc-selection.md所有光盘必须属于同一受支持版本美欧版或亚洲多语版并且放在同一父目录下的disc1–disc4导入布局中换碟时由游戏原本的索引卸载/重载流程接管重新加载目标碟自己的LO.FPI与归档文件不重写合并索引也不改动原盘代码目标碟缺失或校验失败时请求直接失败当前挂载保持不动玩家可用内置导入器补导光盘。换碟发生时画面会像这样自然过渡到下一章场景不会弹出任何选碟按钮二、换碟是怎么一步步完成的从游戏请求到文件挂载整个换碟链路只有三个关键节点理解它就理解了 LostOdysseyRecomp 的宿主接管思路1. 拦截原盘的换碟系统调用游戏运行时调用 Xbox 系统 APIXamSwapDisc请求换碟。LostOdysseyRecomp 在 imports.cpp 中挂接了它盘号不在 1–4 范围返回错误 87盘号合法但选碟失败返回ERROR_NOT_READY21保留旧挂载、不置完成事件游戏会一直等待选碟成功后才置位完成事件游戏继续推进。2. 安全地切换当前挂载根FileSystem::SelectDisc 在互斥锁下先验证目标再替换当前碟根目录。game:、d:、Cdrom0三条设备路径都经过这个根解析而存档/缓存目录和已打开的文件句柄保持指向原文件——这是旧句柄不换轨、新路径走新碟的关键避免了读到半新半旧的数据。3. 严格校验目标碟身份disc_set.cpp 会读取有界的 XEX 执行元数据依次核对标题 ID、受支持版本、Media ID、碟号再检查LO.FPI的碟号、表范围、13 个归档文件以及每个索引数据段是否落在对应归档大小之内。这是结构级校验完整的 XEX SHA256 认证仍由导入器负责。这样游戏里原本请插入 Disc 2的时刻就变成了一次静默的目录切换——玩家只会看到过场动画结束、画面切入新章节。三、20 GB 游戏数据如何组织disc1–disc4 目录结构导入后游戏数据默认落在game/disc1至game/disc4DLC 在game/dlc/目录位置由game-path.txt记住。每张碟目录里包含default.xex可执行文件、LO.FPI索引以及一批.fpd归档文件音频、纹理、模型等打包数据。四张光盘并不是各管各的由于章节内容跨碟存放大量同名、同尺寸的.fpd归档在多个碟里字节级完全相同。如果不做处理导入四张碟就要实打实占用约 20 GB。四、硬链接原理一次讲透一份数据四条路径 硬链接到底是什么文件系统的命名路径和数据inode 磁盘块是分开的。硬链接就是给同一份数据多起几个名字四个路径 → 同一个 inode → 磁盘上只有一份数据块删掉任意一个路径只要还有别的硬链接存在数据不会被释放它不是快捷方式快捷方式指向路径原文件一删就失效也不是复制复制占双倍空间。LostOdysseyRecomp 的压缩流程核心实现见 import_game.cpp 的CompactGameData流程非常讲究分组扫描四个碟目录把同名 同尺寸的.fpd归档分成组少于两份的组直接跳过哈希比对对每组逐份计算 SHA-256确认字节级相同后才共享——同尺寸不同内容的文件绝不会被误合并原子替换先用临时名创建硬链接在 APFS/btrfs/XFS 上优先使用写时复制 clone见 ShareFile再 rename 覆盖目标。中途中断只会留下一个完整的旧副本和一个临时文件下次运行自动清理并发保护整个过程持有.import.lock同一游戏目录同时只允许一个导入/压缩任务。exFAT/FAT32 等不支持硬链接的文件系统会自动跳过保留原始副本不会损坏任何数据。省多少空间按官方 INSTALLING.zh-CN.md 的数据四张光盘共享相同资源包后约省 5.8 GB实际占用从约 20 GB 降到约14.5 GB。注意一个常见困惑——资源管理器仍会显示约 20 GB因为它对每个硬链接各算一次请看磁盘可用空间的变化。五、实操指南三步确认你的空间已省下 ✅第一步触发压缩。新导入的游戏在启动时会弹出释放磁盘空间Free disk space提示框选择释放空间即可见 compaction_prompt.cpp。旧版本导入的目录可以用启动参数--compact-game-data跑一次完成也可用LO_COMPACT_GAME_DATA环境变量控制。第二步Windows 上验证硬链接。普通命令提示符执行game folder换成你的游戏文件夹fsutil hardlink list game folder\disc1\xenon_chr.fpd如果四个碟的路径都出现在输出里说明这个文件已被四份路径共享只占一份磁盘空间。第三步Linux / Steam Deck / macOS 验证实际占用。du -sh game folderdu对共享文件只计一次输出的 14G 左右才是真实占用。小结LostOdysseyRecomp 对四碟游戏的处理堪称两个层面的示范层面手段效果换碟体验XamSwapDisc钩子 SelectDisc原子换挂载 严格结构校验全程无按钮、失败不破坏现场磁盘管理SHA-256 校验 硬链接/CoW clone 原子去重约 20 GB 实际只占 14.5 GB想进一步了解版本支持、Media ID 表和导入细节推荐阅读 安装指南、换碟专题笔记 与 XEX 证据文档。赞分享【免费下载链接】LostOdysseyRecompExperimental native PC port of Lost Odyssey using static recompilation. No game assets included.项目地址https://gitcode.com/gh_mirrors/lo/LostOdysseyRecomp点击查看免费下载相关推荐LostOdysseyRecomp游戏数据导入指南3步导入四碟、ISO与GOD数据再省5.8GB磁盘空间LostOdysseyRecomp游戏数据导入指南3步导入四碟、ISO与GOD数据再省5.8GB磁盘空间 LostOdysseyRecomp 是一款《Los上一篇水杉输入法是什么开源纯TSF的Windows中文输入法完全概览下一篇Better Export PDF 多文件合并导出指南TOC 目录页 顺序导出 锚点跳转完整玩法创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?