ScreamingSandals / BedWars

Simple BedWars minigame plugin for Spigot version 1.8.8 - 1.21.3
https://www.spigotmc.org/resources/bedwars.63714/
GNU Lesser General Public License v3.0
271 stars 95 forks source link

Team [NPC] XXX already exists in this scoreboard #366

Closed leomeinel closed 3 years ago

leomeinel commented 3 years ago

Describe the bug

I've just set up a new arena on a bungee-paper server. The server has multiple minigames hosted (including bedwars) Theres a lobbyworld (with multiverse) and a gameworld (with a lobby too in the same world). I'm using SBA and Botsentry. Connecting to the lobby works fine, but when the game starts, all players get kicked with the message: The server you were previously on went down, you have been connected to a fallback server The bungeelog only shows: [12:18:36 INFO]: BotSentry ? 2 Bad packets prevented (last second) which might be relevant, the console also doesnt show any real errors that could get me further. I read a bit about it, but couldnt find a real solution, also none really related to the bungee-error I get. If you want me to clarify it further I can withou a problem.

Server and plugin version

Java version: adoptopenjdk-16 Spigot version: git-paper-279 BedWars version: 0.2.19 [Addon] SBA version: 1.5.6 - SNAPSHOT (https://ci.screamingsandals.org/job/SBA/ #304) Botsentry version: 9.1-THANATOS

Installed plugins on server (can be obtained by /pl)

AAC5, AACAdditionPro, AACPlus, BedWars, BowHub, ChatSentry, Citizens, ConditionalCommands, CoreProtect, DeluxeHub, Duels, eGlow, Essentials, EssentialsSpawn, floodgate, HeadDatabase, HolographicDisplays, HolographicExtension, HungerGames, LiteBans, LPX*, LuckPerms, MarriageMaster, Multiverse-Core, OllozSays, PlaceholderAPI, ProtocolLib, SBA, ServerSelectorX, SpleefX, TAB, TheBridge, Vault, VentureChat, WorldEdit, WorldEditSelectionVisualizer, WorldGuard, XConomy Bungee: BotSentry, Luckperms, Litebans

Console log

[12:18:21 INFO]: [SBA] Creating board for player: bbb [12:18:36 INFO]: [SBA] Creating arena for game: lumber [12:18:36 INFO]: [SBA] Creating board for player: aaa [12:18:36 INFO]: [SBA] Creating board for player: bbb [12:18:36 INFO]: aaa lost connection: Disconnected [12:18:36 INFO]: [SBA] Destroyed board of player: aaa [12:18:36 INFO]: [SBA] Unregistered player: aaa [12:18:36 INFO]: - aaa Disconnected [12:18:36 INFO]: bbb lost connection: Disconnected [12:18:36 INFO]: [SBA] Destroyed board of player: bbb [12:18:36 INFO]: [SBA] Removing arena for game: lumber [12:18:36 INFO]: [SBA] Unregistered player: bbb [12:18:36 INFO]: - bbb Disconnected Bungee: [12:18:36 INFO]: [aaa] disconnected with: The server you were previously on went down, you have been connected to a fallback server [12:18:36 INFO]: [aaa|aaa] -> UpstreamBridge has disconnected [12:18:36 INFO]: [aaa|aaa] <-> DownstreamBridge <-> [fun] has disconnected [12:18:36 INFO]: [bbb] disconnected with: The server you were previously on went down, you have been connected to a fallback server [12:18:36 INFO]: [bbb|bbb] -> UpstreamBridge has disconnected [12:18:36 INFO]: [bbb|bbb] <-> DownstreamBridge <-> [fun] has disconnected [12:18:36 INFO]: BotSentry ? 2 Bad packets prevented (last second)

Configuration (of config.yml and shop.yml)

locale: en
debug: false
allow-crafting: false
keep-inventory-on-death: false
in-lobby-colored-leather-by-team: true
jointeam-entity-show-name: true
friendlyfire: false
prevent-killing-villagers: true
join-randomly-on-lobby-join: false
prevent-spawning-mobs: true
spawner-disable-merge: true
prevent-lobby-spawn-mobs-in-radius: 16
spawner-holo-height: 0.25
spawner-holograms-countdown: true
damage-when-player-is-not-in-arena: false
remove-unused-target-blocks: true
allow-block-falling: true
player-respawn-items: false
gived-player-respawn-items: []
automatic-coloring-in-shop: true
sell-max-64-per-click-in-shop: true
enable-cheat-command-for-admins: false
destroy-placed-blocks-by-explosion: true
holo-above-bed: true
allow-spectator-join: false
disable-server-message:
  player-join: false
  player-leave: false
disable-flight: true
respawn-cooldown:
  enabled: true
  time: 5
stop-team-spawners-on-die: false
allow-fake-death: false
change-allowed-commands-to-blacklist: false
bungee:
  enabled: false
  serverRestart: true
  serverStop: false
  server: fun
  auto-game-connect: false
  kick-when-proxy-too-slow: true
  motd:
    enabled: false
    waiting: '%name%: Waiting for players [%current%/%max%]'
    waiting_full: '%name%: Game is full [%current%/%max%]'
    running: '%name%: Game is running [%current%/%max%]'
    rebuilding: '%name%: Rebuilding...'
    disabled: '%name%: Game is disabled'
farmBlocks:
  enable: false
  blocks: []
scoreboard:
  title: §a%game%§r - %time%
  bedLost: §c✘
  anchorEmpty: §e✘
  bedExists: §a✔
  teamTitle: '%bed%%color%%team%'
  enable: false
title:
  fadeIn: 0
  stay: 20
  fadeOut: 0
  enabled: false
shop:
  rows: 4
  render-actual-rows: 6
  render-offset: 9
  render-header-start: 0
  render-footer-start: 45
  items-on-row: 9
  show-page-numbers: true
  inventory-type: CHEST
  citizens-enabled: false
items:
  jointeam: COMPASS
  startgame: DIAMOND
  shopback: BARRIER
  shopcosmetic: GRAY_STAINED_GLASS_PANE
  pageback: ARROW
  pageforward: ARROW
  team-select: WHITE_WOOL
  leavegame: RED_BED
vault:
  enable: true
  reward:
    kill: 100000
    win: 10000000
    final-kill: 500000
    bed-destroy: 1000000
respawn:
  protection-enabled: true
  protection-time: 10
specials:
  action-bar-messages: true
  rescue-platform:
    is-breakable: false
    delay: 0
    break-time: 10
    distance: 1
    material: GLASS
  protection-wall:
    is-breakable: false
    delay: 20
    break-time: 0
    width: 5
    height: 3
    distance: 2
    material: CUT_SANDSTONE
  tnt-sheep:
    speed: 0.25
    follow-range: 10.0
    max-target-distance: 32
    explosion-time: 8
  arrow-blocker:
    protection-time: 10
    delay: 5
  warp-powder:
    teleport-time: 6
    delay: 0
  magnet-shoes:
    probability: 75
  golem:
    speed: 0.25
    follow-range: 10
    health: 20
    name-format: '%teamcolor%%team% Golem'
    show-name: true
    delay: 0
    collidable: false
  teamchest:
    turn-all-enderchests-to-teamchests: true
  throwable-fireball:
    explosion: 3.0
    damage: 2.0
  auto-igniteable-tnt:
    damage-placer: true
    explosion-time: 3
sounds:
  bed_destroyed:
    sound: ENTITY_ENDER_DRAGON_GROWL
    volume: 1
    pitch: 1
  my_bed_destroyed:
    sound: ENTITY_ENDER_DRAGON_GROWL
    volume: 1
    pitch: 1
  countdown:
    sound: UI_BUTTON_CLICK
    volume: 1
    pitch: 1
  game_start:
    sound: ENTITY_PLAYER_LEVELUP
    volume: 1
    pitch: 1
  team_kill:
    sound: ENTITY_PLAYER_LEVELUP
    volume: 1
    pitch: 1
  player_kill:
    sound: ENTITY_PLAYER_BIG_FALL
    volume: 1
    pitch: 1
  item_buy:
    sound: ENTITY_ITEM_PICKUP
    volume: 1
    pitch: 1
  upgrade_buy:
    sound: ENTITY_EXPERIENCE_ORB_PICKUP
    volume: 1
    pitch: 1
  respawn_cooldown_wait:
    sound: UI_BUTTON_CLICK
    volume: 1
    pitch: 1
  respawn_cooldown_done:
    sound: ENTITY_PLAYER_LEVELUP
    volume: 1
    pitch: 1
game-effects:
  end:
    effects:
    - ==: Firework
      flicker: false
      trail: false
      colors:
      - &id001
        ==: Color
        RED: 255
        BLUE: 255
        GREEN: 255
      fade-colors:
      - *id001
      type: BALL
    power: 1
    type: Firework
  start: {}
  kill: {}
  teamkill: {}
  lobbyjoin: {}
  lobbyleave: {}
  respawn: {}
  beddestroy: {}
  warppowdertick: {}
lobby-scoreboard:
  title: §eBEDWARS
  content:
  - ' '
  - '§fMap: §2%arena%'
  - '§fPlayers: §2%players%§f/§2%maxplayers%'
  - ' '
  - §fWaiting ...
  - ' '
  enabled: false
statistics:
  enabled: true
  type: DATABASE
  show-on-game-end: false
  bed-destroyed-kills: false
  scores:
    kill: 10
    final-kill: 0
    die: 0
    win: 50
    bed-destroy: 25
    lose: 0
    record: 100
database:
  host: localhost
  port: 3306
  db: xxx
  user: xxx
  password: xxxx
  table-prefix: bw_
  useSSL: false
bossbar:
  use-xp-bar: false
  lobby:
    enable: true
    color: YELLOW
    style: SEGMENTED_20
  game:
    enable: true
    color: GREEN
    style: SEGMENTED_20
holograms:
  enabled: true
  headline: Your §eBEDWARS§f stats
  leaderboard:
    headline: '&6Bedwars Leaderboard'
    format: '&l%order%. &7%name% - &a%score%'
    size: 10
chat:
  format: '<%teamcolor%%name%§r> '
  separate-chat:
    lobby: false
    game: false
  send-death-messages-just-in-game: true
  send-custom-death-messages: true
  default-team-chat-while-running: true
  all-chat-prefix: '@a'
  team-chat-prefix: '@t'
  all-chat: '[ALL] '
  team-chat: '[TEAM] '
  death-chat: '[DEATH] '
  disable-all-chat-for-spectators: false
  override: false
rewards:
  enabled: false
  player-win:
  - /example {player} 200
  player-end-game:
  - /example {player} {score}
  player-destroy-bed:
  - /example {player} {score}
  player-kill:
  - /example {player} 10
  player-final-kill:
  - /example {player} 10
lore:
  generate-automatically: true
  text:
  - '§7Price:'
  - §7%price% %resource%
  - '§7Amount:'
  - §7%amount%
sign:
  lines:
  - §c§l[BedWars]
  - '%arena%'
  - '%status%'
  - '%players%'
  block-behind:
    enabled: false
    waiting: ORANGE_STAINED_GLASS
    rebuilding: BROWN_STAINED_GLASS
    in-game: GREEN_STAINED_GLASS
    game-disabled: RED_STAINED_GLASS
hotbar:
  selector: 0
  color: 1
  start: 2
  leave: 8
breakable:
  asblacklist: false
  enabled: true
  blocks:
  - GRASS
  - SNOW
leaveshortcuts:
  enabled: false
  list:
  - leave
mainlobby:
  enabled: true
  location: 60.500708456240126;143.0;3.4870427260998813;-89.85074;-2.699583
  world: world_spooky
turnOnExperimentalGroovyShop: false
preventSpectatorFlyingAway: false
removePurchaseMessages: false
disableCakeEating: true
disableDragonEggTeleport: true
preventArenaFromGriefing: false
update-checker:
  zero:
    console: true
    admins: true
  one:
    console: true
    admins: true
target-block:
  allow-destroying-with-explosions: false
  respawn-anchor:
    fill-on-start: true
    enable-decrease: true
    sound:
      charge: BLOCK_RESPAWN_ANCHOR_CHARGE
      used: BLOCK_GLASS_BREAK
      deplete: BLOCK_RESPAWN_ANCHOR_DEPLETE
  cake:
    destroy-by-eating: true
event-hacks:
  damage: false
  destroy: false
  place: false
tab:
  enable: false
  header:
    enabled: true
    contents:
    - '&aMy awesome BedWars server'
    - '&bMap: %map%'
    - '&cPlayers: %respawnable%/%max%'
  footer:
    enabled: true
    contents:
    - '&eexample.com'
    - '&fWow!!'
    - §a%spectators% are watching this match
  hide-spectators: true
  hide-foreign-players: false
default-permissions:
  join: true
  leave: true
  stats: true
  list: true
  rejoin: true
  autojoin: true
  leaderboard: true
version: 2
join-randomly-after-lobby-timeout: true
spawner-holograms: false
game-start-items: true
gived-game-start-items:
- WOODEN_SWORD
- LEATHER_HELMET
- LEATHER_CHESTPLATE
- LEATHER_LEGGINGS
- LEATHER_BOOTS
destroy-placed-blocks-by-explosion-except:
- GLASS
allowed-commands:
- /shout
- /party
player-drops: false
compass-enabled: false
add-wool-to-inventory-on-join: false
disable-hunger: true
resources:
  iron:
    material: IRON_INGOT
    spread: 0.1
    color: WHITE
    name: Iron
    interval: 2.5
    translate: resource_iron
  gold:
    material: GOLD_INGOT
    spread: 0.1
    color: GOLD
    name: Gold
    interval: 8
    translate: resource_gold
  emerald:
    material: EMERALD
    spread: 0.1
    color: GREEN
    name: Emerald
    interval: 60
    translate: resource_emerald
  diamond:
    material: DIAMOND
    spread: 0.1
    color: BLUE
    name: Diamond
    interval: 30
    translate: resource_diamond
leomeinel commented 3 years ago

https://github.com/BlackDemonZyT/BotSentry/issues/39

leomeinel commented 3 years ago

Botsentry Config:

#    _______    ______  ________         ______   ________  __    __  ________  _______  __      __     #
#   |       \  /      \|        \       /      \ |        \|  \  |  \|        \|       \|  \    /  \    #
#   | $$$$$$$\|  $$$$$$\\$$$$$$$$      |  $$$$$$\| $$$$$$$$| $$\ | $$ \$$$$$$$$| $$$$$$$\\$$\  /  $$    #
#   | $$__/ $$| $$  | $$  | $$         | $$___\$$| $$__    | $$$\| $$   | $$   | $$__| $$ \$$\/  $$     #
#   | $$    $$| $$  | $$  | $$          \$$    \ | $$  \   | $$$$\ $$   | $$   | $$    $$  \$$  $$      #
#   | $$$$$$$\| $$  | $$  | $$          _\$$$$$$\| $$$$$   | $$\$$ $$   | $$   | $$$$$$$\   \$$$$       #
#   | $$__/ $$| $$__/ $$  | $$         |  \__| $$| $$_____ | $$ \$$$$   | $$   | $$  | $$   | $$        #
#   | $$    $$ \$$    $$  | $$          \$$    $$| $$     \| $$  \$$$   | $$   | $$  | $$   | $$        #
#    \$$$$$$$   \$$$$$$    \$$           \$$$$$$  \$$$$$$$$ \$$   \$$    \$$    \$$   \$$    \$$        #
#                                                                                                       #
#              _________          _______  _        _______ _________ _______  _______                  #
#              \__   __/|\     /|(  ___  )( (    /|(  ___  )\__   __/(  ___  )(  ____ \                 #
#                 ) (   | )   ( || (   ) ||  \  ( || (   ) |   ) (   | (   ) || (    \/                 #
#                 | |   | (___) || (___) ||   \ | || (___) |   | |   | |   | || (_____                  #
#                 | |   |  ___  ||  ___  || (\ \) ||  ___  |   | |   | |   | |(_____  )                 #
#                 | |   | (   ) || (   ) || | \   || (   ) |   | |   | |   | |      ) |                 #
#                 | |   | )   ( || )   ( || )  \  || )   ( |   | |   | (___) |/\____) |                 #
#                 )_(   |/     \||/     \||/    )_)|/     \|   )_(   (_______)\_______)                 #
#                                                                                                       #
#                                                                                                       #
#                  Join our Discord Server if you need Support or have any doubt!                       #
#                                  https://discord.gg/uxRTwDa                                           #
#                                                                                                       #
#                      You can get some translations made by our community in:                          #
#                               https://docs.cyberdevelopment.es                                        #
#                                                                                                       #
#  Add our official Discord Bot to your DC server, the bot will send a message in your Discord Server   #
#      and in your DMs when an attack occurs to your server, with statistics related to the attack      #
#       https://discord.com/oauth2/authorize?client_id=750526188555993148&scope=bot&permissions=8       #
#                                                                                                       #
#-------------------------------------------------------------------------------------------------------#
#
#     _____ ____  _   _ ______ _____ _____ _    _ _____         _______ _____ ____  _   _
#    / ____/ __ \| \ | |  ____|_   _/ ____| |  | |  __ \     /\|__   __|_   _/ __ \| \ | |
#   | |   | |  | |  \| | |__    | || |  __| |  | | |__) |   /  \  | |    | || |  | |  \| |
#   | |   | |  | | . ` |  __|   | || | |_ | |  | |  _  /   / /\ \ | |    | || |  | | . ` |
#   | |___| |__| | |\  | |     _| || |__| | |__| | | \ \  / ____ \| |   _| || |__| | |\  |
#    \_____\____/|_| \_|_|    |_____\_____|\____/|_|  \_\/_/    \_\_|  |_____\____/|_| \_|
#
prefix: false
# TOP FEATURE!
# Should the Google-Captcha system to un-blacklist players themselves be enabled? (Hosted by us)
# This will download a Global whitelist of IPs that completed the google captcha from:
# https://cyberdevelopment.es/BotSentry/verify/
#
# If you want to customize the website you can get a custom link here and shorten it if you want:
# https://cyberdevelopment.es/BotSentry/verify/custom/
#
# By default, when users get blacklisted they will get the kick message with the URL (www.notbot.es) so they can whitelist themselves.
# HIGHLY RECOMMENDED to leave it to TRUE
database-whitelist-sync: true

# AntiBot mode generic settings
antibotmode:
  # When AntiBot mode will automatically disable during attack
  # Default values are: Disable AntiBot mode if less than 8 non-blacklisted and non-whitelisted joins in 5 seconds,
  # and stays below those 8 IPs for 3 seconds.
  # The purpose of this is to disable AntiBot-mode automatically when the 95% of the attack is mitigated
  stop:
    enabled: false
    amount: 8
    time: 5
    keep: 3
  # Conditions settings, how many % will give to a player/bot certain checks
  condition:
    # If an IP joins with 3 different usernames during an attack
    cloned:
      amount: 3
      percentage: 50
    # If an IP joins from the specified country list, it will give that % of bot to the IP
    # You can find a list of the top-countries detected bots by Bot-Sentry in:
    # https://cyberdevelopment.es/BotSentry/publicapi/countries.php
    # There are few blocked by default, you MUST adjust it to your needs!
    # This check can be really effective to block bots, can block the 90% of the attack in 5 seconds if well-configured!
    deniedcountry:
      # When set to true, it will add the percentage to the countries inside the list.
      # When set to false, it will add the percentage to countries that are outside the list.
      denymode: true
      percentage: 50
      values: [IL, TH, RU, ID, BR, IN, CN]
    # If an IP joins from the specified continents list, it will give that % of bot to the IP
    # You can find a list of the top-countries detected bots by Bot-Sentry in:
    # https://cyberdevelopment.es/BotSentry/publicapi/continents.php
    # There are few blocked by default, you MUST adjust it to your needs!
    # This check can be really effective to block bots, can block the 90% of the attack in 5 seconds if well-configured!
    deniedcontinent:
      # When set to true, it will add the percentage to the continents inside the list.
      # When set to false, it will add the percentage to continents that are outside the list.
      denymode: true
      percentage: 50
      values: [Antarctica]
    # If an IP joins from the specified providers list, it will give that % of bot to the IP
    # You can find a list of the top-providers detected bots by Bot-Sentry in:
    # https://cyberdevelopment.es/BotSentry/publicapi/providers.php
    # There are few blocked by default, you MUST adjust it to your needs!
    # This check can be really effective to block bots, can block the 60% of the attack in 5 seconds if well-configured!
    deniedprovider:
      # When set to true, it will add the percentage to the providers inside the list.
      # When set to false, it will add the percentage to providers that are outside the list.
      denymode: true
      percentage: 50
      values: [DEPARTMENT OF AGRICULTURE WATER AND THE ENVIRONMENT]
    # If an IP joins 35 times during an attack
    usainbolt:
      percentage: 25
      amount: 35
    # If an IP is a proxy/vpn
    # This check can mitigate easily more than the 70% of the attack
    unknownlocation:
      percentage: 50
  # If a bot/player reach this likeliness amount, will get blacklisted
  minimumlikeliness: 50
  # The time that AntiBot mode will be enabled, don't touch it, there are other checks that makes it posible to stop antibot mode earlier.
  time: 10

# Auto purger settings, to maintain things optimized automatically without need of manual interaction
# - Modes:
# ?? limit: purge the specified thing when the number is reached
# ?? afterattack: purge the specified thing after every attack ends
# ?? time: purge the specified thing every X amount of minutes
autopurger:
  # Whitelist auto-purging
  # Modes: afterattack/time (limit is only for blacklist and whitelist)
  whitelist:
    # In case you use limit
    amount: 200000
    # In case you use time
    time: 30
    mode: "limit"
    enabled: false
  # Server Logs auto-purging
  serverlogs:
    # In case you use time
    time: 30
    mode: "afterattack"
    enabled: false
  # Blacklist auto-purging
  blacklist:
    # In case you use time
    time: 30
    mode: "limit"
    # In case you use limit
    amount: 100000
    enabled: false
  # Bot-Sentry attack logs auto-purging
  attacklogs:
    mode: "time"
    # In case you use time
    time: 30
    enabled: false
  # Bot-Sentry slow bots logs auto-purging
  slowbotslogs:
    mode: "time"
    # In case you use time
    time: 30
    enabled: false

# MySQL settings
# Only enable MySQL when you have multiple BungeeCord instances.
mysql:
  settings:
    updateinterval: 60
  port: 3306
  username: "xxx"
  database: "xxx"
  password: "xxx"
  ip: "localhost"
  enabled: true

# Slow attack detection settings
# To prevent possible bypasses and breaches, this is dev-Only
# You will need to contact us in order to toggle this settings. Default ones should be perfect.
# https://discord.gg/aDAqmvA
detection:
  # Slow attack detection of non-advanced bots
  amazon:
    amount: 3
    # Toggle this to false if you use Essentials.
    sendjoinmessagelater: true
    blacklist: false
    time: 8
    antibotmode: true
    enabled: true
    toggletime: 120
  # Slow attack detection of advanced bots (more intelligent bots)
  strangesituation:
    latency: 600
    time: 90
    amount: 3
    blacklist: false
    antibotmode: true
  # Slow attack detection to prevent bots from registering
  stopregistering:
    amount: 4
  # If 5 connections are established in 250 milliseconds, activate AntiBot mode
  usainjoin:
    amount: 5
    time: 500
  # How many different usernames can play with the same IP at the same time
  dolly:
    amount: 5
  slowattack:
    # Dev-only, contact us if you have problems
    sameip:
      time: 1
      amount: 10
    # If there is a sudden increase of new players joining, enable AntiBot Mode
    spike:
      enabled: true
      # The increase which AntiBot Mode will enable on. 3 means more than 3 times as normal.
      multiplier: 3
  # If a player joins for the first time, it will get kicked by BotSentry to to detect slow bot attacks.
  firstjoin:
    enabled: true
  # The regex to compare the username with. If everything it correct, the player will proceed login
  # Check how regex works here: https://regexr.com/
  illegalname:
    regex: "[a-zA-Z0-9_.]*"

# Console filtering settings
consolefiltering:
  # Should the console be filtered when attack?
  enabled: true
  # Should InitialHandler messages always be filtered?
  # We really recommend keeping this to true, as it defends against 1 type of exploited attack.
  initialhandler: true
  # Add here your custom messages, which will be filtered in the console.
  # Filtered messages will be removed.
  custommessages: [Typing this message in console, will be filtered!]
  # Should BotSentry filter specific console messages, per platform.
  # These messages are default per platform.
  # It is not supported to disable this setting, as some errors will occur when disabled!!!
  defaultmessages: true
  # Clear mode is when no console lines are logged at all.
  # This results in less CPU and RAM usage.
  clearmode:
    # The amount of filtered messages (both bad packets and custom messages) which is needed in the given timeframe to enable clear mode
    amount: 20
    # The timeframe in seconds it checks for
    time: 3
    # The minimum duration in seconds of clear mode
    duration: 5
    # The grace period after the minimum duration in which it keeps detecting for an enormous amount of bad packets.
    # This is in seconds and can be 0 if no grace period is necessary.
    # In the grace period these checks are performed to check if there is still a lot going on:
    # - Restart clear mode if the amount of logged messages (all) in the grace period is more than the grace avarage
    # - The grace average is calculated using: ((clearmode.amount) / clearmode.time * clearmode.grace) * 2
    grace: 1
    # Should clear mode be enabled or not?
    enabled: true

# Whitelist filtering settings
# After how many minutes playing will an IP be whitelisted. A value of 0 and lower means never.
whitelist:
  automatic: 2

# Firewall blacklisting settings
# You will need a system with IPSet and IPTables permissions in order to run this (On Unix like system, it installs it for you)
blacklist:
  firewall:
    # All the commands that will execute for internal bans
    unix:
      install: "apt-get --yes install ipset" # This command will be executed on bot-sentry enable
      load: "ipset restore -file /etc/ipset.conf" # This command will be executed on bot-sentry enable
      ipset: "ipset create -! blacklist hash:ip hashsize 4096" # This command will be executed on bot-sentry enable
      iptables: "iptables -t raw -A PREROUTING -p tcp --dport 25565:25600 -m set --match-set blacklist src -j DROP" # This command will be executed on bot-sentry enable
      iptablesdelete: "iptables -t raw -D PREROUTING -p tcp --dport 25565:25600 -m set --match-set blacklist src -j DROP" # This command will be executred on Bot-Sentry disable
      save: "ipset save > /etc/ipset.conf" # This command will be executed on bot-sentry enable
    add: "ipset -! -A blacklist %1$s" # This command will be executed with the detected IP when it gets Blacklisted
    # Should internal bans be enabled?
    enabled: false
    remove: "ipset -! -D blacklist %1$s" # This command will be executed with the IP when it gets Un-Blacklisted or Whitelisted
    flush: "ipset flush blacklist" # This command will be executed when doing the command /bs blacklist clear. When setting to: '' it will run each ip through the remove command (in case there is no flush)

# Should bot-sentry logs be enabled by default?
# If you have any false positives, it will be logged, then contact us somewhere and we touch your config specifically to fix it and keep blocking bots without problem.
logs: true

# Command specific settings
commands:
  bs:
    # Should the /bs blacklist clear and /bs whitelist clear ask to confirm the request with a code?
    # Recommended if you give the permission to clear the blacklist/whitelist to a non-experienced user
    clearconfirmation: true
  bsw:
    search:
      # Amount of results per page in the Wiki search menu
      resultpagesize: 6
      # The size of the context before and after the searched word.
      # 1 meaning only one word before and after the searched word etc.
      resultcontext: 2
zlataovce commented 3 years ago

try without botsentry, if it works without botsentry, it's not our issue

leomeinel commented 3 years ago

try without botsentry, if it works without botsentry, it's not our issue

Tried without botsentry, error persists. Same setup just removed botsentry from proxy. I kind of hoped it'd have to do with botsentry tbh.

I finally got an errormessage now tho :laughing:

[18:05:38] [Netty Worker IO Thread #26/ERROR]: [/bbb|bbb] <-> DownstreamBridge <-> [fun] - encountered exception
java.lang.IllegalArgumentException: Team [NPC] d1c509140d already exists in this scoreboard
    at com.google.common.base.Preconditions.checkArgument(Preconditions.java:191) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at net.md_5.bungee.api.score.Scoreboard.addTeam(Scoreboard.java:73) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at net.md_5.bungee.connection.DownstreamBridge.handle(DownstreamBridge.java:243) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at net.md_5.bungee.protocol.packet.Team.handle(Team.java:124) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:114) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:795) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:480) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at java.lang.Thread.run(Unknown Source) [?:?]
