**Title:** Metatool

**Description:** 

**Details:**
Metatool Minetest mod provides few useful tools and API for registering metadata manipulation tools and other tools primarily focused on special node data operations.

Main use for Tube Tool, Lua Tool, Magic Pen, Tron Wrench and Container Tool is to copy configurations / code / memory / channels from one node to another, for teleport tubes there's also network list and waypoints.

These tools are craftable and will not provide any over powered functionality, mostly aims to make some tasks faster and allows backing up node data. Most functionality is carefully selected to only contain utilities that regular player could also execute manually without using tools.

- To copy/read node data: special + use.
- For info function / special functions: sneak + use (if node does not have info then copy is executed instead).
- For paste/write node data: use.

Sharetool is special administration / node sharing tool that can change node owner and set ownership to special shared account. Use command `/metatool:give metatool:sharetool` to get tool, `ban` privilege required by default.

- To claim ownership: special + use.
- For info function / special functions: sneak + use
- To restore ownership: use.

Tools can be used in machines, most notably in node breakers. To allow anyone do this "machine_use_priv" can be set to "interact", default required privilege is "server".

### Included tools:

**Tubetool**

* Pipeworks injectors
* Pipeworks teleport tubes
* Pipeworks adjustable vacuum tubes
* Pipeworks sorting tubes
* Pipeworks autocrafter

**Luatool**

* Pipeworks lua tubes (with optional memory clone/backup)
* Mesecons microcontrollers
* Mesecons lua controllers (with optional memory clone/backup)
* Digistuff memory chips
* Save/debug/clone code and memory lua controller/tubes
* Can also paste code to some books / posters.

**Magic Pen**

* Copy / paste text between many nodes
* Too long list, see optional dependencies.
* Also generic support for some unlisted mods.

**Tron Wrench**

* Copy / paste digtron component configurations.

**Container Tool**

* Copy / paste container configuration.
* Install technic machine upgrades.
* Pipeworks receiver split stack support.
* Complete support for technic chests.
* Might give generic field cloning support for some unlisted mods.

**Sharetool**

* Homedecor books
* Travelnet elevators
* Travelnet travelnets
* Mapserver POI and label
* Mission block
* Global memory controller
* Pipeworks teleport tubes
* Administrative functions for Travelnet database validation/repair
* Administrative functions for limited node/area/protection ownership transfer and checks.
* Few more things supported with shared account for public facilities management.

### Planned for v2.0.0 release:

* Version information for API.
* Logging cleanup and use proper logging.
* Generic API updates
* Better (simpler) support for informing player about (un)supported nodes.
* Generic cleanup.

### Changelog:

**v2.0-RC2:**

* This version is bug fix release for v2.0-RC1.
* Form builder: Add Form:label.
* Share tool: Teleport tube configuration form.
* Tube tool: Allow listing shared teleport tubes.
* Tube tool: Allow listing shared or owned tp-tube channels.
* Container tool: Fix crafting recipe.
* Magic pen: Touch screen data structure changed, add compatibility.
* Share tool: Use new Travelnet API with.
* Share tool and Tube tool: Use new Pipeworks teleport tube API if available.

**v2.0-RC1:**

* This version while being release candidate should be stable enough for any server.
* Add some tests for node specific settings by @S-S-X in https://github.com/S-S-X/metatool/pull/58
* Type conversion for configuration values by @S-S-X in https://github.com/S-S-X/metatool/pull/59
* Api refactoring by @S-S-X in https://github.com/S-S-X/metatool/pull/61
* Move mineunit to be usable by all tool mods by @S-S-X in https://github.com/S-S-X/metatool/pull/64
* Container tool by @S-S-X in https://github.com/S-S-X/metatool/pull/63
* Magic pen by @S-S-X in https://github.com/S-S-X/metatool/pull/57
* Link Magic pen and Container tool README.md files by @S-S-X in https://github.com/S-S-X/metatool/pull/66
* Move global spec back to metatool dir by @S-S-X in https://github.com/S-S-X/metatool/pull/68
* (#70) Transfer ownership by @S-S-X in https://github.com/S-S-X/metatool/pull/71
* Sharetool transfer owner feature update by @S-S-X in https://github.com/S-S-X/metatool/pull/72
* Add digtron tool by @S-S-X in https://github.com/S-S-X/metatool/pull/76
* Missing tool nodes by @S-S-X in https://github.com/S-S-X/metatool/pull/77
* Sharetool support global memory controllers by @S-S-X in https://github.com/S-S-X/metatool/pull/80
* Sharetool fix mod.conf optional dependencies by @S-S-X in https://github.com/S-S-X/metatool/pull/81
* Add support for colored travelnets by @S-S-X in https://github.com/S-S-X/metatool/pull/87
* Add full SCI support for containertool by @S-S-X in https://github.com/S-S-X/metatool/pull/82
* Support for digistuff ram and eeprom by @S-S-X in https://github.com/S-S-X/metatool/pull/88
* Sharetool increase default radius limit by @S-S-X in https://github.com/S-S-X/metatool/pull/89
* Test coverage and badges by @S-S-X in https://github.com/S-S-X/metatool/pull/91
* Mineunit-actions update by @S-S-X in https://github.com/S-S-X/metatool/pull/92
* Mineunit rock by @S-S-X in https://github.com/S-S-X/metatool/pull/93
* Update form API and some tool forms by @S-S-X in https://github.com/S-S-X/metatool/pull/97
* Mineunit update by @S-S-X in https://github.com/S-S-X/metatool/pull/100
* Sort travelnets and elevators when copying by @S-S-X in https://github.com/S-S-X/metatool/pull/101
* Tubetool basic tests and tool bug fixes by @S-S-X in https://github.com/S-S-X/metatool/pull/104
* Extend tests and use Mineunit badges by @S-S-X in https://github.com/S-S-X/metatool/pull/105
* Fix teleport tube collector by @S-S-X in https://github.com/S-S-X/metatool/pull/106
* Disable receiving for private receivers owned by other players by @S-S-X in https://github.com/S-S-X/metatool/pull/107
* Pipeworks formspec updated with stricter checks by @S-S-X in https://github.com/S-S-X/metatool/pull/109
* Add autocrafter support for tubetool by @S-S-X in https://github.com/S-S-X/metatool/pull/110
* Containertool upgrade handling by @S-S-X in https://github.com/S-S-X/metatool/pull/117
* Sharetool tptube support by @S-S-X in https://github.com/S-S-X/metatool/pull/118
* Full Changelog: https://github.com/S-S-X/metatool/compare/v1.3.0...v2.0-RC1

**v1.3.1:**

* Fixed: Tubetool sneak+use (info function) crashed game if pipeworks mod is not installed.

**v1.3.0:**

* Display memory dump for lua controller and lua tube (sneak+use).
* Clone memory for lua controller and lua tube (through debug view).

**v1.2.0:**

* Get teleport tube listing for stored channel.
* Allow tools to be used in machines with configurable privileges, most notably in node breakers.
* Wildcard/fallback nodes can be added

**v1.1.0**

* Sharetool mapserver POI and label
* Sharetool mission block
* Mod dependencies are now optional

**v1.0.0**

* Initial release

**Tags:** tools, world_tools
**Repository:** https://github.com/S-S-X/metatool.git
**License:** MIT