Commit graph

3704 commits

Author SHA1 Message Date
Phoenix616
04afedcccf Improve death events
This adds the ability to cancel the death events and to modify the sound
an entity makes when dying. (In cases were no sound should it will be
called with shouldPlaySound set to false allowing unsilencing of silent
entities)

It makes handling of entity deaths a lot nicer as you no longer need
to listen on the damage event and calculate if the entity dies yourself
to cancel the death which has the benefit of also receiving the dropped
items and experience which is otherwise only properly possible by using
internal code.

== AT ==
public net.minecraft.world.entity.LivingEntity getDeathSound()Lnet/minecraft/sounds/SoundEvent;
public net.minecraft.world.entity.LivingEntity getSoundVolume()F
2018-08-21 01:39:35 +01:00
BillyGalbreath
0e656d111b Expose attack cooldown methods for Player 2018-09-04 15:02:00 -05:00
BillyGalbreath
228730983d Add ray tracing methods to LivingEntity 2018-09-03 18:20:03 -05:00
Spottedleaf
b2edc41552 Make CraftWorld#loadChunk(int, int, false) load unconverted chunks 2018-09-02 19:34:33 -07:00
Zach Brown
48707f87ac Inventory#removeItemAnySlot 2018-08-28 23:04:15 -04:00
BillyGalbreath
bfd8b7bcef Add More Creeper API 2018-08-24 11:50:26 -05:00
BillyGalbreath
f6b20dccfc Add PhantomPreSpawnEvent 2018-08-25 19:56:51 -05:00
miclebrick
68e76b43b8 Optimize CraftBlockData Creation
Avoids a hashmap lookup by cacheing a reference to the CraftBlockData
and cloning it when one is needed.
2018-08-23 11:45:32 -04:00
BillyGalbreath
14aa197675 Slime Pathfinder Events 2018-08-24 08:18:42 -05:00
Aikar
5deb37bba9 Restore vanilla default mob-spawn-range and water animals limit 2018-08-18 12:43:16 -04:00
Aikar
584836a2e4 Ability to get block entities from a chunk without snapshots 2018-08-15 01:16:34 -04:00
miclebrick
31fc02af68 Add Early Warning Feature to WatchDog
Detect when the server has been hung for a long duration, and start printing
thread dumps at an interval until the point of crash.

This will help diagnose what was going on in that time before the crash.
2018-08-08 15:30:52 -04:00
willies952002
fb64feeb61 Expand ArmorStand API
Adds the following:
- Add proper methods for getting and setting items in both hands. Deprecates old methods
- Enable/Disable slot interactions
- Allow using degrees for ArmorStand rotations (via new Rotations class)

== AT ==
public net.minecraft.world.entity.decoration.ArmorStand isDisabled(Lnet/minecraft/world/entity/EquipmentSlot;)Z

Co-authored-by: SoSeDiK <mrsosedik@gmail.com>
2018-07-26 02:25:46 -04:00
BillyGalbreath
da011362dc SkeletonHorse Additions 2018-07-27 22:36:31 -05:00
Riley Park
c0a3a0d12c Allow disabling armor stand ticking 2018-08-15 01:26:09 -07:00
Hugo Manrique
510b8187c7 Vanished players don't have rights 2018-07-23 14:22:26 +02:00
Aikar
904c0460cc Vex#get/setSummoner API
Get's the NPC that summoned this Vex and
Allow setting the vex's summoner

Co-authored-by: BillyGalbreath <Blake.Galbreath@GMail.com>
2018-07-04 15:30:22 -04:00
Aikar
3430a002d1 InventoryCloseEvent Reason API
Allows you to determine why an inventory was closed, enabling plugin developers
to "confirm" things based on if it was player triggered close or not.
2018-07-03 21:56:23 -04:00
Brokkonaut
7749dcdd84 Implement World.getEntity(UUID) API 2018-07-03 16:08:14 +02:00
Aikar
f6e7cce227 RangedEntity API
Allows you to determine if an entity is capable of ranged attacks,
and to perform an attack.
2018-06-26 22:00:49 -04:00
Aikar
26c0e7e3d9 LivingEntity Active Item API
API relating to items being actively used by a LivingEntity
such as a bow or eating food.

== AT ==
public net/minecraft/world/entity/LivingEntity completeUsingItem()V
public net/minecraft/server/level/ServerPlayer completeUsingItem()V

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2018-06-29 00:21:28 -04:00
Aikar
dddd41ac34 Expand Explosions API
Add Entity as a Source capability, and add more API choices, and on Location.

Co-authored-by: Esoteric Enderman <90862990+EsotericEnderman@users.noreply.github.com>
Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2018-06-20 23:17:24 -04:00
Brokkonaut
991875920d Add entity knockback events
- EntityKnockbackEvent
- EntityPushedByEntityAttackEvent
- EntityKnockbackByEntityEvent

Co-authored-by: aerulion <aerulion@gmail.com>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2018-06-18 15:46:23 +02:00
BillyGalbreath
2d9d74f9a9 Make shield blocking delay configurable 2018-06-16 01:18:16 -05:00
Nassim Jahnke
a70953dfb0 Improve CraftEntity and CraftPlayer equals and hashCode
Make sure the hash code does not change and also remove outdated
equals logic from CraftPlayer. Long-term, the override there should
be entirely removed, but this is good enough for now.

Replacing some getHandle method calls with direct field access will
also reduce overhead from casts that the overridden methods come with,
at least until those are changed later on as well.
2024-11-09 21:10:45 +01:00
Aikar
0efee74644 ItemStack#getMaxItemUseDuration
Allows you to determine how long it takes to use a usable/consumable item
2018-06-05 23:00:29 -04:00
Aikar
b64e7f96d3 WitchReadyPotionEvent 2018-06-05 22:47:26 -04:00
Aikar
634b639098 Expand World.spawnParticle API and add Builder
Adds ability to control who receives it and who is the source/sender (vanish API)
the standard API is to send the packet to everyone in the world, which is ineffecient.
Adds an option to control the force mode of the particle.

This adds a new Builder API which is much friendlier to use.
2017-08-15 22:29:12 -04:00
Aikar
eeea3358ab Enderman.teleportRandomly()
Ability to trigger the vanilla "teleport randomly" mechanic of an enderman.
2018-04-30 13:29:44 -04:00
Mark Vainomaa
4b7a93d5e1 Add openSign method to HumanEntity 2018-04-01 02:29:37 +03:00
Shane Freeder
ce2c1367af Flag to disable the channel limit
In some enviroments, the channel limit set by spigot can cause issues,
e.g. servers which allow and support the usage of mod packs.

provide an optional flag to disable this check, at your own risk.
2018-03-31 17:04:26 +01:00
Minecrell
0511551203 Call PaperServerListPingEvent for legacy pings 2017-10-11 19:30:51 +02:00
Aikar
a13afc05a6 Improved Async Task Scheduler
The Craft Scheduler still uses the primary thread for task scheduling.
This results in the main thread still having to do work as part of the
dispatching of async tasks.

If plugins make use of lots of async tasks, such as particle emitters
that want to keep the logic off the main thread, the main thread still
receives quite a bit of load from processing all of these queued tasks.

Additionally, resizing and managing the pending entries for all of
these asynchronous tasks takes up time on the main thread too.

This commit replaces the implementation of the scheduler when working
with asynchronous tasks, by forwarding calls to the new scheduler.

The Async Scheduler uses a single thread executor for "management" tasks.
The Management Thread is responsible for all adding and dispatching of
scheduled tasks.

The mainThreadHeartbeat will send a heartbeat task to the management thread
with the currentTick value, so that it can find which tasks to execute.

Scheduling of an async tasks also dispatches a management task, ensuring
that any Queue resizing operation occurs off of the main thread.

The async queue uses a complete separate PriorityQueue, ensuring that resize
operations are decoupled from the sync tasks queue.
2018-03-16 22:59:43 -04:00
Aikar
3f0a574e10 getPlayerUniqueId API
Gets the unique ID of the player currently known as the specified player name
In Offline Mode, will return an Offline UUID

This is a more performant way to obtain a UUID for a name than loading an OfflinePlayer
2018-03-22 01:40:24 -04:00
Aikar
d0d0b1a21e Player.setPlayerProfile API
This can be useful for changing name or skins after a player has logged in.

== AT ==
public-f net.minecraft.world.entity.player.Player gameProfile
2018-03-18 12:29:48 -04:00
Minecrell
ac0c06a72f Implement extended PaperServerListPingEvent 2017-10-11 15:56:26 +02:00
Aikar
4b38f09815 Tameable#getOwnerUniqueId API
This is faster if all you need is the UUID, as .getOwner() will cause
an OfflinePlayer to be loaded from disk.
2018-02-24 01:14:55 -05:00
Zach Brown
e3dd06b7c1 Add ArmorStand Item Meta
This is adds basic item meta for armor stands. It does not add all
possible metadata however.

There are armor, hand, and equipment types, as well as position data
that can also be added here. This initial addition should serve a
starting point for future additions in this area.

Fixes GH-559
2018-01-27 17:04:14 -05:00
Aikar
4f248b1b5b Fill Profile Property Events
Allows plugins to populate profile properties from local sources to avoid calls out to Mojang API
to fill in textures for example.

If Mojang API does need to be hit, event fire so you can get the results.

This is useful for implementing a ProfileCache for Player Skulls
2018-01-02 00:31:26 -05:00
Aikar
3620489699 Add setPlayerProfile API for Skulls
This allows you to create already filled textures on Skulls to avoid texture lookups
which commonly cause rate limit issues with Mojang API
2018-01-19 00:36:25 -05:00
Aikar
b96c237fc4 Ability to apply mending to XP API
This allows plugins that give players the ability to apply the experience
points to the Item Mending formula, which will repair an item instead
of giving the player experience points.

Both an API To standalone mend, and apply mending logic to .giveExp has been added.

== AT ==
public net.minecraft.world.entity.ExperienceOrb durabilityToXp(I)I
public net.minecraft.world.entity.ExperienceOrb xpToDurability(I)I
2017-12-20 17:36:49 -05:00
Jason Penilla
ed76af5637 AsyncTabCompleteEvent
Let plugins be able to control tab completion of commands and chat async.

This will be useful for frameworks like ACF so we can define async safe completion handlers,
and avoid going to main for tab completions.

Especially useful if you need to query a database in order to obtain the results for tab
completion, such as offline players.

Also adds isCommand and getLocation to the sync TabCompleteEvent

Co-authored-by: Aikar <aikar@aikar.co>
2017-11-26 13:19:58 -05:00
Aikar
eb20b0b160 API to get a BlockState without a snapshot
This allows you to get a BlockState without creating a snapshot, operating
on the real tile entity.

This is useful for where performance is needed

also Avoid NPE during CraftBlockEntityState load if could not get TE

If Tile Entity was null, correct Sign to return empty lines instead of null
2017-11-06 21:08:22 -05:00
pkt77
540274bcf2 Add PlayerArmorChangeEvent 2017-11-10 23:46:34 -05:00
Minecrell
8838089321 Expose client protocol version and virtual host 2017-10-10 18:45:20 +02:00
BillyGalbreath
c2f10d08a9 LivingEntity#setKiller
== AT ==
public net.minecraft.world.entity.LivingEntity lastHurtByPlayerTime
2017-07-31 01:49:48 -05:00
Kyle Wood
0dcb203960 Fix this stupid bullshit
Disable the 15 second sleep when the server jar hasn't been rebuilt within a period of time.

modified in order to prevent merge conflicts when Spigot changes/disables the warning,
and to provide some level of hint without being disruptive.
2017-08-06 17:17:53 -05:00
Aikar
07e40cd7d4 Implement getI18NDisplayName
Gets the Display name as seen in the Client.
Currently the server only supports the English language. To override this,
You must replace the language file embedded in the server jar.
2016-05-04 23:59:38 -04:00
Aikar
11a5eaf367 ensureServerConversions API
This will take a Bukkit ItemStack and run it through any conversions a server process would perform on it,
to ensure it meets latest minecraft expectations.
2016-05-04 22:43:12 -04:00
Aikar
90c776d3aa Improve the Saddle API for Horses
Not all horses with Saddles have armor. This lets us break up the horses with saddles
and access their saddle state separately from an interface shared with Armor.
2016-12-10 16:24:06 -05:00
BillyGalbreath
760d9e300f Entity#fromMobSpawner() 2017-06-18 18:17:05 -05:00
Aikar
a229776460 Profile Lookup Events
Adds a Pre Lookup Event and a Post Lookup Event so that plugins may prefill in profile data, and cache the responses from
profiles that had to be looked up.
2017-06-17 17:00:32 -04:00
Aikar
aab7ec1655 Shoulder Entities Release API 2017-06-17 15:18:30 -04:00
Sweepyoface
551d6ee71e Add UnknownCommandEvent
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2017-06-17 18:48:21 -04:00
Aikar
bb90110894 Basic PlayerProfile API
Establishes base extension of profile systems for future edits too

