Git Product home page Git Product logo

helperbot's People

Contributors

andrewrk avatar darthfett avatar perryprog avatar thejoshwolfe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

helperbot's Issues

finder: look at the closest result

It's always nice when the bot looks at the result of find, that way if you're lazy you don't have to do math or even check F3 to see where the bot is talking about, you can just go where it's looking

List command should group items of same item/block id

<Darthfett> list
<helperbot> Stone Shovel x 1, Stone Pickaxe x 1, Stone Pickaxe x 1, Stone Pickaxe x 1, Stone Pickaxe x 1, Stone
<helperbot> Pickaxe x 1, Stone Pickaxe x 1, Stone Pickaxe x 1, Stone Pickaxe x 1, Stone Pickaxe x 1, Gravel x 64
<helperbot> , Cobblestone x 27, Dirt x 33, Cobblestone x 49, Gravel x 10

He should just say 'Stone Pickaxe x 9', and 'Gravel x 74'.

Finder is off

The find command causes the bot to often give the wrong location of the block (off by one usually).

Strip command crashes

Whenever the bot gets interrupted during strip mining, such as by running out of the required tool or having a problem equipping/digging, when he is told to strip again (after fixing the problem), without telling him to strip.stop, he will crash after mining 1 block.

ability to set master(s)

I should be able to set a command line argument which sets the bot to only obey a certain username or set of usernames.

maybe --master <username> and you could use the parameter multiple times to have multiple masters.

Once logged in, masters should be able to add or remove masters, much like server ops can add or remove ops.

windows.InventoryWindow is not a constructor

Gives me this error while executing node helpebot.js <serverip>
` bot.inventory = new windows.InventoryWindow(0, "Inventory", 44);
^

TypeError: windows.InventoryWindow is not a constructor`

put blockFinder in an other project

I'd like to use your findBlock function in my bot (https://github.com/rom1504/rbot) but i feel just copying your file into my project isn't the right way, because if you change something i have to change it,...
So it would be nice to put blockFinder in a separate github project and to npm publish it, so i can just do npm install blockFinder and use it in my project.

Add a liscense?

There is no liscense on this code, It would be reasurring to have one on this repo, even something in the readme that says "we dont want you doing anything with this code" would be nice.

use items db from mineflayer

As of 0.0.3, mineflayer comes bundled with a list of items. You should probably use that so that when minecraft updates all you have to do is update your mineflayer dependency.

"stop" should stop everything

instead of having follow.stop mine.stop strip.stop etc. every plugin should listen to stop and respond appropriately.

Strip command should do a zig-zag pattern

Currently the bot wastes time moving back to the west end of the chunk every time he finishes mining a row of blocks. He should instead mine in a zig-zag pattern to save walking time.

update to new minecraft-protocol API

createClient: don't require both email and username.
The username and password 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.

Add help command

Add a help command. This should be implemented on chatCommands, by looking up all available commands, and displaying information about the command. This extra information could be added as an optional parameter when registering a command.

block finder: respect the event loop

there should be a variable called something like MAX_CPU_TIME and when it has spent that much time looking, it stops searching and uses process.nextTick to resume where it left off.

this would make findBlock callback-based instead of returning the result.

this way the bot does not quit due to a timeout error if searching is taking a long time. it would also provide the ability to cancel an in-progress search.

miner: "Problem equipping stonebrick x 59"

I get this (in state walking) and get this in the console :
Error equipping: Error: Server rejected transaction.
at Bot. (/home/rom1504/test/helperbot/node_modules/mineflayer/lib/plugins/inventory.js:757:12)
at Bot.g (events.js:192:14)
at Bot.EventEmitter.emit (events.js:96:17)
at onRejected (/home/rom1504/test/helperbot/node_modules/mineflayer/lib/plugins/inventory.js:726:11)
at confirmTransaction (/home/rom1504/test/helperbot/node_modules/mineflayer/lib/plugins/inventory.js:709:7)
at Client. (/home/rom1504/test/helperbot/node_modules/mineflayer/lib/plugins/inventory.js:851:5)
at Client.EventEmitter.emit (events.js:96:17)
at Socket.Client.setSocket.ended (/home/rom1504/test/helperbot/node_modules/mineflayer/node_modules/minecraft-protocol/lib/client.js:39:12)
at Socket.EventEmitter.emit (events.js:96:17)
at TCP.onread (net.js:397:14)

ability to tell a specific bot to do something

2013-02-08 20:16:32 <myLongshanks> mine i o Gon
2013-02-08 20:16:32 <Rin> Unknown block: i o Gon
2013-02-08 20:16:32 <Gon> Unknown block: i o Gon
2013-02-08 20:16:32 <Killua> Unknown block: i o Gon

there should be a way to do what she is trying to do, and it should be documented in the README

strip: Error breaking block starts occuring every time the bot switches tools

After some time of strip mining, the bot will encounter an "Error breaking block". When I tell him to strip again, he will continue mining until he needs to switch tools again, and repeat the same error. This continues until the bot is restarted, at which point he will throw the tool he was attempting to equip for the next block on the ground.

I think this may be a bug with the inventory/equipping.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.