AssHunter.js v0.0.1 Released - Open Sourced STEEM Self Defense / Anti-Asshole Bot!

in steem •  2 years ago

It wasn't long ago the STEEM network was terrorized by a highly effective and somewhat devious brand of psychological warfare that came through in the form of the @asshole.

Basically, long story short the user responsible for the deployment of the asshole account had it set up to flag nearly every post for a bit before switching it to attack comment for a while... It wasn't good with some of our users comments hidden by these automated 1% flags..

( It goes on like this for likely thousands of flags - screencap from steemd.com/@asshole)

It Looked Like The Flags Would Never End..!

However the STEEM network happens to be inhabited by certain power users that double as super heros. The 3 gloriously esteemed users responsible for the initial defense / counter-attack on the @asshole account are listed below in bold for you to check out / follow:

@anyx

@timcliff

@pfunk

These users were able to deploy their own private counter measures and pool their resources to help unhide comments that had fallen prey to @asshole's deviant game of flag em' all.

While it's great that privately owned and run systems are in place protecting our network against potential outside enemies one must always find a way to protect themselves as well.

( 2 days before this post I declared war on @asshole )

Which is why I bring you this easy to use code for self defense on our STEEM network:

Asshunter.js v0.0.1 Source Code

//--------------------------------------------------------------------------
//----- AssHat Hunter v0.0.1 || Open Source Anti-Asshat Node.js Script -----
//----- Developed by @KLYE || Free to Use for All! || Free to Modify -------
//----- Rekuirements to run: Node.js + steem.js + node-datetime  -----------
//----- npm install steem --save  ||  npm install node-datetime --save -----
//--------------------------------------------------------------------------
//----- PLEASE DO NOT USE THIS CODE BELOW MALICIOUSLY / FOR EVIL DEEDS -----
//--------------------------------------------------------------------------


//----- CONFIG + Get Rekuirements 

// ***IMPORTANT*** Your Account Name Below (No @)
var hero = 'youraccount';

// ***IMPORTANT*** Your Posting Private Key Below
var herowifkey = '5P0St1nGpR1vK3ys7rz9zJzLGjgHn4aWX79MC6jh3y3W3DJk';

// ***IMPORTANT*** Enter Asshat's Account Below (No @)
var asshat = "asshatsaccount";

// No need to modify these variables
var steem = require('steem');
var dateTime = require('node-datetime');
var dt = dateTime.create();
var totalblocks = 0;
var totalvote = 0;
var totalcomment = 0;

//----- Script Started + Show Time
     var starttime = dt.format('Y-m-d H:M:S');
console.log("===================================================================");
console.log("-------------------------------------------------------------------");
console.log("AssHat Hunter v0.0.1 ONLINE - By @KLYE - Listening to STEEM Network");
console.log("-------------------------------------------------------------------");
console.log("===================================================================");
console.log("---------------- Start Time: " + starttime + " ------------------");
console.log("-------------------------------------------------------------------");
console.log(" ");

//----- Grab Current STEEM Block
steem.api.streamBlockNumber(function(err1, newestblock) {
    totalblocks++
    console.log("-------------------------------------------------------------------");
    console.log("Scanning STEEM Block #" + newestblock + " for Asshat Account @" + asshat);
    console.log("-------------------------------------------------------------------");
    console.log("Blocks Monitored this Session Against Asshats = " + totalblocks);
    console.log("Upvotes This Session Against Asshats = " + totalvote);
    console.log("Comments Flagged This Session Against Asshats = " + totalcomment);
    console.log(" ");
});

//NOTE: Sometimes the Script Fails to Hook Into STEEM. Try Running Script Again if it Fails!


//----- See if Vote is our Target Asshat ----
 var process_vote = function(op) {
      if (op["voter"] == asshat) {
        if(op["weight"] < 0 ){
          totalvote++
          console.log("-------------------------------------------------------------");
          console.log("----- ASSHAT FLAG DETECTED - Deploying Counter Upvote! ------");
          console.log("-------------------------------------------------------------");

          steem.broadcast.vote(
            herowifkey,
            hero,
            op["author"],
            op["permlink"],
            10000,
              function(uperr, result) {
              console.log(uperr, result);
              }
            );
        }
      }
  };
 
//----- See if Comment is our Target Asshat ---- 
 var process_comment = function(op) {
      if (op["author"] == asshat) {
        totalcomment++
        console.log("-------------------------------------------------------------");
        console.log("----- ASSHAT COMMENT DETECTED - Deploying Counter Flag! -----");
        console.log("-------------------------------------------------------------");

        steem.broadcast.vote(
            herowifkey,
            hero,
            op["author"],
            op["permlink"],
            -10000,
              function(downerr, result) {
              console.log(downerr, result);
              }
        );       
      }
  };

