MinetestWiki:TODO

From Minetest Developer Wiki
Jump to navigation Jump to search

This is a list of things that need to be done on the wiki.

Big, overarching pages

For the lua API

  • Create
  • Link to a tutorial or so (maybe Lua/Tutorial)
  • Talk about some of the benefits
  • Talk about the meaning WRT Minetest
  • Consider the existing Intro page
  • Create
  • Link to Lua tutorial and page, talk briefly about Lua
  • Link to some examples of good mods. Make sure they don't conflict with our licensing!
  • Briefly describe each part of the minetest object

For the core engine

  • Maybe move from Core Architecture, I don't know.
  • Talk about general structure, don't get into details or implementations (or code)
  • Link to pages for each component
  • List here things we need to document, how we will document those things, and more.
  • Maybe use Doxygen-style comments. Yes, do that.

For community things

  • Something like a rule set, but nothing official (make that clear)
  • Link to IRC, Forums, GitHub
  • Explain how we use GitHub.
  • Mention issues, link to our pages, etc.
  • Explain how we use Git
  • Mention how to download things, how there are two separate repos, etc.
  • Answer most of the questions below

Littler pages

For the lua API

For the core engine

For community things

Potential questions from a new developer

Technology:

  • What 3d engine are you using? What version?
  • How are you using voxels in Minetest? Do you render polygons or voxels?
  • What rendering techniques should a new developper read about? Maybe from GPU gems / wikipedia or similar materials?
  • How many voxels do you have in a block? (ie: what is the resolution)
  • How do you manage frustum, culling, drawing back faces, deciding what to draw, etc?
  • Is there a classes diagram somewhere so I could understand the role, responsibilities and interactions for each classes and between them? Do you have use cases?
  • How do you manage dependencies between mods?

Project Goals:

  • I understand that keeping minetest usable by older computers is a project goal. What are the other goals?
  • Is there a semi-official fork with more advanced features or the forks are individual efforts?
  • As it is the game is very similar to minecraft. Is this project a clone of minecraft? If not, how do you intend to make minetest unique?

How to Contribute:

  • What are the most important issues with the code right now?
  • Why is it important to fix these issues?
  • Is there some particularities with the code that a newcomer need to understand before contributing?
  • Is there some parts of the code that need to be recoded or refactorized?
  • What parts of the code could be optimized?
  • What is the difference between the minetest package and the minetest_game package?

Existing discussions

  • Can you provide a list of existing discussions about those features so a newcomer could see what has been discussed before:
    • Shaders
    • Physics
    • Typical 3d models
    • Can you explain the license more so I can judge wheter library X/texture Y/model Z would be usable in Minetest? (ex: why can't irrklang be used instead of those 3 sound libraries)