== AT ==
public org.bukkit.craftbukkit.profile.CraftProfileProperty
public org.bukkit.craftbukkit.profile.CraftPlayerTextures
public org.bukkit.craftbukkit.profile.CraftPlayerTextures copyFrom(Lorg/bukkit/profile/PlayerTextures;)V
public org.bukkit.craftbukkit.profile.CraftPlayerTextures rebuildPropertyIfDirty()V
public org.bukkit.craftbukkit.profile.CraftPlayerProfile toString(Lcom/mojang/authlib/properties/PropertyMap;)Ljava/lang/String;
public org.bukkit.craftbukkit.profile.CraftPlayerProfile getProperty(Ljava/lang/String;)Lcom/mojang/authlib/properties/Property;
public org.bukkit.craftbukkit.profile.CraftPlayerProfile setProperty(Ljava/lang/String;Lcom/mojang/authlib/properties/Property;)V
2018-01-15 22:11:48 -05:00
Spottedleaf
40654111d1 Do not submit profile lookups to worldgen threads
They block. On network I/O.

If enough tasks are submitted the server will eventually stall
out due to a sync load, as the worldgen threads will be
stalling on profile lookups.
2021-08-08 16:26:46 -07:00
BillyGalbreath
b41abcdb68 Item#canEntityPickup 2017-05-05 03:57:17 -05:00
Riley Park
52c71f2edc Add configuration option to prevent player names from being suggested 2017-06-09 07:24:34 -07:00
Zach Brown
2f74bdb56b Properly handle async calls to restart the server
The watchdog thread calls the server restart function asynchronously. Prior to
this change, it attempted to do several non-safe operations from the watchdog
thread, rather than the main. Specifically, because of a separate upstream change,
it causes player entities to be ticked asynchronously, among other things.

This is dangerous.

This patch moves the old handling into a synchronous variant, for calls from the
restart command, and adds separate handling for async calls, such as those from
the watchdog thread.

When calling from the watchdog thread, we cannot assume the main thread is in a
tickable state; it may be completely deadlocked. In order to handle this, we mark
the server as stopping, in order to account for situations where the server should
complete a tick reasonbly soon, i.e. 99% of cases.

Should the server not enter a state where it is stopping within 10 seconds, We
will assume that the server has in fact deadlocked and will proceed to force
kill the server.

This modification does not force restart the server should we actually enter a
deadlocked state where the server is stopping, whereas this will in most cases
exit within a reasonable amount of time, to put a fixed limit on a process that
will have plugins and worlds saving to the disk has a high potential to result
in corruption/dataloss.
2017-05-12 23:34:11 -05:00
Aikar
5a81bf12ef Remove CraftScheduler Async Task Debugger
I have not once ever seen this system help debug a crash.
One report of a suspected memory leak with the system.

This adds additional overhead to asynchronous task dispatching
2017-02-05 00:04:04 -05:00
Aikar
110bcadcdf ExperienceOrbs API for Reason/Source/Triggering player
Adds lots of information about why this orb exists.

Replaces isFromBottle() with logic that persists entity reloads too.
2017-12-19 16:31:46 -05:00
Aikar
4ca188a20e Provide E/TE/Chunk count stat methods
Provides counts without the ineffeciency of using .getEntities().size()
which creates copy of the collections.
2017-01-07 15:24:46 -05:00
Aikar
746f540e81 Firework API's
== AT ==
public net.minecraft.world.entity.projectile.FireworkRocketEntity attachedToEntity
2016-12-28 07:18:33 +01:00
Aikar
1c531f852f String based Action Bar API 2016-12-27 15:02:42 -05:00
Riley Park
e27e53d201 Add API methods to control if armor stands can move 2016-12-21 11:47:25 -06:00
Techcable
68a47b98c6 Add ProjectileCollideEvent
Deprecated now and replaced with ProjectileHitEvent
2016-12-16 21:25:39 -06:00
AlphaBlend
087a701e69 Add source to PlayerExpChangeEvent 2016-09-08 08:48:33 -07:00
willies952002
76de1e898e Allow Reloading of Command Aliases
Reload the aliases stored in commands.yml
2016-11-28 10:21:52 -05:00
AlphaBlend
472983f423 Add EntityZapEvent 2016-10-16 23:19:30 -07:00
Gabriele C
f7ae11f984 Add setting for proxy online mode status
TODO: Add isProxyOnlineMode check to Metrics
2016-08-05 01:03:08 +02:00
Martin Panzer
2a69b8dd1a Add server-name parameter 2016-05-28 16:54:03 +02:00
Zach Brown
ba4eeb8a28 System property for disabling watchdoge 2016-05-12 23:02:58 -05:00
Aikar
07c767b6f4 LootTable API and replenishable lootables
Provides an API to control the loot table for an object.
Also provides a feature that any Lootable Inventory (Chests in Structures)
can automatically replenish after a given time.

This feature is good for long term worlds so that newer players
do not suffer with "Every chest has been looted"

== AT ==
public org.bukkit.craftbukkit.block.CraftBlockEntityState getTileEntity()Lnet/minecraft/world/level/block/entity/BlockEntity;
public org.bukkit.craftbukkit.block.CraftLootable setLootTable(Lorg/bukkit/loot/LootTable;J)V
public org.bukkit.craftbukkit.entity.CraftMinecartContainer setLootTable(Lorg/bukkit/loot/LootTable;J)V
2016-05-01 21:19:14 -04:00
Zach Brown
3c1c4ab059 Option to use vanilla per-world scoreboard coloring on names
This change is basically a bandaid to fix CB's complete and utter lack
of support for vanilla scoreboard name modifications.

In the future, finding a way to merge the vanilla expectations in with
bukkit's concept of a display name would be preferable. There was a PR
for this on CB at one point but I can't find it. We may need to do this
ourselves at some point in the future.
2016-04-06 01:04:23 -05:00
Jedediah Smith
e2263633d4 Add PlayerUseUnknownEntityEvent
Adds the PlayerUseUnknownEntityEvent to be used by plugins dealing with
virtual entities/entities that are not actually known to the server.

Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
2016-04-02 05:09:16 -04:00
Aikar
becb30e9e6 handle NaN health/absorb values and repair bad data 2015-09-27 01:18:02 -04:00
Aikar
20b9d3de7b Handle Item Meta Inconsistencies
First, Enchantment order would blow away seeing 2 items as the same,
however the Client forces enchantment list in a certain order, as well
as does the /enchant command. Anvils can insert it into forced order,
causing 2 same items to be considered different.

This change makes unhandled NBT Tags and Enchantments use a sorted tree map,
so they will always be in a consistent order.

Additionally, the old enchantment API was never updated when ItemMeta
was added, resulting in 2 different ways to modify an items enchantments.

For consistency, the old API methods now forward to use the
ItemMeta API equivalents, and should deprecate the old API's.
2015-05-28 23:00:19 -04:00
Aikar
2a04d23940 Remove Metadata on reload
Metadata is not meant to persist reload as things break badly with non primitive types
This will remove metadata on reload so it does not crash everything if a plugin uses it.
2016-03-18 13:50:14 -04:00
William
acfd9a39a0 Allow Reloading of Custom Permissions
https://github.com/PaperMC/Paper/issues/49
2016-03-18 03:30:17 -04:00
Aikar
8a67ae1780 Default loading permissions.yml before plugins
Under previous behavior, plugins were not able to check if a player had a permission
if it was defined in permissions.yml. there is no clean way for a plugin to fix that either.

This will change the order so that by default, permissions.yml loads BEFORE plugins instead of after.

This gives plugins expected permission checks.

It also helps improve the expected logic, as servers should set the initial defaults, and then let plugins
modify that. Under the previous logic, plugins were unable (cleanly) override permissions.yml.

A config option has been added for those who depend on the previous behavior, but I don't expect that.
2016-03-18 13:17:38 -04:00
Jedediah Smith
f55b057ffb Complete resource pack API 2015-04-04 23:17:52 -04:00
mrapple
b465659461 Add methods for working with arrows stuck in living entities
Upstream added methods for this, original methods are now
deprecated
2012-11-25 13:43:39 -06:00
Joseph Hirschfeld
68979dd492 Add exception reporting event 2016-03-03 03:15:41 -06:00
Joseph Hirschfeld
1ae9ee1205 Add velocity warnings 2016-03-03 02:48:12 -06:00
Techcable
eaf365a7b7 Player Tab List and Title APIs 2016-03-03 02:32:10 -06:00
Riley Park
f4a0ce454b Be a bit more informative in maxHealth exception 2016-03-03 02:18:39 -06:00
Riley Park
73251dc451 Expose server CommandMap 2016-03-03 02:15:57 -06:00
vemacs
886d8e6ac3 All chunks are slime spawn chunks toggle 2016-03-03 01:19:22 -06:00
Aikar
bcc07d07b6 Improve Player chat API handling
Properly split up the chat and command handling to reflect the server now
having separate packets for both, and the client always using the correct packet. Text
from a chat packet should never be parsed into a command, even if it starts with the `/`
character.

Add a missing async catcher and improve Spigot's async catcher error message.

== AT ==
public net.minecraft.server.network.ServerGamePacketListenerImpl isChatMessageIllegal(Ljava/lang/String;)Z

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: SoSeDiK <mrsosedik@gmail.com>
2016-03-03 01:17:12 -06:00
Techcable
da1b68adca Use UserCache for player heads 2016-03-02 23:42:37 -06:00
Isaac Moore
c9cf82340d Use null Locale by default 2016-04-19 14:09:31 -05:00
Zach Brown
1fed104464 Add more entities to activation range ignore list 2016-03-02 00:32:25 -06:00
Byteflux
6212f523fa Entity Origin API 2016-03-01 23:45:08 -06:00
Zach Brown
3e1c79c850 Only refresh abilities if needed 2016-03-01 23:12:03 -06:00
Jedediah Smith
840b8a7bfa Player affects spawning API 2016-03-01 14:47:52 -06:00
Zach Brown
f41436f787 Expose server build information
Co-authored-by: Zach Brown <1254957+zachbr@users.noreply.github.com>
Co-authored-by: Kyle Wood <kyle@denwav.dev>
Co-authored-by: Mark Vainomaa <mikroskeem@mikroskeem.eu>
Co-authored-by: Riley Park <rileysebastianpark@gmail.com>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: masmc05 <masmc05@gmail.com>
2016-03-01 14:32:43 -06:00
MiniDigger | Martin
a4d805a4be Support components in ItemMeta 2020-06-06 18:13:42 +02:00
Jason Penilla
e92663406b Add command line option to load extra plugin jars not in the plugins folder
ex: java -jar paperclip.jar nogui -add-plugin=/path/to/plugin.jar -add-plugin=/path/to/another/plugin_jar.jar
2021-05-18 14:39:44 -07:00
Aikar
770ee3eebd Remove Spigot timings 2016-03-03 04:00:11 -06:00
Aikar
a371d5fefe Further improve server tick loop
Improves how the catchup buffer is handled, allowing it to roll both ways
increasing the effeciency of the thread sleep so it only will sleep once.

Also increases the buffer of the catchup to ensure server stays at 20 TPS unless extreme conditions

Previous implementation did not calculate TPS correctly.
Switch to a realistic rolling average and factor in std deviation as an extra reporting variable
2016-03-01 23:09:29 -06:00
Nassim Jahnke
fae673b95c Remap reflection calls in plugins using internals
Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
2022-10-30 23:47:26 +01:00
Zach Brown
4cd66b0305 Hook into CB plugin rewrites
Allows us to do fun stuff like rewrite the OBC util fastutil location to
our own relocation. Also lets us rewrite NMS calls for when we're
debugging in an IDE pre-relocate.
2018-10-03 20:09:18 -04:00
Jason Penilla
13e0a1a71e Plugin remapping
Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
2022-10-29 15:22:32 -07:00
Owen1212055
216388dfdf Paper Plugins
Co-authored-by: Micah Rao <micah.s.rao@gmail.com>
2022-07-06 23:00:31 -04:00
Zach Brown
329dfdabdc Paper Metrics
Removes Spigot's mcstats metrics in favor of a system using bStats

To disable for privacy or other reasons go to the bStats folder in your plugins folder
and edit the config.yml file present there.

Please keep in mind the data collected is anonymous and collection should have no
tangible effect on server performance. The data is used to allow the authors of
PaperMC to track version and platform usage so that we can make better management
decisions on behalf of the project.
2017-03-24 23:56:01 -05:00
Jason Penilla
bd7282c66d Paper command
Co-authored-by: Zach Brown <1254957+zachbr@users.noreply.github.com>
2016-02-29 21:02:09 -06:00
SirYwell
a0389538ec Rewrite LogEvents to contain the source jars in stack traces 2021-07-10 11:12:30 +02:00
Jason Penilla
34407fe880 Deobfuscate stacktraces in log messages, crash reports, and etc. 2021-06-20 18:19:09 -07:00
Jason Penilla
b0d7c2e971 Use AsyncAppender to keep logging IO off main thread 2021-08-12 04:46:41 -07:00
Minecrell
e36a7522b8 Improve Log4J Configuration / Plugin Loggers
Add full exceptions to log4j to not truncate stack traces

