Overload Game Tracker

Primary Language: JavaScript
Created:
Updated:
An Overload game tracker for servers running olmod.

Releases

v3.1.0

* New advanced search capabilities.
* Package updates.

v3.0.6

* Reduce search to one page for now until a more advanced search is created.
* Package updates.

v3.0.5

* Fix bug with page count in search results.
* Don't log opcode 0 errors as they are frequent and unavoidable due to the nature of websockets.
* Package updates.

v3.0.4

* Fix bug with websocket crashes.
* Package updates.

v3.0.3

* Increase max allowed size posted to `/api/stats` from 100 KB to 1 MB.

v3.0.2

* Fix bug with suicides counting as kills while game is ongoing. Suicides still count correctly in the archive.

v3.0.1

* Fix bug with games disappearing when there is activity on them.
* Package updates.

v3.0.0

* Now uses Docker containers for easier setup.
* Replace SQL Server with MongoDB.
* Refactor views.
* When a game ends, the tracker will now redirect to the archive page created by the game.
* Fixed a number of bugs with the website.

v3.0.0 Beta 1

* Now uses Docker containers for easier setup.
* Replace SQL Server with MongoDB.
* Refactor views.
* When a game ends, the tracker will now redirect to the archive page created by the game.
* Fixed a number of bugs with the website.

v2.2.1

* Fix assisted counts and damage taken on archive page.
* Fix various crashes with the archive page.
* Package updates.

v2.2.0

* Fix error when creator is missing from game settings.
* New stats and graphs on the archive pages, inspired by https://pudlez.net/otl. Ironically, this will probably break that site for a bit.
* Package updates.

v2.1.8

* Added creator to /api/browser list.
* Fixed a bug that was causing the game page to remove the player count and not display events when it started.
* Removed a bunch of unnecessary data from the API that powers the archive list.
* Players lists on the archive page that are longer than 4 players will have an ellipsis after the player list to indicate there were more than 4 players.
* Package updates.

v2.1.7

* Package updates.

v2.1.6

* Package updates.

v2.1.5

* Player count shows after a game starts.
* Fix bug with team changes not being recorded.
* Fix bug when game settings are missing when the game ends.
* Handle JSON errors from bad actors better.
* Fix bug when archive search query results in no parameters. Note that player names like "..." are currently unsearchable.
* Fix a number of bugs when no player name is passed with an event. Note players that have no player name will not be recorded on the tracker, because name is the only way we have to track players currently.

v2.1.4

* Fix bug with player counts not updating live.
* Rebranded as tracker.otl.gg. The old URL will continue to work for historical purposes, but new users should use the URL tracker.otl.gg.

v2.1.3

* Note if an olmod server is on an old version.
* Show max number of players in the game if it's Join in Progress.
* Include self damage taken in total damage taken numbers.
* Counts friendly fire as damage taken in friendly fire games, shown in a different color than self-damage.
* Games with no data received in 5 minutes are removed from the tracker.
* Games fall off the tracker if they are over 10 seconds past end time, unless it's an overtime game, then it falls off immediately.
* Friendly fire kills are now counted correctly for players.
* Update redis caching to reduce issues with redis.
* Show team changes in join in progress games.
* Package updates.

v2.1.2

* Package updates.

v2.1.1

* Server browser includes game version for olmod 0.4.1 and later.
* End game packets will better rewrite the game's history if it missed anything while it was live.
* Fixed memory leak.
* Fixed bug when searching for nothing.
* Fixed encoding bugs.

v2.1.0

* Updated archive list with better pagination.
* Added search to archive list.
* Archived games now show damage taken totals and time in game.
* Game settings now appear on the game page.
* Live updates can be disabled.
* New summary page that shows all games and servers in a simple table.
* Copy button extended to the server list.
* New game browser API for future olmod usage.
* Servers seen more than 5 minutes ago are now considered "old", instead of 1 hour ago.
* Fixed bug causing games in lobby to not update when they have been started.
* Fixed bug causing games to appear like they had 24 hours remaining in recent versions of Chrome.
* Fixed bug with some meta tags.

v2.0.3

* Onboarding update with current information about olmod and how to play.
* Added IP address and copy button to games where joining is possible.
* Fixed bugs with unofficial game modes.
* Add minification and combination of CSS & JS files.

v2.0.2

* Update server list API to not draw from the database.
* Other fixes to server list API.
* Remove active API.

v2.0.1

