| org.bukkit.entity.Damageable._INVALID_damage(int) | 
| org.bukkit.entity.Damageable._INVALID_damage(int, Entity) | 
| org.bukkit.event.entity.EntityRegainHealthEvent._INVALID_getAmount() | 
| org.bukkit.entity.Minecart._INVALID_getDamage() | 
| org.bukkit.event.entity.EntityDamageEvent._INVALID_getDamage() | 
| org.bukkit.event.vehicle.VehicleDamageEvent._INVALID_getDamage() | 
| org.bukkit.entity.Damageable._INVALID_getHealth() | 
| org.bukkit.entity.LivingEntity._INVALID_getLastDamage() | 
| org.bukkit.entity.Damageable._INVALID_getMaxHealth() | 
| org.bukkit.entity.Projectile._INVALID_getShooter() | 
| org.bukkit.event.entity.EntityRegainHealthEvent._INVALID_setAmount(int) | 
| org.bukkit.entity.Minecart._INVALID_setDamage(int) | 
| org.bukkit.event.entity.EntityDamageEvent._INVALID_setDamage(int) | 
| org.bukkit.event.vehicle.VehicleDamageEvent._INVALID_setDamage(int) | 
| org.bukkit.entity.Damageable._INVALID_setHealth(int) | 
| org.bukkit.entity.LivingEntity._INVALID_setLastDamage(int) | 
| org.bukkit.entity.Damageable._INVALID_setMaxHealth(int) | 
| org.bukkit.entity.Projectile._INVALID_setShooter(LivingEntity) | 
| org.bukkit.map.MapCursorCollection.addCursor(int, int, byte, byte) Magic value | 
| org.bukkit.map.MapCursorCollection.addCursor(int, int, byte, byte, boolean) Magic value | 
| org.bukkit.inventory.ShapelessRecipe.addIngredient(int, Material, int) Magic value | 
| org.bukkit.inventory.ShapelessRecipe.addIngredient(Material, int) Magic value | 
| org.bukkit.inventory.Inventory.all(int) Magic value | 
| org.bukkit.map.MapCursor.Type.byValue(byte) Magic value | 
| org.bukkit.inventory.PlayerInventory.clear(int, int) Magic value | 
| org.bukkit.inventory.Inventory.contains(int) Magic value | 
| org.bukkit.inventory.Inventory.contains(int, int) Magic value | 
| org.bukkit.event.player.AsyncPlayerPreLoginEvent.disallow(PlayerPreLoginEvent.Result, String) | 
| org.bukkit.inventory.Inventory.first(int) Magic value | 
| org.bukkit.potion.Potion.fromDamage(int) Magic value | 
| org.bukkit.entity.CreatureType.fromId(int) Magic value | 
| org.bukkit.entity.EntityType.fromId(int) Magic value | 
| org.bukkit.entity.EntityType.fromName(String) Magic value | 
| org.bukkit.generator.ChunkGenerator.generate(World, Random, int, int) | 
| org.bukkit.generator.ChunkGenerator.generateBlockSections(World, Random, int, int, ChunkGenerator.BiomeGrid) Magic value | 
| org.bukkit.generator.ChunkGenerator.generateExtBlockSections(World, Random, int, int, ChunkGenerator.BiomeGrid) Magic value | 
| org.bukkit.entity.FallingBlock.getBlockData() Magic value | 
| org.bukkit.ChunkSnapshot.getBlockData(int, int, int) Magic value | 
| org.bukkit.entity.FallingBlock.getBlockId() Magic value | 
| org.bukkit.ChunkSnapshot.getBlockTypeId(int, int, int) Magic value | 
| org.bukkit.World.getBlockTypeIdAt(int, int, int) Magic value | 
| org.bukkit.World.getBlockTypeIdAt(Location) Magic value | 
| org.bukkit.potion.PotionType.getByDamageValue(int) Magic value | 
| org.bukkit.TreeSpecies.getByData(byte) Magic value | 
| org.bukkit.GrassSpecies.getByData(byte) Magic value | 
| org.bukkit.SandstoneType.getByData(byte) Magic value | 
| org.bukkit.CropState.getByData(byte) Magic value | 
| org.bukkit.EntityEffect.getByData(byte) Magic value | 
| org.bukkit.DyeColor.getByData(byte) | 
| org.bukkit.CoalType.getByData(byte) Magic value | 
| org.bukkit.DyeColor.getByDyeData(byte) Magic value | 
| org.bukkit.Note.Tone.getById(byte) Magic value | 
| org.bukkit.Effect.getById(int) Magic value | 
| org.bukkit.Art.getById(int) Magic value | 
| org.bukkit.block.PistonMoveReaction.getById(int) Magic value | 
| org.bukkit.enchantments.Enchantment.getById(int) Magic value | 
| org.bukkit.potion.PotionEffectType.getById(int) Magic value | 
| org.bukkit.Instrument.getByType(byte) Magic value | 
| org.bukkit.Difficulty.getByValue(int) Magic value | 
| org.bukkit.GameMode.getByValue(int) Magic value | 
| org.bukkit.DyeColor.getByWoolData(byte) Magic value | 
| org.bukkit.event.block.BlockPhysicsEvent.getChangedTypeId() Magic value | 
| org.bukkit.plugin.PluginDescriptionFile.getClassLoaderOf() unused | 
| org.bukkit.map.MapPalette.getColor(byte) Magic value | 
| org.bukkit.material.Rails.getConvertedData() Magic value | 
| org.bukkit.material.ExtendedRails.getConvertedData() Magic value | 
| org.bukkit.block.CreatureSpawner.getCreatureType() | 
| org.bukkit.event.entity.CreatureSpawnEvent.getCreatureType() | 
| org.bukkit.block.CreatureSpawner.getCreatureTypeId() | 
| org.bukkit.potion.PotionType.getDamageValue() Magic value | 
| org.bukkit.TreeSpecies.getData() Magic value | 
| org.bukkit.GrassSpecies.getData() Magic value | 
| org.bukkit.SandstoneType.getData() Magic value | 
| org.bukkit.CropState.getData() Magic value | 
| org.bukkit.EntityEffect.getData() Magic value | 
| org.bukkit.DyeColor.getData() | 
| org.bukkit.CoalType.getData() Magic value | 
| org.bukkit.block.Block.getData() Magic value | 
| org.bukkit.event.entity.EntityChangeBlockEvent.getData() Magic value | 
| org.bukkit.material.MaterialData.getData() Magic value | 
| org.bukkit.DyeColor.getDyeData() Magic value | 
| org.bukkit.potion.PotionBrewer.getEffectsFromDamage(int) Magic value | 
| org.bukkit.World.getEntitiesByClass(Class...) | 
| org.bukkit.World.Environment.getEnvironment(int) Magic value | 
| org.bukkit.material.Door.getFacing() Does not work (correctly) anymore | 
| org.bukkit.event.player.PlayerCommandPreprocessEvent.getFormat() This method is provided for backward compatibility with no
     guarantee to the use of the format. | 
