Difference between revisions of "Development Tools"

From Minetest Developer Wiki
Jump to navigation Jump to search
m (Fix missing formal name nodebox_creator)
(→‎Mod development: Add Minetest Formspec Editor, add section for webapps)
 
(20 intermediate revisions by 4 users not shown)
Line 16: Line 16:
 
* [https://olivinelabs.com/busted/ busted]: Lua unit testing framework (see also [https://rubenwardy.com/minetest_modding_book/en/quality/unit_testing.html the chapter rubenwardy's modding book])
 
* [https://olivinelabs.com/busted/ busted]: Lua unit testing framework (see also [https://rubenwardy.com/minetest_modding_book/en/quality/unit_testing.html the chapter rubenwardy's modding book])
  
=== Scripts ===
+
=== Web applications ===
==== Translation ====
+
* [https://wuzzy.codeberg.page/MiBPoV/ Minetest Biome Point Visualizer]: Edit and visualize biome heat/humidity points in a Voronoi diagram ([https://codeberg.org/Wuzzy/MiBPoV source code])
* [https://github.com/FaceDeer/update_translations update_translations]: Python script to create and update mod translation files
+
* [https://luk3yx.gitlab.io/minetest-formspec-editor/ Minetest Formspec Editor]: Visual formspec editor
* [https://notabug.org/pgimeno/minetest/src/translation-toolchain/util/findtext.lua findtext.lua]: Create mod translation template (buggy!) ([https://forum.minetest.net/viewtopic.php?f=47&t=23330 see also])
 
* [https://notabug.org/pgimeno/minetest/src/translation-toolchain/util/updatetext.lua updatetext.lua]: Update mod translation template (buggy!) ([https://forum.minetest.net/viewtopic.php?f=47&t=23330 see also])
 
  
=== Mods and modpacks ===
+
=== Minetest games and mods ===
==== Coding and testing ====
+
See the [https://content.minetest.net/packages/?tag=developer_tools Developer Tools] tag in ContentDB.
* [https://forum.minetest.net/viewtopic.php?t=9671 LuaCmd [luacmd&#93;]: <code>luacmd</code> server command which allows you to run a single Lua statement
 
* [https://forum.minetest.net/viewtopic.php?t=15759 QA-Block [qa_block&#93;]: Adds a Quality Assurance block which you use to run various checker scripts like listing items with missing description (including your own) and browse the global Lua namespace
 
* [https://forum.minetest.net/viewtopic.php?f=9&t=23802 DevToys]: Modpacks with lots of example nodes (for testing engine features) and a few tools to manipulate nodes
 
* [https://forum.minetest.net/viewtopic.php?f=9&t=10274 Nodebox Creator [nodebox_creator&#93;]: Ingame nodebox editor
 
  
==== Buildings and schematics ====
+
== Scripts ==
* [https://forum.minetest.net/viewtopic.php?t=9458 L-System Tree Utility [ltool&#93;]: Helps you creating [[Introduction to L-system trees|L-system trees]] which you can spawn with [[minetest.spawn_tree]]
+
=== Formspecs ===
* [https://forum.minetest.net/viewtopic.php?f=9&t=18515 Schematic Editor [schemedit&#93;]: Advanced tool for creating and placing schematics
+
* [https://luk3yx.gitlab.io/minetest-formspec-editor/ Minetest Formspec Editor]: A great online tool with drag and drop that allows you to import and export formspecs in different versions
* [https://forum.minetest.net/viewtopic.php?f=9&t=12011 Convert table schematic to .mts [saveschems&#93;]: Tool for converting schematics from Lua table format to MTS files
+
* [https://codepen.io/treer/pen/gOPZyov?editors=0010 Perlin noise tuner] Visualizes 2D Perlin noise that Minetest will generate with different noiseparams. (Emulation of Minetest Perlin noise can be wrong in extremes/edge-cases due to precision of JavaScript number type)
* [https://forum.minetest.net/viewtopic.php?t=572 WorldEdit]: Primarily a tool for editing large parts of the world, what's interesting for developers is that it includes a few basic schematic commands (<code>//mtschemcreate</code>, etc.)
 
  
==== Informational ====
+
=== Translation ===
* [https://forum.minetest.net/viewtopic.php?t=18049 List Items [listitems&#93;]: Server commands for listing and searching the IDs of registered items and entities
+
* [https://codeberg.org/Wuzzy/Minetest_Translation_Tools Minetest Translation Tools]: Collection of Python scripts to create, update, verify and convert mod translation files (*.tr)
* [https://forum.minetest.net/viewtopic.php?f=9&t=23138 Find Biome [findbiome&#93;]: Server command for finding a biome and teleporting to it
+
==== Legacy ====
* [https://forum.minetest.net/viewtopic.php?t=11237 Inventory Check [inventorycheck&#93;]: Investigate the inventory of any player
+
* [https://github.com/FaceDeer/update_translations update_translations]: Older version of the translation updater script included in Minetest Translation Tools
* [https://github.com/minetest-mods/inspector Inspector [inspector&#93;]: Reveal the item/entity definition, metadata and param1/param2 of whatever you punch
+
* [https://notabug.org/pgimeno/minetest/src/translation-toolchain/util/findtext.lua findtext.lua]: Create mod translation template (buggy!) ([https://forum.minetest.net/viewtopic.php?f=47&t=23330 see also])
* [https://forum.minetest.net/viewtopic.php?f=9&t=23968 Prysm [prysm&#93;]: Test Perlin noise on-the-fly
+
* [https://notabug.org/pgimeno/minetest/src/translation-toolchain/util/updatetext.lua updatetext.lua]: Update mod translation template (buggy!) ([https://forum.minetest.net/viewtopic.php?f=47&t=23330 see also])
* [https://forum.minetest.net/viewtopic.php?t=24287 Advanced Rangefinder [finder&#93;]: Adds search capabilities for both nodes and entities and related server commands
 
  
==== Benchmarking ====
+
== Syntax highlighting ==
* [https://forum.minetest.net/viewtopic.php?f=9&t=20699 Stopwatch [stopwatch&#93;]: Benchmarking utility to quickly benchmark portions of Lua code
+
* [https://codeberg.org/Wuzzy/minetest_tr_vim_syntax Vim syntax highlighting for *.tr files]
  
 
[[Category:Misc]]
 
[[Category:Misc]]

Latest revision as of 23:31, 24 October 2023

This article lists various free software tools which help in development of Minetest and mods for Minetest.

Minetest development

Mod development

Standalone software

Web applications

Minetest games and mods

See the Developer Tools tag in ContentDB.

Scripts

Formspecs

  • Minetest Formspec Editor: A great online tool with drag and drop that allows you to import and export formspecs in different versions
  • Perlin noise tuner Visualizes 2D Perlin noise that Minetest will generate with different noiseparams. (Emulation of Minetest Perlin noise can be wrong in extremes/edge-cases due to precision of JavaScript number type)

Translation

Legacy

Syntax highlighting