Arnuh / EchoPet

Adds pets to your Minecraft Server!
GNU General Public License v3.0
25 stars 12 forks source link

Development #151

Closed IAISI closed 3 months ago

Arnuh commented 11 months ago

AI shouldn't even be getting called when the owner is considered null. Incorrect way to fix this specific issue

inactiveTick seems to be some weird spigot thing? Might have to properly handle that in EchoPet

IAISI commented 11 months ago
    entity-activation-range:
      animals: 16
      monsters: 16
      raiders: 32
      misc: 12
      water: 12
      villagers: 16
      flying-monsters: 32
      wake-up-inactive:
        animals-max-per-tick: 2
        animals-every: 1200
        animals-for: 100
        monsters-max-per-tick: 4
        monsters-every: 400
        monsters-for: 100
        villagers-max-per-tick: 2
        villagers-every: 600
        villagers-for: 100
        flying-monsters-max-per-tick: 4
        flying-monsters-every: 200
        flying-monsters-for: 100
      villagers-work-immunity-after: 100
      villagers-work-immunity-for: 20
      villagers-active-for-panic: true
      tick-inactive-villagers: false
      ignore-spectators: false

I assume, from spigot.yml

andrewkm commented 9 months ago

Think we can get these merged @arnuh? Asking as I see it deals with: https://github.com/Arnuh/EchoPet/issues/153

Arnuh commented 9 months ago

he does unnecessary changes and the git history looks absolutely fucked? Nothing of value actually shows in file changes

so not really

IAISI commented 9 months ago

https://github.com/Arnuh/EchoPet/pull/151/commits/21d4d984e09a1d4e1031939a3de761e6cd0f6913 - prevents glitching thru walls, you can easily test and replicate, we had many players abusing this

https://github.com/Arnuh/EchoPet/pull/151/commits/f79635b171605a51de81c1653b7a537e7270ee4b - NPE, we log all console exceptions using paper api and we had NPEs flying... unless the idea is to just ignore those

https://github.com/Arnuh/EchoPet/pull/151/commits/2b4a1eaf40c53002e794b45743bbd2397a0aab98 https://github.com/Arnuh/EchoPet/pull/151/commits/5290e7b336d0529fe55928ebe413f8e1e7de603d https://github.com/Arnuh/EchoPet/pull/151/commits/c677142a293c98e64d50c8c2d3f0d4a769e82cd0 could be ignored, but it's bad practice, isn't it? then again whole EchoPet project is kinda messy like this...

https://github.com/Arnuh/EchoPet/pull/151/commits/d36139946337c3e32877c70843cb01127d5aa4d5 https://github.com/Arnuh/EchoPet/pull/151/commits/f2fc625a08918995c51a3658a6978c5bd4284add attempts to fix issues when other plugins are cancelling pet mounting, on tp or on mount

https://github.com/Arnuh/EchoPet/pull/151/commits/8a140c20af4e5c29336b4cb1274c852451ff5b88 works, but is probably bad solution as it will break even outdated 1.20 servers, think current EchoPet is already limited to 1.19 and not even sure if 1.19 support is all that good (I didn't test) and since 1.8 mess I try to keep our stuff as updated as I can... personally I'd suggest pushing releases for each ver and focusing on latest versions but that's just me.

I tried to fix as much stuff as I could instead of spamming issues for each NPE...

Arnuh commented 9 months ago

Yeah some of the changes look good its just something is wrong with the PR

I'll review it all eventually

It's probably fine to drop support for pre-1.20. I usually only keep it cause it doesn't take much effort to But also the event can be handled properly without dropping support

On the topic of NPEs, its just the plugin mishandling a lot of cases I'd assume(altho some you've fixed similar to how I would). I'm still not sure I want to just throw null checks everywhere

General cleanup is good and I'll manually do some of it with how I want the project cleaned up

IAISI commented 9 months ago

From what I saw and NPEs I was trying to fix came mostly from delayed tasks, I'm not even sure why pets are respawned with delayed task (so I didn't touch that) but in some cases we can't just assume player is still online or in region where they could use pets...

Arnuh commented 9 months ago

From what I saw and NPEs I was trying to fix came mostly from delayed tasks, I'm not even sure why pets are respawned with delayed task (so I didn't touch that) but in some cases we can't just assume player is still online or in region where they could use pets...

I don't know either but some things I've left because I just never got to it

Also looking at this project it desperately needs me to start using Nullable/NotNull annotations like I planned to start doing but haven't gotten to yet