Sometimes I get really discouraged when programming because I feel my code isn’t useful to anyone but me (which also causes me to ignore best practices) and is elementary.

That is until a js discord bot pisses me off enough to look at the source code for the service it’s integrating (Archipelago, a multiworld multigame randomizer). After realizing it’s entirely in Python, I got to work hacking it apart to work with my idea. There was one issue I couldn’t figure out because I needed data from the server that it doesn’t send everyone (hints) and I wanted to avoid having everyone have log in. I dug through the documentation and found a note in the network communication docs that mentioned you could ask to be notified about other players hint data. It was just something that other clients don’t expose.

Then of course I sat down and wrote 150 lines of code to interact with an sqlite database to store what discord channels were monitoring what so I could seamlessly recover from a crash (one of the major annoyances of the current bot). Next is logic to process data from Archipelago to make sure it’s all going to the right channels, then logic for the actual bot. If I get this looking pretty enough I might actually submit a pr.

#programming