Disable logger prefix for various plugins bypassing the plugin logger

Some plugins bypass the plugin logger and add the plugin prefix
manually to the log message. Since they use other logger names
(e.g. qualified class names) these would now also appear in the
log. Disable the logger prefix for these plugins so the messages
show up correctly.
2017-09-23 21:07:20 +02:00
Minecrell
29788c758a Handle plugin prefixes using Log4J configuration
Display logger name in the console for all loggers except the
root logger, Bukkit's logger ("Minecraft") and Minecraft loggers.
Since plugins now use the plugin name as logger name this will
restore the plugin prefixes without having to prepend them manually
to the log messages.

Logger prefixes are shown by default for all loggers except for
the root logger, the Minecraft/Mojang loggers and the Bukkit loggers.
This may cause additional prefixes to be disabled for plugins bypassing
the plugin logger.
2017-09-21 16:14:55 +02:00
Minecrell
36723cdd60 Use TerminalConsoleAppender for console improvements
Rewrite console improvements (console colors, tab completion,
persistent input line, ...) using JLine 3.x and TerminalConsoleAppender.

Also uses the new ANSIComponentSerializer to serialize components when
logging them via the ComponentLogger, or when sending messages to the
console, for hex color support.

New features:
  - Support console colors for Vanilla commands
  - Add console colors for warnings and errors
  - Server can now be turned off safely using CTRL + C. JLine catches
    the signal and the implementation shuts down the server cleanly.
  - Support console colors and persistent input line when running in
    IntelliJ IDEA

Other changes:
  - Server starts 1-2 seconds faster thanks to optimizations in Log4j
    configuration

Co-Authored-By: Emilia Kond <emilia@rymiel.space>
2017-06-09 19:03:43 +02:00
Riley Park
66779f5c86 Adventure
== AT ==
public net.minecraft.network.chat.HoverEvent$ItemStackInfo item
public net.minecraft.network.chat.HoverEvent$ItemStackInfo count
public net.minecraft.network.chat.HoverEvent$ItemStackInfo components
public net.minecraft.network.chat.contents.TranslatableContents filterAllowedArguments(Ljava/lang/Object;)Lcom/mojang/serialization/DataResult;

Co-authored-by: zml <zml@stellardrift.ca>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2021-01-29 17:54:03 +01:00
Aikar
b01c811c2f MC Utils
== AT ==
public net.minecraft.server.level.ServerChunkCache mainThread
public net.minecraft.server.level.ServerLevel chunkSource
public org.bukkit.craftbukkit.inventory.CraftItemStack handle
public net.minecraft.server.level.ChunkMap getVisibleChunkIfPresent(J)Lnet/minecraft/server/level/ChunkHolder;
public net.minecraft.server.level.ServerChunkCache mainThreadProcessor
public net.minecraft.server.level.ServerChunkCache$MainThreadExecutor
public net.minecraft.world.level.chunk.LevelChunkSection states
2016-03-28 20:55:47 -04:00
Jake Potrebic
a82a09d198 CB fixes
* Missing Level -> LevelStem generic in StructureCheck
  Need to use the right for injectDatafixingContext (Spottedleaf)

* Fix summon_entity effect attempting to add incorrect entity (granny)

* Removed incorrect parent perm for `minecraft.debugstick.always` (Machine_Maker)

* Fixed method signature of Marker#addPassenger (Machine_Maker)

* Removed unneeded UOE in CustomWorldChunkManager (extends BiomeSource) (Machine_Maker)

* Honor Server#getLootTable method contract (Machine_Maker)

Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2022-02-25 07:14:48 -08:00
Jake Potrebic
769119f918 Paper config files
== AT ==
public org.spigotmc.SpigotWorldConfig getBoolean(Ljava/lang/String;Z)Z
public org.spigotmc.SpigotWorldConfig getDouble(Ljava/lang/String;)D
public org.spigotmc.SpigotWorldConfig getDouble(Ljava/lang/String;D)D
public org.spigotmc.SpigotWorldConfig getInt(Ljava/lang/String;)I
public org.spigotmc.SpigotWorldConfig getInt(Ljava/lang/String;I)I
public org.spigotmc.SpigotWorldConfig getList(Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List;
public org.spigotmc.SpigotWorldConfig getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
public net.minecraft.server.dedicated.DedicatedServerProperties reload(Lnet/minecraft/core/RegistryAccess;Ljava/util/Properties;Ljoptsimple/OptionSet;)Lnet/minecraft/server/dedicated/DedicatedServerProperties;
public net.minecraft.world.level.NaturalSpawner SPAWNING_CATEGORIES
2022-06-08 22:20:16 -07:00
Jake Potrebic
e954a5a260 Test changes
- configure mockito agent to address changes in newer java versions see https://openjdk.org/jeps/451

Co-authored-by: yannnicklamprecht <yannicklamprecht@live.de>
2023-02-13 14:14:56 -08:00
Zach Brown
bc10922ef3 Build system changes
== AT ==
public net.minecraft.server.packs.VanillaPackResourcesBuilder safeGetPath(Ljava/net/URI;)Ljava/nio/file/Path;

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2016-02-29 20:40:33 -06:00
Kyle Wood
f161aac557 Remap fixes 2021-06-11 05:25:03 -05:00
CraftBukkit/Spigot
9940174241 Add unload-frozen-chunks option
By: md_5 <git@md-5.net>
2024-05-18 11:39:58 +10:00
CraftBukkit/Spigot
479ce445d6 Configurable Below Zero Generation
By: DerFrZocker <derrieple@gmail.com>
2021-11-28 12:09:29 +11:00
CraftBukkit/Spigot
7cfc37b17d Configurable Thunder Chance
By: md_5 <git@md-5.net>
2021-10-24 20:29:25 +11:00
CraftBukkit/Spigot
e81bcdf643 Allow Disabling Player Data Saving
By: Sander Knauff <sanderknauff@hotmail.com>
2020-11-07 18:23:42 +11:00
CraftBukkit/Spigot
76c24a1454 Add log-villager-deaths option
By: md_5 <git@md-5.net>
2019-12-14 10:26:52 +11:00
CraftBukkit/Spigot
6fcc9cce6d Add creative mode NBT permissions
By: md_5 <git@md-5.net>
2019-02-25 19:26:56 +11:00
CraftBukkit/Spigot
d16d3c3548 Configurable Advancement Disabling
Allow disabling any (or all) inbuilt advancements with a configuration option.

By: md_5 <git@md-5.net>
2017-06-09 16:29:31 +10:00
CraftBukkit/Spigot
d0a65bc995 Allow Capping (Tile)Entity Tick Time.
This patch adds world configuration options for max-tick-time.entity / max-tick-time.tile which allows setting a hard cap on the amount of time (in milliseconds) that a tick can consume. The default values of 50ms each are very conservative and mean this feature will not activate until the server is well below 15tps (minimum). Values of 20ms each have been reported to provide a good performance increase, however I personally think 25ms for entities and 10-15ms for tiles would give even more significant gains, assuming that these things are not a large priority on your server.

For tiles there is very little tradeoff for this option, as tile ticks are based on wall time for most things, however for entities setting this option too low could lead to jerkiness / lag. The gain however is a faster and more responsive server to other actions such as blocks, chat, combat etc.

This feature was commisioned by Chunkr.

By: md_5 <git@md-5.net>
2015-02-20 21:39:31 +11:00
CraftBukkit/Spigot
49288f7f95 BungeeCord Chat API
By: md_5 <git@md-5.net>
2014-12-13 03:06:05 +01:00
CraftBukkit/Spigot
5ec1e1bc24 Configurable Hanging Tick
By: drXor <mcyoung@mit.edu>
2014-08-09 13:56:51 -04:00
CraftBukkit/Spigot
d7f3ba3df3 Limit TNT Detonations per tick
This gives a per-world control on how much TNT will be processed per-tick,
preventing a massive TNT detonation from lagging out the server.

By: Aikar <aikar@aikar.co>
2014-08-20 18:12:32 -04:00
CraftBukkit/Spigot
c34736a0d2 Make debug logging togglable.
By: Minecrell <dev@minecrell.net>
2014-08-17 12:42:53 +02:00
CraftBukkit/Spigot
f026f7905e Add Hunger Config Values
By: lazertester <austin.techhead@gmail.com>
2014-08-17 19:56:17 +10:00
CraftBukkit/Spigot
0098808c9e Allow Attribute Capping.
Apply some sensible defaults and allow server owners to customize the maximum values of selected common attributes.

By: md_5 <git@md-5.net>
2014-07-28 16:55:51 +10:00
CraftBukkit/Spigot
5b20d95920 Apply NBTReadLimiter to more things.
By: md_5 <git@md-5.net>
2014-07-27 20:46:04 +10:00
CraftBukkit/Spigot
f972379105 Make "moved too quickly" limit configurable
By: Jonas Konrad <me@yawk.at>
2014-07-22 15:59:01 +02:00
CraftBukkit/Spigot
7b951a7ec6 Make "moved wrongly" limit configurable
By: Jonas Konrad <me@yawk.at>
2014-07-04 23:03:13 +02:00
CraftBukkit/Spigot
0166f71409 Prevent a crash involving attributes
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-07-19 19:54:41 +01:00
CraftBukkit/Spigot
c4d2bdfd85 Further Seed Customisation
Allow server admins that really want to to customise the seeds used in world generation even further.

By: md_5 <git@md-5.net>
2014-07-04 13:28:45 +10:00
CraftBukkit/Spigot
7bee9a20b3 Configurable save-on-stop-only for UserCache
By: drXor <mcyoungsota@gmail.com>
2014-05-23 18:05:10 -04:00
CraftBukkit/Spigot
542b7a7eb1 Configurable UserCache cap
By: drXor <mcyoungsota@gmail.com>
2014-04-25 18:17:30 -04:00
CraftBukkit/Spigot
8b9d2faa11 Prevent NoClassDefError crash and notify on crash
By: David <dmck2b@gmail.com>
2014-04-21 12:43:08 +01:00
CraftBukkit/Spigot
1cb6ba6942 Configurable dragon death and wither spawn sounds
By: drXor <mcyoungsota@gmail.com>
2014-03-29 13:44:25 -04:00
CraftBukkit/Spigot
59b0d3d6b2 Implement Silenceable Lightning API
By: drXor <mcyoungsota@gmail.com>
2014-02-23 16:16:59 -04:00
CraftBukkit/Spigot
9c8d5eefd0 Allow vanilla commands to be the main version of a command
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-02-12 20:44:14 +00:00
CraftBukkit/Spigot
8440092f32 Add support for fetching hidden players
By: Tux <write@imaginarycode.com>
2014-02-09 14:03:03 -05:00
CraftBukkit/Spigot
c3ce457c08 Add Option to Silence CommandBlock Console
By: md_5 <git@md-5.net>
2014-02-09 14:39:01 +11:00
CraftBukkit/Spigot
ff6d4b2d90 Spam Filter Exclusions
By: md_5 <git@md-5.net>
2014-02-08 08:13:40 +00:00
CraftBukkit/Spigot
b26b6dadb0 Add Optional Tick Shuffling
This prevents players from 'gaming' the server, and strategically relogging to increase their position in the tick order.

By: md_5 <git@md-5.net>
2014-01-27 08:39:26 +11:00
CraftBukkit/Spigot
23c02d0942 Configurable Ping Sample Size
By: md_5 <git@md-5.net>
2014-01-26 21:48:34 +11:00
CraftBukkit/Spigot
cd82f21617 Highly Optimized Tick Loop
By: md_5 <git@md-5.net>
2017-01-26 21:50:51 +00:00
CraftBukkit/Spigot
68214fb1a0 Allow toggling of ZombiePigmen spawning in portal blocks
By: Dmck2b <dmck2b+github@gmail.com>
2014-01-20 20:18:23 +00:00
CraftBukkit/Spigot
1f67404bb9 Allow statistics to be disabled/forced
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-01-07 15:56:26 +00:00
CraftBukkit/Spigot
fc81df77cf Add Option to Nerf Mobs from Spawners
By: md_5 <git@md-5.net>
2014-02-02 16:55:46 +00:00
CraftBukkit/Spigot
cbf16b353d Configurable Amount of Netty Threads
This brings back the option that the Spigot version of netty saw. By default Netty will try and use cores*2 threads, however if running multiple servers on the same machine, this can be too many threads. Additionally some people have 16 core servers. If 32 Netty threads are allowed in this setup, then the lock contention, and thus blocking between threads becomes much greater, leading to decreased performance.

By: md_5 <git@md-5.net>
2013-12-13 11:58:58 +11:00
CraftBukkit/Spigot
0abc9c4cd1 Allow Disabling Zombie Villager Aggression
Ability to configure if Zombies will be aggressive towards Villagers.

By: Dylan Xaldin <Puremin0rez515@gmail.com>
2013-12-12 18:05:03 -06:00
CraftBukkit/Spigot
3d4c222263 BungeeCord Support
* Provides support for IP forwarding via BungeeCord.
* Treats Bungee as Online Mode.

By: md_5 <git@md-5.net>
2014-04-12 21:23:58 +10:00
CraftBukkit/Spigot
496995ccaa Watchdog Thread.
By: md_5 <git@md-5.net>
2014-08-05 17:20:19 +01:00
CraftBukkit/Spigot
29a8c7f4b3 Arrow Despawn Rate
By: md_5 <git@md-5.net>
2013-10-14 19:20:10 +11:00
CraftBukkit/Spigot
9e02bc055b Implement respawn API.
By: ninja- <xninja@openmailbox.org>
2013-10-08 14:34:49 +02:00
CraftBukkit/Spigot
55148a3f2c Configurable Messages
By: md_5 <git@md-5.net>
2013-06-21 19:21:58 +10:00
CraftBukkit/Spigot
cabf908e4c Allow Disabling of Command TabComplete
By: md_5 <git@md-5.net>
2013-06-21 18:05:54 +10:00
CraftBukkit/Spigot
0eed728812 Allow Disabling of Command Logging
By: md_5 <git@md-5.net>
2013-06-21 18:01:29 +10:00
CraftBukkit/Spigot
135df938cc Hopper Customisations
Allows editing hopper cooldowns and amount transferred per tick.

By: erocs <github@erocs.org>
2013-09-08 12:06:15 -07:00
CraftBukkit/Spigot
831bf8fb7e Entity Tracking Ranges
This will let you configure how far to track entities in range from players, so that the entity does not render on the client if out of this range.
This has multiple benefits:

1) Less bandwidth. Not sending update packets for entities that are not even close to a player, or even close enough to clearly see.
2) Less lag by maps in item frames - Default range is 160 blocks... Many players can track that item frame and cause lag and not even see it.
3) Less lag in general - Less work for the server to do
4) Less client lag - Not trying to render distant item frames and paintings and entities will reduce entity count on the client, which is major for shop/town worlds which may use tons of item frames.

