EinsDreiDreiSieben/mods/modlib
2025-05-13 23:14:13 +02:00
..
build Körperbewegung 2025-05-13 23:14:13 +02:00
doc Körperbewegung 2025-05-13 23:14:13 +02:00
minetest Körperbewegung 2025-05-13 23:14:13 +02:00
persistence Körperbewegung 2025-05-13 23:14:13 +02:00
web Körperbewegung 2025-05-13 23:14:13 +02:00
b3d.lua Körperbewegung 2025-05-13 23:14:13 +02:00
base64.lua Körperbewegung 2025-05-13 23:14:13 +02:00
binary.lua Körperbewegung 2025-05-13 23:14:13 +02:00
bluon.lua Körperbewegung 2025-05-13 23:14:13 +02:00
file.lua Körperbewegung 2025-05-13 23:14:13 +02:00
func.lua Körperbewegung 2025-05-13 23:14:13 +02:00
hashheap.lua Körperbewegung 2025-05-13 23:14:13 +02:00
hashlist.lua Körperbewegung 2025-05-13 23:14:13 +02:00
heap.lua Körperbewegung 2025-05-13 23:14:13 +02:00
init.lua Körperbewegung 2025-05-13 23:14:13 +02:00
iterator.lua Körperbewegung 2025-05-13 23:14:13 +02:00
json.lua Körperbewegung 2025-05-13 23:14:13 +02:00
kdtree.lua Körperbewegung 2025-05-13 23:14:13 +02:00
less_than.lua Körperbewegung 2025-05-13 23:14:13 +02:00
License.txt Körperbewegung 2025-05-13 23:14:13 +02:00
logo.svg Körperbewegung 2025-05-13 23:14:13 +02:00
luon.lua Körperbewegung 2025-05-13 23:14:13 +02:00
math.lua Körperbewegung 2025-05-13 23:14:13 +02:00
matrix4.lua Körperbewegung 2025-05-13 23:14:13 +02:00
minetest.lua Körperbewegung 2025-05-13 23:14:13 +02:00
mod.conf Körperbewegung 2025-05-13 23:14:13 +02:00
persistence.lua Körperbewegung 2025-05-13 23:14:13 +02:00
quaternion.lua Körperbewegung 2025-05-13 23:14:13 +02:00
Readme.md Körperbewegung 2025-05-13 23:14:13 +02:00
schema.lua Körperbewegung 2025-05-13 23:14:13 +02:00
table.lua Körperbewegung 2025-05-13 23:14:13 +02:00
tex.lua Körperbewegung 2025-05-13 23:14:13 +02:00
text.lua Körperbewegung 2025-05-13 23:14:13 +02:00
trie.lua Körperbewegung 2025-05-13 23:14:13 +02:00
utf8.lua Körperbewegung 2025-05-13 23:14:13 +02:00
vararg.lua Körperbewegung 2025-05-13 23:14:13 +02:00
vector.lua Körperbewegung 2025-05-13 23:14:13 +02:00
web.lua Körperbewegung 2025-05-13 23:14:13 +02:00

Logo Modding Library (modlib)

Multipurpose Minetest Modding Library

At a glance

No dependencies. Licensed under the MIT License. Written by Lars Mueller aka LMD or appguru(eu). Requires Lua 5.1 / LuaJIT.

Acknowledgement

Principles

  • Game-agnostic: Modlib aims to provide nothing game-specific;
  • Minimal invasiveness: Modlib should not disrupt other mods; even at the expense of syntactic sugar, changes to the global environment - apart from the addition of the modlib scope - are forbidden
  • Architecture: Modlib is organized hierarchically
  • Performance: Modlib tries to not compromise performance for convenience; modlib loads lazily

Tests

The tests are located in a different repo, modlib_test, as they are quite heavy due to testing the PNG reader using PngSuite. Reading the tests for examples of API usage is recommended.

API

(Incomplete) documentation resides in the doc folder; you'll have to dive into the code for everything else.

The mod namespace is modlib, containing all modules which in turn contain variables & functions.

Modules are lazily loaded by indexing the modlib table. Do _ = modlib.<module> to avoid file load spikes at run time.

Localizing modules (local <module> = modlib.<module>) is recommended.