No description
Find a file
trompetin17 7ccda26f34
Use cppdialect "C++17" instead of per-action buildoptions
Premake 5.0.0-alpha12 (released in August 2017) introduced the
`cppdialect` directive, which provides a cleaner and more portable way
to specify the C++ standard across compilers and platforms.

Previously, we used manual per-action buildoptions:

filter "action:vs*" buildoptions { "/std:c++17" }
filter "action:not vs*" buildoptions { "-std=c++17" }

This workaround was necessary due to the limitations of older Premake
versions (particularly Premake 4), which lacked built-in support for
setting the C++ language standard.

Now that we're using a newer version of Premake 5, we can simplify this
setup by using:

cppdialect "C++17"

This results in cleaner, more maintainable build scripts with consistent
behavior across toolchains.
2025-06-16 07:35:43 -05:00
.gitea Fix pre-commit workflow to work with Ubuntu 24.04 2025-05-26 16:42:05 +02:00
binaries Reset modifiers properly when changing ownership 2025-06-15 21:37:00 +02:00
build Use cppdialect "C++17" instead of per-action buildoptions 2025-06-16 07:35:43 -05:00
docs Fix trailing whitespace and add pre-commit hook 2025-06-15 20:08:48 +02:00
libraries Improve clang default toolset on BSD 2025-06-14 14:13:09 +02:00
source Remove the limit of the available graph colors 2025-06-16 08:17:38 +02:00
.editorconfig Add a Jenkinsfile linter 2025-05-08 19:50:21 +02:00
.gitattributes Move maps XML files out of LFS 2025-06-11 10:33:57 +02:00
.gitignore Add eslint pre-commit hook 2025-05-30 17:30:25 +02:00
.groovylintrc.json Add a Jenkinsfile linter 2025-05-08 19:50:21 +02:00
.markdownlint.yaml Add a markdownlint pre-commit hook 2024-08-27 10:06:31 +02:00
.pre-commit-config.yaml Fix trailing whitespace and add pre-commit hook 2025-06-15 20:08:48 +02:00
.shellcheckrc Add util.sh shell library 2025-03-30 18:05:56 +02:00
.yamllint.yaml Add yamllint to pre-commit 2024-09-08 13:08:11 +02:00
eslint.config.mjs Don't list disabled rules in eslint extra 2025-06-15 18:42:54 +02:00
LICENSE.md Fix trailing whitespace and add pre-commit hook 2025-06-15 20:08:48 +02:00
license_dbghelp.txt Convert license_dbghelp.txt to UTF-8 2024-08-31 17:04:05 +02:00
license_gpl-2.0.txt
license_lgpl-2.1.txt Fix trailing whitespace and add pre-commit hook 2025-06-15 20:08:48 +02:00
license_mit.txt Adds globalscripts/BicubicInterpolation.js, the corresponding license_mit.txt and points to it for other files with the same license in LICENSE.txt - reviewed by Philip and Itms. Uses that to fix an interpolation issue in gaia.js and also fixes a "fail by one" there - reviewed by elexis. Fixes #4174 2016-09-06 21:49:57 +00:00
package.json Use stylistic for deprecated eslint rules 2025-06-10 21:23:23 +02:00
README.md Add more badges to the UI. 2025-03-22 14:11:24 +01:00
ruff.toml Update the pre-commit hooks 2025-05-26 17:19:03 +02:00

0 A.D. Introductory Information

FreeBSD Build Status Linux Build Status macOS Build Status Windows Build Status

Game References Checks Status Pre-commit Checks Status

Bi-Weekly Bundles Status Technical Docs Status Nightly Build Status

0 A.D. (pronounced "zero ey-dee") is a free, open-source, cross-platform real-time strategy game of ancient warfare.

This is currently an incomplete, under-development version of the game. We're always interested in getting more people involved, to help bring the game towards completion and to share the interesting experience of developing a project of this scope.

There are several ways to contact us and find more information:

Running precompiled binaries on Windows

A precompiled, ready-to-play development version of the game is available from a checkout of the nightly-build SVN repository. If you are using the git repository, you have to follow the steps below.

In a checkout of the nightly-build SVN repository, open the "binaries\system" folder.

  • To launch the game: Run pyrogenesis.exe
  • To launch the map editor: Run Atlas.bat or "pyrogenesis.exe -editor"

Compiling the game from source code

The instructions for compiling the game on Windows, Linux and OS X are at BuildInstructions.

Reporting problems

Bugs should be reported on Gitea. For information on reporting problems and finding logs, see ReportingErrors.

Contributing Code

If you want to help out programming for the game, have a look at GettingStartedProgrammers or contact us on #0ad-dev on irc.quakenet.org

Contributing Artwork

If you want to make artwork for the game, have a look at For Artists or visit the forums.

Translating

You can help translating the game at https://www.transifex.com/projects/p/0ad for more information, see Localization