Nevakanezah / HorseEnhancer

All-natural horse enhancement for Minecraft 1.12 - 1.14
MIT License
3 stars 2 forks source link

Changes via commands made to horses would reset after I leave the server #63

Open HonoderaGetsuyo opened 1 year ago

HonoderaGetsuyo commented 1 year ago

For example my horse is supposed to be a stallion due to something like data leftovers from deleted plugins I was testing, but it was a mare with this plugin, so I changed it back into a stallion by doing /he update horsename -g male

It stays a stallion until I leave the server, where it will turn back into a mare when I rejoin

Nevakanezah commented 1 year ago

For example my horse is supposed to be a stallion due to something like data leftovers from deleted plugins I was testing

Would you be able to provide the list of plugins you're currently using on your server, as well as a list of the deleted plugins you had been testing? It might prove helpful in investigating this.

HonoderaGetsuyo commented 1 year ago

CURRENT PLUGINS: ChestShop Citizens CoreProtect DecentHolograms DerbyJockey <-- (This is a Japanese plugin that provides a horsewhip with a stamina bar for horses, probably not related) DynMap EssentialsX GriefPrevention GSit HeadsPlus HorseEnhancer LuckPerms Multiverse-Core NoMobGriefing OpenAudioMC RandomTeleport myDog Sleep-Most TAB Vault VeinMiner WorldEdit WorldGuard ZHorse

DELETED PLUGINS: mcMMOHorses RPGHorses CytologicHorses

HonoderaGetsuyo commented 1 year ago

2023-08-05_03 20 23 2023-08-05_03 20 35

Here are two images for context, same horse but IDs shuffled into another one after attempting to summon it in another world (Also the gender)

Nevakanezah commented 1 year ago

Ooh, thank you very much! It may take a bit before I can look into this properly, but a couple things come to mind from what you've already shown:

  1. From what I could tell, both zHorse and DerbyJockey are pretty old plugins. They seem to be for MC 1.16 and 1.15, respectively? Might be that I missed a more up-to-date repo, but I was pretty surprised to see DerbyJockey using horse MetaData, since I'm pretty sure metadata's been hard deprecated.
  2. I didn't really take multiple dimensions into account when programming horseEnhancer, so I'm not 100% confident on whether it works. If this is the cause, it's totally on me for not handling that.
  3. Both zHorse and DerbyJockey interact with a number of things that HorseEnhancer's also using. The latter plugin less so (it kinda cheats to apply speed boosts,) but zHorse is doing a real similar job, and that increases the chance of conflicts.

That said, I have a couple more questions:

  1. How did you go about teleporting the horse to another world? Which command did you use?
  2. Which version of MC & Spigot are you using?
  3. If you're able to check the server logs, are there any errors or warning messages from any of the plugins?
  4. The two images you provided - Are these photos before and after you logged off the server, or was the summoning thing all you did?
  5. And lastly, as much as it absolutely sucks to actually test this, it would be quite valuable to know if the issues you're running into are still happening if HorseEnhancer is the ONLY plugin running on your server. This isn't mandatory for you to test, but it really narrows down the potential causes.

Thanks again for all the detail you've been providing though!

HonoderaGetsuyo commented 1 year ago
  1. It's a Multiverse command, by doing /mv tp [a created world name] I can teleport to another world in the same server. Since I want to create a horse training and horse race-orientated server, I am teleporting to racecourses in this case.
  2. Minecraft 1.20.1, the plugins still work as intended despite not listed to support this version; Instead of Spigot, I'm using Paper, and is set to auto-update to the newest version whenever it comes out.
  3. Nope, no errors, the console should show up red text if something is wrong but in this case there are no issues listed within the console.
  4. These images both show before and after summoning the horses to another world - no rejoining was done since that was an issue already mentioned beforehand.
  5. Tested HorseEnhancer along with Multiverse in it for testing world teleportation. It turns out that it seemingly is due to ZHorse and HorseEnhancer having the same commands that can summon horses is causing the issue since I only used ZHorse's summoning command. When I use HE's teleporthere command, the horse goes to the target world without randomizing IDs and genders. The problem is probably command clashing... and it seems to be my problem here, if this wasted some time with worries, apologies here. (Edit: Very strange issue, this was tested on a test server and everything seems to work together... when I do it on the main server the command says the horse with the ID I typed in cannot be found when I teleport to another world. And seemingly the horse I am trying to summon wasn't registered? As I checked /he list, the horse wasn't there.)

However, horses resetting genders while rejoining the server is another issue since it doesn't always happen, but when it happens it's an annoyance.

HonoderaGetsuyo commented 1 year ago

2023-08-05_19 50 31 2023-08-05_19 50 49 2023-08-05_19 51 54

Here's more context for what I'm trying to convey: The horses I tamed are supposed to be registered under /he list. But when I teleport to another world, they are not registered despite tests showing it should in the test server.

I believe ZHorse isn't the cause because the test server had it and horses stayed registered.

EDIT: I tested another thing by moving away far enough from my horses, their registration status goes missing like how I move between worlds and does not return when I go back to where they were until I ride them. This is frustrating because everything goes so well in the test server - why is it screwing me over in the main one?

HonoderaGetsuyo commented 1 year ago

https://github.com/Nevakanezah/HorseEnhancer/assets/141437841/6ef19f74-2d1f-48cb-9d52-3179dd4d5273

Perhaps attaching a video will be much more clear in what is happening? Images don't really provide a very clear context I believe.