- 1.16 support
- fix noteheard (thanks @Naomi-alt)
- better typedef (thanks @Konstantin)
- fix off by 1 error in findBlocks (thanks @Karang)
- physics.js look fix (thanks @thesourceoferror)
- fix chat message bracketing (thanks @Nurutomo)
- use prismarine-physics
- Improve digTime computation (thanks @Karang)
- expose blockEntity.raw (thanks @SiebeDW)
- improve typedef for find block options (thanks @TheDudeFromCI)
- don't log errors if hideErrors is true
- add extra infos option in find block
- fix ground up for 1.13->1.15
- fix find block (thanks @Karang)
- improve sign parsing (thanks @cookiedragon234)
- much faster findBlock (thanks @Karang)
- fix bugs in lookAt and setQuickBarSlot
- add auto_totem example (thanks @AlexProgrammerDE)
- improve blockAt speed
- physics engine refactor (thanks @Karang)
- mcdata update for better 1.14 and 1.15 support
- use protodef compiler (thanks @Karang)
- off-hand support (thanks @Karang)
- fix type definitions (thanks @dada513)
- fix transfer bugs (thanks @Karang)
- add typescript definitions (thanks @IdanHo)
- fix openVillager
- 1.15 support
- russian translation (thanks @shketov)
- 1.14 support : more tests, refactored pwindows, feature flags (thanks @Karang)
- Look at the center of the face when placing block
- improve bot.sleep : don't sleep if mob are present (thanks @ImHarvol)
- 1.13 support (thanks @Karang, @hornta, @SiebeDW)
- better fishing support (thanks @hutu13879513663)
- Expose columns & blockEntities (thanks @SiebeDW)
- Create discord.js (thanks @SiebeDW)
- change amount of slots based on version (thanks @IdanHo)
- Fix 'respawn' event (thanks @ImHarvol)
- Add callback to creative set block (thanks @wvffle)
Lot of fixes from @wvffle in this release :
- more checks when digging
- expose a bot.swingArgm() function
- better toString to chat message
- fix handling of empty signs
- correct handling of entity metadata change And some others :
- new tps plugin by @SiebeDW
- correct handling of chunk unloading by @IdanHo
- fix logErrors option
- fix logErrors
- enable catching and logging of errors by default
- fix typo in variable name actionId
- improve pushback (thanks @Vap0r1ze)
- more robust handling of tablist (thanks @wvffle)
- ignore (with a warning) transaction without previous click
- improve boss bar
- add checks in scoreboard implementation
- add universal chat patterns to support more chat plugins
- fix error on scoreboard removal
lot of new features from @wvffle :
- support for block entities
- improved block bars support
- add block in sight
- fix scoreboard support
- add eating support
- add tab complete support
- add fishing support
- better sign text support
- repl example
- improve basic find block a bit
- start the bot alive in all cases
- correct run speed and use it to limit the speed properly (thanks @CheezBarger)
- emit error instead of throwing when loading a chunk (thanks @ArcticZeroo)
- use docsify for docs
- don't do anything if transaction.action < 0 (fix for some non-vanilla plugins)
- include fixes from pchunk, protodef and mcdata
- fix cannot jump repeatedly
- fix spaces in chatmessage (thanks @Gjum)
- add bot.getControlStates (thanks @ArcticZeroo)
- Support end dimension (thanks @iRath96)
- Added sneaking option to controll states (thanks @Meldiron)
- add title event (thanks @yario-o)
- Update sound.js to include hardcoded sound effects (thanks @jeresuikkila)
- Support for the new launcher_profiles.json format (thanks @Amezylst)
- update api about checkTimeoutInterval
- fix chatmessage
- add plugins to bot options to be able to disable an internal plugin
- improve ChatMessage translation functionality (thanks @plexigras)
- added eslint
- es6
- fix autoversion in online mode
- don't swing arm when activating an entity
- new plugin loading api
- better 1.12 support
- auto version detection (thanks @plexigras)
- support version 1.12 (thanks @jonathanperret)
- add example to use minecraft session file for auth (thanks @plexigras)
- added book writing plugin (thanks @plexigras)
- Make sure bot.time.day is between 0 and 24000 (thanks @roblabla)
- Pass skyLightSent to Chunk.load (thanks @iRath96)
- use protodef aliases to properly define channels
- add bot.canSeeBlock (thanks @Nixes)
- handle unknown entities and entities sent with their internal id
- add bloodhound to plugin list
- fix chat hoverEvent for 1.9
- added support for minecraft chests (thanks @plexigras)
- cross version support : 1.8, 1.9, 1.10 and 1.11 now supported
- [BREAKING] prismarine classes (Block, Entity, Recipe, ...) are now available only by requiring them, not in mineflayer.X. It was required to make cross version possible. minecraft-data is also to be required directly and not available as mineflayer.blocks. The code depending on this should be updated, hence the major version.
- add actionBar event (thanks @ArcticZeroo)
- added support for villager trading (thanks @plexigras)
- bump dependencies
- update minecraft-data
- add callback to activateBlock
- update dependencies
- update minecraft-protocol, minecraft-data and protodef
- listen for disconnect in login phase (thanks @deathcap)
- fix multi_block_change (thanks @Corgano)
- remove chat filter : fix utf8 in chat
- add extra tolerance for malformed sign packets (thanks @G07cha)
- adapt to new minecraft data entities format
- update minecraft-protocol to 0.17.2
- add functionalities to use scoreboard (thanks @jakibaki)
- update to minecraft-data 0.16.3
- 50 -> 20 tps for physics
- Remove requireindex, for browserify support
- add bot.setCommandBlock
- fix entity_status
- use prismarine-recipe and prismarine-windows
- use require-self to be able to do require('mineflayer') in the examples
- fix viewDistance sending
- add checkTimeoutInterval to createBot
- fix achievements parsing in toString()
- update to nmp 0.16
- use prismarine-item
- add example to run multiple bots
- uuid is now a dashed string
- remove digging interruption : this doesn't happen in 1.8 servers (and caused problem in some spigot servers)
- improve placeBlock : now use lookAt before placing and has a callback
- fix soulsand speed
- use new multi-version version of (node-)minecraft-data
- swing arm on placing a block, look at center of block when activating a block (thanks gipsy-king)
- refactor examples (thanks Pietro210)
- add clickWindow support to ContainerWindow (thanks Gnomesley)
- fix skylight in the nether
- update node-mojangson to display unparsed text in case of error
- Prevent crash when an unknown entity is spawned
- add createBot to api.md
- update minecraft-protocol to 0.14.0 : several fixes (error are now catchable, packets are in-order, packets fixes, etc.)
- add ContainerWindow to support non-Vanilla plugins and add /invsee example (thanks Pietro210)
- add a callback to bot.look and bot.lookAt
- when receiving a remove effect packet : if the corresponding effect doesn't exist yet, emit an event with just the id of the effect (thanks Pietro210)
- swing arm immediately when digging (thanks gipsy-king)
- now updates bot.entity.heldItem when bot.heldItem is updated
- fix cli args in examples
- add forcedMove event
- fix equipment api
- new minecraft data version : better metadata handling
- a small fix in chat.js
- add a licence file
- bot.transfer is faster
- fix arm_animation
- using mojangson parser for chat hoverevent
- add chat patterns for unidentified chat messages
- fix player leaving
Lot of fixes and improvements in this version in order to support mineflayer 1.8.3, including :
- minecraft 1.8.3 support
- update minecraft protocol to 0.13.4
- move enums data to minecraft-data
- add automatic testing with a vanilla minecraft server on circle ci
- add argv arguments to examples
- refactor inventory.js
- use new recipe format handling metadata better
- fix lot of things to support 1.8.3 including :
- block format change
- position change : y is now always at the feet of the bot
- updated minecraft protocol to 0.11 (Minecraft 1.6.2 support).
- small changes in the arguments of some events:
chat
,whisper
andmessage
. See doc/api.md.
- updated minecraft protocol to 0.10 (Minecraft 1.5.2 support).
Huge thanks to zuazo for debugging and eliminating the problems with 1.5.1 protocol update and node 0.10 update!
- update minecraft-protocol to 0.9.0 - includes many fixes
- blocks: fix buffer length assertion error (thanks zuazo)
- physics: fix assertion error (thanks zuazo)
- inventory: window clicking waits a bit if you have just dug fixes a rejected transaction race condition.
- inventory: equipping makes the quick bar a basic LRU cache. This can alleviate some race conditions when trying to equip a different tool immediately after digging.
- crafting: fix shapeless recipe support
- inventory: fix several instances which could cause transaction rejected
- add missing recipes (thanks rom1504)
recipe.delta
data structure changed.
- digging: fix crash when not holding a tool
- only stationary water has a negative effect on digging
- digging: if you dig while already digging, instead of crashing, mineflayer will cancel the in progress dig and start the new one.
- digging: in creative mode dig time is 0
- digging interruption error has a code so you can check for it
- expose the materials enum as
mineflayer.materials
- digging is faster and has less bugs
- you can stop digging with
bot.stopDigging()
. bot.dig(block, [timeout], [callback])
changed tobot.dig(block, [callback])
.- add
bot.digTime(block)
- add
block.material
- add
block.harvestTools
- add
window.emptySlotCount()
- block and item enums are cleaned up. Every block and item has an
unambiguous
name
anddisplayName
.
- add missing recipe for wooden planks
- fix various crafting and inventory bugs
- unequip works with hand as a destination
- add
mineflayer.Location
which can help you locate chunk boundaries entity.metadata
is formatted as an object instead of an array for easier accesscanDigBlock
returnsfalse
ifblock
isnull
instead of crashing.
- fix
bot.heldItem
being wrong sometimes - water and lava are not solid
bot.equip
- wait at least a tick before calling callback
- fix digging leaves not calling callback.
- add enchantment table support. See
examples/chest.js
for an example. - rename
bot.tell
tobot.whisper
to be consistent with 'whisper' event. (thanks Darthfett)
- update vec3 to 0.1.3
- add "whisper" chat event
This release is feature-complete with the old C++/Qt based version of mineflayer.
- add
bot.activateItem()
- add
bot.deactivateItem()
- add
bot.useOn(targetEntity)
- add dispenser support
- add
mineflayer.Dispenser
- add
bot.openDispenser(dispenserBlock)
- add
- add furnace support
- add
mineflayer.Furnace
- add
bot.openFurnace(furnaceBlock)
- add
mineflayer.Chest
: "update" event renamed to "updateSlot"bot.equip(itemType, destination, [callback])
changed tobot.equip(item, destination, [callback])
. Usebot.inventory.items()
to get a list of what items you can choose from to equip.- fix
bot.openChest
not working for ender chests - fix incorrectly scaled fuel percentage
- upgrade to minecraft-protocol 0.7.0
mineflayer.createBot
no longer takes aemail
argument.- The
username
andpassword
arguments are used to authenticate with the official minecraft servers and determine the case-correct username. If you have migrated your user account to a mojang login,username
looks like an email address. - If you leave out the
password
argument,username
is used to connect directly to the server. In this case you will get kicked if the server is in online mode.
- fix crash for some block updates
recalled
- add chest support
- add
mineflayer.Chest
- add
bot.openChest(chestBlock)
- add
block.meta
renamed toblock.metadata
item.meta
renamed toitem.metadata
- fix crash when player causes entityGone message
- update to minecraft-protocol 0.6.6
- fix
bot.sleep
not working at all - add
bot.isSleeping
- add "sleep" event
- add "wake" event
bot.sleep(bedPoint)
changed tobot.sleep(bedBlock)
- fix
mineflayer.Recipe
not exposed
- add crafting support
- add
mineflayer.windows
- add
mineflayer.Recipe
bot.inventory
is now an instance ofInventoryWindow
bot.inventory.count
is no longer a map of id to count.Window
instances have acount(itemType, [metadata])
method.bot.inventory.quickBarSlot
moved tobot.quickBarSlot
.- add
'windowOpen' (window)
event - add
'windowClose' (window)
event - add
bot.craft(recipe, count, craftingTable, [callback])
- add
bot.recipesFor(itemType, metadata, minResultCount, craftingTable)
- add
block.pos
renamed toblock.position
.'blockUpdate' (point)
event signature changed to'blockUpdate' (oldBlock, newBlock)
'blockUpdate:(x, y, z)'
event signature changed to'blockUpdate:(x, y, z)' (oldBlock, newBlock)
- add
'diggingAborted' (block)
event - add
bot.unequip(destination, [callback])
- add
bot.toss(itemType, metadata, count, [callback])
bot.startDigging(block)
changed tobot.dig(block, [timeout], [callback])
.- add
bot.activateBlock(block)
- fix
bot.equip
when already equipping the item - fix some incorrect block physics
- add
mineflayer.recipes
enum - fix crash when digging at a high elevation
- add inventory support
- add
Item
class which is exposed onmineflayer
- add
bot.inventory
(see docs for more details) - add
bot.equip(itemType, destination, [callback])
- add
bot.tossStack(item, [callback])
- add
- add digging support
- add
bot.startDigging(block)
- add
bot.canDigBlock(block)
- add
- blocks: add
blockUpdate:(x, y, z)
event. - add building support
- add
bot.placeBlock(referenceBlock, faceVector)
- add
- add
block.painting
- add
Painting
class which is exposed onmineflayer
- add experience orb support
entity.type
can beorb
nowentity.count
is how much experience you get for collecting it
- physics: skip frames instead of glitching out
- default bot name to Player -
createBot
can take no arguments now.
- physics: fix bug: walking too slowly on Z axis
- ability to sprint (thanks ruan942)
- fix color code stripping (thanks rom1504)
- event "onNonSpokenChat" deleted
- new event "message" which fires for all messages
bot.chat
no longer checks for "/tell" at the beginning- add
bot.tell(username, message)
method - fix crash when an entity effect occurs
- chat: no longer suppress "chat" events for your own chat (thanks Darthfett).
- ability to mount / dismount vehicles and attack
- physics: fix tall grass and dead bushes treated as solid
- fix "respawn" event firing twice sometimes
- remove
bot.spawn()
andautoSpawn
option. auto spawn is now mandatory. - fix sending spawn packet twice on init
- fix bots spawning with their heads on backwards
- fix bots jumping when they get hit
- update player heights when they crouch
- add support for signs:
block.signText
andbot.updateSign(block, text)
- add
bot.time.day
andbot.time.age
and "time" event - add
bot.entities
which is a map of the entities around you - add
bot.look(yaw, pitch, force)
andbot.lookAt(point, force)
- add a physics engine which understands gravity
- add jumper example, jumps whenever you chat
- add
respawn
event which fires when you die or change dimensions - Block instances have a
boundingBox
property, which is currently eithersolid
orempty
. - fix
game
event to fire correctly bot.game.spawnPoint
moved tobot.spawnPoint
.bot.game.players
moved tobot.players
.bot.quit
has a default reason of "disconnect.quitting" (thanks Darthfett)
- unload chunks when changing dimensions
- blocks: handle all forms of block changing so that
blockAt
is always accurate.
- expose Block, Biome, and Entity
- add
bot.blockAt(point)
which returns aBlock
- add
mineflayer.blocks
,mineflayer.biomes
, andmineflayer.items
- add bot
chunk
event - fix
spawn
event andsettings.showCape
- added chatterbox example
- changed
entityDetach
event to have a vehicle argument - changed
entityEffectEnd
event to have an effect argument instead ofeffectId
- fix prefixes in pseudos in chat. (thanks rom1504)
- update vec3 to 0.1.0 which uses euclidean modulus
- add bot.game.spawnPoint
- add spawn support
- add rain support
- add support for getting kicked
- add settings support
- add experience support
- add bed support
- health status knowledge
- add entity tracking API