scrobble.life
#hivedevs

Open Sourcing Goodvoter - My Old Vote Trail Following Bot

What is it?

This is a vote trail following bot that allows you to specify multiple accounts to follow the votes of, the weight used to follow that account, and a target amount of voting mana to try to keep your account at. Because of the target voting mana level you are free to continue to manually upvote things and the bot will automatically adjust.

It is written in NodeJS using the hive-js library and runs in a docker container. It only makes a call every 3 seconds to not overwhelm nodes with more calls than necessary. It simply gets the current irreversible head block number, fetches the latest block, parses it for transactions performed by the accounts specified in the config file, looks for vote operations, then adjusts the weight of the vote as necessary based on both the specified percentage and your currently available voting mana and target.

goodvoter-screenshot.png

Why now?

I wrote this years ago for Steem and eventually made the minimal changes to make it work on Hive. I figured some of you might be able to make use of it so open sourcing it is better than letting it rot away. Aspiring newbie Hive app developers may be able to learn from it and use it.

Are voting bots ethical? Why would you use this?

Personally I don't have time to regularly curate content but I do keep some Hive powered up in my account. Rather then let that HP go to waste I'd prefer to follow the votes of accounts that I "trust" to be voting on good content. I wasn't using my HP for a quite a long time but I had some spare time one day and figured I'd dust this off in hopes that my HP goes to good use.

goodvoter config.png

As you can see in the config file, I've currently chosen three accounts to follow with equal weight (33% of my votes each). One I chose is @ocdb because that always seemed like a good curation project and @acidyo always seemed like a cool person. The next is @curangel because that also always seemed like a good curation project. Lastly I chose @gtg because I trust his judgment in securing the network and also voting for things that are best for Hive (looks like lately he's mostly voting on @hbdstabilizer posts which is clearly a good thing for keeping HBD stable). By default it does not follow downvotes as I'd prefer to do that type of curation manually.

Does this maximize my curration rewards?

No, this is not designed for "maximum profits" or anything like that as that is not my goal here. My goal is simply to use my available HP in the best way that I can even if I don't have time to do it myself. I don't even want to get into theorizing about how to improve it to be honest. I simply do not care about this topic.

Are there bugs? Is it perfect?

This is not really production quality software and likely has bugs yes - especially the lack of error handling in some cases. I hacked this together for my own purposes and it is not perfect in any way. However, I will say that I've run this for months on end without it crashing or having any apparent issues. I have not taken a close look at the logs nor will I spend the time to do so.

If anyone wants to make a pull request to improve on this I will be happy to take a look when I have time.

Where can I find it?

It's on github right here: https://github.com/jredbeard/goodvoter

I no longer think that github is a great place to host your open source software and it's better to run your own instance of Gitea but I won't be hosting one just to publish this simple project, so, it is what it is.

Anyway, I hope this helps someone out! Enjoy!

Comments · 15

  • @kozgamer(60)· 448d

    awesome the trial

  • @promete0sz(75)· 1320d

    hello am reading this and it was very helphfully for me because i try to find post to create a trail with my friends and your post is the only one that could guide me. Am very new here and learning all i can, thanks for the great content because i was a few step to surrender in my search :D . Now i have a question, i copy this but where i paste this? i dont know too much about programs, i hope i do a good question 😅

  • @hivebuzz(74)· 1444d

    Dear @justinw, we need your help!

    The Hivebuzz proposal already got important support from the community. However, it lost its funding a few days ago and only needs a bit more support to get funded again.

    May we ask you to support it so our team can continue its work?
    You can do it on Peakd, ecency, Hive.blog or using HiveSigner.
    https://peakd.com/me/proposals/199

    Your support will be really appreciated.
    Thank you!

  • @m31(74)· 1463d

    On the behalf of Curangel team thank you for the support to the project @justinw! I am sure a bunch of hivers will find this useful! :)

    And so cool about Koinos too, I am still keeping what I managed to mine and bought on uniswap.

  • @cowboyzlegend27(73)· 1463d

    Once I have enough Hive power I plan to utilize this great tool!

  • @diyhub(76)· 1464d
    Thank you for sharing this amazing post on HIVE!
    • Your content got selected by our fellow curator @priyanarc & you just received a little thank you via an upvote from our non-profit curation initiative!

    • You will be featured in one of our recurring curation compilations and on our pinterest boards! Both are aiming to offer you a stage to widen your audience within and outside of the DIY scene of hive.

    Join the official DIYHub community on HIVE and show us more of your amazing work and feel free to connect with us and other DIYers via our discord server: https://discord.gg/mY5uCfQ !

    If you want to support our goal to motivate other DIY/art/music/homesteading/... creators just delegate to us and earn 100% of your curation rewards!

    Stay creative & hive on!
  • @finguru(74)· 1464d

    Last night I published a blog - Learn "Coding" To Have Unfair Advantage On Hive. xD

    This bot is the reason why it makes sense.

  • @bigtakosensei(68)· 1464d

    Thanks for sharing this. I’ve been needing to find a voting trail for a while now. I hate seeing my voting power at 100%. It slows my HP growth so much… ugh

  • @kahkashan(67)· 1464d

    Thank you for open sourcing it , will gonna check the code out.

  • @oneazania(57)· 1464d

    Great! Profit from holding a great deal of tokens while new fish ensure there is a platform at all. What could go wrong.

  • @pajeroz(57)· 1464d

    as a newcomer i have to understand about stuff like this, it's important for development when in hive. thanks for the useful article for a newborn.

  • @hivebuzz(74)· 1464d

    Congratulations @justinw! You have completed the following achievement on the Hive blockchain and have been rewarded with new badge(s):

    You distributed more than 52000 upvotes.
    Your next target is to reach 53000 upvotes.
    You received more than 2750 upvotes.
    Your next target is to reach 3000 upvotes.

    You can view your badges on your board and compare yourself to others in the Ranking If you no longer want to receive notifications, reply to this comment with the word STOP

    To support your work, I also upvoted your post!

    Support the HiveBuzz project. Vote for our proposal!
  • @manniman(69)· 1464d

    uhh juicy

  • @acidyo(84)· 1464d

    Any chance you could have it not trail comment votes? While it's appreciated to give out a bit more there too it might look a bit weird with there being 5-10 voters on comments but nothing on the rest in a post. Just something I've noticed on the ocdb votes we some times throw towards great comments that our curators nominate or great poshtoken shares.

    Btw, check out the Programming & dev community or Hivedevs communities in the future for possibly more visibility, but nice to see you posting :)

  • @poshtoken(88)· 1464d
    The rewards earned on this comment will go directly to the people( @claudio83 ) sharing the post on Twitter as long as they are registered with @poshtoken. Sign up at https://hiveposh.com.