Code Monkey home page Code Monkey logo

gbans's Introduction

gbans

License: MIT Test, Build & Publish Codacy Badge Go Report Card GoDoc Lines of Code Discord chat

gbans is a centralized game administration system for Team Fortress 2 that incorporates a global ban system similar to sourcebans++ as well as some additional basic community tools like news, forums & wikis. The project was initially only intended to be a more modern & secure replacement for sourcebans, but has evolved to handle broader community aspects.

Stability / Usage Notice

While we currently are dogfooding the project on a community with around 50 servers, I would not recommend non-developers use the project yet. It's still in fairly major development mode and large sections are still incomplete or function but very rough.

Before we tag a 1.0.0 release, we will write some proper user-facing documentation. You can however look at the currently incomplete docs.

Features

  • General
  • Import/Export of gbans databases
    • Backend linking of gbans services to enable use of other operators lists in real-time.
    • tf2_bot_detector compatible player list exports.
  • Game support, support for other games would be possible, but is not currently planned.
    • Team Fortress 2
  • Blocking lists & types
    • Valves source server banip config
    • Existing sourcebans database
    • CIDR/IP bans
    • tf2_bot_detector
    • Arbitrary 3rd party CIDR block lists, Proxy/VPN/Datacenter bans
    • FireHOL databases
  • Database support
  • Centralized UDP based logging
    • Message History
    • Connection History
  • Match Histories
    • Stats
      • Overall
      • Per Weapon
      • Per Maps
      • Per Server
      • Per Timeframe
      • Daily position changes
      • Charts
    • "Skill" based scrambles using historical match data
  • SourceMod Plugin
    • Game server authentication
    • Restrict banned players from connecting
    • Restrict muted/gagged players on join
    • Dynamically load admins/mods/reserved slots from gbans
    • Sourcemod admins-sql-* plugin compatibility.
    • STV Recording with auto truncating methods to cleanup old demos
    • /gb_ban <player_id|steam_id> duration Reason Ban a user
    • /gb_unban Unban a previously banned user
    • /gb_kick Kick a user
    • /gb_mod or /mod <message> Call for a mod on discord
  • Markdown formatting support for all multiline inputs with image uploading
  • Community Forum System
    • Categories
    • Forums
    • Private / Restricted forums
    • Signatures
    • Active user display
    • Advanced markdown editor interface
  • User Interfaces
    • CLI
    • Discord
    • Web
      • Public / Authenticated
        • Server Browser
        • News
        • Wiki
        • User reports
        • Ban Appeals
        • SourceTV Downloads
        • In-Game chat logs
        • Server browser
      • Mods
        • Edit Word Filters
        • Ban player by steam/net/asn/group
        • Current Reports
        • Current Appeals
        • Edit News
        • Edit contests
        • In-Game Vote logging
        • Networking Queries
          • Player IP History
          • Players Sharing IPs
          • Query IP information: Location/ASN/Proxy/Map
        • External CIDR block lists editor
      • Admins
        • Edit Servers
        • Edit game moderator/admin permissions. Admins/Groups/Command overrides/Group immunities.

Docker

Docker is recommended to run gbans. You can find the official docker images on ghcr.io.

Assuming you have created your config file and have a database setup you can run it using something like:

docker run -it --rm -v `$(pwd)`/gbans.yml:/app/gbans.yml:ro ghcr.io/leighmacdonald/gbans:latest

There is also a docker-compose config you can use which provides the database as well.

docker-compose -f docker/docker-compose.yml up --build --remove-orphans --abort-on-container-exit --exit-code-from gbans

Documentation

For installation, configuration and usage instruction, developer notes, please see the docs.

Contributors

leighmacdonald
Leigh MacDonald
Gcommer
Gcommer
rjdXpxigYxNT
rjdXpxigYxNT
crescentrose
Ivan
Mircoxi
Mircoxi
Tolfx
Matthew
Naleksuh
Naleksuh
camp3r101
camp3r101
jack-avery
Jack Avery
tdurieux
Thomas Durieux

gbans's People

Contributors

leighmacdonald avatar dependabot[bot] avatar gcommer avatar rjdxpxigyxnt avatar crescentrose avatar mircoxi avatar tolfx avatar naleksuh avatar camp3r101 avatar github-actions[bot] avatar jack-avery avatar tdurieux avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.