Hello! If you have arrived here, then it is likely you are considering using or contributing to the CentCom Galactic Ban Database, or simply 'CentCom'. You will find a brief description of what CentCom is, how it operates, information on how you can contribute, and answers to commonly asked questions below. Hopefully this document will get you up-to-date on this system, and help you think about any questions or concerns you may have.
As always, you can contact the developer, bobbahbrown, through Discord at bobbahbrown#0001
.
Several communities in space station 13 currently publish public bans which you can search through. Instead of searching each individual website, CentCom allows you to search them all at once. That's it.
CentCom is essentially an aggregator of ban data from a variety of public ban data sources. It mirrors information from these sources, storing it temporarily, and allowing users and servers to search through all of the aggregated bans using a web API.
As well as this, it offers a basic web viewer that can be used to view data from the API in an organized manner.
It is an open-source project, found here, and anyone can host their own instance of CentCom should they choose. The 'primary' instance of CentCom, hosted by the developer, is found at https://centcom.melonmesa.com. The documentation for the API can also be found on that page, under the 'API Documentation' link on the left.
CentCom was produced to fill a perceived need within the space station 13 community for a service that allows administrators to easily see a 'bigger picture' of a player's reputation throughout our communities.
Whilst administrators could previously go through public ban pages at each individual community, this was tedious and required the respective staff to be knowledgeable of what servers offered this service. To this extent, there were also few who did offer public bans in such a manner.
With the CentCom service, servers can now have a rapid view into the administrative reputation of any given user, and gauge if they may be problematic within their own communities. As well as this, some codebases have implemented their own in-game viewer to give admins in their servers the ability to view public bans any given user may have on the fly. You can find the PR for Beestation's version, ported to /tg/, here.
A full list of the ban sources currently supported by CentCom can be found in an API response here.
CentCom operates on a fixed schedule to parse ban data from a set of configured sources. This data is temporarily stored within CentCom, and then users and servers can access it through the web API.
Within this parsing system, there are two kinds of updates: recent ban refresh, and complete refresh. Recent bans are parsed every five minutes of each hour, and complete refreshes are performed at the 0th minute and 30th minute of every hour.
The recent ban refresh only checks for new or updated bans from the source up until the point that it finds a ban that is already stored. At this point, the parsing stops, and these new bans are inserted.
Following this, the complete refresh will get all bans from the data source, and compare them against those stored in the database. This catches any edited bans, expired bans, or deleted bans. If any bans are missing from the source data, ie they are deleted, they are deleted from the CentCom database as well.
Most notably from this system, no data persists within CentCom that is not found on the source material. CentCom does not support 'versioning' of bans, and never will as that is a slippery slope and not the intention of the service.
It should be noted that CentCom also contains some historic bans from contributors at OracleStation and FTL13. These are provided in a 'flat file' format, and will only be parsed once when CentCom first detects them.
As mentioned earlier, if you are reading this document it is likely you are considering contributing your bans to the CentCom service. This is a fairly simple process, and can be done in one of two ways.
BanParser
for CentCom. PR this parser to the repository. This may be a better option if you have very specific ideas or concerns about how you want the information to be submitted to CentCom.A great example of the format that CentCom is easily able to consume is found on the BeeStation website. Their ban data API endpoint can be found here.
As I have approached or been approached about CentCom many times, I have had some questions that are re-occurring, and best to clarify here.
No. CentCom only acts as a aggregator of ban data, and does not store any unnecessary information.
No. There have been considerations of using machine learning technologies to tag bans with relevant information, like categorization, but this has not been implemented. If it were to be implemented, permission would be requested from all contributing servers prior to development.
No. Whilst all contributions are appreciated, and help to 'paint a bigger picture' of a player's actions throughout the space station 13 community, you can freely access the data from the API regardless of who you are.
Whilst I cannot control what servers do with the data they receive from the CentCom API (some servers may mirror bans using this data), I do not actively support any feature regarding this, nor do I advertise this as a use case or intended use for CentCom.
CentCom is intended to be a tool which allows administrators to get an idea of a player's reputation throughout our communities. This should almost never be the sole factor in an administrative action, and administrators should only see it as another piece of information to consider in their investigations.
No. CentCom acts as a 'mirror' of the original ban source, and never stores any information that has been changed at the source. Any update to data at the source (ie edits to bans) will be reflected on CentCom, and the original data will be deleted.
Similar to what happens to edited bans, CentCom only acts as a 'mirror', and as a result it automatically deletes bans when they are no longer present on the source. It will never store deleted bans.