Widelands는 싱글 플레이어 캠페인과 멀티 플레이어 모드를 갖춘 무료 오픈 소스 실시간 전략 게임입니다. 이 게임은 Settlers II ™ (© Bluebyte)에서 영감을 받았지만 훨씬 더 다양하고 깊이를 가지고 있습니다.
gpl v2+. 일부 자산은 다양한 크리에이티브 커먼즈 라이센스에 따라 릴리스됩니다. 각 폴더를 참조하십시오.
Widelands를 다운로드하는 방법은 https://www.widelands.org/wiki/download/를 참조하십시오.
GCC> = 8 또는 Clang/LLVM> = 7을 갖춘 Linux, MSYS2 및 MSVC의 Windows 용 Windeland를 컴파일하는 것을 지원하지만 다른 컴파일러에서도 작동 할 수 있습니다. 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 | Debug Builds / OFF 의 ON 릴리스 빌드를 위해 | 주소 사료를 사용하십시오. 이것을 끄는 것은 한 번만 작동합니다. 나중에 빌드에서 이것을 다시 끄려면 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 | Glew 대신 Glbinding을 사용하십시오 |
OPTION_GLEW_STATIC | ON / OFF | OFF | 정적 GLEW 라이브러리를 사용하십시오 |
OPTION_FORCE_EMBEDDED_MINIZIP | ON / OFF | OFF | 사용 된 임베디드 미니 팁 소스 (설치된 미니 팁 라이브러리를 건너 뛰기) |
NEEDS_EXTERNAL_FILESYSTEM | ON / OFF | 컴파일러 버전에서 자동 측정 | std::filesystem 추가 라이브러리와 연결 해야하는지 여부 |
make 또는 ninja 명령에 대상을 추가 할 수 make codecheck . 이들은 사용 가능한 목표입니다.
| 이름 | 기능 |
|---|---|
대상이 ALL 또는 전혀 없습니다 | cmake 통화의 설정으로 실행 파일까지 모든 것을 컴파일하십시오. |
codecheck | CodeChecks를 실행하십시오 |
doc | 독사 세포 문서를 생성합니다. 현재 빌드 유형 디버그 만 사용하지만 필요한 경우 쉽게 변경됩니다. |
install | 대상 DIR에 설치하십시오. 이것은 기본값 당 /usr/local 입니다 (루트 권한이 필요합니다!) 변경하지 않는 한 (위의 CMAKE 옵션 참조). |
Git을 처음 접하는 데 도움이되는 GIT를 사용하는 방법에 대한 몇 가지 지침이 있습니다. https://www.widelands.org/wiki/gitprimer/
Mas 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 규칙을 구축하십시오 |
| 데이터 | 게임의 데이터 파일. 이미지, 사운드, 음악, 스크립팅,지도, 캠페인, 부족, ... |
| 데비안 | 데비안 기반 Linux 배포를위한 포장 |
| 의사 | 스핑크스 문서 |
| 포 | 번역 파일 |
| SRC | C ++ 소스 코드 |
| 시험 | 회귀 테스트 스위트의 스크립트 맵 |
| utils | 다양한 유틸리티 : 건물 번역, 코드 서식, 포장 Mac & Windows, ... |
마스터로 향하는 모든 푸시는 Appveyor에 구축됩니다. 풀 요청 분기는 GitHub 동작을 사용하여 MS-Window에 배치됩니다. 풀 요청을 열지 않으려면 MS-Windows 빌드를 얻으려면 appveyor.yml 의 branches 섹션에 분기 이름을 임시로 추가하십시오. 지점이 포크에 있으면 작동하지 않습니다.
마스터뿐만 아니라 마스터뿐만 아니라 모든 풀 요청 분기는 MACOS에 추가로 배포되며 테스트 수영은 다양한 컴파일러에서이를 확인합니다. MacOS 빌드 또는 테스트 스위트 결과를 얻으려면 지점 이름을 .github/workflows/build.yaml 의 branches 섹션에 일시적으로 추가하십시오. 이것은 포크의 지점에도 효과가 있습니다 .