By: Aikar <aikar@aikar.co>
2013-02-20 11:58:47 -05:00
CraftBukkit/Spigot
94ccdc0d40 Metrics
By: md_5 <git@md-5.net>
2013-02-23 08:58:35 +11:00
CraftBukkit/Spigot
28c8009a16 Entity Activation Range
This feature gives 3 new configurable ranges that if an entity of the matching type is outside of this radius of any player, will tick at 5% of its normal rate.

This will drastically cut down on tick timings for entities that are not in range of a user to actually be "used".
This change can have dramatic impact on gameplay if configured too low. Balance according to your servers desired gameplay.

By: Aikar <aikar@aikar.co>
2024-11-02 18:16:11 +11:00
CraftBukkit/Spigot
54a84c6c79 Item Despawn Rate
By: md_5 <git@md-5.net>
2013-09-22 19:10:53 +10:00
CraftBukkit/Spigot
19bfb10583 Fix Mob Spawning Relative to View Distance
Changes the mob spawning algorithm to properly account for view distance and the range around players.

Needs better documentation.

By: md_5 <git@md-5.net>
2013-06-21 17:29:54 +10:00
CraftBukkit/Spigot
78524cb95e Spigot Timings
Overhauls the Timings System adding performance tracking all around the Minecraft Server

By: Aikar <aikar@aikar.co>
2013-01-10 00:18:11 -05:00
CraftBukkit/Spigot
127d8c1595 View Distance
This commit allows the user to select per world view distances.

By: md_5 <git@md-5.net>
2013-03-23 09:52:41 +11:00
CraftBukkit/Spigot
5240271410 Async Operation Catching
Catch and throw an exception when a potentially unsafe operation occurs on a thread other than the main server thread.

By: md_5 <git@md-5.net>
2014-03-25 16:10:01 +11:00
CraftBukkit/Spigot
973f52a650 Merge tweaks and configuration
This allows the merging of Experience orbs, as well as the configuration of the merge radius of items. Additionally it refactors the merge algorithm to be a better experience for players.

By: md_5 <git@md-5.net>
2013-03-23 09:46:33 +11:00
CraftBukkit/Spigot
df403168ff Crop Growth Rates
Allows configuring the growth rates of crops as a percentage of their normal growth rate.

By: md_5 <git@md-5.net>
2016-03-07 22:14:13 +11:00
CraftBukkit/Spigot
cba0d1f1ec Spigot Configuration
Provides the basic infrastructure to load and save the Spigot configuration file, spigot.yml

By: md_5 <git@md-5.net>
2013-07-07 09:32:53 +10:00
CraftBukkit/Spigot
6b0bae2fb6 Skeleton API Implementations
This contains the basic, empty implementations for some Spigot-API extensions. They are included early in the patching progress so that compilation will still succeed midway despite the APIs only being provided by subsequent patches.

By: md_5 <git@md-5.net>
2013-06-02 15:10:56 +10:00
CraftBukkit/Spigot
02380b2f27 POM Changes
Basic changes to the build system which mark the artifact as Spigot, and the necessary code changes to ensure proper functionality. Also disables the auto updater provided by CraftBukkit as it is useless to us.

By: md_5 <git@md-5.net>
2013-07-02 13:07:39 +10:00
CraftBukkit/Spigot
30e4583dbe Remap CraftBukkit to Mojang+Yarn Mappings
By: Initial Source <noreply+automated@papermc.io>
2024-12-11 22:26:55 +01:00
CraftBukkit/Spigot
a265d64138 Move CraftBukkit per-file patches
By: Initial <noreply+automated@papermc.io>
2024-12-11 22:26:36 +01:00
CraftBukkit/Spigot
5381ea78f7 Update to Minecraft 1.21.4
By: md_5 <git@md-5.net>
2024-12-04 03:20:00 +11:00
CraftBukkit/Spigot
267ae64dd6 Remove outdated build delay
By: md_5 <git@md-5.net>
2024-12-04 03:16:22 +11:00
CraftBukkit/Spigot
20071139d1 SPIGOT-7971: NotSerializableException on serialize CraftUseCooldownComponent
By: md_5 <git@md-5.net>
2024-12-01 09:52:58 +11:00
CraftBukkit/Spigot
9850cb85dd SPIGOT-7970: World#getMaxHeight() returning incorrect value
By: md_5 <git@md-5.net>
2024-11-30 15:12:42 +11:00
CraftBukkit/Spigot
b06cbec171 SPIGOT-7966: Some trees do not generate with #generateTree
By: md_5 <git@md-5.net>
2024-11-27 07:00:57 +11:00
CraftBukkit/Spigot
a11ca51ee1 #1515: Add a Class reader and Class node argument provider
By: DerFrZocker <derrieple@gmail.com>
2024-11-25 07:35:28 +11:00
CraftBukkit/Spigot
eba2b1e948 #1514: Add a test case for ClassTraverser
By: DerFrZocker <derrieple@gmail.com>
2024-11-25 07:35:18 +11:00
CraftBukkit/Spigot
4992aa1b5d Fix Inventory#addItem not respecting max stack size
By: md_5 <git@md-5.net>
2024-11-24 11:06:35 +11:00
CraftBukkit/Spigot
f642133483 #1490: Add method to get Advancement requirements
By: Nothixal <nothixal@gmail.com>
2024-11-23 21:25:14 +11:00
CraftBukkit/Spigot
4487df57e1 #1512: Test Art class based on specific values instead of the implementation, to better catch implementation changes
By: DerFrZocker <derrieple@gmail.com>
2024-11-23 21:14:14 +11:00
CraftBukkit/Spigot
5a6e315a79 #1503: Simplify CAS loop to getAndSet
By: sunmisc <jolyjdia@gmail.com>
2024-11-23 21:12:04 +11:00
CraftBukkit/Spigot
0f66e39e46 Make BlockDataMeta#setBlockData hide unspecified states
By: md_5 <git@md-5.net>
2024-11-23 21:08:50 +11:00
CraftBukkit/Spigot
8f7a88cc91 SPIGOT-7960: Fix inconsistency between natural item drop coordinates
By: md_5 <git@md-5.net>
2024-11-20 21:42:05 +11:00
CraftBukkit/Spigot
b3b4fd1c4b SPIGOT-7960: Improve natural item drop methods
By: md_5 <git@md-5.net>
2024-11-19 20:16:47 +11:00
CraftBukkit/Spigot
c7707ece4c SPIGOT-7957: Fix setTarget method for Breeze
By: Doc <nachito94@msn.com>
2024-11-17 11:22:36 +11:00
CraftBukkit/Spigot
a768ea0ddf SPIGOT-7953: Item cooldown must be greater than 0
By: md_5 <git@md-5.net>
2024-11-12 20:37:58 +11:00
CraftBukkit/Spigot
475a5576bc Increase outdated build delay
By: md_5 <git@md-5.net>
2024-11-10 21:20:09 +11:00
CraftBukkit/Spigot
bbe0572877 SPIGOT-7946: API for server pause when empty seconds
By: md_5 <git@md-5.net>
2024-11-06 20:38:09 +11:00
CraftBukkit/Spigot
30af9c34dd SPIGOT-7949: Registering a new scoreboard objective with an empty display name throws a NPE
By: md_5 <git@md-5.net>
2024-11-06 20:22:58 +11:00
CraftBukkit/Spigot
b9a4bb1cd1 SPIGOT-7948: Bukkit#dispatchCommand uses the wrong CommandListenerWrapper for Players
By: md_5 <git@md-5.net>
2024-11-06 20:20:36 +11:00
CraftBukkit/Spigot
8fc0f462c0 SPIGOT-7945: Bukkit#dispatchCommand throws UnsupportedOperationException
By: md_5 <git@md-5.net>
2024-11-04 07:25:07 +11:00
CraftBukkit/Spigot
83f48fb3c6 SPIGOT-7933: Improve custom Minecart max speed
By: md_5 <git@md-5.net>
2024-11-03 09:22:20 +11:00
CraftBukkit/Spigot
d580602ebb SPIGOT-7937: Cannot spawn minecart during world generation with minecart_improvements enabled
By: md_5 <git@md-5.net>
2024-11-02 17:40:23 +11:00
CraftBukkit/Spigot
aefa65b696 #1504: Make Art an interface
By: DerFrZocker <derrieple@gmail.com>
2024-11-02 11:00:13 +11:00
CraftBukkit/Spigot
42ebf1afa4 #1502: Make Sound an interface
By: DerFrZocker <derrieple@gmail.com>
2024-11-02 11:00:08 +11:00
CraftBukkit/Spigot
7b903b41cb #1501: Make Biome an interface
By: DerFrZocker <derrieple@gmail.com>
2024-11-01 08:05:35 +11:00
CraftBukkit/Spigot
2960bff05e #1500: Rename implementation for Vault State methods
By: Doc <nachito94@msn.com>
2024-10-29 06:43:27 +11:00
CraftBukkit/Spigot
af6f2c9b41 #1499: Make Fluid an interface and add missing entry
By: DerFrZocker <derrieple@gmail.com>
2024-10-29 06:43:20 +11:00
CraftBukkit/Spigot
08c83835f3 #1498: Make Attribute an interface and align names with the new minecraft ones
By: DerFrZocker <derrieple@gmail.com>
2024-10-29 06:43:14 +11:00
CraftBukkit/Spigot
a15be74be3 SPIGOT-7929: Error when setting EquippableComponent
By: md_5 <git@md-5.net>
2024-10-27 07:33:54 +11:00
CraftBukkit/Spigot
762b4f15ca #1497: Move boat field rename entries to below key renaming, so that keys are also renamed
By: DerFrZocker <derrieple@gmail.com>
2024-10-27 07:27:35 +11:00
CraftBukkit/Spigot
54caf1484d #1496: Use correct Fluid class on Tags type check
By: DerFrZocker <derrieple@gmail.com>
2024-10-27 07:26:23 +11:00
CraftBukkit/Spigot
e1673f9708 #1494: TreeType - add missing pale oak trees
By: shanebeee <shanebolenback@me.com>
2024-10-24 07:07:57 +11:00
CraftBukkit/Spigot
0821d18951 SPIGOT-7924: Registering a ShapelessRecipe throws an IndexOutOfBoundsException
By: md_5 <git@md-5.net>
2024-10-24 06:53:07 +11:00
CraftBukkit/Spigot
1236b98371 Update to Minecraft 1.21.3
By: md_5 <git@md-5.net>
2024-10-24 06:15:00 +11:00
CraftBukkit/Spigot
adbb925fc4 SPIGOT-7922: ExactChoice recipe fails to be added
By: md_5 <git@md-5.net>
2024-10-23 19:38:39 +11:00
CraftBukkit/Spigot
cd2a2a27ff SPIGOT-7919: Add API to access current player input
By: md_5 <git@md-5.net>
2024-10-23 08:04:17 +11:00
CraftBukkit/Spigot
d6c970b00b SPIGOT-7918: Make error message clearer for slot types not present in player inventories
By: md_5 <git@md-5.net>
2024-10-23 07:30:39 +11:00
CraftBukkit/Spigot
a24f08778b SPIGOT-7920: Expose enderpearls of Player
By: md_5 <git@md-5.net>
2024-10-23 07:20:07 +11:00
CraftBukkit/Spigot
d3a23f42c3 Update to Minecraft 1.21.2
By: md_5 <git@md-5.net>
2024-10-23 02:15:00 +11:00
CraftBukkit/Spigot
2c4beb962b Remove outdated build delay
By: md_5 <git@md-5.net>
2024-10-23 02:00:00 +11:00
CraftBukkit/Spigot
2a98825ddf #1493: Improve reroute performance and add some tests
By: DerFrZocker <derrieple@gmail.com>
2024-10-15 21:05:19 +11:00
CraftBukkit/Spigot
8484d46297 Add support for Java 23
By: md_5 <git@md-5.net>
2024-10-14 19:57:04 +11:00
CraftBukkit/Spigot
c8344ab49d SPIGOT-7915: Fix World#getKeepSpawnInMemory() using Spawn Radius rather than Spawn Chunk Radius
By: Doc <nachito94@msn.com>
2024-10-10 07:56:26 +11:00
CraftBukkit/Spigot
7be855108f Fix HIDE_ENCHANTS flag in items without enchantments
By: Doc <nachito94@msn.com>
2024-10-07 14:16:09 -03:00
CraftBukkit/Spigot
f77cb8d6c2 Bump asm to 9.7.1 and re-add ClassReader to ClassWriter
By: DerFrZocker <derrieple@gmail.com>
2024-10-06 14:38:13 +02:00
CraftBukkit/Spigot
adf5fecbbb #1487: Add specific getTopInventory methods for InventoryView derivatives
By: Miles Holder <mwholder@proton.me>
2024-10-06 18:45:12 +11:00
CraftBukkit/Spigot
d7d206b995 SPIGOT-7907, #1484: Improve merchant recipe item matching behavior to more closely align with older versions
Before the update for MC 1.20.5 (item components), merchant recipes
would accept items with additional NBT tags. Since 1.20.5, merchant
recipes created via the Bukkit API no longer accept additional
components.

