3
0
Mirror von https://github.com/PaperMC/Paper.git synchronisiert 2024-11-15 04:20:04 +01:00
Commit graph

4035 Commits

Autor SHA1 Nachricht Datum
Andrew Steinborn
26c863d3c2 Really fix JLine on Windows (#2633)
The history of how paths work in Win32 is a sad story and shall not be documented here.
Needless to say, Windows hates the temporary file name for jansi's native code since it
includes the version. For git builds, it includes quotes around the actual version. But
alas, the issue apparently doesn't occur if you build on Windows since it removes the
quotes from the git commandline that is ultimately used to build the version string,
because of more Win32 sadness and shame.

Go look at Raymond Chen's blog, The Old New Thing. It's full of Windows oddities and
it will make you want to weep because almost 90% of the world uses this legacy OS from
the 1980s.
2019-10-13 16:18:14 -05:00
Zach Brown
fee70e2178
Name the specific plugin generator class that isn't updated
Makes it easier to figure out which custom generator plugin hasn't been
updated to a specific version and is spamming you with
UnsupportedOperationExceptions
2019-10-02 21:28:12 -05:00
Omer Uddin
e1ceb8e148
Don't save canTick of armor stands if it has not been set by API (#2608) 2019-10-02 20:59:04 -05:00
Zach Brown
2153ca474d
Allow running on Java 13 2019-09-24 19:55:02 -05:00
Andrew Mollenkamp
26ec2f97e9 Fix shulker bullets exploding immediatly (#2536) 2019-09-21 22:48:50 -05:00
Kyle Wood
e0532a7aa7
Update Paperclip 2019-09-21 16:47:18 -05:00
Kyle Wood
f1114aa447
Update Paperclip, remove json dependency in paperclip (master) 2019-09-01 20:16:05 -05:00
Nassim
98e50a58ca Fix sign line capping check (master) (#2525) 2019-09-01 17:18:35 -05:00
Spottedleaf
60da3f17d6 Fix flag for whether to override version check (#2502) 2019-08-24 16:43:46 -05:00
Tom
0a7a855591
Don't use streams for VoxelShape calls
From GH-2355
2019-08-10 10:42:05 -05:00
Zach Brown
75dd53c6ca
Do not let the server load chunks from newer versions
If the server attempts to load a chunk generated by a newer version of
the game immediately stop the server to prevent data corruption.

You can override this functionality at your own peril.
2019-07-23 20:46:56 -05:00
Lucavon
de6476fab3
Add option to disable relative projectile velocity
Allows server owners to use 1.8 (and prior)'s projectile behavior
(ignored shooter's velocity when calculating projectile's velocity).

This patch adds an option "disable relative projectile velocity", which, when
enabled, will cause projectiles to ignore the shooter's current velocity,
like they did in Minecraft 1.8 and prior.
If a player is falling, for example, their shooting range will be drastically
reduced, as a downwards velocity is applied to the projectile. This prevents
players from saving themselves from falling off floating islands, for example,
as a thrown ender pearl will not make it back to the island, while it would
have in 1.8.

While this could easily be done with plugins, too, there are multiple problems:
1) If multiple plugins cancel the velocity by subtracting the shooter's velocity
   from the projectile's velocity, the projectile's velocity would be different.
   As there's no way to detect whether the projectile's velocity has already been
   adjusted to ignore the player's velocity, plugins can't not do it if it's not
   necessary.
2) I've noticed some inconsistencies, e.g. weird velocity when shooting while
   using an elytra. Checking for those inconsistencies is possible, but not as
   efficient as just not applying the velocity in the first place.
3) Solutions for 1) and especially 2) might not be future-proof, while this
   server-internal fix makes this change future-proof.