* Active lobbys are now shown with number of players and max players.
* Archive now displays the initial page in local time like the rest of the pages.
* Players who took damage but did not record another start are removed from the damage grid.
* Fixed timeago implementation.
* Added more HTML encoding to server and map names.
* Fixed non-existent game IDs crashing instead of
* Fixed bug with completed games linking to an invalid page.
* Replaced original websocket implementation with express-ws.

v2.0.0

* Stats are now tracked and displayed in real time using websockets.
* Support for CTF and Monsterball.
* New archived games list.
* New completed game API.
* Backend website improvements.

v1.1.0

* Save end game stats received from olproxy to the database.
* Update appsettings.json with the "signOff" parameter.

v1.0.3

* Fix bug with HTML encoding.
* Fix bug when mode hasn't been set yet.
* Update links.
* Add SSL.

v1.0.2

* Use database for backend server list persistence.
* Add "online" querystring to toggle a server's visibility.
* Move old servers to the bottom of the list.
* Add Server Setup and Links pages.
* Add links to the map being played.
* Filter out servers that are missing key information.

v1.0.1

* HTML encode all externally provided data.

v1.0.0

Initial release.

Commits

Merge pull request #737 from overload-development-community/dependabot/docker/db/mongo-7.0.6
Bump mongo from 7.0.5 to 7.0.6 in /db
Merge pull request #736 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.24
Bump @types/node from 20.11.23 to 20.11.24 in /node
Merge pull request #734 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.24
Bump @types/node from 20.11.23 to 20.11.24 in /logging
Merge pull request #733 from overload-development-community/dependabot/npm_and_yarn/node/express-4.18.3
Bump express from 4.18.2 to 4.18.3 in /node
Merge pull request #732 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.23
Bump @types/node from 20.11.21 to 20.11.23 in /node
Merge pull request #731 from overload-development-community/dependabot/npm_and_yarn/node/chart.js-4.4.2
Bump chart.js from 4.4.1 to 4.4.2 in /node
Merge pull request #730 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.23
Bump @types/node from 20.11.21 to 20.11.23 in /logging
Merge pull request #729 from overload-development-community/dependabot/npm_and_yarn/logging/babel/core-7.24.0
Bump @babel/core from 7.23.9 to 7.24.0 in /logging
Merge pull request #728 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.21
Bump @types/node from 20.11.20 to 20.11.21 in /logging
Merge pull request #727 from overload-development-community/dependabot/npm_and_yarn/node/babel/core-7.24.0
Merge pull request #726 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.21
Bump @babel/core from 7.23.9 to 7.24.0 in /node
Bump @types/node from 20.11.20 to 20.11.21 in /node
Merge pull request #725 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.20
Bump @types/node from 20.11.19 to 20.11.20 in /node
Merge pull request #724 from overload-development-community/dependabot/npm_and_yarn/logging/types/dockerode-3.3.24
Bump @types/dockerode from 3.3.23 to 3.3.24 in /logging
Merge pull request #723 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.20
Bump @types/node from 20.11.19 to 20.11.20 in /logging
Merge pull request #722 from overload-development-community/dependabot/npm_and_yarn/logging/applicationinsights-2.9.4
Bump applicationinsights from 2.9.3 to 2.9.4 in /logging
Merge pull request #720 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.19
Bump @types/node from 20.11.18 to 20.11.19 in /node
Merge pull request #718 from overload-development-community/dependabot/npm_and_yarn/logging/applicationinsights-2.9.3
Merge pull request #717 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.19
Bump applicationinsights from 2.9.2 to 2.9.3 in /logging
Bump @types/node from 20.11.18 to 20.11.19 in /logging
Merge pull request #716 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.18
Bump @types/node from 20.11.17 to 20.11.18 in /node
Merge pull request #715 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.18
Bump @types/node from 20.11.17 to 20.11.18 in /logging
Merge pull request #714 from overload-development-community/dependabot/docker/nginx/nginx-1.25.4-alpine
Bump nginx from 1.25.3-alpine to 1.25.4-alpine in /nginx
Merge pull request #713 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.17
Bump @types/node from 20.11.16 to 20.11.17 in /logging
Merge pull request #712 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.17
Bump @types/node from 20.11.16 to 20.11.17 in /node
Merge pull request #710 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.16
Bump @types/node from 20.11.15 to 20.11.16 in /node
Merge pull request #709 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.16
Bump @types/node from 20.11.15 to 20.11.16 in /logging
Merge pull request #708 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.15
Bump @types/node from 20.11.13 to 20.11.15 in /logging
Merge pull request #707 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.15
Bump @types/node from 20.11.13 to 20.11.15 in /node
Merge pull request #706 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.13
Bump @types/node from 20.11.10 to 20.11.13 in /logging
Merge pull request #705 from overload-development-community/dependabot/npm_and_yarn/logging/babel/eslint-parser-7.23.10
Bump @babel/eslint-parser from 7.23.9 to 7.23.10 in /logging
Merge pull request #704 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.13
Bump @types/node from 20.11.10 to 20.11.13 in /node
Merge pull request #703 from overload-development-community/dependabot/npm_and_yarn/node/babel/eslint-parser-7.23.10
Bump @babel/eslint-parser from 7.23.9 to 7.23.10 in /node
Merge pull request #697 from overload-development-community/dependabot/npm_and_yarn/node/babel/core-7.23.9
Bump @babel/core from 7.23.7 to 7.23.9 in /node
Merge pull request #702 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.10
Bump @types/node from 20.11.7 to 20.11.10 in /node
Merge pull request #701 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.10
Bump @types/node from 20.11.7 to 20.11.10 in /logging
Merge pull request #700 from overload-development-community/dependabot/npm_and_yarn/logging/babel/eslint-parser-7.23.9
Bump @babel/eslint-parser from 7.23.3 to 7.23.9 in /logging
Merge pull request #699 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.7
Bump @types/node from 20.11.6 to 20.11.7 in /logging
Merge pull request #698 from overload-development-community/dependabot/npm_and_yarn/logging/babel/core-7.23.9
Bump @babel/core from 7.23.7 to 7.23.9 in /logging
Merge pull request #696 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.7
Merge pull request #695 from overload-development-community/dependabot/npm_and_yarn/node/babel/eslint-parser-7.23.9
Bump @types/node from 20.11.6 to 20.11.7 in /node
Bump @babel/eslint-parser from 7.23.3 to 7.23.9 in /node
Merge pull request #694 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.6
Bump @types/node from 20.11.5 to 20.11.6 in /node
Merge pull request #693 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.6
Bump @types/node from 20.11.5 to 20.11.6 in /logging
Merge pull request #692 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.5
Bump @types/node from 20.11.4 to 20.11.5 in /logging
Merge pull request #691 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.5
Bump @types/node from 20.11.4 to 20.11.5 in /node
Merge pull request #690 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.4
Bump @types/node from 20.11.2 to 20.11.4 in /node
Merge pull request #689 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.4
Bump @types/node from 20.11.2 to 20.11.4 in /logging
Merge pull request #688 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.2
Bump @types/node from 20.11.0 to 20.11.2 in /node
Merge pull request #687 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.2
Bump @types/node from 20.11.0 to 20.11.2 in /logging
Merge pull request #686 from overload-development-community/dependabot/npm_and_yarn/node/types/node-20.11.0
Bump @types/node from 20.10.8 to 20.11.0 in /node
Merge pull request #684 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.11.0
Bump @types/node from 20.10.8 to 20.11.0 in /logging
Merge pull request #682 from overload-development-community/dependabot/npm_and_yarn/logging/applicationinsights-2.9.2
Merge pull request #681 from overload-development-community/dependabot/npm_and_yarn/logging/types/node-20.10.8
Share This Page
Social Media
Ronald M. Clifford
@roncli @mastodon.social

