Skip to content
This repository has been archived by the owner on Feb 27, 2024. It is now read-only.

[1.10.2] Pixelmon and Mob malfunction #901

Closed
Rasgnarok opened this issue Sep 11, 2016 · 25 comments
Closed

[1.10.2] Pixelmon and Mob malfunction #901

Rasgnarok opened this issue Sep 11, 2016 · 25 comments
Assignees
Labels
priority: high High priority

Comments

@Rasgnarok
Copy link

Rasgnarok commented Sep 11, 2016

For the past week or so, I have been getting constant reports of Pixelmon not being able to get sent out after X amount of time on servers using Spongeforge 1693+ (inclusively). Whilst aware that this issue was recently 'fixed' past 1709, I continue to have it in 1713. The general issue remains the same - after an indeterminate amount of time, all players online find that they simply cannot send out pokémon.

What I know:

  1. Only happens past builds 1692 of Spongeforge on the 1.10.2 branch.
  2. Servers with these builds can run for hours without the bug occurring - I ran 1713 for 8 hours straight with no issues, until it did finally happen. The next time I restarted, it only took 5 minutes to get the issue. The next time, an hour and some passed before it happened again.
  3. Bug happens in normally the same way: the player hits R and the chat message saying 'You've sent out X!' fires off; though you cannot see said pokémon. Subsequent attempts at throwing the same pokémon out will similarly fail, but the chat message does not appear ever again. Nonetheless, all pokémon can be 'sent out' once, meaning you can reproduce this behaviour with all pokémon in your party once the bug occurs. This would apply to all players online, and any other that join/leave and restart client.
  4. Only a server restart can restore the game mechanic; for this very reason, most Pixelmon servers wanting performant 1.10.2 builds have to have restarts every hour.
  5. There is no common denominator in console logs as to what exactly causes it; regardless of the sf version used or the plugin list.
  6. As reported to @bloodmc ; I have tried setting verbose=true and seeing if anything appears in console, but nothing does happen - you can check for yourself here, where the bug was reported to me at around [21:41:59].
  7. Bug can be 'reproduced' with consistency on anything having sf 1693 and up, with Pixelmon BETA7.
  8. So far, 3 other server managers have reported the same issue, proving the consistency across versions; and that it is not a particularity with the setup I run.
  9. Around the same time the pokémon started to malfunction (along SF versions), the mobs and other vanilla creatures also started to - issues even manifesting in the same manner. Indeed, I have found that past 1692, you can hit once mobs, and they will receive damage - but all subsequent attempts won't actually hit the mob, who seems to be stuck in place.
  10. Bugs can be reproduced with Forge versions 2073 to 2076.
  11. This is not a Pixelmon bug. Servers running Forge2076 with BETA7 without any spongeforge are not getting nothing of this issue.

If you want to try that out for yourself, here is my plugin list and here is another plugin list of a server currently experiencing the same issue. You can clearly see, little plugins are common.

I have tested many, many, many sponge builds at this point. I know how all of this goes, and at this point, I can ascertain it is not a Pixelmon issue - the bug inherently appears with Spongeforge only. To put it plainly, I have poured hours testing every version from ~1680 to 1694, then 1713 and 1716, while others have tested early 17** builds. This is what I can ascertain - there is no way to reproduce the error, unless you leave a server do it's thing for extended periods of time.
It cannot be simply tested in a test server and checked off - players need to be playing to trigger the issue. The more players you have, the easier it is to trigger it - why? Because players play, and in doing so, use all the game mechanics. Without a common denominator, the only thing that you can do to disprove or prove this is to mount SF and Pixelmon and sit back and wait. Sooner or later, if you are using the versions outlined above, it will happen.

I know, this is a wall. Though at this point, I think it is time to start reciprocating across communities - we Pixelmon users are in large part Spongeforge users, and vice-versa. I am on stand to test whatever build you believe will fix this - it has become impossible to have a somewhat stable Sponge 1.10.2 server with Pixelmon. But what I would not like, is for this issue to go back and forth. We know the issue is inherited from Sponge usage, so I am taking a stab at this and starting here.

@JBYoshi
Copy link
Member

JBYoshi commented Sep 11, 2016

I'll assume the issue only occurs with Pixelmon installed?

@Rasgnarok
Copy link
Author

Considering that this is about Pixelmon getting sent out, yes.

@JBYoshi
Copy link
Member

JBYoshi commented Sep 11, 2016

@Rasgnarok I was asking because of your eighth point. Just wanted to make sure.

8. Around the same time the pokémon started to malfunction (along SF versions), the mobs and other vanilla creatures also started to - issues even manifesting in the same manner. Indeed, I have found that past 1692, you can hit once mobs, and they will receive damage - but all subsequent attempts won't actually hit the mob, who seems to be stuck in place.

@Rasgnarok
Copy link
Author

Ah, well for that I haven't quite ran tests without Pixelmon, simply because my worlds require it (tried to stick with a constant environment when running the tests above). Though, I have skimmed the issues here before posting, and I have not found anything on it - except the excessive spawning problem (which really is something bothersome).

@Zidane Zidane added the priority: high High priority label Sep 15, 2016
@Aaron1011
Copy link
Contributor

Aaron1011 commented Sep 16, 2016

Here's the commit range for builds 1687 to 1692 (@Rasgnarok stated on the forums that 1687 works): 236c026...3e842c8

The only thing that seems like it could be related are @bloodmc's chunk changes. @bloodmc: Do you know of any way your changes could be affecting Pixelmon?

EDIT: Here's the range of commits from the other range that @Rasgnarok specified - 1709 to 1713`: 90fa747...ee6045f

