Soul Shards: The Old Ways

Soul Shards: The Old Ways

13M Downloads

No check if the mob is IEntityOwnable and owned

schindlershadow opened this issue ยท 3 comments

commented

Issue Description:

Players should not be able to make spawners of owned entities.

Entities spawned from a shard made of owned entities are not owned.

Proposed fixes:

no shard creation from owned entities
or
entities spawned from a shard made of owned entities should also be owned by the same owner.
fix #2 may cause issues for some mods.

What happens:

Entities spawned from a shard made of owned entities are not owned.

What you expected to happen:

Entities spawned from a shard made of owned entities are owned or cannot spawn.


Affected Versions (Do not use "latest"):

  • Soul Shards: SoulShards-TOW-1.10.2-2.6.3-43
commented

What defines an "owned entity"? Do you mean things like dogs and cats vs wolves and ocelots?

commented

Yes, other mods have ownable entities that break balance due to the missing check.

IEntityOwnable (might be old)
http://takahikokawasaki.github.io/minecraft-resources/javadoc/forge/1.7.10-10.13.2.1291/net/minecraft/entity/IEntityOwnable.html

Example mod: https://github.com/Thutmose/Pokecube

Thutmose:

those mods (soul shards) really should check if the mob is IEntityOwnable and owned...
and then not let them pick up if it is
nothing I can really do about it though on my end

example:

package net.minecraft.entity;

import java.util.UUID;

public interface IEntityOwnable
{
    UUID getOwnerId();

    Entity getOwner();
}
commented

All entities that extend EntityLiving are caught and enabled by default. The config exists just for this reason. If it bothers other devs, I have an IMC API to blacklist entities by class. (In 1.11, I am changing that to registry names)