This changes which component types we pick for merchant recipes created
via the API to more closely match the behavior from before the MC 1.20.5
update, i.e. ignore any empty / default components again.

By: blablubbabc <lukas@wirsindwir.de>
2024-10-06 18:32:00 +11:00
CraftBukkit/Spigot
54c12bdb6e SPIGOT-7909: Always set HIDE_ENCHANTS flag to item if flag is set
By: md_5 <git@md-5.net>
2024-10-06 18:25:07 +11:00
CraftBukkit/Spigot
bad69bdc04 Increase outdated build delay
By: md_5 <git@md-5.net>
2024-10-06 18:18:22 +11:00
CraftBukkit/Spigot
8fc133212d SPIGOT-7910: Fix launching breeze wind charge from API and improve dispenser launch API
By: md_5 <git@md-5.net>
2024-09-29 10:29:39 +10:00
CraftBukkit/Spigot
074c4c011e SPIGOT-7902, #1477: Fix CraftMetaPotion#hasCustomEffects() does not check if customEffects (List) is empty
By: James Perry <beanp02@yahoo.com>
2024-09-27 08:35:25 +10:00
CraftBukkit/Spigot
060be9b96a Implement base methods for tags
By: md_5 <git@md-5.net>
2024-09-27 08:28:45 +10:00
CraftBukkit/Spigot
0278929667 Improve Registry#getOrThrow messages
By: md_5 <git@md-5.net>
2024-09-27 08:21:32 +10:00
CraftBukkit/Spigot
eb72b9d8a3 #1475: Add tests for Minecraft registry <-> Bukkit fields
By: DerFrZocker <derrieple@gmail.com>
2024-09-27 08:15:18 +10:00
CraftBukkit/Spigot
fbf9dd80d4 #1473: Change tests to use suites, to run tests in different environments and feature flags
By: DerFrZocker <derrieple@gmail.com>
2024-09-26 20:01:56 +10:00
CraftBukkit/Spigot
18f63085bb #1481: Fix BeaconView#set[X]Effect(null)
By: Miles Holder <mwholder@proton.me>
2024-09-25 07:52:14 +10:00
CraftBukkit/Spigot
98e7025512 #1480: Fix PerMaterialTest#isEdible test running for legacy materials
By: DerFrZocker <derrieple@gmail.com>
2024-09-20 07:23:06 +10:00
CraftBukkit/Spigot
52e03b47a2 #1479: Use custom #isBlock method in legacy init instead of the one in Material, since it relies on legacy being init
By: DerFrZocker <derrieple@gmail.com>
2024-09-20 07:17:47 +10:00
CraftBukkit/Spigot
c33c116001 Fix missing hasJukeboxPlayable
By: md_5 <git@md-5.net>
2024-09-17 21:09:21 +10:00
CraftBukkit/Spigot
5f1cd5748b SPIGOT-7881: CTRL+Pick Block saves position data into item
By: md_5 <git@md-5.net>
2024-09-15 17:17:10 +10:00
CraftBukkit/Spigot
4b1526b609 SPIGOT-7899: Smithing recipes don't require inputs
By: md_5 <git@md-5.net>
2024-09-15 16:50:24 +10:00
CraftBukkit/Spigot
5bc6a90535 SPIGOT-7894: NPE when sending tile entity update
By: md_5 <git@md-5.net>
2024-09-09 21:04:38 +10:00
CraftBukkit/Spigot
b7359583f2 SPIGOT-7895: PlayerItemBreakEvent not firing
By: md_5 <git@md-5.net>
2024-09-09 20:57:37 +10:00
CraftBukkit/Spigot
616ec5f700 SPIGOT-7891: Can't remove second ingredient of MerchantRecipe
By: md_5 <git@md-5.net>
2024-09-07 18:57:55 +10:00
CraftBukkit/Spigot
fbea3cdc0c #1458: Add MenuType API
By: Miles Holder <mwholder2005@gmail.com>
2024-09-07 18:52:00 +10:00
CraftBukkit/Spigot
ac5e815b3e SPIGOT-7867: Merchant instanceof AbstractVillager always returns false
By: Miles Holder <mwholder2005@gmail.com>
2024-09-07 18:14:09 +10:00
CraftBukkit/Spigot
7657f347d2 #1468: Expand riptiding API
By: ShreyasAyyengar <shreyas.ayyengar@gmail.com>
2024-09-07 18:08:13 +10:00
CraftBukkit/Spigot
106225f127 Ignore checks in CraftPlayerProfile for ResolvableProfile used in profile components
By: Doc <nachito94@msn.com>
2024-08-31 10:25:23 -04:00
CraftBukkit/Spigot
3919314de0 SPIGOT-7889: Fix tool component deserialisation without speed and/or correct-for-drops
By: md_5 <git@md-5.net>
2024-08-31 08:49:31 +10:00
CraftBukkit/Spigot
b133887b85 SPIGOT-7882, #1467: Fix conversion of name in Profile Component to empty if it is missing
By: Doc <nachito94@msn.com>
2024-08-31 08:40:57 +10:00
CraftBukkit/Spigot
ab921984fc SPIGOT-7878: Server#getLootTable does not return null on invalid loot table
By: md_5 <git@md-5.net>
2024-08-24 08:02:44 +10:00
CraftBukkit/Spigot
0916d51f5d SPIGOT-7876: Can't kick player or disconnect player in PlayerLoginEvent when checking for cookies
By: md_5 <git@md-5.net>
2024-08-24 07:51:55 +10:00
CraftBukkit/Spigot
84f1d558c3 #1465: Add FireworkMeta#hasPower
By: Doc <nachito94@msn.com>
2024-08-24 07:44:52 +10:00
CraftBukkit/Spigot
51e69e6788 SPIGOT-7873: Add powered state for skulls
By: md_5 <git@md-5.net>
2024-08-24 07:42:35 +10:00
CraftBukkit/Spigot
9f0a790b3d SPIGOT-7868, #1463: Fix default and max power in FireworkMeta
By: Doc <nachito94@msn.com>
2024-08-17 08:37:46 +10:00
CraftBukkit/Spigot
71695536dd SPIGOT-7783, SPIGOT-7784, #1460: Add Trial Vault & Spawner event API
By: ShreyasAyyengar <shreyas.ayyengar@gmail.com>
2024-08-13 20:50:04 +10:00
CraftBukkit/Spigot
921fbc5f60 Update to Minecraft 1.21.1
By: md_5 <git@md-5.net>
2024-08-09 07:00:00 +10:00
CraftBukkit/Spigot
59b86b9837 SPIGOT-7857: Improve ItemMeta block data deserialization
By: blablubbabc <lukas@wirsindwir.de>
2024-08-08 07:44:52 +10:00
CraftBukkit/Spigot
8c7a0e888f SPIGOT-7857: Fix spurious internal NBT tag when deserializing BlockStateMeta
By: md_5 <git@md-5.net>
2024-08-06 19:07:10 +10:00
CraftBukkit/Spigot
3fb8f4b1d1 SPIGOT-7853: AnvilInventory#getRepairCost() always returns 0
By: Miles Holder <mwholder2005@gmail.com>
2024-07-30 07:11:55 +10:00
CraftBukkit/Spigot
9a7508c3ab #1450: Add CrafterCraftEvent
By: ploppyperson <nathat890@outlook.com>
Also-by: md_5 <git@md-5.net>
2024-07-30 07:07:10 +10:00
CraftBukkit/Spigot
1a0dce328a #1456: Fix inverted logic in CraftCrafterView#setSlotDisabled
By: Miles Holder <mwholder2005@gmail.com>
2024-07-28 08:34:00 +10:00
CraftBukkit/Spigot
57bb408920 SPIGOT-7850: Add API for Bogged shear state
By: md_5 <git@md-5.net>
2024-07-27 10:28:37 +10:00
CraftBukkit/Spigot
d2745c6491 SPIGOT-7837: Support data pack banner patterns
By: Doc <nachito94@msn.com>
2024-07-27 10:14:41 +10:00
CraftBukkit/Spigot
bfad1aa117 #1431: Add API for InventoryView derivatives
By: Miles Holder <mwholder2005@gmail.com>
2024-07-27 10:01:29 +10:00
CraftBukkit/Spigot
7fae51f18d SPIGOT-7849: Fix FoodComponent serialize with "using-converts-to" using null
By: Doc <nachito94@msn.com>
2024-07-26 07:25:02 +10:00
CraftBukkit/Spigot
983dd759e8 Don't rely on tags for CraftItemMetas
By: md_5 <git@md-5.net>
2024-07-24 19:40:55 +10:00
CraftBukkit/Spigot
af7b1e8dec SPIGOT-7846: Fix ItemMeta for hanging signs
By: md_5 <git@md-5.net>
2024-07-24 19:40:50 +10:00
CraftBukkit/Spigot
b9c7f251e4 SPIGOT-7839: Remove redundant Java version checks
By: md_5 <git@md-5.net>
2024-07-20 10:20:27 +10:00
CraftBukkit/Spigot
60eec22bd3 SPIGOT-7809: Add ShieldMeta and fix setting shield base colours
By: Doc <nachito94@msn.com>
Also-by: md_5 <git@md-5.net>
2024-07-20 10:15:22 +10:00
CraftBukkit/Spigot
92c33ca0c7 Increase outdated build delay
By: md_5 <git@md-5.net>
2024-07-15 20:06:23 +10:00
CraftBukkit/Spigot
71bc2b07ed SPIGOT-7827: Sync EntityPortalEvent with PlayerPortalEvent since non-players can now create portals
By: md_5 <git@md-5.net>
2024-07-10 19:43:43 +10:00
CraftBukkit/Spigot
4377eb6edb SPIGOT-7823: Suspicious sand and gravel material are not marked as having gravity correctly
By: md_5 <git@md-5.net>
2024-07-10 18:50:13 +10:00
CraftBukkit/Spigot
9d6d5d8dc5 SPIGOT-7820: Enum changes - duplicate method name
By: DerFrZocker <derrieple@gmail.com>
2024-07-08 07:01:03 +10:00
CraftBukkit/Spigot
d86a8b483e SPIGOT-7813: Material#isInteractable() always returns false
By: md_5 <git@md-5.net>
2024-07-07 09:24:47 +10:00
CraftBukkit/Spigot
d7c74a442e SPIGOT-7806: Handle both loot and inventory item drop behaviour in PlayerDeathEvent
By: Doc <nachito94@msn.com>
2024-07-06 17:25:39 +10:00
CraftBukkit/Spigot
b6655d093f SPIGOT-7799, #1436: Expose explosion world interaction in EntityExplodeEvent and BlockExplodeEvent
By: antiPerson <nathat890@outlook.com>
2024-07-06 17:19:45 +10:00
CraftBukkit/Spigot
41b8d833db #1424: Trial changing a small number of inner enums to classes/interfaces to better support custom values
This PR is a subset of the enum PR #931 and is designed as a low impact
trial run of the design and backwards compatibility to inform
subsequent development.

