Alright apes, let's try and break down the bot's strategy. After all, they are sure as hell not investing in bots with no plan on how to use them.
Step 1. Figure Out Upvote/Downvote Ratio
I made a post a few days ago and wanted to observe how many upvotes and downvotes it got. I sadly fell asleep early (I'm an Australian ape), but I woke up and ran a script that scraped the upvote counter every 30 seconds. The base upvotes I started at was 596.
The first chart shows that every 30 seconds the upvote counter wildly bounces from 5 upvotes on top of the base number above to 5 downvotes, such that when aggregated in the second chart - it's essentially breakeven after 3 hours of scraping votes. This shows how active bots are on this subreddit. It's also interesting that they've kept it at that particular volume (feel free to speculate on why). I've had sources say fluctuations happen to prevent bots from knowing whether their votes are working, however, this can still be abused in the short term.
Right axis = Red line = Upvotes
Left axis = Blue line = Difference in interval upvotes
Step 2. Simulate "Hot" Ranking Algorithm
You might not know, but the co-founder of Reddit Aaron Swartz was an avid champion of open source. As such Reddit's code is open source. So that means based on the version available we're able to replicate the "Hot" ranking algorithm (algo).
I'll save the specifics, but the most interesting part about the ranking algo:
It uses a logarithm function to weight the first votes higher than the following votes
E.g. the first 10 upvotes have the same weight as the next 100 upvotes
Submission time has a large impact on ranking, newer will rank higher than older
The score does not decrease as time goes by, but newer stories will get a higher score than older stories
Let's visualise this as we're able to simulate it.
In the chart below, we're calculating the "Hot" score based on upvotes only. As we can see, it follows the logarithm function and acts as a "Normalizer" of upvotes when it comes to ranking, so those posts with <500 upvotes don't get blown out of the water by posts with thousands.
Take note of the highlighted axis values, there is not much difference due to this!
Let's start simulating our beloved bots which boost our FUD confidence! Below is a chart simulating different downvote volumes, keeping upvotes the same. Obviously, the ranking score will decrease (controversial ranking) - but you'll notice you don't really get much bang for your buck when it comes to downvotes. It's harder for the developers handling the bot accounts to spin up hundreds of thousands of bots to downvote our posts to hell and what we see here is the reward they get for increasing downvotes does not scale due to the magic of the logarithm yet again.
Last piece of the puzzle now. SUBMISSION TIME. As stated above, posts do not get a lower score as time goes by, but rather newer submissions get ranked higher instead. Now, what conclusions can we draw here?
Time is a better investment than the number of downvotes.
With minimal effort, time suppresses the hot score much much much more efficiently than any number of downvotes we can generate due to the logarithm applied to up/downvotes.
Step 3. Putting It All Together
Alright, so let's put this into the situation we're currently tackling, which is bots infesting this subreddit. I'm using my own post as an example here as I believe it would have gone into the thousands if not suppressed by downvotes and the chart below is an example.
The left two bars are simulations of my post. The difference is one was submitted now and the other 2 days ago. I've then created a real-life scenario based on the current top posts and their upvotes and estimated downvotes (gut feel, but it matches up with their real-life ranking, it's actually possible to calculate downvotes based on the formula I have - but I'm lazy).
What this shows is, they are trying to suppress good DD posts that pop up and don't gain instant traction from the likes of u/rensole and u/HeyItsPixeL until time decay kicks in, in which they can start to chill out and not worry anymore.
They then fill up the top spots on the hot sort by upvoting:
Their own FUD posts
Our own hype posts
This means that they are using our own posts against us. They are suppressing DD by the lesser-known posters who do not have a following (the majority of DD posters) that could otherwise inform us of what's going on.
Now we've seen people say stop upvoting posts because this is what's happening. They are on the money and they deserve extra tendies for guessing this without spending hours looking through Reddits' source code.
However, this is not a real solution. We're getting our DD suppressed which is truly valuable to us apes.
Below we can see a chart that shows two scenarios, upvotes with no downvotes and the converse to that. What we can observe is that the number of downvotes being the same as upvotes cancels out the effect of upvotes.
So the solution to our problem is:
Reduce the frequency of hype posts
Reduce the frequency of empty value posts
Upvote quality DD in "New" ranking
There is certainly a threshold to get into hot so more people can read the posts, but we need to stop posting so many hype and empty value posts so quality DD can get through. This in itself gives us the hype and rocket fuel for the brain we need.
TLDR; Stop posting hype/empty value posts as it gives bots a chance to suppress quality DD which really can inform us apes of what's going on.