Everyone is invited to join and contribute to 0 A.D. on a completely voluntary basis, to gain game development experience, to comply with a school project or just for fun.
If you are a programmer, please jump right in and just start offering patches according to the instructions below, and with time we will contact prominent contributors and put them officially on the team. Artists and other contributors can do the same, or just ask to be interviewed and get a volunteer gig in 3d modeling, animating, sound, music etc.
For Programmers
0 A.D’s game engine is called Pyrogenesis and it is specifically designed for flexibility and ease of modification. The engine is in C++, and gameplay scripting is in JavaScript. Game logic, artwork, and data can easily be changed through data files. The engine itself is modular in design to provide maximal flexibility while still remaining efficient. Anyone can download, build and run the latest version of the game.
If you’re a programmer and you want to contribute to 0 A.D., just get your feet wet and get started. We don’t want to hinder your progress with any applications. If you do a good job over time, you’ll get inducted to the team anyway.
We use Subversion for revision control, and Trac for documentation and issue-tracking. Our technical discussions are conducted on the forums and over IRC (#0ad-dev on QuakeNet). You could create a patch and submit it to us, and we’ll then review it and maybe suggest some changes or commit it to SVN. Contributors who make consistent contributions to the codebase are offered permissions to commit directly to SVN.
For Artists
Like the codebase, 0 A.D’s art is also “open source”. The models and animations can be created in the software of your choice, as long as it capable of exporting COLLADA files (.DAE). Similarly, the 2D textures are exported though the paint software of your choice to a Direct Draw Surface (.DDS) file. The alpha channel of the texture is used to define player color, object color, or transparency.
The art assets are organized in XML files called ‘actors’, which define entities in the game. An actor declares callouts for models, textures, and animations, if applicable. Since you can specify alternate textures and props to an entity, you can use the 0 A.D. art model to allow for randomness in the art. That way, several instances of the same Celtic warrior could appear in battle with variant hair colors, and two adjacent instances of the same Greek house could have pots and carpets aligned differently, so they’ll seldom look exactly alike.
Templates to help you make art assets (like textures and meshes) are readily available. Also, various tutorials and guides will allow you to hit the ground running. More information about the nuts and bolts of creating art assets for 0 A.D. can be found here. Check out our open art development forum, and feel free to participate!
For Translators
We are currently using Transifex to translate the game texts. To start translating the game, create an account in Transifex and ask to join a translation team (or create a new one) at https://www.transifex.com/projects/p/0ad/.
You can find more information on this wiki page.
For Everyone
- Subscribe to us on RSS, ModDB, Facebook, Twitter or Google+ to get updates as development goes on.
- Spread the word over social media, blogs and everywhere! Be sure to mention that we are always looking for new contributors.
- Create your own fan videos and screenshots and upload them over your favorite social media platforms! (Remember: 0 A.D.’s license, CC-BY-SA, requires you redistribute derivative works like fan videos and screenshots under a similar free license.)