# ████████████████████████████████████████████████████ # ██ Formatting # ██ # ██▓▓▒▒░░ # ███ [ Staffchat Formats ] ███ Staffchat1: type: format debug: false format: "<&d><&l>[<&r><&5>SC<&r><&d><&l>]<&e>✯<&3> <&8>» <&r><&7>" Staffchat2: type: format debug: false format: "<&d><&l>[<&r><&5>SC<&r><&d><&l>]<&9>✯<&b> <&8>» <&r><&7>" Staffchat3: type: format debug: false format: "<&d><&l>[<&r><&5>SC<&r><&d><&l>]<&4>✯<&b> <&8>» <&r><&7>" Staffchat4: type: format debug: false format: "<&d><&l>[<&r><&5>SC<&r><&d><&l>]<&6>✯<&b> <&r><&7>" # ███ [ Buildchat Formats ] ███ Buildchat1: type: format debug: false format: "<&c><&l>[<&r><&4>BC<&c><&l>]<&e>✯<&b> <&8>» <&r><&7>" Buildchat2: type: format debug: false format: "<&c><&l>[<&r><&4>BC<&c><&l>]<&9>✯<&b> <&8>» <&r><&7>" Buildchat3: type: format debug: false format: "<&c><&l>[<&r><&4>BC<&c><&l>]<&4>✯<&b> <&8>» <&r><&7>" Buildchat4: type: format debug: false format: "<&c><&l>[<&r><&4>BC<&c><&l>]<&c>✯<&b> <&8>» <&r><&7>" # ███ [ BehrBot Format | Minecraft ] ███ bbf: type: format debug: false format: "<&4>[<&c>B<&d>e<&c>hrBot<&4>] <&f><&o>" # ████████████████████████████████████████████████████ # ██ Listening Commands # ██ # ██▓▓▒▒░░ # ███ [ /npc Remove All ] ███ NPCRemoveAllCommandChecker: type: world debug: false events: #If player is not [Behr], give warning message & instructions to custom command/alias to override on npc command: - if != remove || != all: - queue clear - if != Behr_riley: - narrate "<&c>Please type <&4>/NpcRemoveAllConfirm<&c> if you are <&l><&4>ABSOLUTELY<&r><&c> sure you want to remove Every NPC..." - determine fulfilled # ███ [ WorldEdit Command Restriction ] ███ #If player is not [Creative] or [Spectator], give warning message CreativeCommandChecker: type: world debug: false events: on pos1|pos2|hpos1|hpos2|cut|set|replace|overlay|walls|outline|center|smooth|deform|hollow|regen|move|stack|naturalize|line|curve|forest|flora|copy|custompaste|rotate|flip|schematic|schem|generate|generatebiome|hcyl|cyl|sphere|hsphere|pyramid|hpyramid|forestgen|pumpkins|toggleplace|fill|fillr|drain|fixwater|fixlava|removeabove|removebelow|replacenear|removenear|snow|thaw|butcher|remove command: - if != Creative: - narrate "<&c>This command is permitted only in Creative or Spectator Mode." - determine fulfilled on player drops item: - if == creative && : - narrate format:bbf " attempted to drop items at [<&6>X:<&e>, <&6>Y:<&e>, <&6>Z:<&e>]<&f> in creative mode." - narrate format:bbf "Staff Alerted & Action Documented. You are not allowed to transfer items from Creative." - determine cancelled on player opens inventory: - if == creative && : - narrate format:bbf " attempted to open a chest at [<&6>X:<&e>, <&6>Y:<&e>, <&6>Z:<&e>] in creative mode." - narrate format:bbf "Staff Alerted & Action Documented. You are not allowed to transfer items from Creative." - determine cancelled # ███ [ Commandless Staff Chat ] ███ StaffChatCommandless: type: world debug: false events: on player chats: - if : - determine passively cancelled - if || : - narrate format:Staffchat1 "" targets: - queue clear - else if : - narrate format:Staffchat2 "" targets: - queue clear - else if : - narrate format:Staffchat2 "" targets: - queue clear - else if : - narrate format:Staffchat2 "" targets: - queue clear - else if : - narrate format:Staffchat3 "" targets: - queue clear - if && : - determine passively cancelled - if || : - narrate format:Staffchat1 "" targets: - queue clear - else if : - narrate format:Staffchat2 "" targets: - queue clear - else if : - narrate format:Staffchat2 "" targets: - queue clear - else if : - narrate format:Staffchat2 "" targets: - queue clear - else if : - narrate format:Staffchat3 "" targets: on player breaks diamond_ore: - flag player DiamondsMined:++ duration:1h - narrate Format:Staffchat4 "has mined <&b>Diamonds<&7>. Hour Count: <&lb><&b><&7><&rb>" targets: # ████████████████████████████████████████████████████ # ██ Commands # ██ # ██▓▓▒▒░░ # ███ [ BehrBot Format ] ███ bbf: type: format debug: false format: "<&4>[<&c>B<&d>e<&c>hrBot<&4>] <&f><&o>" # ███ [ PlugMaster Flag ] ███ Behrmission_Command: type: command name: behrmission debug: false permission: Behrry.Command.Behrmission aliases: - bperms script: - if !>: - narrate format:bbf "<&c>You are not Behr. This command is <&4>Developmental<&c> and requires explicit permissions." - queue clear - else if : - flag player plugmaster:! - narrate format:bbf "<&a>Developmental Access Flag <&e>Disabled<&a>." - queue clear - else: - flag player plugmaster - narrate format:bbf "<&a>Developmental Access Flag <&e>Enabled<&a>." # ███ [ Staff Chat Command ] ███ staffchat_command: type: command name: staffchat debug: false description: Staff Chat permission: behrry.chat.staffchat aliases: - sc usage: /staffchat script: - if != error: - if || : - narrate format:Staffchat1 "" targets: - queue clear - else if : - narrate format:Staffchat2 "" targets: - queue clear - else if : - narrate format:Staffchat2 "" targets: - queue clear - else if : - narrate format:Staffchat2 "" targets: - queue clear - else if : - narrate format:Staffchat3 "" targets: - queue clear - if !: - flag player staffchat - narrate "<&2>[<&a>B<&f>e<&a>hrry Tree<&2>]<&r> Staffchat is now <&e>Enabled<&f>." - queue clear - flag player staffchat:! - narrate "<&2>[<&a>B<&f>e<&a>hrry Tree<&2>]<&r> Staffchat is now <&e>Disabled<&f>." # ███ [ build Chat Command ] ███ buildchat_command: type: command name: buildchat debug: false description: builder Chat permission: behrry.chat.buildchat aliases: - b usage: /buildchat script: - if != error: - if || : - narrate format:buildchat1 "" targets: - queue clear - else if : - narrate format:buildchat2 "" targets: - queue clear - else if : - narrate format:buildchat2 "" targets: - queue clear - else if : - narrate format:buildchat2 "" targets: - queue clear - else if : - narrate format:buildchat3 "" targets: - queue clear - else if : - narrate format:buildchat4 "" targets: # ████████████████████████████████████████████████████ # ██ Discord Scripts # ██ # ██▓▓▒▒░░ # ███ [ Discord Channel Update ] ███ Discord_Channel_Refresh: type: command name: Test1 debug: false script: - yaml load:data/behrbot.yml id:behrbot_temp - flag server staffchat:! - flag server staffchat:|: - flag server announcements:! - flag server announcements:|: - flag server main-chat:! - flag server main-chat:|: - flag server worldchat:! - flag server worldchat:|: - flag server discussions:! - flag server discussions:|: - flag server deepthoughts:! - flag server deepthoughts:|: - flag server memes:! - flag server memes:|: - flag server botcommands:! - flag server botcommands:|: - flag server voicechannel-text-chat:! - flag server voicechannel-text-chat:|: - flag server playerreports:! - flag server playerreports:|: - flag server updates:! - flag server updates:|: - flag server gielinor:! - flag server gielinor:|: - flag server barredChannels:! - flag server barredChannels:|: #- flag server logs:! #- flag server logs:|: - yaml unload id:behrbot_temp #- define samples "|sample_text/Hello, world!|help/try typing 'help' to the bot!" #- define samples "|version/|denizen_version/" #- flag server tag_parser_samples:! #- flag server tag_parser_samples:|: # ███ [ DiscordBot | Discord Control ] ███ Discord_Bots: type: world debug: false script_paths: # ███ [ Tag Parsing Scripts ] ███ process_tag: - log " [] in [] wants to process tag " file: - flag server tag_parser_result_temp:! - run locally script_paths.tag_run_path instantly def: - define result - flag server tag_parser_result_temp:! - log " [] in [] got result " file: crunch_result: - define final_result "" - foreach : - if : - define final_result "" - foreach : - if : - define final_result "Had error: " - else if : - define final_result "Had internal exception: " - else if : - define fail_reason - if == FLAG_MISSING: - define final_result "Got no result value." - else: - define final_result "Got failure ''." - if == 0: - define final_result "" - if > 1000 || ]> > 1500: - define tag "(Spam)" - define final_result "Input too long, refused." - if ]].size> > 10: - define final_result "Newline spam, refused." tag_run_path: - define samples |sample_player/|sample_npc/ - foreach : - define - define help "Tell me any valid Denizen (Bukkit) tags, like <<>player.name<>> and I'll parse them for you! Alternately, tell me a valid definition name (like'samples') and I'll tell you its contents." - if !]> && ].exists>: - flag server tag_parser_result_temp:VALID=].escaped.replace[;].with[&sc]>; - else: - flag server tag_parser_result_temp:VALID=>; parse_tag_script: - flag server tag_parser_bot_running - define origin /// - announce to_console "Discord chatter! [] in [] saying " - define tag ].with[<&sp>].trim.escaped> - inject locally script_paths.process_tag player: npc: - inject locally script_paths.crunch_result events: # ███ [ Server Startup ] ███ on server start: #simulate server start v #on player breaks end_stone_bricks: - debug debug "# ███ [ Discord Connections start in: 15s ] ███" - wait 15s - yaml load:data/behrbot.yml id:behrbot_temp - discord id:behrbot connect code: - discord id:generalbot connect code: - yaml unload id:behrbot_temp - discord id:generalbot message channel: ":white_check_mark: **Server has started**" # ███ [ Ingame Chat Relay ] ███ on player chats: - if && : - determine passively cancelled - narrate format:bbf "Parsing <&e><&o>]><&4>:<&nl> <&6>]>>" - queue clear ################################################## #ingame auto-response template [ Chat >> Discord ] #- if behr]>: # - wait 6s # - narrate targets: format:bbf "Hi" # - discord id:behrbot channel: message "**Co-Owner** BehrBot: Hi" ######################################################################################### - discord id:generalbot channel: message "**** : " # ███ [ Discord Chat Relay ] ███ on discord message received by behrbot: #barred channels - if : - queue clear #if @bot is for parse - if ]>: - inject locally script_paths.parse_tag_script - discord id:behrbot message channel: "Tag parse results for ``<&co>``````" - queue clear #if message is from updates and it isnt blank - if == : - if != "" && != 518498180300668939: - narrate targets: "<&3><&l>[<&r><&b>Discord<&f> | <&3><&l>]<&r> <&8>»<&f> " on player first logs in: - discord id:generalbot message channel: ":confetti_ball: ** has logged in for the first time. Welcome them!**" on player joins: - discord id:generalbot message channel: ":heavy_plus_sign: ** has logged in.**" on player quits: - discord id:generalbot message channel: ":heavy_multiplication_x: ** has left the server.**" on player dies: - discord id:generalbot message channel: ":skull: ****. F in the chat" on shutdown: - discord id:generalbot message channel: ":octagonal_sign: **Server is restarting. Please wait**" # ███ [ Discord Alert ] ███ Test2_Command: type: command name: Test2 debug: true script: - if ]>: - flag offenses.:++ - flag offenses.reports:++ - discord id:behrbot message channel:515990339493036069 ":rotating_light: **Wee-Woo!** New Player Report! :rotating_light: ```css<&nl><&lb>Incident<&rb>: <&lb><&rb> <&nl>#Player_Name: <&nl>#Staff_Reporting: <&nl>#Incident_Time: { KK:mm a]>}<&nl>{Reason: }<&nl>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<&nl>{Kicks:}<&sp><&sp><&sp><&sp><&sp><&lb><&rb><&sp>|<&sp>].get[]>]><&sp>{Reports:}<&sp><&sp><&sp><&sp><&lb><&rb><&nl>{TempMutes:} <&lb><&rb><&sp>|<&sp>].get[]>]><&sp>{Mutes:}<&sp><&sp><&sp><&sp><&sp><&sp><&lb><&rb><&nl>{TempBan:}<&sp><&sp><&sp><&lb><&rb><&sp>|<&sp>].get[]>]><&sp>{IPBanned:}<&sp><&sp> <&lb>]><&rb>```" # ███ [ AFK ] ███ AFK_Listen: type: world debug: false events: #notable events to disable #on flag expires #on player logs in #on player joins #on player kicked #on player quits #notable Events to trigger: #on player walks #on player clicks #on player chats #on player jumps #on player opens inventory #on player swaps items AFK_Command: type: command name: afk debug: false permission: behrry.essential.afk script: # - narrate targets: " is now afk." # - flag player AFK