@arborelia Bag-les.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

A comparison of the classic Tetris and Descent communities. Not a post I write lightly, either.

roncli.com/blogger/37031578090

Reply Boost Favorite
martin
@luftlesen @mstdn.jp

Aptiz played #Pentis again. In the beginning you can see roncli asking in the chat for the right version. About an hour later, he broke the #PentisRankings record with 60K ! Congratulations roncli ๐Ÿ† ๐ŸŽ‰
twitch.tv/videos/2052528360?sr

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Yeah, it's season 11. But the OTL Season 6 highlight reel is up, this time Fireball has taken the reins! Check out this video jam packed full of kills, deaths, silliness, and Sirius puns. youtube.com/watch?v=SXstLVjnaG

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Over on , someone retweeted sympathy for the people being laid off today...

...and then said that Amazon Games was hiring. You know, the one that just had layoffs in NOVEMBER.

Honestly? Tech sucks right now.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Seriously. Why is it called Sagittarius, A Star? Clearly, it's Sagittarius, A Black Hole. Silly astronomers.

Reply Boost Favorite
Cultural Historian: Dr. RGST
@DrRGST @mastodon.social
Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

This eslint/stylistic breakup is going to give me a headache. Don't developers have something better to do than give other developers busywork?

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Bing is so bad. otl.gg is being blocked in their search results, and Bing webmaster tools are absolutely useless, not telling me why it's being blocked.

