biome cow doesn't work properly in some biomes #3671

Closed
opened 2023-01-29 20:35:15 +00:00 by flux · 11 comments
Member

Originally posted by @yourland-report in #3659 (comment)

daydream reports a bug:

Then I noticed when placing on some biomes, the biome cow just CHANGES THE DIRT to green grass. This is not the expected behavior at all. It should be planting some biome appropriate vegetation not changing the soil type! NOT COOL AT ALL

_Originally posted by @yourland-report in https://gitea.your-land.de/your-land/bugtracker/issues/3659#issue-5902_ daydream reports a bug: > Then I noticed when placing on some biomes, the biome cow just CHANGES THE DIRT to green grass. This is not the expected behavior at all. It should be planting some biome appropriate vegetation not changing the soil type! NOT COOL AT ALL
flux added the
1. kind/bug
2. prio/elevated
3. source/integration
labels 2023-01-29 20:36:00 +00:00
Author
Member

i'm not sure there's much i can do about this - it seems like the ethereal biome definitions changed slightly, and now there's some places - particularly in savanah-looking biomes close to mountain jumble - where the cows will convert dry grass to green grass.

i'm not sure there's much i can do about this - it seems like the ethereal biome definitions changed slightly, and now there's some places - particularly in savanah-looking biomes close to mountain jumble - where the cows will convert dry grass to green grass.
Member

Yes I was in jumble too, mushroom and it changed the pink to green... on frost biome and crystal grass it just stood still like it didn't know what to do, which I suspect it didn't.

Yes I was in jumble too, mushroom and it changed the pink to green... on frost biome and crystal grass it just stood still like it didn't know what to do, which I suspect it didn't.
Author
Member

Yes I was in jumble too, mushroom and it changed the pink to green... on frost biome and crystal grass it just stood still like it didn't know what to do, which I suspect it didn't.

the "standing still" is not an issue just w/ the biome cows, cf. #3164

sometimes //deleteblocks shows that biome creation rules have changed, and there's not anything we can really do about that. the solution for the cow is to either

  1. ban it from modifying nodes in specific biomes. which biomes, TBD
  2. let it just convert grass to the whatever is currently correct for the currently determined biome. eventually stuff will look fine.
> Yes I was in jumble too, mushroom and it changed the pink to green... on frost biome and crystal grass it just stood still like it didn't know what to do, which I suspect it didn't. the "standing still" is not an issue just w/ the biome cows, cf. #3164 sometimes `//deleteblocks` shows that biome creation rules have changed, and there's not anything we can really do about that. the solution for the cow is to either 1. ban it from modifying nodes in specific biomes. which biomes, TBD 2. let it just convert grass to the whatever is currently correct for the currently determined biome. eventually stuff will look fine.
Member

Just don't let it change existing grass? Just dirt?

Just don't let it change existing grass? Just dirt?
Author
Member
<fluxionary> when using valleys mapgen and ethereal, i'm noticing that the biome reported by `minetest.get_biome_data(pos)` doesn't always seem to correspond to the actual biome at a given location. it's never too far off, but it's still clearly wrong sometimes, particularly near edges of some biomes
<fluxionary> anyone got any insight?
<calcul0n> fluxionary, i noticed the same, it's because of altitude chill and other params altering the biome
<fluxionary> hm, interesting. would it be considered a bug that get_biome_data doesn't take this into account?
<sfan5> this could be considered a design mistake
<calcul0n> yep, if it's a bug it would be very hard to fix
<fluxionary> hm. and there's no way to get that data either, w/out re-implementing parts of valleys mapgen in lua?
<calcul0n> afaik that would be only way yes
<sfan5> valleys would have to move its biome adjustment stuff into a separate BiomeGen implementation (child class), annoying but not impossible
<fluxionary> i've been toying around w/ some ideas for gradual terrain repair & regeneration, but it sounds like there's a lot of work to be done before that's possible. hm.

so basically, the idea of the biome cow and biome regeneration is totally impossible when using valleys mapgen, without a lot more work. the reason i didn't have this issue in my test world was that it was running v7 mapgen, which i've now fixed.

i'm going to implement soko's suggestion - only change default:dirt - for now.

``` <fluxionary> when using valleys mapgen and ethereal, i'm noticing that the biome reported by `minetest.get_biome_data(pos)` doesn't always seem to correspond to the actual biome at a given location. it's never too far off, but it's still clearly wrong sometimes, particularly near edges of some biomes <fluxionary> anyone got any insight? <calcul0n> fluxionary, i noticed the same, it's because of altitude chill and other params altering the biome <fluxionary> hm, interesting. would it be considered a bug that get_biome_data doesn't take this into account? <sfan5> this could be considered a design mistake <calcul0n> yep, if it's a bug it would be very hard to fix <fluxionary> hm. and there's no way to get that data either, w/out re-implementing parts of valleys mapgen in lua? <calcul0n> afaik that would be only way yes <sfan5> valleys would have to move its biome adjustment stuff into a separate BiomeGen implementation (child class), annoying but not impossible <fluxionary> i've been toying around w/ some ideas for gradual terrain repair & regeneration, but it sounds like there's a lot of work to be done before that's possible. hm. ``` so basically, the idea of the biome cow and biome regeneration is totally impossible when using valleys mapgen, without a lot more work. the reason i didn't have this issue in my test world was that it was running v7 mapgen, which i've now fixed. i'm going to implement soko's suggestion - only change default:dirt - for now.
Author
Member

nerfed the biome cow: b75dadd091

nerfed the biome cow: https://gitea.your-land.de/your-land/yl_commons/commit/b75dadd09148af1c1598b2ae57d26972e9f0500b
flux added the
4. step/ready to QA test
label 2023-01-30 20:01:51 +00:00
flux added this to the 1.1.117.1 milestone 2023-01-30 20:01:55 +00:00

This somehow now leads to the removal of default:dirt_with_grass and replacement with others

This somehow now leads to the removal of default:dirt_with_grass and replacement with others
AliasAlreadyTaken added the
ugh/QA OK
label 2023-02-11 00:04:50 +00:00
Author
Member

@AliasAlreadyTaken if it's replacing dirt_with_grass w/ anything, that's QA/NOK, right?

@AliasAlreadyTaken if it's replacing dirt_with_grass w/ anything, that's QA/NOK, right?

No, it's only eating the dirt_with grass, leaving a normal dirt node without grass. Then sometimes the adjacent dirt is quicker to turn the blank dirt node into theirs instead of dirt_with grass.

No, it's only eating the dirt_with grass, leaving a normal dirt node without grass. Then sometimes the adjacent dirt is quicker to turn the blank dirt node into theirs instead of dirt_with grass.
Author
Member

No, it's only eating the dirt_with grass, leaving a normal dirt node without grass. Then sometimes the adjacent dirt is quicker to turn the blank dirt node into theirs instead of dirt_with grass.

alright, that's certainly technically programmed behavior then, good catch.

> No, it's only eating the dirt_with grass, leaving a normal dirt node without grass. Then sometimes the adjacent dirt is quicker to turn the blank dirt node into theirs instead of dirt_with grass. alright, that's certainly technically programmed behavior then, good catch.
flux added
5. result/fixed
and removed
4. step/ready to QA test
labels 2023-02-12 18:51:33 +00:00
Author
Member

biome cows are now operating in an acceptable capacity.

biome cows are now operating in an acceptable capacity.
flux closed this issue 2023-02-12 18:52:08 +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#3671
No description provided.