Irrelevant to this PR, but pointing it out in case you're interested. This code seems to create 2 tables per direction. I would think using offset for the var, and passing that same vector into observer_activate would hopefully cut down on object creation/garbage collection. As this code (for add node in particular) is probably hit for every foundation we place (in village gen, or was) 100s of times, it needs to be really lean.
I haven't tried reproducing this yet, but my initial suspicion is block unloading and turning into an ignore node.
Oooh. Good hypothesis. We cannot ignore "ignore"!
Or is the schema placed with param2=0 always, and the param2 change is always a second step?
This. As far as I'm aware.
I don't know what the best solution to this is. Currently it's place…
I was coming across this pull request because I saw some black trees with apparently wrong param2 sometimes; and regenerating the same place they would come out right - so it seems to be some…
MCLA uses
function mob_class:safe_remove()
which setsself.remove
and callsminetest.after(0
to double-check. Adopt this then?
Cannot say I have looked into their code, but it could be a…
This been tested with villager pathing through double doors etc,.? It was originally set after a lot of testing.
Removing the velocity check is probably unsafe and can lead to crashes, see my other comment for details.
This acc actually serves a purpose. At any point in time, the mob can be removed, and usually the way to check to avoid a crash is if acc, or if pos. I added a lot of these in when killing ghasts as the game would actually crash without it.
At every opportunity, we probably need to try and remove node_ok. Basically, it's a convenience method to hide unloaded "ignore", and therefore we don't handle the situation very well when it is unloaded. We need to think about "ignore" in all cases and how it affects the functionality, so node_ok needs to die.
Could this condition not be put in self:falling?
I personally prefer 2 to 3. If a player placed rails, loaded the world, and was doing stuff in their base, they probably lost a lot of rail due to 5 mins timeout. If we convert to a straight…
I think this was fixed by: #4176
Anyone want to double check?
I'll close this one as a duplicate in favour of the other one.
In regards to the world border, mobs do not operate near the world border. I took the world border, brought it in by a constant and when mobs get close, they just do not move. Maybe there is a…
I did consider it, but it is less obvious. The intention is not to check unloaded is in area, but to check the mob is in an unloaded area.
Basically, the logic is, if in an unloaded area, do not…