From comparing these two commit ranges, it seems very likely to me that this has something to do with Sponge's handling of chunks. I'll be investigating further.

@bloodmc
Copy link
Contributor

bloodmc commented Sep 17, 2016

@Aaron1011 this has nothing to do with chunks. The issue is caused by gabizou's changes in 1694 which captures all entities. In 1.8.9, this was resolved by avoiding capturing of entities in most scenarios and simply firing a event right away. The main issue with capturing is simply due to the fact that spawnEntityIntoWorld returns a boolean so quite a few mods expect a proper result as well as the entity to be spawned immediately. I already informed gabizou of the issues, he will be working on it soon.

As for the mob spawner issues, this was a forge bug which I fixed.

@ItsRevolt
Copy link

@bloodmc On the sponge changelog, it says the issue was fixed in 1709, which I believe it was, but it is happening again. So would this be related to something else?

@Rasgnarok
Copy link
Author

I am now using @bloodmc 's spongeforge-1.10.2-2079-5.0.0-BETA-async-test44.jar and honestly, it is a bit better - now the recall/sendout glitch only happens to a single player, not all of the other players. The M.O. of the glitch still is the same - all pokemon in the party and PC get affected, and you can only send each once (accompanied by the message).

It is happen very often however - for me it is midday and I have had 3 instances already. Yesterday, around 7. Every time, it requires a server restart. If someone can give me a heads up of what is the cause, it would be greatly beneficial to all Pixelmon servers, as we are currently stuck with 1692 (which doesn't unload chunks).

@Rasgnarok
Copy link
Author

Rasgnarok commented Sep 24, 2016

@ItsRevolt The issue that was fixed in 1709 has nothing to do with this one - it was, I believe, caused by a misspelled command in chat. 1709 did not fix the one I am referring to.

@Dysthymic
Copy link

I too am running 1692 still due to this glitch.
We would love to be able to take advantage of the new unload fixes to stop rollbacks and play with the new InventoryAPI.

We have the same send out issue effecting random players on 1692 as well. Like @Rasgnarok said with the Async build they are testing, it does not effect ALL players just one player. We can't use the newer versions because they effect ALL players when it happens.

We have a fairly large server so we have resorted to hourly restarts to fix the issues for those specific players effected(usually about 2-3 effected per hour)

@Zidane
Copy link
Member

Zidane commented Sep 27, 2016

Minecon is now over (as a majority of us attended) so this is now back to being a high-priority.

@Aaron1011
Copy link
Contributor

@Rasgnarok @Dysthymic: Have either of you had issues with chunks not loading/being unloaded around or near where this bug is happening?

@Dysthymic
Copy link

@Aaron1011
No corruption issues or empty chunks.
There are some rollbacks occasionally on 1692

@Rasgnarok
Copy link
Author

Rasgnarok commented Sep 29, 2016

I don't think it is relevant, since 1687 to 1692 has a bug that causes chunks to stay loaded. That is fixed in the experimental version I have, and it still occurs.
EDIT: I've also had this happen at spawn, which is kept loaded. Hard to pinpoint when the bug starts, but it doesn't seem linked to chunk loading. The pokemon in the party can be sent out until X point, and when the bug occurs you can 'send them out'; so it is registering. If chunk loading/unloading were element X, then we would have a widespread bug (would also be no reason to target all players past sf 1692).

@gabizou
Copy link
Member

gabizou commented Oct 3, 2016

From what I understand, updating Pixelmon seems to have fixed the issue. @Aaron1011 and @Zidane have spoken to some administrators and have not been able to reproduce the issue any longer after updating.

@gabizou gabizou closed this as completed Oct 3, 2016
@Rasgnarok
Copy link
Author

I have indeed been testing with Aaron and Zidane. Updating to the latest SpongeForge fixed it, not updating Pixelmon.

After more than 24hours on the build, it seems to have been eradicated. Can't assure to 100%, but so far, none of my players have experienced it. Thank you all for the help!

@Dysthymic
Copy link

Dysthymic commented Oct 8, 2016

I've experienced this once on 1772 (build created to patch this issue) yesterday and once today. The issue seems to not have been resolved only lessened. When it happens it effects all players on the server until the server restarts. This is on a larger server with averaging approximately 60 to 70 players when it occurs.

@Rasgnarok
Copy link
Author

So, it is like the 1692+ builds - all players affected. Found any special triggers?

@Aaron1011
Copy link
Contributor

@Dysthymic: Are you certain that this is the same issue?

@Dysthymic
Copy link

Yes this is occurring a lot more frequently now. 3 times overnight. All players are effected when this occurs. I've attempted updating to the latest SF and experienced the exact same issue. It is now occurring much more frequently. I would say this is definitely not fixed

@Aaron1011
Copy link
Contributor

@Dysthymic: What build are you using?

@Dysthymic
Copy link

@Aaron1011 Currently I am using SF 1787 and F 2095
Once this issue occurs it seems to happen within about 5-10 minutes after a restart again, prompting us to need about 2-3 restarts before everything is back to normal again for a few hours

@Aaron1011
Copy link
Contributor

@Dysthymic: Can you please open a new issue for this, and describe exactly what problem you're having (and what, if anything, causes it)?

@Dysthymic
Copy link

I can write up a new issue for this here shortly, however, it appears to be the exact same issue as this. I would love to find the cause for this but it's practically impossible with my player count. We hit around 70 players and it is triggered by 1 player and then everybody is effected all at once- therefore it would be near impossible to pinpoint which player caused it. If this issue was anything like 1692 it would be easier to track as that version effects only 1 player and not all players

@Rasgnarok
Copy link
Author

Do open a new one, I just experienced it as well.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
priority: high High priority
Projects
None yet
Development

No branches or pull requests

8 participants