[18:05:38] [Netty Worker IO Thread #26/INFO]: [bbb] disconnected with: The server you were previously on went down, you have been connected to a fallback server
[18:05:38] [Netty Worker IO Thread #26/INFO]: [/bbb|bbb] -> UpstreamBridge has disconnected
[18:05:38] [Netty Worker IO Thread #26/INFO]: [/bbb|bbb] <-> DownstreamBridge <-> [fun] has disconnected
[18:05:38] [Netty Worker IO Thread #21/ERROR]: [/aaa|aaa] <-> DownstreamBridge <-> [fun] - encountered exception
java.lang.IllegalArgumentException: Team [NPC] d1c509140d already exists in this scoreboard
    at com.google.common.base.Preconditions.checkArgument(Preconditions.java:191) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at net.md_5.bungee.api.score.Scoreboard.addTeam(Scoreboard.java:73) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at net.md_5.bungee.connection.DownstreamBridge.handle(DownstreamBridge.java:243) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at net.md_5.bungee.protocol.packet.Team.handle(Team.java:124) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:114) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:795) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:480) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[waterfall.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
    at java.lang.Thread.run(Unknown Source) [?:?]
[18:05:38] [Netty Worker IO Thread #21/INFO]: [aaa] disconnected with: The server you were previously on went down, you have been connected to a fallback server
[18:05:38] [Netty Worker IO Thread #21/INFO]: [/aaa|aaa] -> UpstreamBridge has disconnected
[18:05:38] [Netty Worker IO Thread #21/INFO]: [/aaa|aaa] <-> DownstreamBridge <-> [fun] has disconnected
leomeinel commented 3 years ago

This seems to be related https://github.com/pronze/SBA/issues/177

leomeinel commented 3 years ago

https://github.com/pronze/SBA/issues/193

iamceph commented 3 years ago

Use Velocity, that will help :P

leomeinel commented 3 years ago

Switching to velocity would be pretty hard for me. I'd have to switch out 3/4 plugins. One is still WIP for velocity. But if theres no other option, I'm at least considering it

DeathGOD7 commented 3 years ago

Its same for bungeecord and waterfall, gives same error with SBA/SBW. Asked the dev team of waterfall and they said it's plugins fault. Dunno who is the culprit behind the error. Hope sbw gets it fixed in 0.3.0 or 0.2.x releases.

Also, they said " Since bungeecord and waterfall take team/npc in scoreboard seriously." So it is best if you use velocity. Most plugins are being ported to velocity and it's better than bungeecord.

leomeinel commented 3 years ago

Thanks a lot! Switching to velocity solved the problem. Also found some alternatives to the plugins I had to replace :) Seems like its still a bug, but that was a good solution for me. If you want, you can consider this closed.