STonitor: Account Age + Jailbreak & TTT Logs Analyzer

blank_dvth

EGO Is My Life!
=(eGO)=
Joined
Jul 13, 2021
Messages
5,021
Does the title sound familiar? That's because there's already a similar program which I shamelessly based the name and concept of this one off of in existence, @MSWS' Sonitor.
Now if you don't know what Sonitor does, here's a quick summary: An application that automatically analyzes JB logs to attempt to detect various potential infractions combined with a Steam Account Age detector that tells you the steam age and CS:GO playtime of everyone on the server everytime you enter status.

I mainly made this for my own use, to fill in some of the features that wasn't in Sonitor, and so that I could continue to add features that I may find useful in day-to-day operations without needing to bother MSWS everytime or understand a codebase that isn't mine.
As a side effect of me making it for my own use (and my laziness), STonitor was not made in a compiled language, which means installation isn't a particularly easy task. If you want something that's easy to install, just use Sonitor, it works amazingly well if your use case is just JB. The documentation on how to install STonitor is fairly detailed, so generally you should be fine.

Download Here!
Documentation Here! (Installation, Usage, Settings, Etc)

Differences between STonitor and Sonitor
Currently there aren't too many differences, as this is the first initial release with only a working implementation and a couple important things implemented. I'll update it as time goes on. Here's the couple of the major differences as of Jan 20, 2022:

  • Log Saving: Sonitor does not yet have this feature
  • TTT Support: Sonitor currently does not support TTT, and crashes when TTT logs are received
  • Mass Freedamage Detection: Sonitor does not yet have this feature
  • [Hopefully] More Consistent LG/LR Detection
  • Source Support: STonitor does not officially support Source, in theory, by disabling everything except Account Age, disabling server playtime checking, and manually changing the output.log location, Source could work

Features
Here's a quick [outdated] feature list, for a more detailed and up to date list, go here:

  • Steam Age
    • Automatically runs when status in typed in the CS:GO console
    • Automatically retrieves and outputs the account age of everyone on the server
      • Steam accounts that are private has their age estimated by finding accounts created right after the private
        account
    • Automatically retrieves and outputs their CS:GO playtime (if available)
    • Automatically retrieve and output their playtime on the server
  • JB Log Analysis
    • Wardenless Freekill Detection
      • Tells you when a CT kills a non-rebelling T without a warden alive
    • New Warden Freekill Detection
      • Tells you when a CT kills a non-rebelling T within X seconds of a new warden coming on
    • Mass Freedamage Detection
      • Tells you when a CT hurts more than X people with utility (molotov or HE grenade) within Y seconds after throwing
        it
    • Early Vent Detection
      • Tells you when a CT breaks vents before any prisoners has
      • Note: On some maps, opening cell doors may count as breaking a vent, this is a false-positive, and I'll be
        attempting to work on a fix in the near future
    • Button Grief Detection
      • Tells you when someone presses a button and players take damage from the world within X seconds
        • By default, Warden is not counted in this detection, it can be toggled off
    • Nade Disruption Detection
      • Tells you when a prisoner throws utility and players take damage from the world within X seconds
    • Gunplant Detection
      • Tells you when a CT drops a weapon and a T uses that same weapon within X seconds
  • TTT Log Analysis
    • RDM Detection
      • Tells you if there may have been a potential RDM (if enabled, can also go back and detect whether the RDM may have
        been justified [victim damaged the attacker first])
    • Mass RDM Detection
      • Tells you if a player has more than X bad kills (if enabled, can also detect reason for these kills)
    • Inno Utility Detection
      • Detects when an innocent damages someone with an HE grenade or molotov
  • Log Summary Output
    • A summary of the logs that isn't as cluttered, what actions are shown in this summary can be configured
  • Automatic Log Saving
    • Logs are automatically saved once they are received and parsed, so that you can always access them

Usage
For program usage documentation, go here. For full setup/running documentation, go here.
To start the program, open command prompt and navigate to the installation location, then enter python STonitor.py. It is NOT recommended to double click the file, this may work on some systems but more likely than not causes problems.

IMPORTANT
f1xszv92nfky.png
 
Last edited:
Version 1.0.1 is now released. It contains a couple of bug fixes, no new features yet. Download link is the same as before.

Here's the changelog:
5si16sxbq6cv.png
 
Version 1.1.1 is released, STonitor now has support for server playtime checking. Playtime is retrieved from GameME, this means that playtime during the period in which it was disabled was not tracked. Read the updating instructions, you'll need to perform some steps. Great thanks to MSWS for helping with this implementation. Download link is the same
 
Version 2.0.0 is now released, adding support for Button Aliases, solving unicode characters being processed oddly, fixing status shitting itself and more. Read the updating instructions on GitHub, you'll need to perform some steps. Download link is the same as above.

