MCreator icon indicating copy to clipboard operation
MCreator copied to clipboard

The climb on top of powder snow entity goal does not work properly

Open luckyacthole opened this issue 11 months ago • 5 comments

Issue tracker rule checks (please read carefully)

Issue description

As the title says, the goal does not work as it should. Entities need to be added to the powder_snow_walkable_mobs entity tag to be able to utilize the goal at all. So this solved by adding it to the Mcreator minecraft tag list, or to just generate it in all instances like the job site tag.

I've created two entites in the provided workspace. With both having the same goals, but only one of them added to the tag.

How to reproduce this issue?

  1. Create a living entity
  2. Give it the climb on top of powder snow goal
  3. Put the entity on top of powder snow in-game

Operating system

Windows

Details

Mcreator 2023.4 1.20.1

Example workspace

examplesworkspace.zip

Logs

No response

luckyacthole avatar Feb 28 '24 10:02 luckyacthole

@Goldorion please take a look given you added those AI tasks. Easiest would be to override canUse and modify it

KlemenDEV avatar Feb 28 '24 11:02 KlemenDEV

I did some research about the bug and I confirm it happens (and I wonder how I didn't notice it... 🤔). I have the fix of the canUse method, but there's only one problem... the powder_snow_walkable_mobs tag is also used inside the canEntityWalkOnPowderSnow of the PowderSnowBlock. This method only provides 2 ways of walking on powder snow blocks:

  1. Adding the entity to the tag (which users can do)... or us if we have a system ready)
  2. Having an armor on the FEET slot allowing to walk on a powder snow block.

We have 2 possibilities to fix this bug: Keep everything as it is and warn users to add their entity to the tag or implement/use a system that automatically adds the entity to the tag when we detect this AI task block is used by an entity.

In the long term, the second option is preferable as it will avoid a lot of problems for everyone, but if we don't have this system yet, it can't be fixed easily/quickly.

I'm pretty sure what is the answer I will get, but I'll still wait for your opinion before doing something.

Goldorion avatar Mar 04 '24 22:03 Goldorion

Thank you for the research. Those are all valid findings.

A system to add tag when AI procedure block is present would be complex and would likely introduce some slowdowns unless we do hacky XML checking.

So probably contrary to what you expected, I think for this specific use case, it is fine to only add a warning

Keep everything as it is and warn users to add their entity to the tag

And check tag tool if this tag is already present and if not, add it to it

KlemenDEV avatar Mar 05 '24 16:03 KlemenDEV

Any updates/decisions on this?

KlemenDEV avatar Mar 09 '24 18:03 KlemenDEV

Any updates/decisions on this?

Yes, I didn't have the time the last two days.

Goldorion avatar Mar 09 '24 18:03 Goldorion