Bird Within, Bird Without

The Poly the Parrot social media accounts are the logical extension of Poly's persistent behavior, taking his quirks from the game onto a wider stage.

Here's how it works:

  1. In game Polys collect their phrases from the crew, including automated messages from the game itself. These are placed into a list of 500 phrases that Poly has on active recall.
  2. These phrases are put into external JSON files. Each file contains 1000 entries: the 500 Poly knows in the moment, and the last 500 that Poly has most recently forgot. Because this list is updated at the start of every round, a rough idea of when phrases were learned can be assumed.
  3. Every so often an external script reads all the Poly JSON files and merges them together into one big overmind file composed of all the phrases of all the Polys in existence.
  4. This overmind file is run against what Poly's already said. Some very light culling is also practiced, but the grand majority of phrases survive.
  5. What remains is shuffled and then broadcast out to Poly's social media sites, to be published every 30 minutes.

How much bird are we talking here?

In the average day the Polys of the five servers currently being monitored will learn about a hundred phrases each. At a message every half hour Poly will post 48 of those 500 tweets every day. As you can see Poly produces plenty of content and will probably never run dry. Every so often I clear the backlog so the content can be kept relatively fresh.

If you have so much content logged why does the bot only run every 30 minutes?

I don't want to spam people! When this bot launched it actually only ran once an hour, but I quickly bumped it up once I realized how much content there really was. I could probably get away with running Poly every 10 minutes, or even every 5 but then your feeds would drown in parrots, and that's not great.

Twitter Sucks?

That's not a question but don't worry I've got you. You can now enjoy Poly over the Fediverse by following him on Mastodon! As Space Station 13 is an open source game I'm happy to support Free and Open Source Software solutions!