| org.bukkit.event.inventory.FurnaceSmeltEvent.getFurnace() | 
| org.bukkit.event.inventory.FurnaceBurnEvent.getFurnace() | 
| org.bukkit.event.player.PlayerEggThrowEvent.getHatchType() | 
| org.bukkit.material.Door.getHingeCorner() Does not work (correctly) anymore | 
| org.bukkit.Material.getId() Magic value | 
| org.bukkit.Note.getId() Magic value | 
| org.bukkit.Note.Tone.getId() Magic value | 
| org.bukkit.Effect.getId() Magic value | 
| org.bukkit.Art.getId() Magic value | 
| org.bukkit.World.Environment.getId() Magic value | 
| org.bukkit.entity.Ocelot.Type.getId() Magic value | 
| org.bukkit.entity.Villager.Profession.getId() Magic value | 
| org.bukkit.entity.Skeleton.SkeletonType.getId() Magic value | 
| org.bukkit.block.PistonMoveReaction.getId() Magic value | 
| org.bukkit.map.MapView.getId() Magic value | 
| org.bukkit.enchantments.Enchantment.getId() Magic value | 
| org.bukkit.inventory.InventoryView.Property.getId() Magic value | 
| org.bukkit.potion.PotionEffectType.getId() Magic value | 
| org.bukkit.Note.Tone.getId(boolean) Magic value | 
| org.bukkit.material.MaterialData.getItemTypeId() Magic value | 
| org.bukkit.entity.LivingEntity.getLastTwoTargetBlocks(HashSet, int) Magic value | 
| org.bukkit.entity.LivingEntity.getLineOfSight(HashSet, int) Magic value | 
| org.bukkit.Server.getMap(short) Magic value | 
| org.bukkit.Bukkit.getMap(short) Magic value | 
| org.bukkit.Material.getMaterial(int) Magic value | 
| org.bukkit.event.block.BlockCanBuildEvent.getMaterialId() Magic value | 
| org.bukkit.entity.EntityType.getName() Magic value | 
| org.bukkit.potion.Potion.getNameId() Magic value | 
| org.bukkit.Material.getNewData(byte) Magic value | 
| org.bukkit.Server.getOfflinePlayer(String) Persistent storage of users should be by UUID as names are no longer
             unique past a single session. | 
