无尽太空(Endless Sky):2D 沙盒太空探索与贸易战斗游戏
Endless Sky 是一款 C++ 编写的 2D 沙盒式太空探索游戏,玩法接近 Elite、Esc...
fallout1-ce · alexbatalov/fallout1-ce
《辐射》初代的社区重制版,使用 C++ 重写实现,保留原作玩法,并修复引擎缺陷、加入少量体验优化,目标是让游戏在现代多平台系统上较顺畅运行。玩家需自备正版游戏(GOG 或 Steam),Windows 下可用 fallout-ce.exe 作为 falloutw.exe...
Fallout Community Edition(辐射社区版)是经典角色扮演游戏《辐射》初代的社区重实现项目。它并非简单的补丁或模拟器封装,而是用 C++ 对原作引擎进行重新实现,在保留原作玩法、数值与内容的前提下,修复了大量引擎层面的缺陷,并加入了一些体验优化,使这款 1997 年的作品能够在现代多平台系统上较为顺畅地运行。
项目基于 Reference Edition(对应 1997 年 11 月发布的 v1.1 版本)展开,作者同时维护着《辐射 2》社区版仓库 fallout2-ce,两者思路一脉相承。需要强调的是:本项目不包含游戏本体资源,玩家必须自备正版游戏,可在 GOG 或 Steam 购买。
README 按平台分别给出了安装步骤,核心前提一致:先准备一份包含数据资源的游戏目录,再把社区版可执行文件放入其中。
fallout-ce.exe 并复制到 Fallout 文件夹,它可直接替代原版的 falloutw.exe。Fallout 文件夹复制到任意位置;也可以从 GOG 安装包中提取所需文件,README 给出的做法是安装 innoextract 后执行 innoextract setup_fallout_2.1.0.18.exe -I app,再将得到的 app 目录改名。随后把 fallout-ce 放入该目录,安装 SDL2(如 sudo apt install libsdl2-2.0-0),运行 ./fallout-ce。Contents/Resources 中提取 GameData;Homebrew 用户同样可用 innoextract 从 GOG 安装包提取。最后把 fallout-ce.app 放入该目录并运行。master.dat、critter.dat 与 data 文件夹,注意文件名大小写,然后安装 fallout-ce.apk;首次运行会弹出文件选择器,选定目录后等待数据复制(约 30 秒),游戏会自动启动。fallout-ce.ipa 后,用 AltStore、Sideloadly 等侧载工具安装,或使用自己的签名证书从源码构建。首次运行会提示找不到 master 数据文件,这一步是为了让 iOS 通过文件共享功能暴露游戏目录;随后用 Finder(macOS Catalina 及以后)或 iTunes(Windows 与 macOS Mojave 及更早)把 master.dat、critter.dat 和 data 文件夹复制到“Fallout”应用中,同样需注意文件名大小写。主配置文件为 fallout.cfg。README 指出几个需要按实际安装调整的关键项:不同发行版的 master.dat、critter.dat 与 data 文件夹可能全为小写或全为大写,可以修改 master_dat、critter_dat、master_patches、critter_patches 等设置以匹配文件名,或反过来重命名文件去匹配配置项。
sound 文件夹(内含 music)可能位于 data 内,也可能直接位于 Fallout 根目录,需要相应调整 music_path1,常见取值为 data/sound/music/ 或 sound/music/,路径必须精确匹配(从 CD 安装时可能是 SOUND/MUSIC/)。音乐文件本身(ACM 扩展名)无论目录大小写如何,都应保持全大写。
第二个配置文件是 f1_res.ini,用于调整游戏窗口尺寸与全屏开关,例如将 SCR_WIDTH 设为 1280、SCR_HEIGHT 设为 720、WINDOWED 设为 1。README 给出的建议是:桌面端可自由选择尺寸;平板应填写设备的逻辑分辨率(如 iPad Pro 11 像素为 1668x2388,逻辑分辨率为 834x1194);手机建议高度设为 480,再按屏幕宽高比计算宽度(如 20:9 设备为 480 * 20 / 9 = 1067)。这些设置目前需手动修改,未来才会进入游戏内界面。
本仓库源码采用 Sustainable Use License 发布,使用前应阅读 LICENSE.md 了解具体条款。
对学习者而言,这个项目的价值在于它是一份真实商业 RPG 引擎的 C++ 重实现样本:可以观察等距视角渲染、角色控制、背包与对话等系统在代码层面的组织方式,也能看到跨平台移植(Windows、Linux、macOS、Android、iOS)与 SDL2 依赖处理的实际做法。由于项目需要自备正版资源才能运行,建议先通读安装与配置章节,理清数据文件与路径大小写的关系,再动手编译或调试。
Endless Sky 是一款 C++ 编写的 2D 沙盒式太空探索游戏,玩法接近 Elite、Esc...
OpenLoco 是 Chris Sawyer《Locomotion》的开源重实现,对应一款模拟经营运输...