2n60y9au5m2o.png
 
I just want to say that admins should not be using only this and should still be talking to the players about situations. This does not give any depth into situations like throwing a molly into a room a t is in and then a inno walks into it. Just make sure you guys are still talking to the players before you make admin action.
 
Of course, put a bunch of disclaimers saying that although I forgot it on the forums I guess (documentation and GitHub both have it). Meant to serve as a tool to help, not a replacement for human interaction (as much as I wish that could exist :b)
 
It's been a while, but I finally decided to put some time aside to work on this. Here's a slightly larger feature update, with one of the main focuses being colours (and also some logging updates and new detections but that doesn't sound as nice)!

As always, everything is customizable via the settings file, this includes the colours and new features. If the default colours don't contrast well with your CMD background, change them. (Or use Windows Terminal which has a better background and is overall better)

Added
  • jb_undertale pictionary draw button to default ignore
  • Various entries regarding JB logging in the known bugs documentation page
  • Coloured output to make wall of text easier to understand
  • ST kill detection
  • Summary output for weapon pickup

Changed
  • Better invalid status line logging
  • Version number now shows in ready message
  • Gunplant detection now simply checks if a T picks up a CT's weapon before that CT dies

Fixed
  • Outdated default GameME link for eGO
  • Space padding incorrect on button grief output
  • Fix odd invalid status line error
  • Typo in documentation index page

Removed
  • Feature list is no longer shown in README

Sample output:
E4L8pcid0afj.png


Considering how long it's been, it's worth mentioning a couple things again.
This tool is unofficial, and is provided to ASSIST in admining, you still need to use your brain and ask people stuff!
Nothing is absolute here, context is important as always.

To download this release, visit the releases page. To update, follow the Updating instructions on the same releases page. Documentation on setup and use is available here.

The next update will likely focus on optimization and code changes, so no flashy features. May potentially attempt to make a .exe compiled version so that installation is less complicated.
 
Last edited:
By popular demand (and by that I mean Goosey Goosey yelling at me non-stop), there is now a Windows Installer that you can use instead of the manual Python based installation.

Reminder: This program is not an official program by eGO, is not endorsed by eGO, and is used at your own risk, without warranty of any kind.

Added
  • Shows disclaimer on startup
  • Created installer for Windows

Changed
  • Added healthshot to gunplant ignore
  • Updated GitHub update checking URL to new one
  • Moved data folder to native data location (APPDATA, .config)
  • Documentation updated to reference Windows installer
  • The program now asks if you want to open the data folder if it generates it
  • Clarify additional step in manual BAT setup instructions

Fixed
  • Incorrect default colours listed in settings documentation
  • Typo in default button config
  • TTT summary output not showing damage dealt
  • Edge case in which the program would crash if there was a specific issue retrieving account age
  • Broken update checking as a result of repo URL change

The URL of the repo has changed, this means that in-built update notice will not work (at least until you update to this version). To download this release, visit the releases page. Make sure to follow the Updating instructions on the same releases page, you will need to perform some steps manually. Documentation on setup and use is available here.
 
Last edited:
  • What
Reactions: Ric
By popular demand (and by that I mean Goosey Goosey yelling at me non-stop), there is now a Windows Installer that you can use instead of the manual Python based installation.

Reminder: This program is not an official program by eGO, is not endorsed by eGO, and is used at your own risk, without warranty of any kind.

Added
  • Shows disclaimer on startup
  • Created installer for Windows

Changed
  • Added healthshot to gunplant ignore
  • Updated GitHub update checking URL to new one
  • Moved data folder to native data location (APPDATA, .config)
  • Documentation updated to reference Windows installer
  • The program now asks if you want to open the data folder if it generates it
  • Clarify additional step in manual BAT setup instructions

Fixed
  • Incorrect default colours listed in settings documentation
  • Typo in default button config
  • TTT summary output not showing damage dealt
  • Edge case in which the program would crash if there was a specific issue retrieving account age
  • Broken update checking as a result of repo URL change

The URL of the repo has changed, this means that in-built update notice will not work (at least until you update to this version). To download this release, visit the releases page. Make sure to follow the Updating instructions on the same releases page, you will need to perform some steps manually. Documentation on setup and use is available here.
Honk
 
The GameME URL was updated to https://edgegamers.gameme.com. This means that anything related to GameME in the program will not currently work until it has been updated. To do this, open your data folder, then open constants.yaml, find the option named playerinfo_url under gameme and change it to https://edgegamers.gameme.com/r/playerinfo. The next update will fix the default value of this, in the meantime, perform the constants fix.
 
Back
Top