AspireMint reports: can't place waterlily on water ... #1026

Closed
opened 2021-11-08 21:35:26 +00:00 by yourland-report · 4 comments

AspireMint reports a bug:

can't place waterlily on water or put to itemframe

Player position:

{
	y = 3.5,
	x = -34.49100112915,
	z = 22480.8046875
}

Player look:

{
	y = -0.54009342193604,
	x = -0.8407319188118,
	z = 0.03832608088851
}

Player information:

{
	min_rtt = 0.032000001519918,
	max_rtt = 0.27599999308586,
	connection_uptime = 2480,
	max_jitter = 0.22300000488758,
	minor = 4,
	major = 5,
	ip_version = 6,
	formspec_version = 4,
	patch = 0,
	protocol_version = 39,
	serialization_version = 28,
	lang_code = "",
	version_string = "5.4.0",
	avg_rtt = 0.035999998450279,
	state = "Active",
	avg_jitter = 0.0080000013113022,
	min_jitter = 0
}

Player meta:

{
	fields = {
		["3d_armor_inventory"] = "return {\"3d_armor:helmet_bronze 1 50000\", \"\", \"3d_armor:chestplate_bronze 1 50000\", \"shields:shield_bronze 1 50000\", \"3d_armor:boots_crystal 1 12500\", \"3d_armor:leggings_bronze 1 50000\"}",
		played_time = "660905",
		jointime = "1619715757",
		yl_commons_player_joined = "1636404877",
		["signslib:pos"] = "(-46,5,22546)",
		digged_nodes = "151619",
		bitten = "0",
		["unified_inventory:bags"] = "return {\"unified_inventory:bag_large\", \"unified_inventory:bag_large\", \"unified_inventory:bag_large\"}",
		partychat = "party",
		yl_church = "return {[\"last_death\"] = {[\"y\"] = 5, [\"x\"] = 38, [\"z\"] = 22480}, [\"last_death_portal\"] = 1630597381}",
		["stamina:level"] = "16.825",
		xp = "160409",
		arenalib_infobox_arenaID = "0",
		inflicted_damage = "20960",
		crafted = "5530",
		punch_count = "2710",
		died = "18",
		yl_commons_thankyou = "8",
		placed_nodes = "40369",
		hud_state = "on",
		repellant = "0",
		yl_commons_player_created = "1619715757"
	}
}

Log identifier


[MOD] yl_report log identifier = 3dbRzYpvdoWsjkUgrUus4LYn8l48QAVW

Profiler save:

profile-20211108T223525.json_pretty

Status:

# Server: version=5.4.1-yl, uptime=138517, max_lag=3.76534, clients={Jaraland, Papi, Boot, AspireMint, flux, sparrow, Sparkles, katiebee, Bla, Sokomine, hbreturns, Diaeresis, Bailiff, jakob, Service, UN1, AliasAlreadyTaken}

Teleport command:

/teleport xyz -34 4 22481

Compass command:

/give_compass Construction 3dbRzYpvdoWsjkUgrUus4LYn8l48QAVW D2691E -34 4 22481
AspireMint reports a bug: > can't place waterlily on water or put to itemframe Player position: ``` { y = 3.5, x = -34.49100112915, z = 22480.8046875 } ``` Player look: ``` { y = -0.54009342193604, x = -0.8407319188118, z = 0.03832608088851 } ``` Player information: ``` { min_rtt = 0.032000001519918, max_rtt = 0.27599999308586, connection_uptime = 2480, max_jitter = 0.22300000488758, minor = 4, major = 5, ip_version = 6, formspec_version = 4, patch = 0, protocol_version = 39, serialization_version = 28, lang_code = "", version_string = "5.4.0", avg_rtt = 0.035999998450279, state = "Active", avg_jitter = 0.0080000013113022, min_jitter = 0 } ``` Player meta: ``` { fields = { ["3d_armor_inventory"] = "return {\"3d_armor:helmet_bronze 1 50000\", \"\", \"3d_armor:chestplate_bronze 1 50000\", \"shields:shield_bronze 1 50000\", \"3d_armor:boots_crystal 1 12500\", \"3d_armor:leggings_bronze 1 50000\"}", played_time = "660905", jointime = "1619715757", yl_commons_player_joined = "1636404877", ["signslib:pos"] = "(-46,5,22546)", digged_nodes = "151619", bitten = "0", ["unified_inventory:bags"] = "return {\"unified_inventory:bag_large\", \"unified_inventory:bag_large\", \"unified_inventory:bag_large\"}", partychat = "party", yl_church = "return {[\"last_death\"] = {[\"y\"] = 5, [\"x\"] = 38, [\"z\"] = 22480}, [\"last_death_portal\"] = 1630597381}", ["stamina:level"] = "16.825", xp = "160409", arenalib_infobox_arenaID = "0", inflicted_damage = "20960", crafted = "5530", punch_count = "2710", died = "18", yl_commons_thankyou = "8", placed_nodes = "40369", hud_state = "on", repellant = "0", yl_commons_player_created = "1619715757" } } ``` Log identifier ``` [MOD] yl_report log identifier = 3dbRzYpvdoWsjkUgrUus4LYn8l48QAVW ``` Profiler save: ``` profile-20211108T223525.json_pretty ``` Status: ``` # Server: version=5.4.1-yl, uptime=138517, max_lag=3.76534, clients={Jaraland, Papi, Boot, AspireMint, flux, sparrow, Sparkles, katiebee, Bla, Sokomine, hbreturns, Diaeresis, Bailiff, jakob, Service, UN1, AliasAlreadyTaken} ``` Teleport command: ``` /teleport xyz -34 4 22481 ``` Compass command: ``` /give_compass Construction 3dbRzYpvdoWsjkUgrUus4LYn8l48QAVW D2691E -34 4 22481 ```
AliasAlreadyTaken was assigned by yourland-report 2021-11-08 21:35:26 +00:00