Does anyone know of some way to get a human to look at this and see what's wrong with it?

Reply Boost Favorite
Olivia W'
@WLivi @retro.pizza

it's not actually common for real hackers to use two keyboards at once; that's just a stereo type.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I got my wish. ๐Ÿค’

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Me and my wife, despite buying a house of nice size, always seem to get in each other's way, be it in the kitchen, on the stairs, it doesn't matter. She's all up in my two square feet.

I often joke that all I want for Christmas is my two square feet.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Update 2: The record that beat Blue Scuti stood for one day. Blue Scuti got it back.

Reply Boost Favorite
๐ŸŒช MikeMathia.com ๐Ÿ“ก
@mikemathia @ioc.exchange

#C++

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Update: This record stood for 1 day.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I got the honor and privilege of calling the NES Tetris NTSC world record today while running Classic Tetris Wars on my Twitch channel for the very first time. It was thrilling. Congratulations to Blue Scuti for his 6,609,220 level 153 performance. clips.twitch.tv/DiligentDeadGo

Reply Boost Favorite
Yogthos
@yogthos @mas.to
Reply Boost Favorite
TwistBit
@TwistBit @musicians.today

like, you used to use a phone line to access the internet

now the internet is accessible on your phone

nothing has changed actually

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Six Degrees of Sunday returns Sunday, January 7th, at twitch.tv/roncli. Cya there!

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Are you ready to get Six'd Off?

Six Degrees of Sunday, my 6DoF long play Twitch series, is getting revived for 2024. Plus, I will be producing Six'd Off, a companion YouTube series showcasing each game.

Check out the announcement for the game list and more! youtube.com/watch?v=yeRbjjpQVZ

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

So I started a fresh YouTube channel some time ago, and yesterday I released the first real video to it.

Check out highlights from Argus Industrial Moons' run to the OTL Season 10 Best of the Rest title! youtube.com/watch?v=Z2x-GGW9FY

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I guess that qualifies as a "log"...

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

People at work are calling Kubernetes K8, and I hate it. It's not "Kubernete"!

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Want a preview of what CTWC will be like next weekend from a gameplay perspective? CTL Season 22 finals starting now.

twitch.tv/classictetrisleague

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

No airport hell this morning, but you know that lady that talks about security at literally every airport? I just realized, she sounds old AF.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

If this security line posted signs "5 minutes from this point", "10 minutes...", etc., They'd have to post them every foot.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I'm sorry, what?

Reply Boost Favorite
Robin Ward
@eviltrout @carpdiem.online
Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Did I miss Elon making another purchase? twitter.com/unity/status/17016

Reply Boost Favorite
Konstantinos Dimopoulos
@konstantinosd @mastodon.gamedev.place

That's a lovely free bundle of books for people interested in getting into games programming: fanatical.com/en/bundle/intern

#gamedev #book #free #programming

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Use TypeScript they said. It'll be better they said.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

If you know, you know.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

@shanselman Speaking of Overload, here's something you may be interested in... recently, some community members released "Overload First Strike", a single player Overload campaign that is a complete remake of the original Descent First Strike campaign.

overloadmaps.com/overload-firs

It can work with just the original game, but it works best with "olmod" as it takes advantage of some of the features it provides: olmod.overloadmaps.com

Reply Boost Favorite
Scott Hanselman ๐Ÿ‘ธ๐Ÿฝ๐Ÿ๐ŸŒฎ
@shanselman @hachyderm.io

@PossiblyMax @deepthaw ya and there are new remakes of Descent like Overload that are enhanced and thereโ€™s even hardware that Vic Putz made to make the Space Orb look like a controller with NO drivers. Works on all operating systems hanselman.com/blog/bringing-th

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I don't know who wrote this, but MORE PATCH NOTES LIKE THIS PLEASE. ๐Ÿคฃ

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

First OTL flag capture in 7 seasons, and it was a game winner. clips.twitch.tv/PeppyFitOrange

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I could buy a nice amount of coffee with this!

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Clearly mismanagement from the top. Their logo color doesn't even match their name!

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Fucking creepy.

Reply Boost Favorite
Join roncli on Discord!
Join the roncli Gaming Discord server for discussion about gaming, development, and more!
roncli.com Media Player