Mojira Archive
MCM-816

Behavior formatted using "format_version": "1.2.0" has broken "on_damage" projectile cause.

[1.13]
Partner Rank:
1

Partner Team Reporting:
Everbloom Studios

Verification builds:
1.13.0.15

Summary:
Behavior formatted using "format_version": "1.2.0" has broken "on_damage" projectile cause.

Impact:
Breaks final boss of live content which will be in the first realms plus release

Repro Steps:

  1. Open Candyworld and select a difficulty button twice
  2. Walk into the lobby
  3. /gamerule sendCommandFeedback true
  4. /summon ghast ~ ~ ~ "nightmare:fight_back"
  5. Fire at the center of the bottom of the skull with a bow and arrow.
  6. Observe results listed below

Observed Results:
V1.12.1
Observed Results: Works as Intended

V1.13.0.15
Observed Results: The entity takes damage but nothing happens. The entity still has the "nightmare:fight_me" component group equipped which is still waiting to check for projectile damage.

Expected Results:
The entity registers projectile damage (checked by line 74 of nightmare_boss.json in the behavior pack) and triggers the event "nightmare:almost_boss_time" which causes the entity to start rapidly shaking back and forth (using "minecraft:is_shaking") and summoning sheep (they are invisible. You can verify this by doing /testfor @e[type=sheep] and seeing that sheep exist in the scene).

Screenshots/Videos attached:

Regression build: 1.12.0.10

https://drive.google.com/file/d/1nxSDDflEHoBDYoxH4ByZObtxeYgKmvrZ/view?usp=sharing

Verification build: 1.13.0.15

https://drive.google.com/file/d/1ffuFI-ljJhkbmhMakX8Vxik2jOznbMiO/view?usp=sharing

 

Regression Builds:
1.12.1

Notes:
Explanation of How This System Works and what is going wrong:
In step 4, we are summoning a Ghast (aka The Nightmare) with a spawn event of "nightmare:fight_back." This event is described in the nightmare_boss.json behavior file from line 197-204. The purpose of summoning with this spawn event is to simulate the circumstances of the game when the bug naturally occurs. This event is adding the component group called "nightmare:fight_me." This component group is defined on lines 71-78. The component group has the "damage_sensor" component checking for projectile damage and triggering the event called "nightmare:almost_boss_time" if it successfully receives projectile damage. In 1.13, this check seems to fail. It is not detecting projectile damage. In 1.12 (and in all versions where this works as intended), it is successfully triggering the event (described on lines 205-212) which removes the "fight_me" component group and adds the "nightmare:trigger_pre_battle_speech" component group (described on lines 53-70) which causes the entity to shake and summon sheep. In conclusion: It appears the issue is specifically occurring on line 74 of the behavior file.

BUT HERE'S THE IMPORTANT PART!
In order to verify this bug, I tested the projectile damage sensor on the bat in Crazy Town (it doesn't check this by default, I edited some behaviors to make it do this) and it WORKS in 1.13. This confused me until I realized that in crazy town, the behavior file is using format_version "1.8.0" and in Candyworld, the nightmare is using format_version "1.2.0." Therefore, I can only conclude that something about the 1.2.0 format version is no longer supported in 1.13.

Fixed

Miguel Ledesma

2019-09-22, 01:03 AM

2019-09-26, 09:30 PM

2019-09-26, 09:30 PM

0

0

Future Release

-