Can only test the flowers_plus mod in bare minimum MTG but it works there and not sure which version you guys have because it was a bit hard to find. I have revision 2013-04-24
Keep in mind that I never used lua or modded minetest but hope it helps;-)


Tests in YL

  • tested on default:water_source & default:river_water_source and protected & unprotected.
    Doesn´t make a difference
  • can´t place flowers:waterlily at all
  • can place flowers:seaweed but it replaces the water instead of getting set on top of it and is replaced with water again shortly after.

Diff waterlily & seaweed
Checked the on_place code for differences why seaweed is placeable but not waterlily and could find only that the waterlily code checks if place_pos is set

waterlily Line 94
if place_pos and not minetest.is_protected(place_pos, placer:get_player_name()) then

seaweed Line 194
if not minetest.is_protected(place_pos, placer:get_player_name()) then
Look like waterlily has a check to see if place_pos was set or is nil but seaweed doesn´t.
Could be the reason why waterlily can´t be placed but seaweed can.


Seaweed replaces water
Had a look at Line 175-192 why seaweed replaces water instead of getting placed on top of it.

local place_pos = nil
local top_pos = {x=pt.under.x, y=pt.under.y+1, z=pt.under.z}
local under_node = minetest.get_node(pt.under)
local above_node = minetest.get_node(pt.above)
local top_node   = minetest.get_node(top_pos)

if biome_lib:get_nodedef_field(under_node.name, "buildable_to") then
	if under_node.name ~= "default:water_source" then
		place_pos = pt.under
	elseif top_node.name ~= "default:water_source" and biome_lib:get_nodedef_field(top_node.name, "buildable_to") then
		place_pos = top_pos
	else
		return
	end
elseif biome_lib:get_nodedef_field(above_node.name, "buildable_to") then
	place_pos = pt.above
end

Not sure if I understand pointed_thing/above/under here correctly because it works in my MTG test world. For me pointed_thing(pt) is the water node I try to place on. So not sure why every if check and setting place_pos is based on pt.under and not pt.

Can only test the flowers_plus mod in bare minimum MTG but it works there and not sure which version you guys have because it was a bit hard to find. I have revision 2013-04-24 Keep in mind that I never used lua or modded minetest but hope it helps;-) ----- **Tests in YL** * tested on default:water_source & default:river_water_source and protected & unprotected. Doesn´t make a difference * can´t place flowers:waterlily at all * can place flowers:seaweed but it replaces the water instead of getting set on top of it and is replaced with water again shortly after. ----- **Diff waterlily & seaweed** Checked the on_place code for differences why seaweed is placeable but not waterlily and could find only that the waterlily code checks if place_pos is set waterlily Line 94 `if place_pos and not minetest.is_protected(place_pos, placer:get_player_name()) then` seaweed Line 194 `if not minetest.is_protected(place_pos, placer:get_player_name()) then` Look like waterlily has a check to see if place_pos was set or is nil but seaweed doesn´t. Could be the reason why waterlily can´t be placed but seaweed can. ----- **Seaweed replaces water** Had a look at Line 175-192 why seaweed replaces water instead of getting placed on top of it. ``` local place_pos = nil local top_pos = {x=pt.under.x, y=pt.under.y+1, z=pt.under.z} local under_node = minetest.get_node(pt.under) local above_node = minetest.get_node(pt.above) local top_node = minetest.get_node(top_pos) if biome_lib:get_nodedef_field(under_node.name, "buildable_to") then if under_node.name ~= "default:water_source" then place_pos = pt.under elseif top_node.name ~= "default:water_source" and biome_lib:get_nodedef_field(top_node.name, "buildable_to") then place_pos = top_pos else return end elseif biome_lib:get_nodedef_field(above_node.name, "buildable_to") then place_pos = pt.above end ``` Not sure if I understand pointed_thing/above/under here correctly because it works in my MTG test world. For me pointed_thing(pt) is the water node I try to place on. So not sure why every if check and setting place_pos is based on pt.under and not pt.
Styxcolor added the
1. kind/bug
label 2021-11-09 11:40:57 +00:00

Can't place on water fixed in 9a044a75f994500abc14b7ebf1b77b6965f43d5d and a209ac0db555ab0b68875fab562dab0327d013ff

Can't place on water fixed in 9a044a75f994500abc14b7ebf1b77b6965f43d5d and a209ac0db555ab0b68875fab562dab0327d013ff
Owner

we updated to the newest version of the mod and biome_lib, which changed some naming conventions in functions(!)

also, there was one missing line in the seaweed code
node_placement_prediction = "",

both together fixed the issue that waterlilies and seaweed can be planted on water now

item frame issue is still open.

we updated to the newest version of the mod and biome_lib, which changed some naming conventions in functions(!) also, there was one missing line in the seaweed code node_placement_prediction = "", both together fixed the issue that waterlilies and seaweed can be planted on water now item frame issue is still open.

Can't place in itemframe fixed in 6512dfedf01bfabda4c047fea4958de5d6b2c436

Can't place in itemframe fixed in 6512dfedf01bfabda4c047fea4958de5d6b2c436
AliasAlreadyTaken added the
5. result/fixed
label 2021-11-09 14:38:08 +00:00
Styxcolor added this to the 1.1.99 milestone 2021-11-11 10:15:39 +00:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
4 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#1026
No description provided.