Requirements

You'll need a computer with a stable internet connection, node.js, steem.js(by @fabien) and node-datetime. All of these are relatively easy to find and set up for your slightly in the know modern computer user. If you don't have the technical knowledge to run this script on your own and would like it set up for you it can be arranged for a one time fee of 10.000 SBD which includes some free tech support help, other fees such as 3rd party monthly server subscriptions may apply. Contact me for details.

^ If it pulls this crap just try restarting the script.


Vote @klye for Witness!

https://steemit.com/~witnesses


A Proud STEEMbassador of Canada

Thank you for your votes, the opportunity and support!

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Good work, would you like to add it to the Steem-FOSSbot organisation on GitHub? Looks like a perfect fit for it. So far it's just me but I'd love to get other people involved and have Steem open source software in one place.

·

Sure man! I didn't realize this was a thing!

·
·

dude, thank you so much!

·
·
·

No problem sir. Use it for good not evil. :)

@asshole already self-destructed.

·

I'm aware of this. Was the one who first reported it seemingly.

This can be used against ANY account that is threatening the peace of the Network or it's users.. Its 'was' built to combat @asshole but can wait in my arsenal of STEEM scripts waiting till it's needed. :)

·
·

lol, why am I not surprised that YOU of all people would have an asshole-bot in your arsenal for future usage :D
I tried to combat him, ended up draining my vote-power down to the 30s :D

From Gun to Revolver - what do we do if there are 10 assholes or 100 assholes on steemit?

·
·
·

This is an "anti-asshole" bot. Although now that I've got an understanding of how to build defensive / offensive bots I may make myself a more powerful version and keep it out of the public eye. It's kind of terrifying the possibilities and I'd rather have a few cards up my sleeve so to speak in the event of another @asshole type account.

I didn't get a chance to deploy asshunter.js against @asshole as he retired just before I got it working.. Darn. Oh well, I'm sure some other account will pop up to cause terror and thus will be smoked by the now armed citizens of STEEM.

"what do we do if there are 10 assholes or 100 assholes on steemit?"

Band together as a community and use modified versions of this script to combat them. Simple really. No longer is STEEM network defense simply a game for coders.. Anyone can now deploy counter measures. :)

·
·

ha ha! great! Resteemed. Thanks for doing this.

·
·
·

Thank you very much, cheers lovely.

awesomeness

·

Thanks man. :)

Thoughts :

That code would upvote with 100% for a 1% downvote.
If you had tried hunting @asshole that way, you would have run out of VP quickly.

·

I'm aware of this... :)

·

Punch in your account, your posting private key and the target asshat then all their flags you upvote and all their comments you downvote. Easy as pie. :D

Thank you so much!!! Upvoted & resteemed!

·

You are welcome Rich. Hopefully you find it useful

Thanks!

·

No problem automaton!

heard he was powering down , so no more asshole trail of votes on comments :|, truly thought people would vote on comments more because of the bot :D , always thought he was cool , even when I had to drain my power to make posts visable :D

·

It can be used against any threat really. @asshole was just the reason I started the script. Even though the account is no longer valid I felt the need to finish this script in order to arm non-coder STEEM users to arm themselves if they or others are attacked.

·
·
·
·
·

seconding your yay, adding a hip hip hoorah!

·

That makes me smile every time I see it.

I like the name :D

·

Thank you sir. :P

This post has been ranked within the top 25 most undervalued posts in the second half of Feb 02. We estimate that this post is undervalued by $11.21 as compared to a scenario in which every voter had an equal say.

See the full rankings and details in The Daily Tribune: Feb 02 - Part II. You can also read about some of our methodology, data analysis and technical details in our initial post.

If you are the author and would prefer not to receive these comments, simply reply "Stop" to this comment.

GREAT JOB! thank you so very much for having such kind and helpful thoughts for us all. Maybe someone like me could eventually be able to apply the codes up above to make sure I wouldn't get attacked anymore, but we shall see!?!

Thanks again for sharing and namaste :)

·

No problem Eric. It's our right as STEEM users to be able to defend ourselves.; Hopefully with this tool users are able to fend off do-badder's in the future.

·
·

Can't agree more and surely look forward to see what is going to be up your sleeves as the so-called threats might diversify. All for one and one for all! Namaste :)

Well done and much appreciated!

@kus-knee (The Old Dog)

·

No Problem Old Dog. :D

Love the name of the script. 😆