Difference between revisions of "Games/Development Test"

From Luanti Wiki
Jump to navigation Jump to search
(→‎Items: clarify version)
(→‎Food: minetest.* → core.*)
 
(19 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Languages}}
+
{{Languages|nocat=1}}
{{Incomplete}}
 
 
{{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=Testing
| author=Minetest Developers  
+
| author=Luanti Developers  
| version=''same as Minetest's version''
+
| version=''same as Luanti'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 '''Development Test''' (or “'''DevTest'''” for short) is a test “[[games|game]]” for Luanti 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 '''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).
+
DevTest appears in your game list when you play the development version of Luanti. You can also manually install it from ContentDB.
  
As of version 0.4.16, it is shipped together with Minetest by default.
+
[[File:Development Test.jpg|450px|thumb|Screenshot of Development Test]]
  
[[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 Luanti.
 +
 
 +
== Scope/Purpose ==
 +
The primary purpose of Development Test is to help Luanti developers and testers to test Luanti, 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.
  
== Overview ==
+
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 Luanti behavior, unless the user explicitly enabled it. This should therefore make it a relatively safe environment to test your mods in.
Minimal development test (MDT) 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.
 
  
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.
+
Development Test is NOT meant as a template for new games.
  
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”.
+
== Usage ==
 +
Just create a world and start messing around! Put down the Chest of Everything and grab items for testing stuff. If you have no Chest of Everything, use the <code>/stuff</code> [[Server commands|command]] to get it (along with other initial items).
  
Also, it always gives items to players upon joining and uses different default textures.
+
== 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.
  
== Items ==
+
== Features ==
This is a list of items in ''Minimal development test'' and their [[itemstrings]], as of '''version 0.4.16'''.
+
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.
  
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.
+
=== Items ===
 +
There are many items. This section does not list all of them, but only the types of items.
  
=== Tools ===
+
* Bag/Chest of Everything
==== Testing tools ====
+
* Test tools
Tools to test various engine functionality.
+
* Mining tools
 +
* Test food
 +
* Mapgen nodes
 +
* Test nodes
 +
* Dummy items and nodes
  
===== Tester Tool 1 =====
+
==== Bag of Everything ====
Itemstring: <code>experimental:tester_tool_1</code>
+
Item that contains every item. Punch to access.
  
Punch a node to spawn a tester node 1. Punch the tester node 1 again to make it drop.
+
==== Chest of Everything ====
 +
Placable block that contains every item. Rightclick to access.
  
This node tests various node time callbacks like on_timer, on_construct, on_destruct, after_dig_node, and more.
+
==== Test tools ====
 +
Tools that allow you to test one particular feature. Examples are the Param2 Tool and the Object Property Editor.
  
===== Tester Tool 2 =====
+
The tools can be used with multiple keys and do different things, depending on which keys you press. These are the possible key combinations:
Itemstring: <code>experimental:tester_tool_2</code>
 
  
Punch a node to spawn a floating particle.
+
* Punch
 +
* Place
 +
* Sneak+Punch
 +
* Sneak+Place
 +
* Aux1+Sneak+Punch
 +
* Aux1+Sneak+Place
  
==== Mining tools ====
+
Not all tools use all possible key combinations, most of them only use a few of them.
{| class="wikitable"
 
|width="150px"|Wooden Pickaxe (<code>default:pick_wood</code>)
 
|width="150px"|Wooden Sword (<code>default:sword_wood</code>)
 
|width="150px"|Wooden Shovel (<code>default:shovel_wood</code>)
 
|width="150px"|Wooden Axe (<code>default:sword_wood</code>)
 
|-
 
|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 ===
+
[https://github.com/minetest/minetest/tree/master/games/devtest/mods/testtools/README.md Read the Test Tools README!]
==== 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>core.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: Stone, water, dirt, sand, ...
* 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>)
 
* 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 Luanti's “All Settings” menu in the main menu to access the settings.
  
[[Category:Testing games]]
+
[[Category:Games]]

Latest revision as of 19:37, 28 October 2024

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

The Development Test (or “DevTest” for short) is a test “game” for Luanti 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).

DevTest appears in your game list when you play the development version of Luanti. You can also manually install it from ContentDB.

Screenshot of Development Test

Overview

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

Scope/Purpose

The primary purpose of Development Test is to help Luanti developers and testers to test Luanti, 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 Luanti 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. If you have no Chest of Everything, use the /stuff command to get it (along with other initial items).

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.

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

Bag of Everything

Item that contains every item. Punch to access.

Chest of Everything

Placable block that 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.

Read the Test Tools README!

Mining tools

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

Food

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

Mapgen nodes

Nodes whose primary function is to be used by the mapgen to generate the world: Stone, water, dirt, sand, ...

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 Luanti's “All Settings” menu in the main menu to access the settings.