Back to school edition. I've been swamped with actually studying for an exam.
There's a number of other things that are backlogged that I hope to release soon-ish, but they could use some more testing.
A thing I missed from the last summary
- Raised minimum requirement to play on non-bot maps to four human players (from two). I have
nothing against unsupported maps, but it's really awkward to have to play 1v1 Arena for twenty
minutes if you want to stay on the server. Even more awkward when the other person leaves.
- Maybe someday we'll get bot support on the rest of the maps.
Client features
- Fixed rare item pickup responses. The plugin on the server was three commits behind. Oops.
- Fix the Advanced MOTD include so it actually calls on failure.
- This mainly affected the achievements info plugin, which displayed a message on failure.
Achievement fixes
- Fixed Blue Scream of Death so they are awarded by bots.
- A while ago I just wrapped a bunch of client checks to ensure that only humans could get achievements. I accidentally added that check on attackers in the conditions for getting this achievement. It would normally be fine in most cases, but the attacker is the same as the victim here; the Engineer is the one dying by their own sentry.
- Slight optimization to various "counting" achievements so they're only checked for completion once per connect session (a better rate than once per achievement increment).
- Used the game's native
losing_team_num_caps
event property to determine if A Sulfuric Shutout should be awarded. It does track control points that were retaken.
Map and mapcycle changes
- Added Luftangriff (KOTH) to the standard rotation. Bots supported.
- Fixed missing navigation areas on the last point of Stoneyridge (A/D). Darn breakable brushes.
- Fixed robots trying to get the small health packs near mid on Waste (KOTH). Also added a connection from spawn to sewer and removed an untraversable connection.
Robot changes
- Minor fix to ensure bots use the correct model on the start of the round. Bug was caused by a
regression from an internal refactoring cycle.
- It's still kind of an issue, though. Can't seem to get a repro case going, but it's probably some conflict with the Prophunt end-round plugin.
A minor, but rather important change for the Round End Music system
- Considering we're now using the browser for music playback, there's no reason why we have
to keep using the MP3 format. Expect future songs to be encoded using Opus, an entirely open
audio format that has comparable quality at even smaller file sizes.
- Completely listenable audio at 48kbps? Faster downloads? Music to everyone's ears. Or at least for those that opt-in to the content.
- A few tracks may also be re-encoded or completely redone in Opus whenever I feel like it. Fewer tracks amplified to the point of distorted clipping!
Site tweaks
- The MOTD web page now mainly targets the TF2 browser; Pure.CSS and jQuery have been removed. No more external dependencies! The Hugo theme has been updated to match.
- The text-based MOTD has been updated slightly.
- A few more tweaks to the achievements page.
- It's a bit more green now. The original version used a single color for text, but TF2 was apparently gaslighting me into not being sure what colors were right.
- We're also now using CSS grid properties instead of flexboxes for the main grid setup. There's no visual difference, though the guts of the page itself is cleaner.
- Arrow functions and template literals are great. Modern JavaScript is great, despite all the legacy baggage it has to carry around.
Backend changes
- The legacy API/AJAX endpoints are finally phased out. Mostly.
- Managed to get CORS working properly so the new endpoint is accessible over HTTP(S) on all required subdomains.
- Ported over the last few functions that were in use in the legacy system.
- Tweaked access controls for some administration pages.
- Wrote up a new utility that can extract navigation meshes from maps. Should make bot support updates to Workshop maps that aren't packing meshes in a workshop-friendly way a lot easier.