Additional plugin compatibility features may be available by setting
`settings.compatibility.enum-compatibility-mode` to `true` in
`bukkit.yml`.

By: DerFrZocker <derrieple@gmail.com>
2024-07-06 17:14:22 +10:00
CraftBukkit/Spigot
7288f31c8d SPIGOT-7812: Revert "SPIGOT-7809: Restore shield/banner conversion for base colours"
This reverts commit 09b9a2110e.

By: md_5 <git@md-5.net>
2024-07-04 07:01:08 +10:00
CraftBukkit/Spigot
376a4220bf SPIGOT-7808: Fix implementation of Enchantment#getName() for bad name return
By: Doc <nachito94@msn.com>
2024-07-03 20:21:17 +10:00
CraftBukkit/Spigot
09b9a2110e SPIGOT-7809: Restore shield/banner conversion for base colours
By: md_5 <git@md-5.net>
2024-07-03 20:21:13 +10:00
CraftBukkit/Spigot
292255a36a SPIGOT-7805: Fix jukebox deserialization
By: blablubbabc <lukas@wirsindwir.de>
2024-07-01 07:08:06 +10:00
CraftBukkit/Spigot
bc75f0bcb5 SPIGOT-7804: Fix written book serialization
* Account for null/missing values when deserializing the 'resolved' and
  'generation' fields.
* Serialize the book pages as JSON strings.
* Avoid redundant conversion from strings to components to JSON and back to
  components during deserialization.
  Add CraftChatMessage.fromJSONOrString that accepts a maxLength argument
  and remove the no longer used fromJSONOrStringToJSON, fromStringToJSON,
  and fromJSONComponent helper methods.

By: blablubbabc <lukas@wirsindwir.de>
2024-06-30 16:27:23 +10:00
CraftBukkit/Spigot
8821aa372c SPIGOT-7800, SPIGOT-7801: Keep vanilla behaviour for items dropped on player death
By: Doc <nachito94@msn.com>
2024-06-29 14:03:10 +10:00
CraftBukkit/Spigot
5f8cff3bb5 #1429: Implement TrialSpawnerSpawnEvent
By: Doc <nachito94@msn.com>
2024-06-28 07:06:36 +10:00
CraftBukkit/Spigot
820bc6423d #1354: Improve spawner API and add API for Trial Spawners
By: coll1234567 <joshl5324@gmail.com>
2024-06-28 07:06:20 +10:00
CraftBukkit/Spigot
c59410cfbc Increase outdated build delay
By: md_5 <git@md-5.net>
2024-06-26 07:00:34 +10:00
CraftBukkit/Spigot
0d64e2be4b SPIGOT-7796: Kickplayer newlines not working
By: md_5 <git@md-5.net>
2024-06-24 06:33:02 +10:00
CraftBukkit/Spigot
5d025bbee8 Improve cross-world teleportation handling
By: md_5 <git@md-5.net>
2024-06-23 16:45:29 +10:00
CraftBukkit/Spigot
477394d314 #1433: HumanEntity#openInventory(InventoryView) should only support views belonging to the player
By: Miles Holder <mwholder2005@gmail.com>
2024-06-22 18:48:51 +10:00
CraftBukkit/Spigot
aef018b9c4 SPIGOT-7732: Issue with the "hurt()" method of EntityLiving and invulnerable time
By: LoliColleen <76620594+LoliColleen@users.noreply.github.com>
2024-06-22 18:46:41 +10:00
CraftBukkit/Spigot
7667932681 SPIGOT-7791: Skull BlockState with null profile causes NullPointerException
By: md_5 <git@md-5.net>
2024-06-22 11:42:15 +10:00
CraftBukkit/Spigot
2f1800fa2e SPIGOT-7789: Fix NPE in CraftMetaFirework applyToItem
By: blablubbabc <lukas@wirsindwir.de>
2024-06-20 07:04:11 +10:00
CraftBukkit/Spigot
1128edadb2 #1428: Expose Creeper igniter
By: Doc <nachito94@msn.com>
2024-06-19 06:48:33 +10:00
CraftBukkit/Spigot
e43f607e6a #1425: Fix bytecode transformation taking care of class-to-interface compatibility.
By: Jannyboy11 <Jannyboy11@gmail.com>
2024-06-18 19:19:15 +10:00
CraftBukkit/Spigot
ac95e0b210 SPIGOT-7770: Fix certain shaped recipes not registering
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-06-18 19:06:07 +10:00
CraftBukkit/Spigot
5f8b82d6cc #1426: Deprecate more unused methods in UnsafeValues
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-06-17 20:56:19 +10:00
CraftBukkit/Spigot
8537c328d0 SPIGOT-7771: Material.getDefaultAttributes always returns an empty map
By: md_5 <git@md-5.net>
2024-06-17 19:44:14 +10:00
CraftBukkit/Spigot
d2d0972bc3 #1414: Convert InventoryView to interface
By: Miles Holder <mwholder2005@gmail.com>
2024-06-16 08:47:38 +10:00
CraftBukkit/Spigot
6af115230a Fix Implementation for DamageSource#isIndirect for internal custom causing entity
By: Doc <nachito94@msn.com>
2024-06-15 12:47:45 -04:00
CraftBukkit/Spigot
9f79c6f74e Remove unused import
By: md_5 <git@md-5.net>
2024-06-15 12:52:01 +10:00
CraftBukkit/Spigot
3e98b1bcbe SPIGOT-7757: Cannot set item in Stonecutter Inventory
By: md_5 <git@md-5.net>
2024-06-15 12:48:38 +10:00
CraftBukkit/Spigot
85df4599c9 Move deserialized removed unhandled tags to dedicated removedTags
By: md_5 <git@md-5.net>
2024-06-15 10:09:35 +10:00
CraftBukkit/Spigot
87c3fdad31 Fix potential mutability issue with CraftMetaItem copy constructor
By: md_5 <git@md-5.net>
2024-06-15 07:03:03 +10:00
CraftBukkit/Spigot
1e6fb15514 SPIGOT-7741: Vanilla ItemComponent in commands can't remove components
By: md_5 <git@md-5.net>
2024-06-15 07:03:03 +10:00
CraftBukkit/Spigot
26f44f56c1 #1284: Move ItemType <-> ItemMeta linking to a centralized place
By: DerFrZocker <derrieple@gmail.com>
2024-06-15 06:53:46 +10:00
CraftBukkit/Spigot
c985be99a6 #1420: Fix DirectEntity and CausingEntity Damager for Creepers ignited by Player
By: Doc <nachito94@msn.com>
2024-06-15 06:47:48 +10:00
CraftBukkit/Spigot
9c115e8fae Implement DamageCause#CAMPFIRE and minor improvement in exception for Unhandled block damage
By: Doc <nachito94@msn.com>
2024-06-13 12:23:28 -04:00
CraftBukkit/Spigot
eed041d629 Update to Minecraft 1.21
By: md_5 <git@md-5.net>
2024-06-14 01:05:00 +10:00
CraftBukkit/Spigot
7c6204e1a9 Remove outdated build delay
By: md_5 <git@md-5.net>
2024-06-14 01:00:00 +10:00
CraftBukkit/Spigot
1ded727925 SPIGOT-7737: Add separate TreeType.MEGA_PINE
By: md_5 <git@md-5.net>
2024-06-11 21:04:56 +10:00
CraftBukkit/Spigot
92a9fb31be Fix spawn egg equality check and copy constructor
By: md_5 <git@md-5.net>
2024-06-11 06:59:14 +10:00
CraftBukkit/Spigot
cd2a1a6d7e Fix spawn eggs with no entity creating invalid stacks and disconnect creative clients
Example: /give @s minecraft:cat_spawn_egg[minecraft:max_stack_size=1,minecraft:max_damage=100,minecraft:damage=10] 1

By: md_5 <git@md-5.net>
2024-06-10 14:06:38 +10:00
CraftBukkit/Spigot
9db084c279 SPIGOT-7731: Spawn eggs cannot have damage
By: Doc <nachito94@msn.com>
2024-06-10 14:06:34 +10:00
CraftBukkit/Spigot
95f120b7ff SPIGOT-7735: Fix serialization of player heads with note block sound
By: blablubbabc <lukas@wirsindwir.de>
2024-06-10 08:35:53 +10:00
CraftBukkit/Spigot
cd4487372e #1413: Add force option to Player#spawnParticle
By: Jishuna <joshl5324@gmail.com>
2024-06-08 09:11:27 +10:00
CraftBukkit/Spigot
00cc0753d7 #1409: Add methods to get players seeing specific chunks
By: MetallicGoat <the.great.metallic.goat@gmail.com>
2024-06-08 09:03:44 +10:00
CraftBukkit/Spigot
6d2082bf75 #1360: Add Material#isCompostable and Material#getCompostChance
By: mfnalex <mfnalex@jeff-media.com>
2024-06-05 07:15:52 +10:00
CraftBukkit/Spigot
d267f74a0b SPIGOT-7676: Enforce locale parameter in toLowerCase and toUpperCase method calls and always use root locale
By: DerFrZocker <derrieple@gmail.com>
2024-06-03 07:18:17 +10:00
CraftBukkit/Spigot
4b6edd3c82 Increase outdated build delay
By: md_5 <git@md-5.net>
2024-06-02 08:58:26 +10:00
CraftBukkit/Spigot
764529d82b SPIGOT-7675: Fix FoodComponent config deserialization
Be more lenient when converting floating point numbers during config
deserialization of item data.

By: blablubbabc <lukas@wirsindwir.de>
2024-05-31 07:14:09 +10:00
CraftBukkit/Spigot
79d9816660 #1406: Fix incorrect assumption of Fireball having constant speed
By: DerFrZocker <derrieple@gmail.com>
2024-05-29 06:56:42 +10:00
CraftBukkit/Spigot
4691102616 #1405: Add a tool component to ItemMeta
By: 2008Choco <hawkeboyz2@hotmail.com>
Also-by: md_5 <git@md-5.net>
2024-05-29 06:53:59 +10:00
CraftBukkit/Spigot
3433d3f5b7 #1404: Add PotionEffectTypeCategory to distinguish between beneficial and harmful effects
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-05-29 06:50:08 +10:00
CraftBukkit/Spigot
402878b8cd #1403, SPIGOT-4288, SPIGOT-6202: Add material rerouting in preparation for the switch to ItemType and BlockType
This also moves the conversion from and to legacy material to the method
calls of legacy plugins, and no longer allows them directly in the
server.

This has the side effect of fixing some legacy plugin issues, such as
SPIGOT-4288, SPIGOT-6161. Also fixes legacy items sometimes not stacking
in inventory when using addItem, a client disconnect when using legacy
items in recipes and probably some more.

