Restore soul to any soulless mobs
Touch-Night opened this issue ยท 6 comments
Currently, soul released from Filled Soul Vessel can only return to the original mob it was removed from. I think it will be more fun to make it able to possess any soulless mobs.
And if you returned soul to the wrong mob, the result will be a mob having a different behavior.
For example, if I remove the soul of a wolf and a villager, and restore the wolf soul into the soulless villager, the villager with wolf soul in it will nolonger trades, and will try to attack player if it is attacked by that player (Though player will not get hurt because villager's body cannot deal any damage). And that villager will also be able to be tamed by bone.
This kind of feature is rather difficult considering how AI code works (think replacing an Apple device's battery with one from another brand). It may be somewhat feasible to have a dedicated entity that can approximately copy other AIs though.
Mimicking interactions (e.g. taming with bones) doesn't necessarily make sense to me, a bee shouldn't be able to just eat a bone off your hand just because it's got a wolf soul IMO.
Maybe the following method can be used to achieve this function.
When the wolf soul possess the villager's body, an invisible wolf with different uuid but same nbt to the original wolf spawns at the villager's position, and then continuesly synchronize villager's position with ethereal wolf's.
As for mimicking interactions, it can be reasonable if you use existing tags. For example only mobs defined by requiem:tags/item/food/ to be able to eat bones can be tamed with bones even though it got a wolf soul.
I am aware of that kind of method, but then you need to avoid ghast souls suddenly flying and lobbing fireballs from a wolf body.
Hmmm, then this feature is really difficult to achieve, there are too many things to consider. Will it be on future updates?
It was initially part of the 2.0 roadmap, then we shelved it when we realized its difficulty. I can't say if it's actually going to happen - in full or in part - but there will probably be some kind of experiment in Pandemonium ๐
Have you played the Fool's Day's version of Minecraft? It adds the bottle of transform which can transform any mobs and the player into another one, while keeping some features (e.g. Enderman transformed from Creeper can still explode, and teleport). I don't know how mojang did this, but maybe it can provide a way to get a mob with wrong soul in it.