descriptionA Minetest mod which adds several ground blocks and the concept of “wetness”.
ownerWuzzy@disroot.org
last changeWed, 14 Jul 2021 10:18:04 +0000 (14 12:18 +0200)
content tags
add:
README.md

Mod developer’s documentation for the Pedology mod for Minetest

Nodes

Ground nodes

The ground nodes are the most basic nodes in this mod. They mainly differ in density. Except coarse sand, all ground nodes can be wet between a wetness level between 0 (dry) and 5 (slurry). Each ground type has a maximum wetness level. It is intended for later versions to reserve wetness levels 4 and 5 for mud (high-viscosity liquids), whereas levels 0-3 are used for solid blocks.

Here is the list of ground blocks with the maximum wetness level:

Currently, sand and gravel are not affected by gravity.

Air and vacuum

As an experimental feature, Pedology adds two new air node type and a vacuum node type:

All three behave like the ordinary air. The vacuum is special as it removes 4 hearts per seconds for any lifeform which is inside it. The other node types have no special properties.

It has yet to be decided wheather these nodes are kept.

Liquids

Yes, there are some water and lava nodes, but are currently experimental.

Itemstrings

Ground nodes

The itemstrings of all ground nodes follow this pattern:

pedology:<type>_<wetness>

where “<type>” is replaced with the ground type and “wetness” with the wetness level

Types

Example

The itemstring for “dry clay” is “pedology:clay_0

Air

Groups

Used groups

The mod uses the following existing groups:

New groups

The mod introduces the following groups:

Functions

pedology.dry(pos)

Reduces the wetness level of the node at pos by 1, if possible. This is done by replacing the node with a “drier” version of it, if available.

Parameters

Return value

nil

pedology.wetten(pos)

Increases the wetness level of the node at pos by 1, if possible. This is done by replacing the node with a “wetter” version of it, if available.

Parameters

nil

pedology.register_sucky_group(basename, basedescription, lumpdescription, maxwet, oozeinterval, oozechance, melttable, dropcount, sounds, additional_groups)

Registers a bunch of sucky and oozing nodes to Pedology . This function assumes that textures are ready for the node, one texture for each wetness level (up to maxwet). They have to be named according to the pattern pedology_<basename>_<wetness>.png and must reside in the textures folder. Example name: pedology_clay_0.png is the texture for dry clay, pedology_clay_1.png is texture for wet clay, and so on.

Parameters

Return value

nil

License

This mod is free software. The entire mod (code, textures, everything) is licensed under the MIT License. Enjoy! :-)

shortlog
2021-07-14 WuzzyAdd license (MIT)master
2016-11-14 WuzzyRemove horrible legacy minetest.env
2016-11-13 WuzzyAdd screenshot
2016-11-09 WuzzyFix outdated intllib boilerplate
2016-11-08 WuzzyAdd liquid group
2016-10-29 WuzzyFix syntax mistake in pedology
2016-08-11 WuzzyAdd mod.conf
2016-08-11 WuzzyLess namespace pollution
2014-06-30 WuzzyRudimentary mud and slurry
2014-06-28 WuzzyUpdate depends.txt
2014-06-28 WuzzyAdd intllib support and German translation
2014-06-26 WuzzyUpdate description
2014-06-26 WuzzyRemove last lava non-code
2014-06-26 WuzzyFix particle drips velocity and acceleration
2014-06-25 WuzzyFix flowing liquid textures
2014-06-25 WuzzyUpdate the turf lump images
...
heads
2 years ago master