10575 Commits

Author SHA1 Message Date
Dylan K. Taylor
51908ec45a Player: allow provision of a custom cooldown duration for items
this would be more useful to plugins, so that it's not necessary to extend any item classes for this trivial purpose.
2020-04-15 09:32:48 +01:00
Dylan K. Taylor
a2543ff80d Position: add getLevelNonNull()
this allows assuming that a position has a valid world in places where it's never expected to not be valid. Since this is the vast majority of usages, it eliminates a lot of possible null-pointer warnings given by static analysers.
TODO: Consider whether we can make Position->getLevel/World use this behaviour out of the box in the next major version.
2020-04-14 11:08:37 +01:00
Dylan K. Taylor
20f3030709 3.11.8 is next 2020-04-14 02:54:41 +01:00
Dylan K. Taylor
3aa58f54dc Release 3.11.7 2020-04-14 02:54:40 +01:00
Dylan K. Taylor
604900d4c5 Merge branch 'stable' into next-minor 2020-04-14 01:38:01 +01:00
Twisted
6422ed7722
Added RakLibInterface::setPacketLimit() (#3398) 2020-04-11 23:27:17 +01:00
Dylan K. Taylor
d3a6da1b3a NetworkSession->getPing() now returns null when no measurement of ping has yet been completed 2020-04-04 23:33:30 +01:00
Dylan K. Taylor
ec949840b2 Do not crash on failure to decompress region chunks
this could happen when a chunk was partially overwritten with one of the same sector size.
2020-04-01 21:30:25 +01:00
Dylan K. Taylor
f5bf93455a update to latest RakLib 2020-04-01 20:16:21 +01:00
Dylan K. Taylor
f5cd87ac95 MainLogger: implement BufferedLogger 2020-04-01 20:09:42 +01:00
Dylan K. Taylor
64d5320ac9 update for pthreads-free raklib 2020-03-31 19:41:37 +01:00
Dylan K. Taylor
00cc2ee092 one more RakLib update for the day ... 2020-03-30 00:22:45 +01:00
Dylan K. Taylor
927872ce08 Updated to latest bleeding-edge RakLib 2020-03-29 23:53:00 +01:00
Dylan K. Taylor
abd1ed7352 RakLibServer: make onRun() protected 2020-03-29 18:45:48 +01:00
Dylan K. Taylor
d89cdfc18e Relieve RakLibServer of more responsibilities
at this point it's really not much more than just a thread-safe way to transmit parameters from main to thread. Maybe we can ditch it in favour of a generic closure-based thread implementation.
2020-03-29 18:42:15 +01:00
Dylan K. Taylor
4e54e54421 Updated RakLib dependency 2020-03-29 18:18:39 +01:00
Dylan K. Taylor
f779881b6a Updated to latest RakLib bleeding edge
this version brings quite a few inter-thread communication improvements.
2020-03-29 16:52:36 +01:00
Dylan K. Taylor
eb7c31d3ff RakLibInterface: remove useless shutdown check from tick()
the thread should never be shutdown during an update cycle, because we stop the interface from being ticked when it gets shutdown.
2020-03-29 16:26:22 +01:00
Dylan K. Taylor
0691a40204 UpdateBlockPropertiesPacket: expose nbt field 2020-03-24 11:06:58 +00:00
Dylan K. Taylor
da7ff9b1fe Airgap Attribute, fix decoding of non-registered attributes for protocol debugging 2020-03-24 00:43:44 +00:00
Dylan K. Taylor
83a3adecff LoginPacket: use netresearch/jsonmapper for login data decoding
this makes retrieval static analysis friendly without extra steps.
2020-03-23 22:00:13 +00:00
Dylan K. Taylor
3e5d3a646b Make use of BadPacketException::wrap() 2020-03-23 21:28:38 +00:00
Dylan K. Taylor
2d46ae4476 Added BadPacketException::wrap() 2020-03-23 21:27:08 +00:00
Dylan K. Taylor
a95426c373 Merge branch 'stable' 2020-03-18 13:17:38 +00:00
Dylan K. Taylor
d4dc1c8a0c AttributeMap: be aware of possible NULL offset in ArrayAccess
reported by phpstan 0.12.17
2020-03-18 12:59:01 +00:00
Dylan K. Taylor
517f9a3c3a Player: fix weapons not taking damage from attacks (bug introduced by #3348) 2020-03-18 12:51:05 +00:00
Dylan K. Taylor
d930abce2d ChunkSerializer: improve palette writing performance with one weird trick
this optimization relies on the fact that palette entries are always unsigned, and positive zigzag varints are just the same as their non-zigzag counterparts, except shifted left by 1 bit. This eliminates some function call overhead, making the encoding slightly less agonizingly slow.
2020-03-17 21:16:43 +00:00
marshall
310de5a2b2
RCON: set SO_REUSEADDR to fix RCON start failure after restart (#3357) 2020-03-16 12:00:45 +00:00
Dylan K. Taylor
06a9c98ded MemoryManager: fix strict-rules error on phpstan level 7 2020-03-15 15:49:04 +00:00
Dylan K. Taylor
5c7b05c2ba CrashDump: do not assign possibly-false return value of fopen() directly to non-union field
this would become a problem with typed properties, and also phpstan level 7 doesn't like it.
2020-03-15 15:48:09 +00:00
Dylan K. Taylor
9c86763322 CrashDump: do not assume that error_get_last() always returns array
this returns NULL if there was no error before the shutdown handler was triggered (usually caused by a plugin calling exit() prematurely).
2020-03-15 15:47:07 +00:00
Dylan K. Taylor
35490ca41c CrashDump: do not assume that file() always returns array
phpstan level 7 prep
2020-03-15 15:46:03 +00:00
Dylan K. Taylor
093a7c239e CraftingDataPacket: fix variable name collision 2020-03-14 14:24:50 +00:00
Dylan K. Taylor
47c7872c88 Merge branch 'stable' into next-minor 2020-03-14 13:42:39 +00:00
Dylan K. Taylor
7b3c2a3703 Merge commit '3907a2b6ba58fa49022e3e7c8256731dfa2e0d00' 2020-03-14 13:32:35 +00:00
Dylan K. Taylor
b5dd147ec7 PlayerQuitEvent: fix types of quitMessage 2020-03-14 13:24:40 +00:00
Dylan K. Taylor
f8ce01e2fd ItemFactory: extract fromStringSingle() from fromString()
on PM4, the multiple functionality is removed, but on PM3 this is a problem for phpstan.
2020-03-13 17:54:25 +00:00
Dylan K. Taylor
3907a2b6ba Process: split getMemoryUsage() into 2 functions
this isn't released yet so it's OK to change.
phpstan level 7 doesn't like these kinds of ambiguous return types because there's no way for it to tell which type is returned without a return type specifying extension, and it's easier to just change the API than to make PHPStan understand it.
2020-03-13 17:32:17 +00:00
Dylan K. Taylor
c9e8598510 InGamePacketHandler: do not handle inbound ActorEvents that are not for self 2020-03-13 15:19:32 +00:00
Dylan K. Taylor
1171cd2493 Merge branch 'stable' into next-minor 2020-03-13 15:16:42 +00:00
Dylan K. Taylor
330e93e5e3 Player: do not handle inbound ActorEvents that are not for self 2020-03-13 15:15:20 +00:00
Dylan K. Taylor
899d05c6ec DataPacket: strip some whitespace 2020-03-10 13:06:16 +00:00
Dylan K. Taylor
ca909ebc1d Merge branch 'next-minor' 2020-03-10 13:05:37 +00:00
Dylan K. Taylor
5a9a576bfa AddActorPacket: remove unused import 2020-03-10 12:45:52 +00:00
Dylan K. Taylor
b8caf34e62 Merge branch 'stable' into next-minor 2020-03-10 12:45:00 +00:00
Dylan K. Taylor
456d9a722a reduce some doc comments to single line 2020-03-10 12:36:19 +00:00
Dylan K. Taylor
344c980cff GlobalConstants: add strict_types 2020-03-10 12:35:13 +00:00
Dylan K. Taylor
167492087f Chunk: specify expected bounds for Y coordinates 2020-03-10 12:33:53 +00:00
Dylan K. Taylor
db215283a2 Effect: add desc for color parameter 2020-03-10 12:28:44 +00:00
Dylan K. Taylor
6a507bb149 further CS fixes 2020-03-10 12:18:16 +00:00