New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
air_equivalent
is undocumented
#13722
Comments
I know this used to be a node property back in (at least) 0.3. |
It appears to be used in some games and mods on ContentDB: https://content.minetest.net/zipgrep/86162cee-f7ab-4495-9925-bef21efc19f9/ |
@rollerozxa this is my favourite part I think it's safe to remove if it doesn't sort any effect |
I will not shed a single tear if this is removed. It was never documented so it's OK. If mods depend on undocumented behavior, it's their fault when things break. |
This parameter was used internally to see if grass could grow underneath a node, i.e. if it propagated light. Removing a node property that has been truthy for a long time (and thereby making it falsy, I guess) without figuring out the consequences seems either really stupid or really careless to me (choose your poison). |
Since the previous zipgrep had expired, here's a new one, archived as to not expire: https://web.archive.org/web/20230911164208if_/https://content.minetest.net/zipgrep/501df1d6-4355-4fd8-8afb-947ea023aa6e/ Removing this might break NodeCore and some other packages if they don't change their behaviour. |
What “fix” do you have in mind? This property seems actually useful for me if you want to handle air, ignore and similar nodes correctly as, well ”air equivalent” in a game. |
Well I was thinking checking for an airlike drawtype, but that would drag in other invisible nodes you might not want to be treated as an air equivalent so... Might be best to keep |
IMO this is most likely the wrong approach – think about it for a moment from a game/mod dev perspective … |
The It was removed in c1479a2 (November 2011). The
(Note: There is I am guessing that those two lines were missed when the Choices:
|
That makes sense, I was wondering if it was related to light/sunlight propagates |
IMO the easiest way to have no breakage is to leave it in and document it, ideally based on what mods actually do with it.
What would be the actual advantage here of having every mod to build their |
Note that while #13792 does mark For future developers who wish to remove Edit: @grorp suggested on IRC to use a custom node group and adding it via |
Why? |
Mods set Piranesi restoration project for example does this: https://gitlab.com/search?search=air_equivalent&nav_source=navbar&project_id=41386041&group_id=128051&search_code=true&repository_ref=master
I fully agree with you here.
Sounds plausible, but I can not possibly know. Did you ask modders who used it what they used it for? IIRC @Warr1024 elaborated on IRC a bit on using
This assumes that mods never set Since you came to a different conclusion than I did – at which mods did you look before deciding what to to? |
Zero. |
While looking through the
builtin
sources, I discovered the air node has a special fieldair_equivalent = true
.I don't know why it's there and this field is entirely undocumented. What's more confusing, it does not seem to be used anywhere in the code, neither in builtin nor C++ nor Minetest Game.
What is the purpose of this? If there is any purpose, I request that it'll be mentioned in
lua_api.md
.The text was updated successfully, but these errors were encountered: