Bug Closed · Resolved

Mythic Mobs recognises structures via type and not minecraft ID. Causes issue with structure condition.

#4727 opened by Unknown 2 years ago

Unknownreported this bug

Summary A lot of Vanilla Minecraft structures and 99% of custom structures now use the jigsaw structure type and mythic mobs uses the structure types in the structure condition. This causes issues where something like:

  • structure{s=minecraft:pillager_outpost} true

Is now invalid. But:

structure{s=minecraft:jigsaw} true

is accepted. This breaks the condition as it can no longer tell the difference between many structures like villages and pillager outposts as they all are considered minecraft:jigsaw.

This can also be seen by going to structures in game and using /mm u getstructures

Proposed fixes

Mythic mobs should detect structures by Minecraft ID not by their structure type. The same way the /locate command detects them.

Unknowncommented

Hi, I have the same problem, how did you solve it?

I get this warning when I run the skill test with the structure condition (any type of structure), but if I use the biome or isplayer condition, it works correctly. I used the /locate structures command and the Spigot page to check how to write the structures correctly. I tried uppercase, lowercase, and a mix of both, but it still doesn't work. I honestly don't understand what the error is.

I was also recommended to use mm utilities getstructures but it doesn't give me any information.

Mob:

Mimic:
  Type: SLIME
  Display: ""
  Health: 20
  Damage: 1
  Options:
    AlwaysShowName: false
    MovementSpeed: 0.4
    Size: 2
    PreventSlimeSplit: true
    KnockbackResistance: 0.5
    PreventOtherDrops: true
  Disguise: armor_stand setInvisible true setSmall true setYModifier -0.4
  Equipment:
  - PLAYER_HEAD{skullTexture=eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYzZkOGVmOWFkYTQyYzMzYzljZWM5NDhmMDNjYzQzYzhmYmE2MTUyNDk4Nzg5YzU2NDU2MjZhYjVlNzE5NjRkMyJ9fX0=} HEAD
  Skills:
  - skill{s=test} @target ~onInteract

Skill:

test:
  Conditions:
  # - structure{s=minecraft:ancient_city} true
  - structure{structure=minecraft:RUINED_PORTAL_JUNGLE} true
  # - biome{b=JUNGLE} true
  # - isPlayer true
  Skills:
    - message{message="&aTest"} @PIR{r=15}
    - randomskill{
      skills=[- dropitem{i=echo_shard;a=1-2} @trigger{}],[- dropitem{i=diamond;a=1-2} @trigger{}], [- dropitem{i=experience_bottle;a=1-5} @trigger{}]} @selfLocation
Sign in to join the discussion.