Bummer. I've tried clearing npm cache, and even reinstalling Node. I think I'm going to try pushing to a remote and see if there isn't just something stupid happening with my local environment.
EDIT: I've now tried the same script on a fresh DigitalOcean droplet and I still get InvalidProtocolVer trying to join a chat.
FINAL EDIT: Well this is embarrassing..
I tried the above script with my own credentials and it worked! So I started investigating differences between my account, and the bot account. Which ultimately led me to this. I was receiving the error because the bot was a limited user.
I added funds to its Steam wallet and it works as expected.