Breasy

Description

Breasy 🔗

A mod that will tell you what the wind is like at a position.

breasy.get_wind(pos)

breasy.register_biome('<biome_name>', {
  -- Does a multiply
  factor = 0.5 -- cut the wind in half
})

Currently the wind is determined by Perlin noise. Wind is 0 below y < 20.

If adopted it can create a more consistent environment where all particles move with the wind.

Features 🔗

  • Provides a location-based wind system with direction and speed.
  • Wind slowly rotates over time, completing configurable oscillations (e.g., ~2 switches per in‑game day).
  • Perlin noise introduces minor natural variation for both direction and speed.
  • Biome influence: modders can register biome-specific factors (breasy.register_biome) to scale local wind speed.
  • Altitude attenuation: wind weakens below sea level, gradually vanishing toward MIN_Y.
  • Designed for minimal recalculation: noise objects are reused and speed/direction are stable per location.

This makes it easy for other mods to query wind vectors at any position and integrate effects like particle motion, tree sway, or environmental interactions.

Usage 🔗

Using wind for particles 🔗

minetest.add_particle({
    pos = pos,
    velocity = breasy.get_wind(pos),
    acc = gravity,
    expirationtime = 3,
    size = 0.1,
})

Read magnitude and direction 🔗

local wind = breasy.get_wind(pos)

-- magnitude/speed of wind
local speed = vector.length(wind)

-- normalize to get pure direction
vector.normalize(wind_vec)

Debugging 🔗

You can toggle the wind particle effects on and off in-game using the chat command:

/wind_toggle

Useful when integrating wind into your mod.

If you enjoy my work, you can support me here: 💖 Donate

Thank you for helping me keep modding and sharing fun with everyone!

Reviews

Review

Do you recommend this mod?

  • No reviews, yet.

Releases

2026-04-04 20:15 UTC

2.0.3 🔗

2.0.3

  • Fix unintended cut-off to zero on slower wind speeds.
2026-04-01 08:17 UTC

2.0.2 🔗

2.0.2

  • Fix accidental definition of a global.
  • Removed the mention of particles in features list.
  • Add a non documented and experimental get_occluded_wind function.
2026-03-29 01:42 UTC

2.0.1 🔗

2.0.1

  • Likely fixed the wind vector nan source.
2026-03-29 01:20 UTC

2.0.0 🔗

2.0.0

  • Removed the add function since this is not a physics library.
  • Wind vector now represents meters per second.
  • Found and fixed the nan source.
  • Defined breasy global instead of doing dofile every time.
2026-03-28 21:06 UTC

1.0.2 🔗

1.0.2

  • Fix bug where very small wind values would cause Infinity or NaN.
All releases

Threads

New thread

Thread Last Reply

No threads found

Information

Provides

breasy

Dependencies

Required
No required dependencies

Information

Type
Mod
Technical Name
breasy
Languages
English
License
LGPL-2.1-only
Maintenance State
Actively Developed
Added
2026-03-24 16:08 UTC
Maintainers
Bas080

Used By