drdoogie.rb - Vote Trail Bot Update
Fixes
- Added exponential back-off for errors.
- When handling blocks in mode:
head
, just retrying without reporting an error.
New Features
global
mode
head
- the last blockirreversible
- (default) the block that is confirmed by 2/3 of all block producers and is thus irreversible!
Features
- YAML config.
scale_votes
- scale votes in %max_age
- only vote if the post is under this number in minutesallow_upvote
- trail upvotesallow_downvote
- trail downvotesenable_comments
- vote for commentsskip_tags
- do not vote if the post contains any of these tagsonly_tags
- only vote if the post includes at least one of these tags
Overview
Dr. Doogie (drdoogie.rb
) is a voting bot that will trail the votes of other accounts in order to then mirror their voting pattern.
Install
To use this Radiator script:
Linux
$ sudo apt-get install ruby-full git openssl libssl1.0.0 libssl-dev
$ gem install bundler
macOS
$ gem install bundler
I've tested it on various versions of ruby. The oldest one I got it to work was:
ruby 2.0.0p645 (2015-04-13 revision 50299) [x86_64-darwin14.4.0]
First, clone this gist and install the dependencies:
$ git clone https://gist.github.com/d57c9bc744f05ada01d173521c01df8a.git drdoogie
$ cd drdoogie
$ bundle install
Then run it:
$ ruby drdoogie.rb
Check here to see an updated version of this script:
https://gist.github.com/inertia186/d57c9bc744f05ada01d173521c01df8a
Upgrade
Typically, you can upgrade to the latest version by this command, from the original directory you cloned into:
$ git pull
Usually, this works fine as long as you haven't modified anything. If you get an error, try this:
$ git stash --all
$ git pull --rebase
$ git stash pop
If you're still having problems, I suggest starting a new clone.
Troubleshooting
Problem: What does this error mean?
drdoogie.yml:1: syntax error, unexpected ':', expecting end-of-input
Solution: You ran ruby drdoogie.yml
but you should run ruby drdoogie.rb
.
Problem: Everything looks ok, but every time drdoogie tries to post, I get this error:
`from_base58': Invalid version (RuntimeError)
Solution: You're trying to vote with an invalid key.
Make sure the .yml
file voters
item have the correct account name and WIF posting key.
Problem: The node I'm using is down.
Is there a list of nodes?
Solution: Yes, special thanks to @ripplerm.
https://ripplerm.github.io/steem-servers/
See my previous Ruby How To posts in: #radiator #ruby
Get in touch!
If you're using drdoogie, I'd love to hear from you. Drop me a line and tell me what you think! I'm @inertia on STEEM and SteemSpeak.
License
I don't believe in intellectual "property". If you do, consider drdoogie as licensed under a Creative Commons License.
Hello @inertia! Thank you for updating this amazing tool! Is skiplist still on the todo? ;-)
Thanks. Yep, it's still on the todo list.
Interesting tool, really functional idea.
This really works, you are awesome, thank you.
Hi, inertia.
Is there any version for window?
Seem only Linux and MaxOS version availabile.
There's no reason that it won't work on Windows, as long as you can install
ruby
. I'm still researching a simplified tutorial, but I did find this:https://putshello.wordpress.com/2014/08/03/installing-ruby-for-windows-the-right-way/
running drdoogie last night and got this error when it came time to vote
{:error_perser_exception=>#<NoMethodError: undefined method `[]' for nil:NilClass>, :original_response=>{"jsonrpc"=>"2.0", "error"=>{"code"=>-32003, "message"=>"Unable to acquire database lock"}, "id"=>280}}
Also with the max-age of the post, isnt it best to set it between 30-60 to maximize profits on the upvote .. I'm just a plankton but I notice some accounts like @steiller seem to be using a curation trail bot and making consistent SP ...