Dylan K. Taylor
27aa51bac4
Added some type docs to Level
2017-10-04 14:25:06 +01:00
Dylan K. Taylor
eac1d76e8b
Fixed Level->stopTime not being set
2017-10-04 14:08:23 +01:00
Dylan K. Taylor
a8c6e14d02
Chunk cache is now non-optional, close #1448
2017-10-04 13:50:32 +01:00
xFlare
bf68a6a9fc
Fixed canUseChunkCache() logic ( #1446 )
...
Fix setting disable chunk cache on low memory being useless, fix chunk cache not working if low memory cache clear is enabled
2017-10-03 20:27:53 +01:00
Dylan K. Taylor
4dfd171af0
Add flint-steel light sound, close #1434
2017-10-03 19:39:01 +01:00
Dylan K. Taylor
fc9c264e77
Resend blocks around targeted blocks when interactions & block-break are cancelled, fixes #906
...
this solution is dumber but more effective (also solves the beds & doors placement problem)
2017-10-03 19:28:01 +01:00
Dylan K. Taylor
04ba41c58c
Remove redundant properties from recipes.json
...
- we don't use the UUIDs, and they change every time, this just pollutes the diffs and makes my contribs ridiculous
- we don't need the height/width of shaped recipes because the generated shape tells us what it is
2017-10-03 17:30:26 +01:00
Dylan K. Taylor
736cc927ff
Enable chunk caching by default
...
the footprint of compressed chunk batches is so small now that it doesn't make sense to disable it out of the box. The performance gains from caching chunks are more than worth it.
As of 1.2, the average footprint of these caches is usually ~2% or less of the size of the actual chunk itself. Moving around a lot will frequently cause the same chunks to get sent several times as it passes in and out of your render distance, and the chunk isn't even changing in that time, so the chunk is getting needlessly re-serialized over and over again. So even if your world is not static (for example a creative server) chunk caching will still offer benefits, and the memory expense is so small it's a no-brainer.
2017-10-03 13:16:30 +01:00
Dylan K. Taylor
4be7885ee4
Remove redundant assignment in Level constructor
2017-10-03 12:57:30 +01:00
Dylan K. Taylor
7dc5dc3a9f
Restrict item meta values to max signed short value, closes #1101
2017-10-03 12:35:08 +01:00
Dylan K. Taylor
f7ee78233b
Item IDs should always be unsigned, treat them with appropriate measures ( fixes #1376 )
2017-10-03 12:28:50 +01:00
Dylan K. Taylor
88807e8b22
Fixed Binary::unsignShort() being non-static
2017-10-03 12:21:09 +01:00
Dylan K. Taylor
5a6812357b
imports
2017-10-03 11:34:41 +01:00
Dylan K. Taylor
ca401ec3f5
Force-close the crafting window only when doing crafting transactions
...
otherwise the client will crash when using right-click on the recipe book
2017-10-03 11:33:09 +01:00
Dylan K. Taylor
9bbebaa071
Force-close the inventory window when crafting fails to avoid desync issues
...
mojang, why does this have to be hard work
2017-10-03 11:04:21 +01:00
Dylan K. Taylor
76117e7fa0
Get XUID from LoginPacket after authentication, add Player->getXuid()
2017-10-02 18:51:51 +01:00
Dylan K. Taylor
088a44ea3a
Fixed bug reading pubkey from LoginPacket
...
this isn't part of extraData
2017-10-02 18:05:50 +01:00
Dylan K. Taylor
b54f256fea
Added a hack to cut down on excess skin geometry bloat
...
there are further ways this can be debloated, but non-pretty-printing it cuts the size down by ~70-80%.
2017-10-01 16:50:16 +01:00
Dylan K. Taylor
c09d782503
Fix #145 , take 2 (slab placement in half gaps doesn't work) ( #1411 )
2017-10-01 16:19:59 +01:00
Dylan K. Taylor
b3b3ee7c56
Use transparent skin on FloatingTextParticle
2017-10-01 14:10:47 +01:00
Dylan K. Taylor
ab5bbaa7bd
Remove redundant property from Player
2017-10-01 12:19:11 +01:00
Dylan K. Taylor
afa37bd2aa
check range of valid compression values
...
zero is not allowed because it's pointless, just raise your compression threshold if you want zero compression.
Chunks will always be compressed regardless of threshold because they are huge. It doesn't make sense to allow uncompressed chunks when even compression level 1 will reduce their size 50x. The point of the last two (reverted) commits was to prevent compression level zero being used on chunks. Probably obvious that I was up late and not thinking very clearly.
Revert "Reduced chunk compression level to 7"
This reverts commit 49ac2555ce3d410c49eba4045ffe8a5138066346.
Revert "Always use best compression for chunks"
This reverts commit 42dd9d6abd4e7a66611cd171abd0f8f7969166c1.
2017-10-01 11:06:14 +01:00
Dylan K. Taylor
49ac2555ce
Reduced chunk compression level to 7
...
According to benchmarks 8 and 9 are simply orders of magnitude slower while not saving enough bytes to make it worth the performance loss. 7 is a good balance.
2017-10-01 09:20:14 +01:00
Dylan K. Taylor
edd0189d59
Some improvements to issue template
2017-09-30 21:19:38 +01:00
Dylan K. Taylor
b76b9d53fe
Fixed drops for DeadBush
2017-09-30 21:04:39 +01:00
Dylan K. Taylor
42dd9d6abd
Always use best compression for chunks
2017-09-30 20:30:24 +01:00
Matt
9cd7f39c03
Fixed typo on ProjectileItem class ( #1431 )
2017-09-30 16:17:22 +01:00
Dylan K. Taylor
f6e30d4225
s/online-mode/xbox-auth/
...
lots of servers are currently running in insecure mode without realizing because of old Genisys shit configs?!
2017-09-30 12:19:24 +01:00
Dylan K. Taylor
27798c69ee
fix collision detection not detecting fence & fence-gate, fixed nether-brick fence gate AABB, close #1299
2017-09-29 15:27:14 +01:00
Dylan K. Taylor
a33be643c4
Fixed falling blocks not falling when placed above fire, close #1425
...
yes, hardcoding this is not a nice solution - PC also does this, want to fight?
2017-09-29 14:53:23 +01:00
Dylan K. Taylor
a06ff3d96b
Revert "Fixed falling blocks glitching when spawned"
...
This reverts commit 827ee5d4f9b080bbe36b3ec74d423357e6e32474.
can't ever seem to get falling blocks right... should I blame mojang?
2017-09-29 14:22:03 +01:00
Dylan K. Taylor
e6cecabf3f
New skin API, add support for custom capes & custom geometry ( #1416 )
...
* Added support for changing skins ingame, custom capes & geometry
* Use PlayerSkinPacket for setting Human skin instead of PlayerList hack
2017-09-29 14:09:00 +01:00
Dylan K. Taylor
c273a46537
Ditch crafting transaction if we get normal inventory action with incomplete crafting transaction
2017-09-28 20:07:07 +01:00
Dylan K. Taylor
c448f4a3b5
Added handling for reflected ShapedRecipe crafting, close #1415
2017-09-28 18:45:22 +01:00
Dylan K. Taylor
86b76bfcab
Fixed trying to get pubkey that doesn't exist in VerifyLoginTask
...
bug was exposed by previous commit
2017-09-28 18:14:53 +01:00
Dylan K. Taylor
7ba193dc2e
Set ErrorException handler on AsyncWorkers
2017-09-28 18:01:31 +01:00
Dylan K. Taylor
f565791e41
World loading: Actually use the data in each item instead of getProperty()
2017-09-28 16:38:10 +01:00
Dylan K. Taylor
bc0434913e
Fixed crash when a numeric world seed is set in pocketmine.yml
2017-09-28 16:35:19 +01:00
Dylan K. Taylor
9bc8d8db79
Revert "Add buffering for non-immediate priority packets to reduce compression overhead"
...
This reverts commit 2162675b6400807cf650f6fc7ad236c52fa99c01.
This broke Human skins... it seems MCPE doesn't like you adding and
removing a player from the list in the same batch.
2017-09-28 14:29:17 +01:00
Dylan K. Taylor
d0bf0ff083
Imports cleanup
2017-09-28 10:51:05 +01:00
Dylan K. Taylor
7dc1fc54b1
Oops, didn't mean to commit this
2017-09-27 20:34:37 +01:00
Dylan K. Taylor
bae42dc0d9
Fixed incorrect field names in PlayerSkinPacket
2017-09-27 17:55:04 +01:00
Dylan K. Taylor
ab809f8a2b
Updated RakLib submodule
2017-09-27 15:53:43 +01:00
Dylan K. Taylor
2162675b64
Add buffering for non-immediate priority packets to reduce compression overhead
2017-09-27 14:06:42 +01:00
Dylan K. Taylor
8f63117dac
Use try...finally in Player->sendDataPacket() so we don't forget to stop timings
2017-09-27 13:52:25 +01:00
Dylan K. Taylor
1c9b4f3e21
Fixed ItemBlocks retaining Level references after being placed, close #1395
2017-09-27 12:04:56 +01:00
Dylan K. Taylor
48d2d7e422
Remove unused import from FoodSource
2017-09-27 12:01:55 +01:00
Dylan K. Taylor
52bd042bde
BaseInventory: Don't keep calling getSize() over and over and over again
2017-09-27 11:24:21 +01:00
Dylan K. Taylor
4b63a22f8c
More use of Item->isNull()
2017-09-27 11:05:40 +01:00
Dylan K. Taylor
c47f1f572c
Added API method Item->pop()
2017-09-27 10:56:04 +01:00