Difference between revisions of "Games/Development Test"

From Luanti Wiki
Jump to navigation Jump to search
m (Wuzzy moved page Games/Minimal development test to Games/Development Test: The test game was renamed)
(Update game info for 5.3.0)
Line 2: Line 2:
 
{{Game Data  
 
{{Game Data  
 
| image=Minimal_game_Icon.png
 
| image=Minimal_game_Icon.png
| name=Minimal development test
+
| name=Development Test
 
| type= [[:Category:Testing games|Testing]]
 
| type= [[:Category:Testing games|Testing]]
 
| author=Minetest Developers  
 
| author=Minetest Developers  
 
| version=''same as Minetest's version''
 
| version=''same as Minetest's version''
 
| forum=(None)
 
| forum=(None)
| source= [https://github.com/minetest/minetest/tree/master/games/minimal GitHub]
+
| source= [https://github.com/minetest/minetest/tree/master/games/devtest GitHub]
| luaname=minimal
+
| luaname=devtest
 
}}
 
}}
  
The '''Minimal development test''' (or “'''minimal'''” for short) is a test “[[games|game]]” for Minetest which is only intended to be used by developers. '''This is not a real playable game and not meant for players.''' It's meant for development (both core developers, and modders which want fast startup for testing mods).
+
The '''Development Test''' (or “'''devtest'''” for short) is a test “[[games|game]]” for Minetest which is only intended to be used by developers. '''This is not a real playable game and not meant for players.''' It's meant for development (both core developers, and modders which want fast startup for testing mods).
  
As of version 5.1.1, it is shipped together with Minetest by default.
+
It is shipped together with Minetest by default.
  
'''Note''': This test game is very outdated, there are not many things that you can do with it, many core engine features are simply not covered, especially the newer ones. There is an unofficial fork which is much more up-to-date and feature-rich: [https://forum.minetest.net/viewtopic.php?f=15&t=24030 Development Test] (it has been [https://github.com/minetest/minetest/pull/9450 proposed] for official inclusion)
+
[[File:Minimal development test.jpg|450px|thumb|Screenshot of Development Test (old version)]]
  
[[File:Minimal development test.jpg|450px|thumb|Screenshot of Minimal development test]]
+
== Overview ==
 +
Development Test contains a very basic mapgen and numerous nodes, items, settings and commands primarily intended for testing Minetest.  
  
== Overview ==
+
== Scope/Purpose ==
Minimal development test is very minimalist and only contains a very basic mapgen and a few nodes and items. It only features one sound when walking on ''dirt with grass'', no other sounds are included. Textures are different than in Minetest Game.
+
The primary purpose of Development Test is to help Minetest developers and testers to test Minetest, i.e. the node properties, item behavior, mapgen, and other stuff that you can influence with Lua code.
  
Many items and nodes are borrowed from [[Games/Minetest Game|Minetest Game]], although most of them are much simpler and many things have been removed.
+
The secondary purpose is to aid with developing simple mods that have no dependencies. It's a good simple way to test if your mod still works in a different environment.
  
It has a mod with name “<code>experimental</code>” adding experimental nodes, items and entities and other stuff meant to test engine features. Stuff in this mod is expected to have bugs. It contains things like the “tester tool 1”.
+
A cornerstone of Develpment Test is the Principle of Least Interference. This means that Development Test tries to screw as little as possible with the default Minetest behavior, unless the user explicitly enabled it. This should therefore make it a relatively safe environment to test your mods in.
  
Also, it always gives items to players upon joining and uses different default textures.
+
Development Test is NOT meant as a template for new games.
  
== Items ==
+
== Usage ==
This is a list of items in ''Minimal development test'' and their [[itemstrings]], as of '''version 0.4.16'''.
+
Just create a world and start messing around! Put down the Chest of Everything and grab items for testing stuff. Check out
  
Many items are equivalent to those in [[Games/Minetest Game|Minetest Game]]. A couple of items are also “experimental” and used for testing new engine featurs.
+
== Detailed help ==
 +
Detailed help can be found in the [https://github.com/minetest/minetest/blob/master/games/devtest/README.md README] files found in the Development Test game directory. The following sections only give an overview of the features.
  
=== Tools ===
+
== Features ==
==== Testing tools ====
+
Developent Test includes a lot of things for testing. This includes items, commands and settings. This section gives only an overview, and is not a full description.
Tools to test various engine functionality.
 
  
===== Tester Tool 1 =====
+
=== Items ===
Itemstring: <code>experimental:tester_tool_1</code>
+
There are many items. This section does not list all of them, but only the types of items.
  
Punch a node to spawn a tester node 1. Punch the tester node 1 again to make it drop.
+
* Chest of Everything
 +
* Test tools
 +
* Mining tools
 +
* Test food
 +
* Mapgen nodes
 +
* Test nodes
 +
* Dummy items and nodes
  
This node tests various node time callbacks like on_timer, on_construct, on_destruct, after_dig_node, and more.
+
==== Chest of Everything ====
 +
Contains every item. Rightclick to access.
  
===== Tester Tool 2 =====
+
==== Test tools ====
Itemstring: <code>experimental:tester_tool_2</code>
+
Tools that allow you to test one particular feature. Examples are the Param2 Tool and the Object Property Editor.
  
Punch a node to spawn a floating particle.
+
The tools can be used with multiple keys and do different things, depending on which keys you press. These are the possible key combinations:
  
==== Mining tools ====
+
* Punch
{| class="wikitable"
+
* Place
|width="150px"|Wooden Pickaxe (<code>default:pick_wood</code>)
+
* Sneak+Punch
|width="150px"|Wooden Sword (<code>default:sword_wood</code>)
+
* Sneak+Place
|width="150px"|Wooden Shovel (<code>default:shovel_wood</code>)
+
* Aux1+Sneak+Punch
|width="150px"|Wooden Axe (<code>default:sword_wood</code>)
+
* Aux1+Sneak+Place
|-
 
|width="150px"|Stone Pickaxe (<code>default:pick_stone</code>)
 
|width="150px"|Stone Sword (<code>default:sword_stone</code>)
 
|width="150px"|Stone Shovel (<code>default:shovel_stone</code>)
 
|width="150px"|Stone Axe (<code>default:sword_stone</code>)
 
|-
 
|width="150px"|Steel Sword (<code>default:sword_steel</code>)
 
|width="150px"|Steel Pickaxe (<code>default:pick_steel</code>)
 
|width="150px"|Steel Shovel (<code>default:shovel_steel</code>)
 
|width="150px"|Steel Axe (<code>default:sword_steel</code>)
 
|-
 
|width="150px"|Mese Pickaxe (<code>default:pick_mese</code>)
 
|
 
|
 
|
 
|}
 
  
=== Blocks ===
+
Not all tools use all possible key combinations, most of them only use a few of them.
==== Experimental blocks ====
 
These nodes are highly experimental, expect bugs!
 
  
* Soundblock (<code>experimental:soundblock</code>): Emits sounds in regular intervals
+
==== Mining tools ====
* TNT (<code>experimental:tnt</code>): Punch to spawn TNT entity
+
Tools made to test mining/digging blocks. Tool wear is activated.
* Tiled stone (<code>experimental:tiled</code>)
 
* Tiled stair (<code>stair:stair_tiled</code>)
 
* Tiled slab (<code>stair:slab_tiled</code>)
 
* Tiled stair (node-aligned) (<code>stair:stair_tiled_n</code>)
 
* Tiled slab (node-aligned) (<code>stair:slab_tiled_n</code>)
 
* Tester Node 1 (<code>experimental:tester_node_1</code>): Spawned by tester tool 1 (see above)
 
  
==== Natural blocks ====
+
==== Food ====
* Dirt (<code>default:dirt</code>)
+
Items to test <code>minetest.item_eat</code>. Use punch key to eat.
* Dirt with grass (<code>default:dirt_with_grass</code>)
 
* Dirt with grass and footsteps (<code>default:dirt_with_grass_footsteps</code>)
 
* Mese (<code>default:mese</code>)
 
* Sand (<code>default:sand</code>)
 
* Sandstone (<code>default:sandstone</code>)
 
* Clay (<code>default:clay</code>)
 
* Gravel (<code>default:gravel</code>)
 
* Tree (<code>default:tree</code>)
 
* Leaves (<code>default:leaves</code>)
 
* Apple (<code>default:apple</code>)
 
* Stone (<code>default:stone</code>)
 
* Stone with coal (<code>default:stone_with_coal</code>)
 
* Stone with iron (<code>default:stone_iron</code>)
 
* Jungle Grass (<code>default:junglegrass</code>)
 
* Cactus (<code>default:cactus</code>)
 
* Papyrus (<code>default:papyrus</code>)
 
  
==== Liqudis ====
+
==== Mapgen nodes ====
* Water (<code>default:water_source</code>)
+
Nodes whose primary function is to be used by the mapgen to generate the world.
* River Water (<code>default:river_water_source</code>)
 
* Lava (<code>default:lava_source</code>)
 
  
==== Functional blocks ====
+
==== Test nodes ====
* Furnace (<code>default:furnace</code>)
+
Nodes that each test one particular feature from nodes, mainly the different drawtypes, rendering, but also gameplay features like damage.
* Chest (<code>default:chest</code>)
 
* Locked Chest (<code>default:locked_chest</code>)
 
* Torch (<code>default:torch</code>)
 
* Ladder (<code>default:ladder</code>)
 
* Sapling (<code>default:sapling</code>)
 
  
==== Decorative blocks ====
+
Hint: Use the Param2 tool to change the param2 of nodes. This is relevant for many drawtype test nodes like Wallmounted Test Node.
* Wooden Planks (<code>default:wood</code>)
 
* Wooden Fence (<code>default:fence_wood</code>)
 
* Cobble (<code>default:cobble</code>)
 
* Mossy Cobble (<code>default:mossycobble</code>)
 
* Brick (<code>default:brick</code>)
 
* Bookshelf (<code>default:bookshelf</code>)
 
* Glass (<code>default:glass</code>)
 
* Rail (<code>default:rail</code>)
 
* Sign (<code>default:sign_wall</code>)
 
* Steel Block (<code>default:steelblock</code>)
 
* Nyan Cat (<code>default:nyancat</code>)
 
* Nyan Cat Rainbow (<code>default:nyancat_rainbow</code>)
 
  
==== Stairs and slab ====
+
==== Dummy items and nodes ====
* Wooden stair (<code>stair:stair_wood</code>)
+
A set of items that only exist as placeholder to test something different, for example formspecs or crafting.
* Stone stair (<code>stair:stair_stone</code>)
 
* Cobble stair (<code>stair:stair_cobble</code>)
 
* Brick stair (<code>stair:stair_brick</code>)
 
* Sandstone stair (<code>stair:stair_sandstone</code>)
 
* Wooden slab (<code>stair:slab_wood</code>)
 
* Stone slab (<code>stair:slab_stone</code>)
 
* Cobble slab (<code>stair:slab_cobble</code>)
 
* Brick slab (<code>stair:slab_brick</code>)
 
* Sandstone slab (<code>stair:slab_sandstone</code>)
 
  
=== Craftitems ===
+
=== Commands ===
* Stick (<code>default:leaves</code>)
+
For convenience, Development Test offers a few commands that add even more tests, but also simple convenience features.
* Lump of iron (<code>default:lump_iron</code>)
 
* Lump of coal(<code>default:coal_iron</code>)
 
* Lump of clay (<code>default:clay_iron</code>)
 
* Steel ingot (<code>default:steel ingot</code>)
 
* Clay brick (<code>default:clay_brick</code>)
 
* Scorched stuff (<code>default:scorched_stuff</code>)
 
* Paper (<code>default:paper</code>)
 
* Book (<code>default:book</code>)
 
  
== Entities ==
+
The most useful command is “/stuff”, which gives you the Chest of Everything and other initial items (should you have lost them).
=== Dummyball ===
 
Entitystring: <code>experimental:dummyball</code>
 
  
This is just a ball which floats in the air and changes color and its armor groups randomly. You can't interact with it.
+
The most notable test is the formspec test, a command which opens a test formspec that allow you to test all those formspec elements.
  
=== Test Entity ===
+
Say “/help all” in chat to see the full list of commands, just like in any other game.
Entitystring: <code>experimental:testentity</code>
 
  
Test entity for testing animated and yaw-modulated sprites.
+
=== Settings ===
 +
The settings allow you to set some usage details to make your life a little easier (or harder).
  
=== TNT ===
+
The settings allow you to turn on automated tests that run on each start. Apart from that, the settings also control some mapgen details, and some minor stuff.
Entitystring: <code>experimental:tnt</code>
 
  
A block of TNT which is non-functional. It just falls down and just flashes, but never explodes.
+
Go into Minetest's “All Settings” menu in the main menu to access the settings.
  
 
[[Category:Testing games]]
 
[[Category:Testing games]]

Revision as of 03:41, 11 July 2020

Languages Language: English
Development Test
Minimal game Icon.png
A game
Game Type Testing
Author Minetest Developers
Latest version same as Minetest's version
Forum topic (None)
Source code GitHub


The Development Test (or “devtest” for short) is a test “game” for Minetest which is only intended to be used by developers. This is not a real playable game and not meant for players. It's meant for development (both core developers, and modders which want fast startup for testing mods).

It is shipped together with Minetest by default.

File:Minimal development test.jpg
Screenshot of Development Test (old version)

Overview

Development Test contains a very basic mapgen and numerous nodes, items, settings and commands primarily intended for testing Minetest.

Scope/Purpose

The primary purpose of Development Test is to help Minetest developers and testers to test Minetest, i.e. the node properties, item behavior, mapgen, and other stuff that you can influence with Lua code.

The secondary purpose is to aid with developing simple mods that have no dependencies. It's a good simple way to test if your mod still works in a different environment.

A cornerstone of Develpment Test is the Principle of Least Interference. This means that Development Test tries to screw as little as possible with the default Minetest behavior, unless the user explicitly enabled it. This should therefore make it a relatively safe environment to test your mods in.

Development Test is NOT meant as a template for new games.

Usage

Just create a world and start messing around! Put down the Chest of Everything and grab items for testing stuff. Check out

Detailed help

Detailed help can be found in the README files found in the Development Test game directory. The following sections only give an overview of the features.

Features

Developent Test includes a lot of things for testing. This includes items, commands and settings. This section gives only an overview, and is not a full description.

Items

There are many items. This section does not list all of them, but only the types of items.

  • Chest of Everything
  • Test tools
  • Mining tools
  • Test food
  • Mapgen nodes
  • Test nodes
  • Dummy items and nodes

Chest of Everything

Contains every item. Rightclick to access.

Test tools

Tools that allow you to test one particular feature. Examples are the Param2 Tool and the Object Property Editor.

The tools can be used with multiple keys and do different things, depending on which keys you press. These are the possible key combinations:

  • Punch
  • Place
  • Sneak+Punch
  • Sneak+Place
  • Aux1+Sneak+Punch
  • Aux1+Sneak+Place

Not all tools use all possible key combinations, most of them only use a few of them.

Mining tools

Tools made to test mining/digging blocks. Tool wear is activated.

Food

Items to test minetest.item_eat. Use punch key to eat.

Mapgen nodes

Nodes whose primary function is to be used by the mapgen to generate the world.

Test nodes

Nodes that each test one particular feature from nodes, mainly the different drawtypes, rendering, but also gameplay features like damage.

Hint: Use the Param2 tool to change the param2 of nodes. This is relevant for many drawtype test nodes like Wallmounted Test Node.

Dummy items and nodes

A set of items that only exist as placeholder to test something different, for example formspecs or crafting.

Commands

For convenience, Development Test offers a few commands that add even more tests, but also simple convenience features.

The most useful command is “/stuff”, which gives you the Chest of Everything and other initial items (should you have lost them).

The most notable test is the formspec test, a command which opens a test formspec that allow you to test all those formspec elements.

Say “/help all” in chat to see the full list of commands, just like in any other game.

Settings

The settings allow you to set some usage details to make your life a little easier (or harder).

The settings allow you to turn on automated tests that run on each start. Apart from that, the settings also control some mapgen details, and some minor stuff.

Go into Minetest's “All Settings” menu in the main menu to access the settings.