2019-07-23 19:55:10 -05:00
Omer Uddin
58bc259a18 Update 0280-Configurable-Bed-Search-Radius.patch (#2260) 2019-07-13 17:49:59 -05:00
Spottedleaf
8d6ef3025b Fix error in patch 'Optimize getChunkIfLoaded type calls' (#2295)
We were not correctly updating neighbour loaded when we unloaded chunks
since we were not actually retrieving neighbour chunks when unloading.

Thanks to Aikar to pointing this out here:
https://github.com/PaperMC/Paper/pulls#issuecomment-505573519
2019-07-08 02:18:58 -05:00
kashike
21a1674249
Merge pull request #2263 from Spottedleaf/fix-logging1
Queue log events when log buffer is full
2019-06-29 21:09:31 -07:00
Spottedleaf
73e3c1144d Queue log events when log buffer is full
This should resolve out of order logs when the buffer is full
2019-06-29 20:40:23 -07:00
Zach Brown
4180819fc0
Update Paperclip for Java 12 dev support 2019-06-24 22:31:20 -05:00
William Blake Galbreath
1b59bbbc7c
Rework fix for MC-114618 so not break map maker's workflow. Fixes #2221 2019-06-24 20:40:43 -05:00
Spottedleaf
725081bb95 Anti-Xray improvements (#2227) 2019-06-24 08:00:26 -05:00
Spottedleaf
35e71bbc9c Only write to cached header in RegionFile if write potentially succeeds (#2212)
* Only write to cached header in RegionFile if write potentially succeeds

* Fail write if timestamp update fails

This way timestamps should be consistent with their actual last write.

* Simply order the time write before the chunk write

otherwise we end up with an invalid offset on disk, it's better
to have an invalid timestamp
2019-06-22 15:27:52 -05:00
kashike
601fcb85b6
Merge pull request #2184 from darbyjack/master
Fixed 1.13 not properly firing the PreCreatureSpawnEvent (credit to Wiz)
2019-06-15 13:30:38 -07:00
darbyjack
6e5c731ec7
Fixed 1.13 not properly firing the PreCreatureSpawnEvent 2019-06-15 01:36:24 -05:00
Shane Freeder
df9c322286
Updated Upstream (CraftBukkit)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
84f3da35 SPIGOT-5054: Prevent issue with invalid hanging entities
dfa7583f SPIGOT-4734: Sign placement fails when looking at grass
2019-06-12 10:04:13 +01:00
Shane Freeder
a0a6ab18b7
Catch exceptions from dispenser entity spawns 2019-06-10 09:53:10 +01:00
Zach Brown
268b076ab2
Backport MC-114618 - EntityAreaEffectCloud negative size fix 2019-06-02 21:49:14 -05:00
kashike
217a746e1d
Merge pull request #2105 from mikroskeem/fix-velocity-connection-throttle
Set connection thottle to -1 when Velocity IP forwarding is enabled
2019-05-30 11:04:59 -07:00
Mark Vainomaa
3c6f46936e
Set connection thottle to -1 when Velocity IP forwarding is enabled 2019-05-30 18:46:50 +03:00
Spottedleaf
07762fc610 Revert Don-t-recheck-type-after-setting-a-block.patch 2019-05-26 10:40:12 -07:00
Shane Freeder
17fe7a1b43
Remove leftover line from spigots tick limiters
Looking over the code, this appears to be one "high risk but hopefully
unlikely that plugins are causing this to break", this line is however
redundant leftovers from spigots tick limiter patch, which should be
doing nothing as-is.
2019-05-15 22:53:13 +01:00
Phoenix616
1183f1aa1e Fix itemframe sound on change 2019-04-27 20:05:20 +01:00
Shane Freeder
fb25dc17c6 Updated Upstream (Bukkit/CraftBukkit)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
da08d022 SPIGOT-4700: Add PlayerFishEvent.State.REEL_IN
0cef14e4 Remove draft API from selectEntities

CraftBukkit Changes:
a46fdbc6 Remove outdated build delay.
3697519b SPIGOT-4708: Fix ExactChoice recipes neglecting material
9ead7009 SPIGOT-4677: Add minecraft.admin.command_feedback permission
c3749a23 Remove the Damage tag from items when it is 0.
f74c7b95 SPIGOT-4706: Can't interact with active item
494eef45 Mention requirement of JIRA ticket for bug fixes
51d62dec SPIGOT-4702: Exception when middle clicking certain slots
be557e69 SPIGOT-4700: Add PlayerFishEvent.State.REEL_IN
2019-04-22 22:36:14 +01:00
Shane Freeder
10d58504f7 don't NPE on dimensionmanager toString
CraftBukkit uses vanillas DimensionManager, but does not actually
register its own dimension types, etc, due to vanilla

This causes issues because anything, e.g. command feedback, trying
to print information about the world will often attempt to print out
the dimension name, which ends up throwing an NPE due to the lack of
a registered type, we work around this by just returning the world name,
this is not super elegant, but is the only route that promises not to
break stuff.
2019-04-22 20:20:22 +01:00
Shane Freeder
faf59c3242 Only store oversized values on spawners if needed, and ensure that vanilla values are read when applicable 2019-04-20 19:33:53 +01:00
William Blake Galbreath
f6a78c9715 Mob Spawner API Enhancements 2019-04-19 13:14:10 -05:00
Shane Freeder
90d8377b59 Fix NPE from sign placement (Closes #1963) (Fixes #1917)
This fixes issues with upstreams changes to solve a private issue on
their side, as signs are placed, they may replace existing blocks, e.g.
grass, which breaks upstreams assumption that the sign is always placed
adjacent to a surface
2019-04-17 00:53:55 +01:00
Shane Freeder
9c79f489ed Don't try to read the data outside of the try-catch 2019-04-15 05:09:57 +01:00
Shane Freeder
41c86a6548 Handle bad chunks more gracefully
Brought this patch back from the graveyard, 1.13.x changed how chunks
where loaded and the patch was dropped.

Prior to this change the server would crash when attempting to load a
chunk from a region with bad data.

After this change the server will defer back to vanilla behavior. At
this time, that means attempting to generate a chunk in its place
(and occasionally just not generating anything and leaving small
holes in the world (This might not be accurate as of 1.13.x)).

Should Mojang choose to alter this behavior in the future, this change
will simply defer to whatever that new behavior is.
2019-04-15 05:05:14 +01:00
Shane Freeder
f28e1455e3 Mark PlayerMoveEvent#setTo as NotNull 2019-04-15 00:17:55 +01:00
Zach Brown
43649ff73a
Fix blocking JavaDoc errors 2019-04-14 07:22:38 -04:00
Aikar
ab8bbdfd80
[CI-SKIP] [Auto] Rebuild Patches
A recent commit has been made that caused patches to be out of order, rebuilding
2019-04-10 23:41:42 -04:00
Spottedleaf
237250c08d Add Heightmap API (#1724)
Resolves #1672 
This API is intended to expose useful heightmaps found in the server to API. This exposes all of the live world heightmaps currently in the server. 
If a heightmap becomes impossible to implement, api spec allows the implementation to throw UnsupportedOperationException (far better than returning some weird unexpected value).

Tested via:
https://gist.github.com/Spottedleaf/5d47f67c55a9fb870251ff344bfeb6b3
2019-04-10 23:36:31 -04:00
Spottedleaf
0181fb14b6 Add static encode/decode for block long keys (#1712)
Should make this API easier to use.
2019-04-09 00:08:14 -04:00
Timardo
0d098ca00d [CI-SKIP] Update makemcdevsrc.sh (#1950)
[Aikar note] we really should figure out a way to skip CI again :(
2019-04-08 19:55:49 -04:00
Aikar
84386e1631
[Auto] Updated Upstream (CraftBukkit)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
7c395d42 SPIGOT-4681: Note about additional world creation on STARTUP
2019-04-08 06:51:36 -04:00
Aikar
2cb75d6cce
[Auto] Updated Upstream (CraftBukkit)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
812f66aa SPIGOT-4684: Update persistence of converting zombie villagers
2019-04-08 06:31:50 -04:00
Aikar
c36f206209
Optimize Captured TileEntity Lookup
upstream was doing a containsKey/get pattern, and always doing it at that.
that scenario is only even valid if were in the middle of a block place.

Optimize to check if the captured list even has values in it, and also to
just do a get call since the value can never be null.
2019-04-06 10:25:21 -04:00
Aikar
0ff0c18238
Improve Cancelled Block Place Tile Entity discardment
We bandaided this logic on a case by case basis before with Loot Tables and Chests,
but that is not the correct fix.

Ultimately we just needed to clear out the captured tile entity list so that the
update calls did not process the tile entity that is no longer even valid.

This solution will ensure ALL placed tile entities data is ignored and not just
the few cases we previously had filters for.
2019-04-06 10:23:05 -04:00
Spottedleaf
6d7b032d2b Only flush to disk on chunk saves if paper.flush-on-save is true (#1942)
The cost of a call to sync() adds up quickly and especially for
HDDs. Playing around generating chunks for a while warranted a
3 min save time on a HDD. This is unacceptable default behaviour
and now the behaviour is hidden behind a flag for server owners
who are OK with taking a hit on saves (although SSDs will not have
this issue remotely as bad, since most of the time was spent seeking).
2019-04-06 05:59:42 -04:00
Zach Brown
bd5b758a92
Clear containers on cancelled place events
It is possible for a container to be brought into the world pre-filled
in place event (thanks NBT!). When the blockplacevent(s) are cancelled
their blockstate is updated in OBC. This triggers them to drop their
inventories.

Rather than screwing with the update method which is used elsewhere, we
can simply clear any inventories once we are told that a plugin intends
to cancel the interaction.

Fixes GH-1831
2019-04-06 00:31:19 -04:00
Spottedleaf
33a5a0f84e
Optimize GameRules to use LinkedHashMap
Previously TreeMap was used which has poor get(K) performance.
2019-04-05 23:25:12 -04:00