flux reports: bats and waterlife birds seem ... #2077

Open
opened 2022-06-14 01:08:25 +00:00 by yourland-report · 9 comments

flux reports a bug:

bats and waterlife birds seem to spawn a bit too much...

Player position:

{
	y = 14.5,
	x = 1983.8000488281,
	z = 1155.6409912109
}

Player look:

{
	y = 0.16332595050335,
	x = -0.95971363782883,
	z = 0.22863590717316
}

Player information:

{
	min_rtt = 0.15000000596046,
	max_rtt = 5.3670001029968,
	connection_uptime = 205804,
	max_jitter = 3.364000082016,
	minor = 6,
	major = 5,
	ip_version = 6,
	formspec_version = 5,
	patch = 0,
	protocol_version = 40,
	serialization_version = 29,
	lang_code = "",
	version_string = "5.6.0-dev-d208be276-dirty",
	avg_rtt = 0.15999999642372,
	state = "Active",
	avg_jitter = 0.0019999891519547,
	min_jitter = 0
}

Player meta:

{
	fields = {
		["3d_armor_inventory"] = "return {\"3d_armor:chestplate_nether 1 3440\", \"3d_armor:helmet_nether 1 1720\", \"3d_armor:leggings_nether 1 3440\", \"nether_mobs:dragon_boots 1 1720\", \"nether_mobs:dragon_shield 1 1720\", \"\"}",
		["petz:werewolf_vignette_id"] = "20",
		played_time = "17420221",
		jointime = "1615351173",
		["stamina:poisoned"] = "no",
		["stamina:exhaustion"] = "56",
		["signslib:pos"] = "(2583,11,3234)",
		digged_nodes = "1058638",
		punch_count = "79164",
		yl_commons_player_joined = "1654963118",
		bitten = "0",
		["unified_inventory:bags"] = "return {\"water_life:croc_bag\", \"water_life:croc_bag\", \"water_life:croc_bag\", \"water_life:croc_bag\"}",
		partychat = "party",
		["petz:werewolf_clan_idx"] = "1",
		["petz:lycanthropy"] = "1",
		yl_church = "return {[\"last_death\"] = {[\"y\"] = 29400, [\"x\"] = 2338, [\"z\"] = 1226}, [\"last_heal\"] = 1615504208, [\"last_death_portal\"] = 1653796347}",
		yl_commons_thankyou = "124",
		["stamina:level"] = "10",
		xp = "1238840",
		arenalib_infobox_arenaID = "0",
		inflicted_damage = "1274874",
		crafted = "36125",
		["petz:old_override_table"] = "return {[\"new_move\"] = true, [\"sneak\"] = true, [\"sneak_glitch\"] = false, [\"jump\"] = 1.5, [\"speed\"] = 2, [\"gravity\"] = 1}",
		["petz:werewolf"] = "0",
		placed_nodes = "346863",
		died = "65",
		hud_state = "on",
		repellant = "0",
		yl_commons_player_created = "1615351173"
	}
}

Log identifier


[MOD] yl_report log identifier = A9vo6ozIORgPG4GUpBQJ3isccjPZQVSq

Profiler save:

profile-20220614T030824.json_prettyEE

Status:

# Server: version: 5.5.1-yl | game: Minetest Game | uptime: 2d 10h 29min 59s | max lag: 0.995s | clients: rheo, Redshirt, Xonon, Bailiff, LeetPeet, pitman, flux

Teleport command:

/teleport xyz 1984 15 1156

Compass command:

/give_compass Construction A9vo6ozIORgPG4GUpBQJ3isccjPZQVSq D2691E 1984 15 1156
flux reports a bug: > bats and waterlife birds seem to spawn a bit too much... Player position: ``` { y = 14.5, x = 1983.8000488281, z = 1155.6409912109 } ``` Player look: ``` { y = 0.16332595050335, x = -0.95971363782883, z = 0.22863590717316 } ``` Player information: ``` { min_rtt = 0.15000000596046, max_rtt = 5.3670001029968, connection_uptime = 205804, max_jitter = 3.364000082016, minor = 6, major = 5, ip_version = 6, formspec_version = 5, patch = 0, protocol_version = 40, serialization_version = 29, lang_code = "", version_string = "5.6.0-dev-d208be276-dirty", avg_rtt = 0.15999999642372, state = "Active", avg_jitter = 0.0019999891519547, min_jitter = 0 } ``` Player meta: ``` { fields = { ["3d_armor_inventory"] = "return {\"3d_armor:chestplate_nether 1 3440\", \"3d_armor:helmet_nether 1 1720\", \"3d_armor:leggings_nether 1 3440\", \"nether_mobs:dragon_boots 1 1720\", \"nether_mobs:dragon_shield 1 1720\", \"\"}", ["petz:werewolf_vignette_id"] = "20", played_time = "17420221", jointime = "1615351173", ["stamina:poisoned"] = "no", ["stamina:exhaustion"] = "56", ["signslib:pos"] = "(2583,11,3234)", digged_nodes = "1058638", punch_count = "79164", yl_commons_player_joined = "1654963118", bitten = "0", ["unified_inventory:bags"] = "return {\"water_life:croc_bag\", \"water_life:croc_bag\", \"water_life:croc_bag\", \"water_life:croc_bag\"}", partychat = "party", ["petz:werewolf_clan_idx"] = "1", ["petz:lycanthropy"] = "1", yl_church = "return {[\"last_death\"] = {[\"y\"] = 29400, [\"x\"] = 2338, [\"z\"] = 1226}, [\"last_heal\"] = 1615504208, [\"last_death_portal\"] = 1653796347}", yl_commons_thankyou = "124", ["stamina:level"] = "10", xp = "1238840", arenalib_infobox_arenaID = "0", inflicted_damage = "1274874", crafted = "36125", ["petz:old_override_table"] = "return {[\"new_move\"] = true, [\"sneak\"] = true, [\"sneak_glitch\"] = false, [\"jump\"] = 1.5, [\"speed\"] = 2, [\"gravity\"] = 1}", ["petz:werewolf"] = "0", placed_nodes = "346863", died = "65", hud_state = "on", repellant = "0", yl_commons_player_created = "1615351173" } } ``` Log identifier ``` [MOD] yl_report log identifier = A9vo6ozIORgPG4GUpBQJ3isccjPZQVSq ``` Profiler save: ``` profile-20220614T030824.json_prettyEE ``` Status: ``` # Server: version: 5.5.1-yl | game: Minetest Game | uptime: 2d 10h 29min 59s | max lag: 0.995s | clients: rheo, Redshirt, Xonon, Bailiff, LeetPeet, pitman, flux ``` Teleport command: ``` /teleport xyz 1984 15 1156 ``` Compass command: ``` /give_compass Construction A9vo6ozIORgPG4GUpBQJ3isccjPZQVSq D2691E 1984 15 1156 ```
AliasAlreadyTaken was assigned by yourland-report 2022-06-14 01:08:25 +00:00
flux added the
1. kind/balancing
label 2022-06-14 01:30:23 +00:00
Member

both of these images don't do justice to the true issue; most of the entities despawned themselves before i manage to take a decent picture.

both of these images don't do justice to the true issue; most of the entities despawned themselves before i manage to take a decent picture. ![](https://gitea.your-land.de/attachments/9bbab5f2-e48b-4778-8c4b-47db6dbe8986) ![](https://gitea.your-land.de/attachments/aa8769aa-3e92-4ff6-8bcd-1fceb6574053)

I think the problem is not "too much spawn", because there are spawn limits in place.

I think the problem is entities are persisted when they hit the non-emerged border. Then, once in a a blue moon, someone loads the mapblock with all the persisted entities and they are set free - ofc despawning quickly due to lifetimer or similar, but still.

I have a similar problem with ghosts in the admin area. Once I fly out in a direction I hardly ever do before, a lot of stray ghosts become activated and then instantly despawn.

Could also be a setting in the minetest.conf:

active_block_mgmt_interval = 10

I disabled this setting now, default is 2.

I think the problem is not "too much spawn", because there *are* spawn limits in place. I think the problem is entities are persisted when they hit the non-emerged border. Then, once in a a blue moon, someone loads the mapblock with all the persisted entities and they are set free - ofc despawning quickly due to lifetimer or similar, but still. I have a similar problem with ghosts in the admin area. Once I fly out in a direction I hardly ever do before, a lot of stray ghosts become activated and then instantly despawn. Could also be a setting in the minetest.conf: active_block_mgmt_interval = 10 I disabled this setting now, default is 2.
Member

I think the problem is entities are persisted when they hit the non-emerged border. Then, once in a a blue moon, someone loads the mapblock with all the persisted entities and they are set free - ofc despawning quickly due to lifetimer or similar, but still.

