PocketMine / PocketMine-MP

Legacy PocketMine-MP repository. Head to https://github.com/pmmp for up to date software.
https://www.pocketmine.net/
GNU Lesser General Public License v3.0
1.25k stars 661 forks source link

Putting on armor too quickly disconnects player from server #2055

Closed VonHirsch closed 10 years ago

VonHirsch commented 10 years ago

Was testing last night and we were getting disconnected when putting armor on.

Also seeing this message in the console: (may be unrelated)

[WARNING] moved too quickly!

PocketMine-MP_Alpha_1.4dev-492_be70121f_API-1.3.1

Clients: mcpe 0.9.5

shoghicp commented 10 years ago

Is there any error message that shows up when the player is disconnected? And what is the quit message shown on the console?

tnpxxsheepdog commented 10 years ago

Does armor require bounding code like regular blocks do? That may be the Moved Wrongly message although that is now a regular thing in console.

shoghicp commented 10 years ago

No, armor is just a skin layer and there is no code to check that. It's just an item moved from one slot to another.

VonHirsch commented 10 years ago

posting this here b/c not sure if you got it:

Actually take that back, I reproduced more carefully watching adb logcat:

I/DEBUG ( 268): * * * * * * * * * * * * * * * * I/DEBUG ( 268): Build fingerprint: 'htc/m7_google/m7:4.4.3/KTU84L.H4/347097:user/release-keys' I/DEBUG ( 268): Revision: '0' I/DEBUG ( 268): pid: 9381, tid: 9397, name: Main Thread >>> com.mojang.minecraftpe <<< I/DEBUG ( 268): signal 11 (SIGSEGV), code 1 (SEGVMAPERR), fault addr 06040706 I/DEBUG ( 268): r0 06040706 r1 00000002 r2 7b008358 r3 06040706 I/DEBUG ( 268): r4 7aeacf58 r5 763e7b64 r6 00000030 r7 7aeacf58 I/DEBUG ( 268): r8 7ae4ced0 r9 aaaaaaab sl 00000002 fp 438b8000 I/DEBUG ( 268): ip 00000024 sp 763e7a58 lr 755f090d pc 755f08e8 cpsr 48010030 I/DEBUG ( 268): d0 0000000400000004 d1 0000001800000002 I/DEBUG ( 268): d2 000000e400000000 d3 781a401800000000 I/DEBUG ( 268): d4 0000000000000000 d5 0000000000000000 I/DEBUG ( 268): d6 00000000c2100000 d7 0000000000000000 I/DEBUG ( 268): d8 4040000040a00000 d9 0000000040c00000 I/DEBUG ( 268): d10 0000000000000000 d11 0000000000000000 I/DEBUG ( 268): d12 0000000000000000 d13 0000000000000000 I/DEBUG ( 268): d14 0000000000000000 d15 0000000000000000 I/DEBUG ( 268): d16 0504020003020100 d17 0b0a090806040706 I/DEBUG ( 268): d18 3e3ff5c23f300000 d19 416aaaab42c75556 I/DEBUG ( 268): d20 ffcccccc00000000 d21 3e3ff5c23f3ffd71 I/DEBUG ( 268): d22 4140000042c75556 d23 ffcccccc00000000 I/DEBUG ( 268): d24 0605040200030201 d25 080b0a0908060407 I/DEBUG ( 268): d26 0000000000000000 d27 0000000000000000 I/DEBUG ( 268): d28 383b3a3938363437 d29 403e3c3f3e3d3c3a I/DEBUG ( 268): d30 0b0b0b0b0b0b0b0b d31 0000000000000000 I/DEBUG ( 268): scr 6000001f I/DEBUG ( 268): I/DEBUG ( 268): backtrace: I/DEBUG ( 268): #00 pc 001c28e8 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (ItemInstance::isDamageableItem() const+3) I/DEBUG ( 268): #01 pc 001c2909 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (ItemInstance::isDamaged() const+4) I/DEBUG ( 268): #02 pc 00212793 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (Touch::InventoryPane::renderBatch(std::vector<ScrollingPane::GridItem, std::allocator >&, float, float, float)+1518) I/DEBUG ( 268): #03 pc 0024e14b /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (ScrollingPane::render(int, int, float, Minecraft)+854) I/DEBUG ( 268): #04 pc 001c74b3 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (SurvivalInventoryScreen::render(int, int, float)+1858) I/DEBUG ( 268): #05 pc 0026ecf7 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (GameRenderer::render(float)+194) I/DEBUG ( 268): #06 pc 00213c71 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (Minecraft::update()+196) I/DEBUG ( 268): #07 pc 001e552f /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (NinecraftApp::update()+238) I/DEBUG ( 268): #08 pc 0028f0bf /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (android_main+826) I/DEBUG ( 268): #09 pc 002aad47 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so I/DEBUG ( 268): #10 pc 0000d200 /system/lib/libc.so (__thread_entry+72) I/DEBUG ( 268): #11 pc 0000d398 /system/lib/libc.so (pthread_create+240) I/DEBUG ( 268): I/DEBUG ( 268): stack: I/DEBUG ( 268): 763e7a18 7ae4ced0 [anon:libcmalloc] I/DEBUG ( 268): 763e7a1c 75698e71 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (Font::draw(char const, float, float, int)+16) I/DEBUG ( 268): 763e7a20 ffcccccc I/DEBUG ( 268): 763e7a24 00000000 I/DEBUG ( 268): 763e7a28 771d7b68 [anon:libc_malloc] I/DEBUG ( 268): 763e7a2c 74e3df38 /system/vendor/lib/egl/libGLESv1_CM_adreno.so I/DEBUG ( 268): 763e7a30 00000000 I/DEBUG ( 268): 763e7a34 74e22391 /system/vendor/lib/egl/libGLESv1_CM_adreno.so (setEnable+264) I/DEBUG ( 268): 763e7a38 771d9ee8 [anon:libc_malloc] I/DEBUG ( 268): 763e7a3c 771d7b68 [anon:libc_malloc] I/DEBUG ( 268): 763e7a40 00000de1 I/DEBUG ( 268): 763e7a44 74e3df38 /system/vendor/lib/egl/libGLESv1_CM_adreno.so I/DEBUG ( 268): 763e7a48 00000001 I/DEBUG ( 268): 763e7a4c 74e24679 /system/vendor/lib/egl/libGLESv1_CM_adreno.so (qglDrvAPI_glDisable+52) I/DEBUG ( 268): 763e7a50 7af906c0 [anon:libc_malloc] I/DEBUG ( 268): 763e7a54 763e7b64 [stack:9397] I/DEBUG ( 268): #00 763e7a58 06040706 I/DEBUG ( 268): 763e7a5c 755f090d /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (ItemInstance::isDamaged() const+8) I/DEBUG ( 268): #01 763e7a60 7af906c0 [anon:libc_malloc] I/DEBUG ( 268): 763e7a64 75640797 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (Touch::InventoryPane::renderBatch(std::vector<ScrollingPane::GridItem, std::allocator >&, float, float, float)+1522)

