Minecraft Server Scanner
- 3 Devlogs
- 14 Total hours
Scans (almost) all ipv4 addresses for Minecraft servers!
Scans (almost) all ipv4 addresses for Minecraft servers!
It uses the Twitch api to fetch all live Minecraft streams and then tries to find what server they’re playing on. I already had this working somewhat well for a while but since I added the case insensitive searching from the last update, username searching got relatively slow, so I decided to rewrite it to automatically run searches in the background every minute and cache the results. Then I also realized that since the only option is to filter by language I can easily fit that in the custom id of the discord embed buttons, allowing me to store the information on discord instead of in memory and keep the embed alive forever without timing out to save ram. Unfortunately I can’t do this for the search command since it has to many options, so for now it still times out after 10 minutes of inactivity.
Published the new v2 api in preparation for the upcoming streamsnipe feature!
Historical player storage was previously done by having one table that had every player’s name and uuid, and then a second table that stored when each player was last seen on each server, referencing each with their primary keys. This avoided storing a ton of duplicate usernames and uuids when users played on multiple different servers, but turns out it was still way faster if I just stored all of the data on one table to avoid a whole extra JOIN in the query. This also required a lot of reworking on the scanner and api, and I was too lazy to update the old v0 api so I officially discontinued it.
Some people were confused about the credits system so I added a timer at the bottom of the credits meter to show that they reset each hour