gator.rb - STEEM Power Delegation script for STEEM
Overview
Gator allows you to delegate STEEM Power from one account to another. This script is especially useful for dealing with multiple delegator accounts, like mined accounts.
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/3107372d2a52fed7c8f1a2e943cf6300.git gator
$ cd gator
$ bundle install
Edit the file delegators.txt
and add all of the accounts you want to delegate from. You must use the active-wif.
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.
Usage
To do the actual delegation:
$ ruby gator.rb vesting_shares:42437.7 delegatee:inertia broadcast:true
Gator will now delegate 42437.700000 VESTS
to inertia
(for example).
To delegate a dynamic amount based on the current vesting balance of each delegator:
$ ruby gator.rb vesting_shares:auto delegatee:inertia broadcast:true
Gator will now delegate 100% of vesting - 1 STEEM
to inertia
. It is advisable to leave some VESTS on the account, otherwise it won't have enough bandwidth to do anything.
To reset delegation:
$ ruby gator.rb vesting_shares:0 delegatee:inertia broadcast:true
Gator will now remove all delegation for each delegator from inertia
. Keep in mind, when resetting delegation, any amount that was previously delegated will be in limbo and take 7 days to return to the original delegator.
Check here to see an updated version of this script:
https://gist.github.com/inertia186/3107372d2a52fed7c8f1a2e943cf6300
Troubleshooting
Problem: What does this error mean?
gator.yml:1: syntax error, unexpected ':', expecting end-of-input
Solution: You ran ruby gator.yml
but you should run ruby gator.rb
.
See my previous Ruby How To posts in: #radiator #ruby
Get in touch!
If you're using Gator, 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 Gator as licensed under a Creative Commons License.
this code looks great
for it to work I had to add gem "json" to Gemfile
I trying in not work, can you share how to add JSON to Gemfile?
So basically, if you have say ... 2000 accounts, you can with this script power down all those accounts to 1 account... Happy Birthday @noganoo :)
Are you even allowed to have 2000 accounts? I could see how having a separate account for a witness would make sense but why would anyone have 2000?
Yes, you are allowed to have as many accounts as you want. As for "why," you'll just have to ask them.
@noganoo will be very happy.
Yeah, hopefully this can be the end of his 2000 accounts reign of terror :X
That is good news for everyone. Good for him.
lol...
Actually my birthday is on the 30th.. But my dog's birthday is today! Happy early birthday to me then. Thanks @inertia!
This is what every decentralized whale needs. :-)
Thanks dude! I ain't run root for months now!! ... I've got meme-itis!
Good content for #steemdev https://steemit.com/trending/steemdev
Oh yeah. I keep forgetting.
Why not edit ?
always working on something aye
hello sir, im new into this, i can run this on windows?
Thank you for the valuable information!
thanks for sharing good information...^^