PreventConversion and PreventTransformation Options Bug
Issue Summary
PreventTransformation Option Issue
The PreventTransformation: true
option is not functioning correctly. When entities like Mooshroom or Pig are struck by lightning, they still transform despite having this option enabled.
PreventConversion Option Issues
- Regular Zombies (Zombie) with this option show continuous shaking animation (drowning conversion animation) but don't fully prevent conversion.
- Zombie variants (e.g., Husk) completely ignore this option and can still convert to Drowned normally.
Steps to Reproduce
Issue 1: PreventTransformation
- Create a mob configuration with
PreventTransformation: true
:
TestMob:
Type: MUSHROOM_COW # or PIG
Options:
PreventTransformation: true
- Spawn the mob
- Strike it with lightning (via command or natural weather)
- Observe if transformation occurs (e.g., Mooshroom color change, Pig to Zombified Piglin)
Issue 2: PreventConversion
- Configure both regular Zombie and Husk with
PreventConversion: true
:
ZombieTest:
Type: ZOMBIE
Options:
PreventConversion: true
Equipment:
- leather_helmet HEAD # Helper to observe conversion (equipment disappears upon conversion)
HuskTest:
Type: HUSK
Options:
PreventConversion: true
Equipment:
- leather_helmet HEAD # Helper to observe conversion
- Spawn both types of mobs
- Observe regular zombie for shaking animation
- Place Husk in water and observe if it converts to Drowned
Current Behavior
- Lightning-struck Mooshroom/Pig still transform
- Regular zombies continuously shake (drowning conversion animation)
- Husks completely ignore the option and convert to Drowned
Expected Behavior
-
PreventTransformation: true
should completely prevent lightning-triggered transformations -
PreventConversion: true
should:- Block conversion behavior at code level
- Work effectively for all zombie variants (including Husk)
Server Environment
- Server Version: 1.20.6
- MythicMobs Version: 5.8.2
- Java Version: Java 21
- Server Logs: No errors reported
- Debug Logs: None available
Suggested Fix Direction
PreventTransformation Issue
- Verify proper listening of EntityTransformEvent
- Ensure option priority over vanilla game logic
PreventConversion Issue
- Zombie shaking: Review current prevention logic that may be keeping entity in conversion state
- Husk ineffectiveness: Check if variant entities are included in PreventConversion condition checks