By: DerFrZocker <derrieple@gmail.com>
2024-05-29 06:48:55 +10:00
CraftBukkit/Spigot
c955ea1663 #1401: Add a config option to accept old keys in registry get calls
By: DerFrZocker <derrieple@gmail.com>
2024-05-29 06:45:14 +10:00
CraftBukkit/Spigot
6f5d01226e #1402: Fix ChunkSnapshot#isSectionEmpty() is always false
By: MetallicGoat <the.great.metallic.goat@gmail.com>
2024-05-23 21:14:56 +10:00
CraftBukkit/Spigot
60c7d83e00 SPIGOT-7668: Move NONE Registry updater to FieldRename to avoid some class loader issues
By: DerFrZocker <derrieple@gmail.com>
2024-05-19 21:35:46 +02:00
CraftBukkit/Spigot
575f106abd Increase outdated build delay
By: md_5 <git@md-5.net>
2024-05-13 21:21:16 +10:00
CraftBukkit/Spigot
850e49f268 SPIGOT-7664: Item meta should prevail over block states
By: md_5 <git@md-5.net>
2024-05-10 19:33:23 +10:00
CraftBukkit/Spigot
317917800c SPIGOT-7666: Fix access to llama and horse special slot
By: md_5 <git@md-5.net>
2024-05-10 19:23:01 +10:00
CraftBukkit/Spigot
54f230de84 SPIGOT-7665: Fix ThrownPotion#getEffects() implementation only bringing custom effects
By: Doc <nachito94@msn.com>
2024-05-10 19:09:20 +10:00
CraftBukkit/Spigot
17b4c0d7a3 Restore null page behaviour of signed books even though not strictly allowed by API
By: md_5 <git@md-5.net>
2024-05-10 19:08:54 +10:00
CraftBukkit/Spigot
06b53d8386 Fix unnecessary and potential not thread-safe chat visibility check
By: md_5 <git@md-5.net>
2024-05-07 21:40:57 +10:00
CraftBukkit/Spigot
38d4a335ea Remove unused imports
By: md_5 <git@md-5.net>
2024-05-06 20:30:27 +10:00
CraftBukkit/Spigot
f89c0d3ad7 #1397: Add ItemMeta#getAsComponentString()
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-05-06 20:23:39 +10:00
CraftBukkit/Spigot
f323d82f21 Largely restore deprecated PotionData API
By: md_5 <git@md-5.net>
2024-05-05 20:45:48 +10:00
CraftBukkit/Spigot
8f55ed539f #1275: Add internal ItemType and BlockType, delegate Material methods to them
By: Jishuna <joshl5324@gmail.com>
Also-by: Bjarne Koll <lynxplay101@gmail.com>
Also-by: DerFrZocker <derrieple@gmail.com>
Also-by: md_5 <git@md-5.net>
2024-05-05 10:08:54 +10:00
CraftBukkit/Spigot
b4e6cc4dce SPIGOT-1166, SPIGOT-7647: Expose Damager BlockState in EntityDamageByBlockEvent
By: Doc <nachito94@msn.com>
2024-05-05 09:34:57 +10:00
CraftBukkit/Spigot
7aa4984347 SPIGOT-6993: Allow #setVelocity to change the speed of a fireball and add a note to #setDirection about it
By: DerFrZocker <derrieple@gmail.com>
2024-05-04 19:34:27 +10:00
CraftBukkit/Spigot
4951fa2dd1 Support both entity_data and bucket_entity_data on axolotl/fish buckets
By: md_5 <git@md-5.net>
2024-05-04 14:25:29 +10:00
CraftBukkit/Spigot
9bf6a88788 SPIGOT-7659: TropicalFishBucketMeta should use BUCKET_ENTITY_DATA
By: md_5 <git@md-5.net>
2024-05-04 08:49:06 +10:00
CraftBukkit/Spigot
acdb83379e #1393: Improve field rename handling and centralize conversion between bukkit and string more
By: DerFrZocker <derrieple@gmail.com>
2024-05-04 08:19:07 +10:00
CraftBukkit/Spigot
f91094ddfd SPIGOT-7650: Add DamageSource for EntityDeathEvent and PlayerDeathEvent
By: Doc <nachito94@msn.com>
2024-05-04 08:16:00 +10:00
CraftBukkit/Spigot
066665a979 #1390: Improve internal handling of damage sources
By: Doc <nachito94@msn.com>
2024-05-04 08:15:51 +10:00
CraftBukkit/Spigot
c604cac551 SPIGOT-7652: Remove remap for SPELL_MOB_AMBIENT which no longer exists
By: md_5 <git@md-5.net>
2024-05-02 21:26:08 +10:00
CraftBukkit/Spigot
de3b4d1800 SPIGOT-7654: ItemStack#isSimilar does not work with empty BlockStateMeta
By: md_5 <git@md-5.net>
2024-05-02 21:22:32 +10:00
CraftBukkit/Spigot
54dd884d80 SPIGOT-7655: ItemMeta#addItemFlags(ItemFlag.HIDE_ATTRIBUTES) not working when no attribute modifiers set
By: md_5 <git@md-5.net>
2024-05-02 21:00:12 +10:00
CraftBukkit/Spigot
23b13ad11a SPIGOT-7653: Update ApiVersion.CURRENT with latest version and include tests
By: Doc <nachito94@msn.com>
2024-05-02 07:00:16 +10:00
CraftBukkit/Spigot
897584d94f Update to Minecraft 1.20.6
By: md_5 <git@md-5.net>
2024-04-30 06:15:00 +10:00
CraftBukkit/Spigot
1390477e34 SPIGOT-7646: Don't duplicate PDC in customTag / retain old values
By: md_5 <git@md-5.net>
2024-04-29 07:38:24 +10:00
CraftBukkit/Spigot
4ae8689c1b SPIGOT-7644: Fix ItemMeta#getAsString
By: md_5 <git@md-5.net>
2024-04-28 07:41:53 +10:00
CraftBukkit/Spigot
6dc63e45f2 Open a direct connection instead of pinging mojang server to check if it is reachable
By: DerFrZocker <derrieple@gmail.com>
2024-04-26 09:16:58 +02:00
CraftBukkit/Spigot
18cee9d332 SPIGOT-7633: Clearer error message for missing particle data
By: md_5 <git@md-5.net>
2024-04-25 16:38:33 +10:00
CraftBukkit/Spigot
b6c483ce92 Fix unit tests always seeing Mojang server as unavailable
By: md_5 <git@md-5.net>
2024-04-25 16:26:03 +10:00
CraftBukkit/Spigot
2f65b80661 SPIGOT-7636: Fix clearing ItemMeta
By: md_5 <git@md-5.net>
2024-04-25 16:15:01 +10:00
CraftBukkit/Spigot
b031cef198 SPIGOT-7635: Fix Player#transfer and cookie methods
By: md_5 <git@md-5.net>
2024-04-25 15:31:25 +10:00
CraftBukkit/Spigot
cd194c870f Fix incorrect Vault implementation
By: md_5 <git@md-5.net>
2024-04-25 10:31:36 +10:00
CraftBukkit/Spigot
715508e0dd SPIGOT-7632: Control middle clicking chest does not copy contents
By: md_5 <git@md-5.net>
2024-04-25 08:41:39 +10:00
CraftBukkit/Spigot
8da4819249 SPIGOT-7355: More field renames and fixes
- Rename MapCursor Types to match their Minecraft names
- SPIGOT-7355: Rename ItemFlag#HIDE_POTION_EFFECTS to better reflect its function
- Fix Attribute rename (CraftBukkit only)
- Add rename routing validation (CraftBukkit only)

By: DerFrZocker <derrieple@gmail.com>
2024-04-25 07:49:44 +10:00
CraftBukkit/Spigot
83028e946f SPIGOT-7629: Fix loading banner patterns
By: md_5 <git@md-5.net>
2024-04-25 07:45:19 +10:00
CraftBukkit/Spigot
42b7bb16d3 Fix equality of deserialized display names
By: md_5 <git@md-5.net>
2024-04-25 07:26:05 +10:00
CraftBukkit/Spigot
d195996997 SPIGOT-7631: Fix deserialisation of BlockStateMeta
By: md_5 <git@md-5.net>
2024-04-25 07:26:03 +10:00
CraftBukkit/Spigot
2c37043b7f #1384: Disable certain PlayerProfile tests, if Mojang's services or internet are not available
By: DerFrZocker <derrieple@gmail.com>
2024-04-24 18:12:31 +10:00
CraftBukkit/Spigot
4862893bef SPIGOT-7626: sendSignChange() has no effect
By: md_5 <git@md-5.net>
2024-04-24 18:10:39 +10:00
CraftBukkit/Spigot
e190aa6b33 SPIGOT-7625: ItemStack with lore cannot be serialized in 1.20.5
By: DerFrZocker <derrieple@gmail.com>
2024-04-24 17:53:14 +10:00
CraftBukkit/Spigot
86b52ff618 SPIGOT-7621: Fix empty strings in item lore
By: md_5 <git@md-5.net>
2024-04-24 08:12:08 +10:00
CraftBukkit/Spigot
6686458555 SPIGOT-7622: Fix error with Player#sendSignChange
By: md_5 <git@md-5.net>
2024-04-24 08:12:04 +10:00
CraftBukkit/Spigot
a45c5c5316 Fix cosmetic typo in exception message
By: md_5 <git@md-5.net>
2024-04-24 04:27:08 +10:00
CraftBukkit/Spigot
347f0eff78 #1380: Change wolf variant from enum to interface
By: DerFrZocker <derrieple@gmail.com>
2024-04-24 04:22:03 +10:00
CraftBukkit/Spigot
f7de208151 #1379: Rename FoodMeta#get/setSaturationModifier() to #get/setSaturation()
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-04-24 02:32:48 +10:00
CraftBukkit/Spigot
85591014c5 #1378: Add methods to convert between an entity and a SNBT string
By: Jishuna <joshl5324@gmail.com>
2024-04-24 01:15:00 +10:00
CraftBukkit/Spigot
760899464e SPIGOT-5336: Field name parity with Minecraft keys
By: DerFrZocker <derrieple@gmail.com>
2024-04-24 01:15:00 +10:00
CraftBukkit/Spigot
d122883f57 #1328: Rename CraftArrow to CraftAbstractArrow and CraftTippedArrow to CraftArrow to better reflect Bukkit's names
By: DerFrZocker <derrieple@gmail.com>
2024-04-24 01:15:00 +10:00
CraftBukkit/Spigot
1b0447274f #1357: Remove legacy Particle values
By: DerFrZocker <derrieple@gmail.com>
2024-04-24 01:15:00 +10:00
CraftBukkit/Spigot
65bc2541a3 Update to Minecraft 1.20.5
By: md_5 <git@md-5.net>
2024-04-24 01:15:00 +10:00
CraftBukkit/Spigot
4deda9501f Remove outdated build delay
By: md_5 <git@md-5.net>
2024-04-24 01:00:00 +10:00
CraftBukkit/Spigot
e6730f6daf SPIGOT-7613: Don't respect mobGriefing gamerule in World#createExplosion() without source entity
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-04-17 19:13:29 +10:00
CraftBukkit/Spigot
f127f9030d #1363: Add API to copy BlockState to a new Location
By: lbenav8095 <lubensaico@gmail.com>
2024-04-07 12:22:10 +10:00
CraftBukkit/Spigot
f2f79d2380 #1367: Add more Conduit API
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-04-07 12:05:25 +10:00
CraftBukkit/Spigot
d54bcadd91 SPIGOT-6705: Re-print tab completion "Display all" message in console, when another message is being logged
By: DerFrZocker <derrieple@gmail.com>
2024-04-07 11:54:28 +10:00
CraftBukkit/Spigot
84d43ef379 #1362: Include Creeper igniter in causing entity for damage events
By: Doc <nachito94@msn.com>
2024-04-07 11:49:28 +10:00
CraftBukkit/Spigot
779b5137f8 #1369: Add World#getIntersectingChunks(BoundingBox)
By: Flo0 <flo.roma@web.de>
2024-04-01 09:43:49 +11:00
CraftBukkit/Spigot
3f9e7c4e39 Move getItemInUse up to LivingEntity
By: md_5 <git@md-5.net>
2024-03-30 12:54:26 +11:00
CraftBukkit/Spigot
dd0e55721d #1331: Add access to current item's remaining ticks
By: gIsForGravity <gavin.f.tantleff@gmail.com>
2024-03-30 12:54:20 +11:00
CraftBukkit/Spigot
064114e718 SPIGOT-7601: Add AbstractArrow#getItem
By: md_5 <git@md-5.net>
2024-03-30 12:17:57 +11:00
CraftBukkit/Spigot
7afeda6ff8 SPIGOT-7602: Allow opening in-world horse and related inventories
By: md_5 <git@md-5.net>
2024-03-30 12:08:32 +11:00
CraftBukkit/Spigot
0ae1e62bfc SPIGOT-7608: Allow empty lists to morph to any PDT list
The minecraft serialisation logic for ListTag updates the type byte of
the list tag during writing to match either the first element in the
list or 0, if said list tag is empty.
As such, list content type information cannot be carried through a
write/read process, e.g. chunk load/unload or a creative client updating
the item.

The recently introduced persistent data type collections for lists hence
can also not enforce a specific list content type if the found list is
empty, which it currently attempts to do.
As such, a call to PersistentDataContainer#has would also yield false
for any empty list as the lists type byte would be 0.

The faulty behaviour has been fixed by considering an empty list in the
persistent data container to match any list type.
This change, while technically breaking the #has check, is needed and
reasonable as the #has check for this is currently broken in the first
place as described above.