tnpxxsheepdog commented 10 years ago

Gotcha. I am really working hard on learning how PM works. Been browsing a lot of code, very cool. But anyway I will let you know if I come across any armor issues as well. So far, nothing. Players have been using armor without error.

shoghicp commented 10 years ago

@LouisBHirst That seems like an app crash, thanks for the crash report but it's something Mojang has to handle. We might be sending invalid data, but the client is getting disconnected due to the crash

VonHirsch commented 10 years ago

Cool thanks

VonHirsch commented 10 years ago

Actually take that back, I reproduced more carefully watching adb logcat:

I/DEBUG ( 268): * * * * * * * * * * * * * *


I/DEBUG ( 268): Build fingerprint: 'htc/m7_google/m7:4.4.3/KTU84L.H4/347097:user/release-keys' I/DEBUG ( 268): Revision: '0' I/DEBUG ( 268): pid: 9381, tid: 9397, name: Main Thread >>> com.mojang.minecraftpe <<< I/DEBUG ( 268): signal 11 (SIGSEGV), code 1 (SEGVMAPERR), fault addr 06040706 I/DEBUG ( 268): r0 06040706 r1 00000002 r2 7b008358 r3 06040706 I/DEBUG ( 268): r4 7aeacf58 r5 763e7b64 r6 00000030 r7 7aeacf58 I/DEBUG ( 268): r8 7ae4ced0 r9 aaaaaaab sl 00000002 fp 438b8000 I/DEBUG ( 268): ip 00000024 sp 763e7a58 lr 755f090d pc 755f08e8 cpsr 48010030 I/DEBUG ( 268): d0 0000000400000004 d1 0000001800000002 I/DEBUG ( 268): d2 000000e400000000 d3 781a401800000000 I/DEBUG ( 268): d4 0000000000000000 d5 0000000000000000 I/DEBUG ( 268): d6 00000000c2100000 d7 0000000000000000 I/DEBUG ( 268): d8 4040000040a00000 d9 0000000040c00000 I/DEBUG ( 268): d10 0000000000000000 d11 0000000000000000 I/DEBUG ( 268): d12 0000000000000000 d13 0000000000000000 I/DEBUG ( 268): d14 0000000000000000 d15 0000000000000000 I/DEBUG ( 268): d16 0504020003020100 d17 0b0a090806040706 I/DEBUG ( 268): d18 3e3ff5c23f300000 d19 416aaaab42c75556 I/DEBUG ( 268): d20 ffcccccc00000000 d21 3e3ff5c23f3ffd71 I/DEBUG ( 268): d22 4140000042c75556 d23 ffcccccc00000000 I/DEBUG ( 268): d24 0605040200030201 d25 080b0a0908060407 I/DEBUG ( 268): d26 0000000000000000 d27 0000000000000000 I/DEBUG ( 268): d28 383b3a3938363437 d29 403e3c3f3e3d3c3a I/DEBUG ( 268): d30 0b0b0b0b0b0b0b0b d31 0000000000000000 I/DEBUG ( 268): scr 6000001f I/DEBUG ( 268): I/DEBUG ( 268): backtrace: I/DEBUG ( 268): #00 pc 001c28e8 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (ItemInstance::isDamageableItem() const+3) I/DEBUG ( 268): #01 pc 001c2909 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (ItemInstance::isDamaged() const+4) I/DEBUG ( 268): #02 pc 00212793 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (Touch::InventoryPane::renderBatch(std::vector<ScrollingPane::GridItem, std::allocator >&, float, float, float)+1518) I/DEBUG ( 268): #03 pc 0024e14b /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (ScrollingPane::render(int, int, float, Minecraft)+854) I/DEBUG ( 268): #04 pc 001c74b3 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (SurvivalInventoryScreen::render(int, int, float)+1858) I/DEBUG ( 268): #05 pc 0026ecf7 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (GameRenderer::render(float)+194) I/DEBUG ( 268): #06 pc 00213c71 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (Minecraft::update()+196) I/DEBUG ( 268): #07 pc 001e552f /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (NinecraftApp::update()+238) I/DEBUG ( 268): #08 pc 0028f0bf /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (android_main+826) I/DEBUG ( 268): #09 pc 002aad47 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so I/DEBUG ( 268): #10 pc 0000d200 /system/lib/libc.so (__thread_entry+72) I/DEBUG ( 268): #11 pc 0000d398 /system/lib/libc.so (pthread_create+240) I/DEBUG ( 268): I/DEBUG ( 268): stack: I/DEBUG ( 268): 763e7a18 7ae4ced0 [anon:libcmalloc] I/DEBUG ( 268): 763e7a1c 75698e71 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (Font::draw(char const, float, float, int)+16) I/DEBUG ( 268): 763e7a20 ffcccccc I/DEBUG ( 268): 763e7a24 00000000 I/DEBUG ( 268): 763e7a28 771d7b68 [anon:libc_malloc] I/DEBUG ( 268): 763e7a2c 74e3df38 /system/vendor/lib/egl/libGLESv1_CM_adreno.so I/DEBUG ( 268): 763e7a30 00000000 I/DEBUG ( 268): 763e7a34 74e22391 /system/vendor/lib/egl/libGLESv1_CM_adreno.so (setEnable+264) I/DEBUG ( 268): 763e7a38 771d9ee8 [anon:libc_malloc] I/DEBUG ( 268): 763e7a3c 771d7b68 [anon:libc_malloc] I/DEBUG ( 268): 763e7a40 00000de1 I/DEBUG ( 268): 763e7a44 74e3df38 /system/vendor/lib/egl/libGLESv1_CM_adreno.so I/DEBUG ( 268): 763e7a48 00000001 I/DEBUG ( 268): 763e7a4c 74e24679 /system/vendor/lib/egl/libGLESv1_CM_adreno.so (qglDrvAPI_glDisable+52) I/DEBUG ( 268): 763e7a50 7af906c0 [anon:libc_malloc] I/DEBUG ( 268): 763e7a54 763e7b64 [stack:9397] I/DEBUG ( 268): #00 763e7a58 06040706 I/DEBUG ( 268): 763e7a5c 755f090d /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (ItemInstance::isDamaged() const+8) I/DEBUG ( 268): #01 763e7a60 7af906c0 [anon:libc_malloc] I/DEBUG ( 268): 763e7a64 75640797 /data/app-lib/com.mojang.minecraftpe-1/libminecraftpe.so (Touch::InventoryPane::renderBatch(std::vector<ScrollingPane::GridItem, std::allocator >&, float, float, float)+1522)

