Knowledge Base

Preserving for the future: Shell scripts, AoC, and more

New Luanti mod: firefighter

I wrote a new mod for Luanti! It is available on Internal ContentDB.

Description of mod firefighter

This mod is designed for three mainline Luanti games, and adds tools and commands for fighting fires.

The canonical scm repo is at https://bgstack15.ddns.net/cgit/luanti/firefighter, and an additional repo suitable for collaboration is at https://codeberg.org/bgstack15/firefighter.

Using

A fire extinguisher is crafted from black wool, iron block, compass (MCL/VL) or steel ingot, red dye, and a bucket of water. In Mineclonia/VoxeLibre, you can repair an extinguisher at an anvil using a bucket of water. You can use the extinguisher as a weak, blunt weapon against mobs, too!

A fire extinguisher is used by left-clicking/using a tool, and starts suppressing fires in a small area.

Chat commands

To use the chat commands, a user must have priv server.

  • suppress_fire [<radius>] [<max_delay>]. Around the player, a cube of radius radius, start suppressing fires. Max_delay is a nice effect for over time, with a default of 1.5 seconds, but set it to 0 to immediately stop fires.
  • call_firestorm. BURNINATE around the calling player for a medium radius. I hope you have fire resistance.

Screenshots

Recipe for Mineclonia/VoxeLibre

Recipe for Minetest Game

Settings

  • firefighter.particles Boolean. Show the particles of the foam and smoke of a fire being extinguished. Disabling this might improve performance. Default is true.
  • firefighter.extinguisher_uses Integer. Set how many uses an extinguisher has in survival mode. Default is 100.

Alternatives

New Luanti mod: mcl_villager_cheats

I wrote a new mod for Mineclonia (ContentDB), titled Villager Cheats for Mineclonia. It is available on Internal ContentDB.

Description

This mod adds some features related to villagers.

  • Users with server priv can restock villager trades. I found the native Mineclonia village restock times incomplete.
  • Users can craft villager spawn eggs, which are very expensive.

The canonical scm repo is at https://bgstack15.ddns.net/cgit/luanti/mcl_villager_cheats, and an additional repo suitable for collaboration is at https://codeberg.org/bgstack15/mcl_villager_cheats.

Using

See the [Settings][#Settings] section for the timer function and how to use it.

Recipes can be enabled for villager spawn eggs.

Chat commands

To use the chat commands, a user must have priv server.

  • /villie Dumps details about the pointed villager to the player chat.
  • /restock Restock the pointed villager.
  • /restock_all_villagers Finds all villagers in world and restocks them.

API

These functions are exposed under global namespace mcl_villager_cheats.

  • mcl_villager_cheats.get_villager_profession(object)
  • mcl_villager_cheats.restock_if_villager(object)
  • mcl_villager_cheats.restock_all_villagers()
  • mcl_villager_cheats.find_first_villie(playername, action) Action is describe or restock.

Screenshots

Recipe for villager spawn egg:

  • Emerald block, bread, emerald block
  • Any enchanted book, diamond hoe, cake
  • Diamond block, lectern, diamond block

/2026/recipe-villager.png

Recipe for zombie villager spawn egg:

  • Emerald block, rotten flesh, emerald block
  • Any enchanted book, diamond hoe, cake
  • Diamond block, lectern, diamond block

/2026/recipe-zombie-villager.png

Settings

  • mcl_villager_cheats.use_timer Boolean. If true, then will restock all villagers at the times specified in the next setting.
  • mcl_villager_cheats.times Comma-separated list of times to restock all villagers, in millihours. 6100 is the default value, and is approximately 06:05, which is right after the time a player wakes up from a bed.
  • mcl_villager_cheats.verbose Boolean. Send chat messages to all players when the timer restocks villagers. Default is false.
  • mcl_villager_cheats.recipes Boolean. Enables the recipes for the villager/zombie villager spawn eggs. Default is true.
  • mcl_villager_cheats.enable_village_build_tool Enable village build tool, in creative only. Default is true.

Alternatives

  • None found. This is novel.

Further research

This does not work as a client side mod (CSM) because a few methods are not available to the client api.

  • core.objects_by_guid
  • core.register_chatcommand despite it being listed as available in client_lua_api.md