it's not "once in a blue moon", it's mostly in areas where someone AFK'ed for a long time, and mobs wandered into a neighboring mapblock, and unloaded, dropping the limit. the screenshots are taken near my area and odonhull; those are areas that are visited often. the things that have changed are that bats now fly, and that water_life spawning has regressed to ignoring protection.

we should probably address this when we rework the whole mob API - perhaps most mobs, particularly ones which are untamed, common, and non-hostile, should try to avoid coming back to life after they were despawned.

then again, ghosts are also a huge problem. not just what you brought up, but the thousands of ghosts around my old balrog farm.

> I think the problem is entities are persisted when they hit the non-emerged border. Then, once in a a blue moon, someone loads the mapblock with all the persisted entities and they are set free - ofc despawning quickly due to lifetimer or similar, but still. it's not "once in a blue moon", it's mostly in areas where someone AFK'ed for a long time, and mobs wandered into a neighboring mapblock, and unloaded, dropping the limit. the screenshots are taken near my area and odonhull; those are areas that are visited often. the things that have changed are that bats now fly, and that water_life spawning has regressed to ignoring protection. we should probably address this when we rework the whole mob API - perhaps most mobs, particularly ones which are untamed, common, and non-hostile, should try to avoid coming back to life after they were despawned. then again, ghosts are also a huge problem. not just what you brought up, but the thousands of ghosts around my old balrog farm.
flux added this to the (deleted) project 2022-06-16 01:45:42 +00:00
flux modified the project from (deleted) to flux's TODO list 2022-07-02 22:20:16 +00:00
flux modified the project from flux's TODO list to (deleted) 2022-07-02 23:41:49 +00:00
flux added the
4. step/at work
label 2022-10-20 16:13:16 +00:00
flux added this to the flux's TODO list project 2022-10-20 16:13:20 +00:00
flux self-assigned this 2022-10-20 16:13:24 +00:00
Member

see #2421 for more discussion, which was closed in favor of this issue

see #2421 for more discussion, which was closed in favor of this issue
Member

relevant engine issue https://github.com/minetest/minetest/issues/11599

though that would also require mob logic updates to make use if it, if it's ever implemented.

relevant engine issue https://github.com/minetest/minetest/issues/11599 though that would also require mob logic updates to make use if it, if it's ever implemented.

What if we taught mobs NOT to wander into unloaded areas, but somehow bounce them off the mapblock border?

At least mobs_redo knows a setting where mobs "avoid" other blocks. Can we extend that to avoid the unloaded regions?

What if we taught mobs NOT to wander into unloaded areas, but somehow bounce them off the mapblock border? At least mobs_redo knows a setting where mobs "avoid" other blocks. Can we extend that to avoid the unloaded regions?
Member

What if we taught mobs NOT to wander into unloaded areas, but somehow bounce them off the mapblock border?
At least mobs_redo knows a setting where mobs "avoid" other blocks. Can we extend that to avoid the unloaded regions?

the "unloaded" area is actually an "inactive" area, and there's different semantics for an area that's not active for entities, and an area that's not active for machines (i.e. ABMs and timers). there isn't a way to test for either, but "not active for entities" is quite complicated - it has to do w/ the euclidean distance from nearby players, and also which direction they're looking, and changes rapidly as players move around and look at different things.

mobs_redo and mobkit (and petz) supposedly have checks to limit the number of mobs that spawn in an area, perhaps it should do this check when they're loading too and despawn them if there's too many.

> What if we taught mobs NOT to wander into unloaded areas, but somehow bounce them off the mapblock border? > At least mobs_redo knows a setting where mobs "avoid" other blocks. Can we extend that to avoid the unloaded regions? the "unloaded" area is actually an "inactive" area, and there's different semantics for an area that's not active for entities, and an area that's not active for machines (i.e. ABMs and timers). there isn't a way to test for either, but "not active for entities" is quite complicated - it has to do w/ the euclidean distance from nearby players, and also which direction they're looking, and changes rapidly as players move around and look at different things. mobs_redo and mobkit (and petz) supposedly have checks to limit the number of mobs that spawn in an area, perhaps it should do this check when they're *loading* too and despawn them if there's too many.

Decreased spawn to 20: b4a1dbeb7b

Decreased spawn to 20: https://gitea.your-land.de/your-land/petz/commit/b4a1dbeb7b043ff7c60097fa6267a55a4be27fbd
flux removed the
4. step/at work
label 2023-02-27 21:13:30 +00:00
Member
noting a relevant engine PR: https://github.com/minetest/minetest/pull/14138
Sign in to join this conversation.
No Milestone
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: your-land/bugtracker#2077
No description provided.