Solved Pathfinders in 1.17

Discussion in 'Spigot Plugin Development' started by KotoHacker, Jun 11, 2021 at 2:36 PM.

Thread Status:
Not open for further replies.
  1. With new version methods like goalSelector and targetSelector was disappeared. What should I replace them with?

    And, already from 1.16 I have problem with clearing bField. new UnsafeList<PathfinderGoalSelector>()) doesn't works. What should I replace this with too?

    Code (Text):
    public void removePathFinders(Entity entity) {
            EntityCreature c = (EntityCreature) ((CraftEntity) entity).getHandle();
            try {
                Field bField = PathfinderGoalSelector.class.getDeclaredField("b");
                Field cField = PathfinderGoalSelector.class.getDeclaredField("c");
                bField.set(c.goalSelector, new UnsafeList<PathfinderGoalSelector>());
                bField.set(c.targetSelector, new UnsafeList<PathfinderGoalSelector>());
                cField.set(c.goalSelector, new EnumMap<>(PathfinderGoal.Type.class));
                cField.set(c.targetSelector, new EnumMap<>(PathfinderGoal.Type.class));
            } catch (Exception exc) {
  2. Read annoucment of 1.17 at developers notes about nms, they reverted to obfuscates names of methods or something idk
  3. Have you all conspired or what? I know, but I can't find the method I need.
  4. gsk


    I believe you are looking for this:
    bO and bP are the the goalSelector and targetSelector. I'm not sure which is which yet.
  5. How have you done the mappings thing?
  6. Doing this with Mojang mappings is much more fun. You can reobfuscate your jar afterwards using specialsource.
  7. Thanks! It works...? I can't check it because i've this error when compiling project using maven:
    I am importing this class. This also applies to other similar package classes.
  8. I changed JDK to 16 in my project. Now it has compiled.
  9. Solved. I removed this code.
Thread Status:
Not open for further replies.