By: Bjarne Koll <lynxplay101@gmail.com>
2024-03-30 10:46:03 +11:00
CraftBukkit/Spigot
e0274e7202 Add support for Java 22
By: md_5 <git@md-5.net>
2024-03-29 21:23:37 +11:00
CraftBukkit/Spigot
434aec3832 #1361: Add more translation keys
By: Miles Holder <mwholder2005@gmail.com>
2024-03-17 10:26:55 +11:00
CraftBukkit/Spigot
db29270cd0 #1366: Expose riptide velocity to PlayerRiptideEvent
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-03-10 09:27:44 +11:00
CraftBukkit/Spigot
39994359d1 Fix copying BlockStates with fields (eg, Banner)
By: md_5 <git@md-5.net>
2024-03-06 06:57:15 +11:00
CraftBukkit/Spigot
e24cb644a8 Increase outdated build delay
By: md_5 <git@md-5.net>
2024-02-29 06:49:54 +11:00
CraftBukkit/Spigot
64cd2b148a SPIGOT-336, SPIGOT-3366, SPIGOT-5768, SPIGOT-6409, SPIGOT-6861, #1008: Add EntityRemoveEvent
By: DerFrZocker <derrieple@gmail.com>
2024-02-21 20:55:34 +11:00
CraftBukkit/Spigot
6dc11b5d28 SPIGOT-7565: Throw a more descriptive error message when a developer tries to spawn an entity from a CraftBukkit class
By: DerFrZocker <derrieple@gmail.com>
2024-02-17 14:04:58 +11:00
CraftBukkit/Spigot
3cfdcf8a3e SPIGOT-7417, #1343: Add Sign#getTargetSide and Sign#getAllowedEditor
By: Jishuna <joshl5324@gmail.com>
2024-02-17 14:02:38 +11:00
CraftBukkit/Spigot
49b5ee78bb SPIGOT-7300, #1180: Add new DamageSource API providing enhanced information about entity damage
By: Doc <nachito94@msn.com>
2024-02-11 09:54:25 +11:00
CraftBukkit/Spigot
684554a642 SPIGOT-7576, #1347: Add methods in MushroomCow to change stew effects
By: Doc <nachito94@msn.com>
2024-02-08 22:54:51 +11:00
CraftBukkit/Spigot
b5ff47182d #1259: Add Server#isLoggingIPs to get log-ips configuration
By: Doc <nachito94@msn.com>
2024-02-07 07:09:34 +11:00
CraftBukkit/Spigot
c434d05d57 Improve support for per-world game rules
By: md_5 <git@md-5.net>
2024-02-04 10:54:20 +11:00
CraftBukkit/Spigot
497c50463c #1348: Add Player methods for client-side potion effects
By: Jishuna <joshl5324@gmail.com>
2024-02-04 10:10:30 +11:00
CraftBukkit/Spigot
49c217ec31 #1335: Add API for in-world structures
By: coll1234567 <joshl5324@gmail.com>
2024-02-04 10:04:35 +11:00
CraftBukkit/Spigot
f85f51fcf0 SPIGOT-7577: Make CraftWindCharge#explode discard the entity
By: Doc <nachito94@msn.com>
2024-02-04 09:57:17 +11:00
CraftBukkit/Spigot
4fde00f8dc SPIGOT-7530, #1314: Improve Resource Pack API with new 1.20.3 functionality
By: md_5 <git@md-5.net>
2024-01-31 22:02:45 +11:00
CraftBukkit/Spigot
4a1ae2fa02 SPIGOT-3071, #1345: Add entity spawn method with spawn reason
By: DerFrZocker <derrieple@gmail.com>
2024-01-31 20:08:05 +11:00
CraftBukkit/Spigot
c094bcbac2 SPIGOT-6911, #1349: Change max book length in CraftMetaBook
By: DerFrZocker <derrieple@gmail.com>
2024-01-31 19:59:28 +11:00
CraftBukkit/Spigot
aca2bf97bb SPIGOT-7572: Bee nests generated without bees
By: DerFrZocker <derrieple@gmail.com>
2024-01-27 14:59:22 +11:00
CraftBukkit/Spigot
7b15562116 SPIGOT-5553, #1336: Add EntityKnockbackEvent
By: Jishuna <joshl5324@gmail.com>
2024-01-27 14:53:41 +11:00
CraftBukkit/Spigot
f5b984c8a0 SPIGOT-7575: SuspiciousStewMeta creates invalid PotionEffect data
By: Doc <nachito94@msn.com>
2024-01-24 21:45:52 +11:00
CraftBukkit/Spigot
d7095f8578 #1340: Centralize the conversion from and to Minecraft / Bukkit registry items even more and add a test case for them
By: DerFrZocker <derrieple@gmail.com>
2024-01-22 20:36:36 +11:00
CraftBukkit/Spigot
e6b4a5f109 #1338: Introduce getRespawnLocation as a replacement for getBedSpawnLocation
By: Nothixal <nothixal@gmail.com>
2024-01-22 20:27:09 +11:00
CraftBukkit/Spigot
5165e97c74 SPIGOT-7570: PrepareItemCraftEvent#isRepair() always returns false
By: md_5 <git@md-5.net>
2024-01-18 22:19:05 +11:00
CraftBukkit/Spigot
f4f370e55e #1337: Add DragonBattle#setPreviouslyKilled
By: DaFeist <56165444+dafeist-github@users.noreply.github.com>
2024-01-17 18:23:36 +11:00
CraftBukkit/Spigot
753db7f2fc SPIGOT-6921, #1330: Add methods to remove all enchantments on an ItemStack
By: Nothixal <nothixal@gmail.com>
2024-01-16 07:38:55 +11:00
CraftBukkit/Spigot
7581cde32e #1333: Add BlockData#copyTo
By: Jishuna <joshl5324@gmail.com>
2024-01-15 20:33:17 +11:00
CraftBukkit/Spigot
e216f2ef2d #1329: Add method to get an offline player's location
By: Nothixal <nothixal@gmail.com>
2024-01-15 20:30:41 +11:00
CraftBukkit/Spigot
93df3d859c #1327: Add methods to place structures with block/entity transformers
By: Jishuna <joshl5324@gmail.com>
2024-01-10 18:44:31 +11:00
CraftBukkit/Spigot
eb6041d8f8 Add EntityMountEvent and EntityDismount Event
Adapted from Spigot commit ab1e1a2a5a.

By: md_5 <git@md-5.net>
2024-01-07 08:59:55 +11:00
CraftBukkit/Spigot
d63f71fcde #1183: Better handle lambda expression and renaming of classes in Commodore
By: DerFrZocker <derrieple@gmail.com>
2024-01-06 16:15:23 +11:00
CraftBukkit/Spigot
8f59d4abd3 Reformat Commodore.java
By: md_5 <git@md-5.net>
2024-01-06 16:15:21 +11:00
CraftBukkit/Spigot
19e69bb8fc #1324: Improve ItemFactory#enchantItem consistency
By: Miles Holder <mwholder2005@gmail.com>
2024-01-06 16:07:58 +11:00
CraftBukkit/Spigot
8cd8851498 #1295: Define native persistent data types for lists
By: Bjarne Koll <lynxplay101@gmail.com>
2024-01-06 16:03:58 +11:00
CraftBukkit/Spigot
71ca5a7bdf SPIGOT-7562: Fix Score#getScore and Score#isScoreSet
By: md_5 <git@md-5.net>
2024-01-05 14:18:13 +11:00
CraftBukkit/Spigot
5e82782283 Only fetch an online UUID in online mode
The previous code would get an online UUID even in offline mode that
breaks plugins if the player joins.

Example: You want to store data for player "Test" who never joined. An
online UUID is created and you save it using that UUID.

The player Test joins with an offline UUID but that will not match the
online UUID of the saved data.

Adapted from Spigot commit 25b673fd7e418e21eb445a9e39d51baa0c0ab8b6

By: Maxim Van de Wynckel <maxim_vdw@hotmail.com>
2023-12-31 10:46:30 +11:00
CraftBukkit/Spigot
d15575db91 #1325: Use CraftBlockType and CraftItemType instead of CraftMagicNumbers to convert between minecraft and bukkit block / item representation
By: DerFrZocker <derrieple@gmail.com>
2023-12-29 08:36:38 +11:00
CraftBukkit/Spigot
b245f22351 SPIGOT-7554, #1323: Add DecoratedPotInventory
By: BlackHole <black-hole@live.com>
2023-12-28 08:07:06 +11:00
CraftBukkit/Spigot
61281a3158 SPIGOT-7555: Don't cast ItemFlags to byte
This fixes an issue with the HIDE_ARMOR_TRIM flag being lost during item
deserialization.

By: blablubbabc <lukas@wirsindwir.de>
2023-12-27 11:15:24 +11:00
CraftBukkit/Spigot
61052d56b5 #1321: Clean up some stuff which got missed during previous PRs
- Add missing CraftBukkit comment to CommandGive
- Remove no longer needed IRegistryCustom from CraftStructure conversion
- Use setBasePotionType instead of deprecated setBasePotionData

By: DerFrZocker <derrieple@gmail.com>
2023-12-26 07:44:21 +11:00
CraftBukkit/Spigot
a9fb0c70f8 Implement APIs for per world view and simulation distances
By: md_5 <git@md-5.net>
2023-12-23 14:32:49 +11:00
CraftBukkit/Spigot
6a6ddbcb6d Preserve empty enchantment tags for glow effect
Adapted from Spigot commit cc9a1a417f1ac95a7957db8636e31c8fc2baf4e9.

By: drXor <mcyoung@mit.edu>
2023-12-23 12:50:04 +11:00
CraftBukkit/Spigot
3d36db0106 Remove connected check on setScoreboard
No other API uses such a check and it has been removed in Spigot since f7086eb96d in 2013.

By: md_5 <git@md-5.net>
2023-12-23 08:39:28 +11:00
CraftBukkit/Spigot
fe17e5f886 Use one PermissibleBase for all command blocks
Inspired by Spigot commit 4bd27f7d0f by FrozenBrain.

By: md_5 <git@md-5.net>
2023-12-23 08:28:06 +11:00
CraftBukkit/Spigot
67a231d8d9 SPIGOT-7550: Fix creation of Arrow instances
By: Doc <nachito94@msn.com>
2023-12-21 08:19:29 +11:00
CraftBukkit/Spigot
1b81fe827e SPIGOT-7549: ServerTickManager#setTickRate incorrect Precondition
By: md_5 <git@md-5.net>
2023-12-18 18:45:09 +11:00
CraftBukkit/Spigot
a92362c927 SPIGOT-7548: Fix wrong spawn location for experience orb and dropped item
By: Parker Hawke <hawkeboyz2@hotmail.com>
2023-12-18 00:08:16 -05:00
CraftBukkit/Spigot
8c7156ce51 Add Checkstyle check for unused imports
By: md_5 <git@md-5.net>
2023-12-17 10:26:49 +11:00
CraftBukkit/Spigot
90ab7d39e5 SPIGOT-7544: Scoreboard#getEntries() doesn't get entries but class names
By: md_5 <git@md-5.net>
2023-12-17 09:38:38 +11:00
CraftBukkit/Spigot
46c67d7108 SPIGOT-7540, #1312: Add ServerTickManager API
By: Miles Holder <mwholder2005@gmail.com>
2023-12-17 09:30:00 +11:00
CraftBukkit/Spigot
3e5032caac SPIGOT-6903, #1311: Add BlockData#getMapColor
By: Miles Holder <mwholder2005@gmail.com>
2023-12-17 09:29:54 +11:00
CraftBukkit/Spigot
3c241dbb64 Increase outdated build delay
By: md_5 <git@md-5.net>
2023-12-16 09:56:19 +11:00
CraftBukkit/Spigot
6d495b5687 SPIGOT-7530, #1313: Add Player#removeResourcePack
By: Doc <nachito94@msn.com>
2023-12-13 07:33:49 +11:00
CraftBukkit/Spigot
889ce05e35 SPIGOT-7527, #1310: Add WindCharge#explode()
By: Doc <nachito94@msn.com>
2023-12-12 19:34:37 +11:00
CraftBukkit/Spigot
c90e518928 #1306: Centralize Bukkit and Minecraft entity conversion
By: DerFrZocker <derrieple@gmail.com>
2023-12-10 10:46:06 +11:00
CraftBukkit/Spigot
336afd230d #1299: Add new PersistentDataContainer methods and clean up docs
By: Jishuna <joshl5324@gmail.com>
2023-12-08 19:29:38 +11:00
CraftBukkit/Spigot
a5594be1c7 #1303: Create registry for banner pattern and cat type
By: Jishuna <joshl5324@gmail.com>
2023-12-08 19:26:30 +11:00
CraftBukkit/Spigot
5690a0ab1f #1309: Add tests for Bukkit Pose
By: Doc <nachito94@msn.com>
2023-12-07 08:21:33 +11:00
CraftBukkit/Spigot
58cbbcd51a SPIGOT-7528: Fix certain custom shaped recipes
By: md_5 <git@md-5.net>
2023-12-06 20:23:28 +11:00
CraftBukkit/Spigot
dd8ca5c2dc SPIGOT-6026: Pull PotionEffectType and Enchantment from registry
By: DerFrZocker <derrieple@gmail.com>
2023-12-06 03:40:00 +11:00
CraftBukkit/Spigot
8398e12b34 Update to Minecraft 1.20.3
By: md_5 <git@md-5.net>
2023-12-06 03:40:00 +11:00
CraftBukkit/Spigot
afdb1d9bc3 Remove outdated build delay
By: md_5 <git@md-5.net>
2023-12-06 03:38:35 +11:00
CraftBukkit/Spigot
0f6da6b1c8 SPIGOT-7487: entity.remove() on a leash drops a lead item
By: DerFrZocker <derrieple@gmail.com>
2023-12-01 08:01:44 +11:00