| org.bukkit.Bukkit.getOfflinePlayer(String) | 
| org.bukkit.scoreboard.Score.getPlayer() Scoreboards can contain entries that aren't players | 
| org.bukkit.Server.getPlayer(String) | 
| org.bukkit.Bukkit.getPlayer(String) | 
| org.bukkit.Server.getPlayerExact(String) | 
| org.bukkit.Bukkit.getPlayerExact(String) | 
| org.bukkit.scoreboard.Scoreboard.getPlayers() Scoreboards can contain entries that aren't players | 
| org.bukkit.entity.Villager.Profession.getProfession(int) Magic value | 
| org.bukkit.block.BlockState.getRawData() Magic value | 
| org.bukkit.plugin.PluginDescriptionFile.getRawName() Internal use | 
| org.bukkit.block.NoteBlock.getRawNote() Magic value | 
| org.bukkit.map.MapCursor.getRawType() Magic value | 
| org.bukkit.event.player.PlayerCommandPreprocessEvent.getRecipients() This method is provided for backward compatibility with no
     guarantee to the effect of viewing or modifying the set. | 
| org.bukkit.event.player.AsyncPlayerPreLoginEvent.getResult() | 
| org.bukkit.scoreboard.Objective.getScore(OfflinePlayer) Scoreboards can contain entries that aren't players | 
| org.bukkit.scoreboard.Scoreboard.getScores(OfflinePlayer) Scoreboards can contain entries that aren't players | 
| org.bukkit.entity.LivingEntity.getTargetBlock(HashSet, int) Magic value | 
| org.bukkit.material.TexturedMaterial.getTextureIndex() Magic value | 
| org.bukkit.material.Step.getTextureIndex() Magic value | 
| org.bukkit.potion.Potion.getTier() | 
| org.bukkit.Instrument.getType() Magic value | 
| org.bukkit.entity.Ocelot.Type.getType(int) Magic value | 
| org.bukkit.entity.Skeleton.SkeletonType.getType(int) Magic value | 
| org.bukkit.entity.CreatureType.getTypeId() Magic value | 
| org.bukkit.entity.EntityType.getTypeId() Magic value | 
| org.bukkit.block.Block.getTypeId() Magic value | 
| org.bukkit.block.BlockState.getTypeId() Magic value | 
| org.bukkit.inventory.ItemStack.getTypeId() Magic value | 
| org.bukkit.BlockChangeDelegate.getTypeId(int, int, int) Magic value | 
| org.bukkit.Server.getUnsafe() | 
| org.bukkit.Bukkit.getUnsafe() | 
| org.bukkit.Difficulty.getValue() Magic value | 
| org.bukkit.GameMode.getValue() Magic value | 
| org.bukkit.map.MapView.Scale.getValue() Magic value | 
| org.bukkit.map.MapCursor.Type.getValue() Magic value | 
| org.bukkit.DyeColor.getWoolData() Magic value | 
| org.bukkit.map.MapPalette.imageToBytes(Image) Magic value | 
| org.bukkit.plugin.java.JavaPlugin.initialize(PluginLoader, Server, PluginDescriptionFile, File, File, ClassLoader) This method is legacy and will be removed - it must be
     replaced by the specially provided constructor(s). | 
| org.bukkit.plugin.java.JavaPlugin.isInitialized() This method cannot return false, as JavaPluginis now initialized in the constructor. | 
| org.bukkit.entity.Player.isOnGround() | 
| org.bukkit.material.Door.isOpen() Does not work (correctly) anymore | 
| org.bukkit.Note.Tone.isSharped(byte) Magic value | 
| org.bukkit.configuration.file.FileConfiguration.load(InputStream) This does not consider encoding | 
| org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(InputStream) does not properly consider encoding | 
| org.bukkit.map.MapPalette.matchColor(Color) Magic value | 
| org.bukkit.map.MapPalette.matchColor(int, int, int) Magic value | 
| org.bukkit.Server.matchPlayer(String) | 
| org.bukkit.Bukkit.matchPlayer(String) | 
| org.bukkit.block.NoteBlock.play(byte, byte) Magic value | 
| org.bukkit.entity.Player.playEffect(Location, Effect, int) Magic value | 
| org.bukkit.entity.Player.playNote(Location, byte, byte) Magic value | 
| org.bukkit.entity.Player.playSound(Location, String, float, float) Magic value | 
| org.bukkit.inventory.Inventory.remove(int) Magic value | 
| org.bukkit.inventory.ShapelessRecipe.removeIngredient(int, Material, int) Magic value | 
| org.bukkit.inventory.ShapelessRecipe.removeIngredient(Material, int) Magic value | 
| org.bukkit.scoreboard.Scoreboard.resetScores(OfflinePlayer) Scoreboards can contain entries that aren't players | 
| org.bukkit.scheduler.BukkitScheduler.scheduleAsyncDelayedTask(Plugin, Runnable) This name is misleading, as it does not schedule "a sync"
     task, but rather, "an async" task | 
| org.bukkit.scheduler.BukkitScheduler.scheduleAsyncDelayedTask(Plugin, Runnable, long) This name is misleading, as it does not schedule "a sync"
     task, but rather, "an async" task | 