Bart Hirst (484) 802-4798 http://www.linkedin.com/in/louisbhirst

On Fri, Sep 5, 2014 at 4:37 PM, Shoghi Cervantes notifications@github.com wrote:

No, armor is just a skin layer and there is no code to check that. It's just an item moved from one slot to another.

— Reply to this email directly or view it on GitHub https://github.com/PocketMine/PocketMine-MP/issues/2055#issuecomment-54678233 .

VonHirsch commented 10 years ago

I just reproduced it on my android device - mcpe crashes, no message on the console, sorry. I wish mojang wrote more to the adb logs - all it says is "com.mojang.minecraftpe .. Native crash, segmentation fault, unknown." Sometimes I see logged out due to timeout, other times nothing.

Bart Hirst (484) 802-4798 http://www.linkedin.com/in/louisbhirst

On Fri, Sep 5, 2014 at 4:11 PM, Shoghi Cervantes notifications@github.com wrote:

Is there any error message that shows up when the player is disconnected? And what is the quit message shown on the console?

— Reply to this email directly or view it on GitHub https://github.com/PocketMine/PocketMine-MP/issues/2055#issuecomment-54675345 .

williamtdr commented 10 years ago

Reproduced, definitely an issue. Does not happen on steadfast, so the server's sending invalid information to the client.

williamtdr commented 10 years ago

See the second photo here for the stack trace: https://twitter.com/WilliamTDR/status/516223791907610624/photo/1

lesander commented 10 years ago

Am I the only one who notices that @LouisBHirst is running an old build? PocketMine-MP_Alpha_1.4dev-492_be70121f_API-1.3.1, that's build 492 right?

williamtdr commented 10 years ago

Still happens on latest beta. Same stack trace.

shoghicp commented 10 years ago

Latest beta doesn't have it. Do you mean the latest build? It only happens when the transaction is refused. That's a completely different bug that has been already reported and affects other things

williamtdr commented 10 years ago

No, the transaction is not being refused. Players are crafting the armor from iron blocks, everything checks out here.