Development

Getting Into Development

There are several ways to get into development:

  • Modding: Develop a mod independently and publish it on the forums.
  • Core dev: Think or ask of something that is needed in the core, talk with the core team (preferably a lot, with multiple members - communication is more important than you think) and do it.
  • Translating: Help translating Minetest at our web interface (oops, seems to be down (2014-06-04)). If your language does not exist yet, contact a core dev.

Core Team

Upstream repositories and official Windows packages are handled by the core team, consisting of a bunch of people who are much trusted to keep Minetest progressing in good condition. The core team is best contacted on IRC at #minetest-dev and #minetest @ Freenode.

The core team is formed of people who have made great contributions to Minetest.

Contributions are approved if two members of the core team agree on them.

Project Structure

Minetest is distributed as an engine, combined with a couple of games. Upstream repositories can be found at https://github.com/minetest/.

  • The engine (core) is the base for everything. C++ is used for housekeeping and performance-critical stuff, Lua for extensible things.
  • Games define game content: nodes, entities, textures, meshes, sounds and custom behavior implemented in Lua. Games consist of mods that plug into the engine using the Modding API.

For more information see the terminology or engine structure dev wiki pages.