Widelands是一个免费的开源实时策略游戏,具有单人游戏和多人游戏模式。该游戏的灵感来自Settlers II™(©Bluebyte),但其多样性和深度明显增加。
GPL V2+。一些资产在各种创意共享许可下发布 - 请参阅各自的文件夹。
关于如何下载Widelands,请参见https://www.widelands.org/wiki/download/
我们支持为Linux,MSYS2和MSVC下的Windows以及具有GCC> = 8或Clang/llvm> = 7的MacOS编译Widelands,尽管它也可能与其他编译器一起使用。我们有更多详细的文档可用:https://www.widelands.org/wiki/buildingwidelands/
您需要安装以下依赖项:
然后,您可以通过运行我们的便利脚本来编译。
| 命令 | 目的 |
|---|---|
./compile.sh | 完整的调试构建 |
./compile.sh -r -w | 释放构建 |
./compile.sh -e -w | 带有调试符号的发布构建 |
./compile.sh -h | 列表可用选项 |
编译完成后,您可以致电Widelands
./widelands
您也可以手动致电Cmake:
mkdir build
cd build
cmake ..
make
编译完成后,您可以致电Widelands
cd ..
mv build/src/widelands .
./widelands
我们有各种可用的CMAKE选项。例如,要创建发布版本,请致电
cmake -DCMAKE_BUILD_TYPE=Release ..
对于使用忍者构建系统,请致电
mkdir build
cd build
cmake -G Ninja ..
ninja
根据忍者安装,最后一行也可以是ninja-build 。
请注意,CMAKE选项以-D为前缀。这些是可用的选项:
| 姓名 | 值 | 默认 | 功能 |
|---|---|---|---|
CMAKE_BUILD_TYPE | Debug / Release / RelWithDebInfo | Debug | 创建发行版或调试构建 |
OPTION_ASAN | ON / OFF | ON调试构建 / OFF以进行发布 | 使用adverseSanitizer。关闭此功能只能使用一次。如果您想在以后的构建中再次关闭该目录,则必须清除build目录。 |
OPTION_BUILD_CODECHECK | ON / OFF | ON | 构建Codecheck。仅在调试构建中可用。 |
OPTION_BUILD_WEBSITE_TOOLS | ON / OFF | ON | 构建与网站相关的工具 |
OPTION_BUILD_TESTS | ON / OFF | ON | 建立单元测试 |
CMAKE_INSTALL_PREFIX | 目录 | 请参阅CMAKE文档 | 定义“安装”目标的目标目录,例如-DCMAKE_INSTALL_PREFIX=~/widelands-install 。 |
WL_INSTALL_BINDIR | 目录 | ${CMAKE_INSTALL_PREFIX}/games | 定义可执行文件文件的目的地(如果安装) |
WL_VERSION | 版本字符串 | 从git/bzr自动进行自动进行,或通过添加VERSION文件设置 | 定义Widelands版本 |
USE_XDG | ON / OFF | ON | 遵循基于XDG的规格。仅在Linux上可用。 |
OPTION_USE_GLBINDING | ON / OFF | OFF | 使用glbinding而不是gle |
OPTION_GLEW_STATIC | ON / OFF | OFF | 使用静态glew库 |
OPTION_FORCE_EMBEDDED_MINIZIP | ON / OFF | OFF | 用过的嵌入式缩影来源(Skip检查已安装的缩影库) |
NEEDS_EXTERNAL_FILESYSTEM | ON / OFF | 从编译器版本自动进行自动检测 | std::filesystem是否需要链接到额外的库 |
您可以将目标添加到make或ninja命令中,例如make codecheck仅运行代码检查套件。这些是可用的目标:
| 姓名 | 功能 |
|---|---|
ALL目标 | 编译所有内容,直到可以使用cmake调用的设置可执行 |
codecheck | 运行codechecks |
doc | 生成doxygen文档。目前仅使用Build Type调试,但这在必要时很容易更改。 |
install | 安装到目标dir,这是/usr/local默认值(您需要root特权!),除非您更改它(请参阅上面的CMAKE选项) |
如果您是新手Git:https://www.widelands.org/wiki/gitprimer/,我们有一些有关如何使用git帮助您的说明
主分支以及所有问题和拉的请求在Codeberg和Bunnybot的Github上的开发人员环境之间进行双向反映。 Bunnybot还格式化了所有镜像分支中的代码(C ++,LUA和Python)。
我们遵循Google styleguide。
有关脚本情景,请参见https://www.widelands.org/documentation/lua_index/
有关贡献艺术,请参见https://www.widelands.org/wiki/graphicsdevelopment/
有关贡献翻译,请参见https://www.widelands.org/wiki/translatingwidelands/
有关测试的帮助,请参见https://www.widelands.org/wiki/testingbranches/
有关问题管理的帮助,请参见https://www.widelands.org/wiki/triagingbugs/
| 目录 | 内容 |
|---|---|
| cmake | 构建系统和Codecheck规则 |
| 数据 | 游戏的数据文件。图像,声音,音乐,脚本,地图,广告系列,部落,... |
| Debian | 基于Debian Linux发行的包装 |
| Doc | 狮身人面像文档 |
| po | 翻译文件 |
| src | C ++源代码 |
| 测试 | 我们的回归测试套件的脚本图 |
| UTILS | 不同的实用程序:建筑翻译,代码格式,包装Mac和Windows,... |
所有推向硕士都将建立在Appveyor上。使用GitHub操作将拉请求分支部署用于MS-Windows。要获取MS-Windows构建,如果您不希望打开拉请请求,请临时将分支的名称添加到appveyor.yml的branches部分。如果分支在叉中,这将行不通。
所有拉的请求分支和主人都将用于MACOS,并在各种编译器下检查测试套件。为了获得MacOS构建或测试套件结果,请在.github/workflows/build.yaml中暂时将分支的名称添加到branches部分。这也适用于叉子的分支机构。