from Hacker News

How We Built r/Place (2017)

by mynameismon on 4/5/22, 1:05 PM with 98 comments

  • by blamazon on 4/5/22, 2:10 PM

    Highlight of /r/place this year for me was Canada narrative.

    Initially that community struggled to decide on cannabis leaf or maple leaf, just like 5 years ago, leading to inevitable griefing campaigns taking advantage of the internal volatility to successfully turn it into "Bananas" with a yellow flag and a banana in place of the leaf for a short time.

    But then the Canadians prevailed in the last hour, with Canada spelled correctly and the maple leaf and even all their provincial flags were added.

    At some point during the volatile Canadian flag period the Germans made a perfect maple leaf inside the German flag in about 3 minutes which was amusing.

    You can see the Canadian leaf was one of the most volatile map areas on this pixel volatility heatmap:

    https://mobile.twitter.com/Mehdi_Moussaid/status/15112531929...

  • by treesknees on 4/5/22, 2:24 PM

    I didn't care for /r/place this time around. It felt like a lazy and uninspired move by Reddit to just copy the exact same idea from 5 years ago. As pointless as their other events were, like /r/the_button, at least they were unique.

    Not only that, it spoiled the treasured memory and experience of 2017. This year was so full of hate and fighting over flags, stream raids, bot scripts floating around, none of it felt genuine except maybe people keeping up with the Ukraine flag on day 1. In 2017 it closed with me thinking Reddittors came together to make some cool art, this year it closed with me wondering whether any humans were involved by the end.

  • by unsupp0rted on 4/5/22, 2:03 PM

    I don't like /r/place - I spend time in several regional subreddits, and they've transferred their nationalistic identity wars to Reddit. They're constantly fighting to build and rebuild their flags.

    Now those regional subs are littered with one post after another of "come on, we need your help to defend our flag" nonsense.

    It's all pointless and divisive.

  • by yreg on 4/5/22, 1:32 PM

    The original /r/Place was created (invented?) by /u/powerlanguage who recently rose to prominence again when he created Wordle.
  • by skilled on 4/5/22, 1:50 PM

    It was nice to have it back, though I hope they will stick to that 5 year gap. On day 2, the streaming community at large caught up with the project and there were a lot of "wars" happening for space. If you are a small Reddit community, you don't stand a chance against 300,000 people using Tampermonkey to recreate a gigantic drawing in 10 seconds.

    Having said that, I also hope that the next time it does happen - Reddit developers will implement at least some protection against this kind of brigading. I wouldn't be surprised it was also the reason they decided to wipe out the whole thing in the end.

  • by jrockway on 4/5/22, 8:37 PM

    What did the bot situation look like this year? I know that the stock-related areas and Osu! were accused of botting (and faded to white very quickly when Place ended last night, sort of confirming the accusations), but it seemed like coordination through popular streamers seemed to cause the most aggressive edits to succeed.

    I initially imagined that communities that cared to bot would have some sort of coordination server, and users would add compute power to that from their local machines. The local thing that each user ran would get a pixel to change from the coordination server, then use their auth credentials and IP address to make the edit. Reading some comments below, though, it seems like there was no IP rate limiting and no requirement to use an active account. So instead of needing a coordination server, I'm guessing that interested users just made a lot of accounts and cycled through them locally to make the desired edits. Does anyone know for sure? (The main reason I didn't bot this was because I assumed having a pool of residential IPs and high-karma accounts would be mandatory. I guess I was wrong, though!)

    Some other comments below imply that this was an intentional decision to boost user numbers before an investment round / IPO. I hope the investors that are looking to get in on that get access to the database to determine whether or not the numbers are legitimate. I'm surprised investors are OK with spam accounts being counted as legitimate users. They aren't going to buy anything that's advertised or invite their friends ;)

  • by winrid on 4/5/22, 5:03 PM

    When I broke my ankle I actually built a "live" version of r/Place for Android without ever hearing about r/Place. People just called it a "place clone" :p

    It supports much larger images though!

    You can find it on Android called "Pixmap".

    How I built it:

    Server: Client side websocket load balancing against NodeJS servers. Client connection location stored in DB. Separate service to route events between the client facing servers. Separate service which pulls change events from the DB and applies to images and also keeps track of the most popular areas of rooms, so the client can auto zoom you to those areas when you join.

    Changing pixels involves two things. 1. Broadcasting the immediate event, and 2. Processing the image. When someone joins a room, they just fetch the image. The image processor is in Node too.

    Client architecture: App is in pure Java. There are two rendering engines that we switch between based on zoom level. When you zoom out far, we mostly use the GPU, and individual pixel changes update a bitmap which is then pushed to the GPU. When you zoom in, it mostly uses the CPU and just a canvas as it feels more responsive this way. Also allows us to do things like add annotations to show who is drawing. Getting the transition seemless is tricky.

    There's also a whole matchmaking system, which was a fun thing to build.

    Anyway my ankle healed and I switched to other projects... :)

  • by lovehashbrowns on 4/5/22, 7:25 PM

    This is exactly the kind of content that I really love. A lot of people are decrying the streamers but I feel like they added a lot more fun to the project. There was a giant 1v8 that "France" fought for in the bottom left corner and they ended up winning and keeping their flag. The bronies got attacked consistently over the course of 3+ days and ended up with more space than they started with.

    It's fun reading over the different arguments. Flag haters, bot haters, territorial arguments, etc. This is the best kind of art! It's also kinda funny watching people complain about bots when the first iteration had just as much botting. I wouldn't be surprised if the exact same scripts were used now that existed then. I think the only big difference this time around was streamers using overlays to 50K+ viewers.

  • by fattless on 4/6/22, 12:01 AM

    My favorite little spot was the r/foxhole little spot

    For those who are unfamiliar, foxhole is a grand scale mmo war game where two sides fight over a giant map over the course of a few weeks. There’s extensive player led logistics lines, massive front lines, and every battle, base, and item are all made by players. It’s a good time

    The foxhole community built a little replica of the game map, and over the course of place fought over it much like the actual game. If you check the Timelapse you can see both sides trying to push into the other territories.

    And it found itself caught in a bunch of big events, raids, voids, ect. But the community rebuilt and resumed fighting incredibly quick, which seems pretty in character lol.

    Leave it to the foxhole players to fight over even faker land

  • by deelowe on 4/5/22, 1:27 PM

    Article is "How We Build r/Place," not "We built r/place." And, as others have commented, this is from 2017.
  • by matsemann on 4/5/22, 1:48 PM

    Last time, wasn't there someone here saying it was easy to do and they could do it in a weekend, and then actually delivered? Can't find it, but perhaps someone here remember more about it?
  • by bombcar on 4/5/22, 3:29 PM

    The botting makes it more boring, in my opinion, it's just a user count system at that point.

    It would be more interesting (in my opinion) if somehow you could get your OWN pixel by being the one who claims it, something like if you change a pixel, others can't change it for 5+x minutes where X increases each time you "defend" it or something.

  • by theyeenzbeanz on 4/5/22, 4:04 PM

    I participated and constantly had to fight against flags that keep severing and overriding our artwork and coordinators threatening to erase it entirely. We managed to make do, but the white only pixel at the end felt like a slap in the face after all the effort.
  • by mirceal on 4/5/22, 3:47 PM

    this sounds like a good system design question.

    how would you build r/place?

  • by ssn on 4/5/22, 8:16 PM

    Very interesting post.

    Where can we find posts like these — e.g. architectural and technological analysis and decisions in real word contexts?

  • by willis936 on 4/6/22, 3:19 AM

    There is plenty of talk of bots, but no one mentioning that reddit employees were caught painting whatever they feel like. Admins defended it as "a tool to keep users safe". r/place being special is an illusion. It's worse than nothing because it actually tricks people into thinking the image is somehow representative of users voting on pixels. It's all just awful.

    https://reddit.com/r/place/comments/tv3hin/a_reddit_mod_is_c...

    https://reddit.com/r/place/comments/tv2lb6/mod_caught_cheati...

  • by zhte415 on 4/5/22, 4:21 PM

    Was it a honeytrap for spotting bots and alts I wondered?

    Having carefully placed a pixel childishly contributing to the humour of a banner depicting a favourite football club, I noted it was replaced by a very serious user within seconds named 'ProBiotic587' or something similar.

    I was not alone in my contributions, as others were rewriting the very serious banner in a manner similar to scratching out parts of a 'Please mind your head sign' to 'Fleas in your head'. Seeing that sign on the train as a 10 year old was a reminder both that were I a few years younger there may indeed be fleas in my head and headlice shampoo was no fun, and that a small act of rebellion by someone anonymous makes a monotonous train ride pass with a little humour.

    Just as the fleas in your head sign was restored every few months on seat pairings, so were user contributions of 'art' to this football club's banner. Both by very serious anonymous people. While I never knew the names of train maintenance staff, Reddit made the names of these people known, but made them no less anonymous. A bot army of 3-8 letter word + 3-8 letter word + 2-4 digits at the end.

    Fine, some people take their football club vary seriously, and would likely not be much fun in the terraces. To each their own.

    But it wasn't just a serious fan of a football club. There were numerous examples of a voice shouting disproportionately and artificially louder over, well, over a lot of pixels. Ego? Other?

    And that was entirely disengaging.

    Reddit is, by subreddit definition, a place of sharing common interest, herding, or denying others' contribution to common interest through such herding. But Place was not just a place for herding, of tuning into and manipulating a group for one's own aims, it was an affirmation of the dominance of bots, alts as magnifiers of this, in discussion and voting in all but the most resilient subreddits, or subreddits of the most inert subject matter.

  • by jspash on 4/6/22, 7:18 PM

    "Bad news blurs"

    I love a good pun! Even if it makes me feel old.

  • by marcofiset on 4/5/22, 1:21 PM

    Why is this tagged 2021? It's an article from 2017.
  • by steelframe on 4/5/22, 2:39 PM

    I wondered WTF was happening on my alma mater's subreddit when suddenly the whole front page became "we have to defend/win back our r/place space!!1!" I checked a few other college subreddits, and yup, this has become a spam scourge.