| org.bukkit.scheduler.BukkitScheduler.scheduleAsyncRepeatingTask(Plugin, Runnable, long, long) This name is misleading, as it does not schedule "a sync"
     task, but rather, "an async" task | 
| org.bukkit.entity.Player.sendBlockChange(Location, int, byte) Magic value | 
| org.bukkit.entity.Player.sendBlockChange(Location, Material, byte) Magic value | 
| org.bukkit.entity.Player.sendChunkChange(Location, int, int, int, byte[]) Magic value | 
| org.bukkit.OfflinePlayer.setBanned(boolean) | 
| org.bukkit.block.CreatureSpawner.setCreatureType(CreatureType) | 
| org.bukkit.block.CreatureSpawner.setCreatureTypeId(String) | 
| org.bukkit.event.inventory.InventoryClickEvent.setCursor(ItemStack) This changes the ItemStack in their hand before any
     calculations are applied to the Inventory, which has a tendency to
     create inconsistencies between the Player and the server, and to
     make unexpected changes in the behavior of the clicked Inventory. | 
| org.bukkit.block.Block.setData(byte) Magic value | 
| org.bukkit.material.MaterialData.setData(byte) Magic value | 
| org.bukkit.block.Block.setData(byte, boolean) Magic value | 
| org.bukkit.material.Door.setFacingDirection(BlockFace) Does not work (correctly) anymore | 
| org.bukkit.event.player.PlayerCommandPreprocessEvent.setFormat(String) This method is provided for backward compatibility with no
     guarantee to the effect of modifying the format. | 
| org.bukkit.event.player.PlayerEggThrowEvent.setHatchType(CreatureType) | 
| org.bukkit.inventory.ShapedRecipe.setIngredient(char, Material, int) Magic value | 
| org.bukkit.inventory.FurnaceRecipe.setInput(Material, int) Magic value | 
| org.bukkit.material.Door.setOpen(boolean) Does not work (correctly) anymore | 
| org.bukkit.block.BlockState.setRawData(byte) Magic value | 
| org.bukkit.block.NoteBlock.setRawNote(byte) Magic value | 
| org.bukkit.map.MapCursor.setRawType(byte) Magic value | 
| org.bukkit.BlockChangeDelegate.setRawTypeId(int, int, int, int) Magic value | 
| org.bukkit.BlockChangeDelegate.setRawTypeIdAndData(int, int, int, int, int) Magic value | 
| org.bukkit.event.player.AsyncPlayerPreLoginEvent.setResult(PlayerPreLoginEvent.Result) | 
| org.bukkit.material.TexturedMaterial.setTextureIndex(int) Magic value | 
| org.bukkit.material.Step.setTextureIndex(int) Magic value | 
| org.bukkit.entity.Player.setTexturePack(String) | 
| org.bukkit.potion.Potion.setTier(Potion.Tier) | 
| org.bukkit.material.Door.setTopHalf(boolean) Shouldn't be used anymore | 
| org.bukkit.block.Block.setTypeId(int) Magic value | 
| org.bukkit.block.BlockState.setTypeId(int) Magic value | 
| org.bukkit.inventory.ItemStack.setTypeId(int) Magic value | 
| org.bukkit.block.Block.setTypeId(int, boolean) Magic value | 
| org.bukkit.BlockChangeDelegate.setTypeId(int, int, int, int) Magic value | 
| org.bukkit.block.Block.setTypeIdAndData(int, byte, boolean) Magic value | 
| org.bukkit.BlockChangeDelegate.setTypeIdAndData(int, int, int, int, int) Magic value | 
| org.bukkit.entity.LivingEntity.shootArrow() use launchProjectile(Arrow.class) instead | 
| org.bukkit.World.spawnCreature(Location, CreatureType) | 
| org.bukkit.World.spawnCreature(Location, EntityType) Has issues spawning non LivingEntities. Use spawnEntityinstead. | 
| org.bukkit.World.spawnFallingBlock(Location, int, byte) Magic value | 
| org.bukkit.World.spawnFallingBlock(Location, Material, byte) Magic value | 
| org.bukkit.command.Command.tabComplete(CommandSender, String[]) This method is not supported and returns null | 
| org.bukkit.entity.LivingEntity.throwEgg() use launchProjectile(Egg.class) instead | 
| org.bukkit.entity.LivingEntity.throwSnowball() use launchProjectile(Snowball.class) instead | 
| org.bukkit.potion.Potion.toDamageValue() Magic value | 
| org.bukkit.entity.CreatureType.toEntityType() | 
| org.bukkit.entity.Player.updateInventory() This method should not be relied upon as it is a temporary
     work-around for a larger, more complicated issue. | 
| org.bukkit.map.MapView.Scale.valueOf(byte) Magic value |