{"id":26289,"date":"2026-06-01T12:47:02","date_gmt":"2026-06-01T09:47:02","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/"},"modified":"2026-06-01T12:47:02","modified_gmt":"2026-06-01T09:47:02","slug":"batchcommands","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/","title":{"rendered":"BatchCommands"},"content":{"rendered":"<p>**Batch commands: A scripting engine that does what it intends to do**<\/p>\n<p>Skript is a little too complex for most usage cases, so I made this plugin to be able to execute a series of commands from a file quickly.<\/p>\n<p>For instance, you are setting up chunky. Normally you&#8217;d do:<br \/>\n`\/chunky world world` `\/chunky radius 1500` `\/chunky shape circle` and `\/chunky start`<br \/>\nBut what if you are doing this across multiple servers and are lazy enough to not want to do so? Here&#8217;s what I aim to solve: repetative mannual labor.<br \/>\nWe can now create a file within the `\/plugins\/BatchCommands\/batches` folder named `chunky.batch`<br \/>\nInside, it would look like this:<br \/>\n&#8220;`<br \/>\nchunky world world<br \/>\nchunky radius 1500<br \/>\nchunky shape circle<br \/>\nchunky start<br \/>\n&#8220;`<br \/>\nNow all you have to do is type `\/filebatch chunky.batch` (Live tab completion fully supported).<\/p>\n<p>Now, this is almost all the features anyone would possibly need in their lifetime. But what if we want more? What if I want to wait one second (twenty ticks) before starting the chunky worldgen?<br \/>\nThe script will use our decorator `!sleep ticks`<br \/>\n&#8220;`<br \/>\nchunky world world<br \/>\nchunky radius 1500<br \/>\nchunky shape circle<br \/>\n!sleep 1<br \/>\nchunky start<br \/>\n&#8220;`<br \/>\nNow this plugin will execute the first three commands and then wait 20 ticks (one second) to perform the subsequent command.<\/p>\n<p>Need help with the syntax?<br \/>\nDon&#8217;t worry, we have an extensive linting system that is highly configurable.<\/p>\n<p>Configuration options will be provided below<\/p>\n<details>\n<summary>config.yml<\/summary>\n<p>&#8220;`yaml<br \/>\n# &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; #<br \/>\n#             BatchCommands Configuration            #<br \/>\n# &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; #<\/p>\n<p># Enable this to see more detailed logs in the console.<br \/>\n# This is useful for server administrators for debugging purposes.<br \/>\ndebug-mode: false<\/p>\n<p># &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; #<br \/>\n#                Execution Settings                  #<br \/>\n# &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; #<br \/>\n# WARNING: Modifying these settings can create       #<br \/>\n#          potential security risks. Understand the  #<br \/>\n#          implications before changing them.        #<br \/>\n# &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; #<br \/>\nexecution:<br \/>\n  # Default Executor: CONSOLE or SENDER<br \/>\n  # Determines who runs the commands inside the batch file by default.<br \/>\n  # &#8211; CONSOLE: (Default, Safest) All commands are run by the server console.<br \/>\n  # &#8211; SENDER: (RISKY) Commands are run by the player who initiated the \/filebatch command.<br \/>\n  #           This is dangerous if non-admins have the permission to run this command,<br \/>\n  #           as they could execute commands with their own (potentially limited) permissions.<br \/>\n  default-executor: CONSOLE<\/p>\n<p>  # Stop on Error: true or false<br \/>\n  # If true, the batch execution will halt immediately if any command fails.<br \/>\n  # If false (RISKY), the batch will continue even if a command fails, which can lead to<br \/>\n  # unexpected behavior or incomplete actions.<br \/>\n  stop-on-error: true<\/p>\n<p>  # Allow OP Commands: true or false<br \/>\n  # If false (Default, Safest), commands like \/op, \/deop, etc., are blocked from running<br \/>\n  # through this plugin, regardless of the executor.<br \/>\n  # If true (EXTREMELY RISKY), these commands are allowed. If &#8216;default-executor&#8217; is SENDER,<br \/>\n  # a player could write a batch file with &#8220;op <their_name>&#8221; and try to gain operator status.<br \/>\n  allow-op-commands: false<\/p>\n<p>  # Command Blacklist: A list of commands that can NEVER be run.<br \/>\n  # This is a final safeguard against catastrophic commands.<br \/>\n  # Commands should be listed without the slash. e.g., &#8220;stop&#8221; not &#8220;\/stop&#8221;.<br \/>\n  command-blacklist:<br \/>\n    &#8211; &#8220;stop&#8221;<br \/>\n    &#8211; &#8220;reload&#8221;<br \/>\n    &#8211; &#8220;rl&#8221;<br \/>\n    &#8211; &#8220;restart&#8221;<br \/>\n    &#8211; &#8220;plugman&#8221;<\/p>\n<p>  lint-engine:<br \/>\n      # Lint engine mode<br \/>\n    # BEFORE &#8211; check before executing the script<br \/>\n    # AS_WE_GO &#8211; check as we go (less thorough, but faster startup)<br \/>\n    engine-mode: BEFORE<br \/>\n    checking-order:<br \/>\n      &#8211; &#8220;EMPTY_FILE&#8221;          # Checks if the file contains any executable lines.<br \/>\n      &#8211; &#8220;ILLEGAL_CMD&#8221;         # Checks for blacklisted or disabled OP commands.<br \/>\n      &#8211; &#8220;UNKNOWN_DECORATOR&#8221;   # Checks for decorators that don&#8217;t exist (e.g., !fly).<br \/>\n      &#8211; &#8220;SYNTAX_ERRS&#8221;         # Checks for malformed decorators (e.g., !sleep without a number).<br \/>\n      &#8211; &#8220;RECURSIVE_EXECUTION&#8221; # Checks if the file tries to call itself.<br \/>\n    max-checking-time: 1000 #Max checking time for lint engine, if it exceeds this we will respect the next setting<br \/>\n    # Possible options:<br \/>\n    # STOP &#8211; Stop the execution<br \/>\n    # TRY_AGAIN &#8211; Retry, max attempts can be changed<br \/>\n    # STOP_AND_WARN &#8211; Notify console of this error<br \/>\n    # FORCE_START &#8211; forcably start the script &#8211; THIS WILL LEAD TO EXPLOITS!!!<br \/>\n    if-exceed-max-time: STOP_AND_WARN<br \/>\n    max-retry-attempts: 5<\/p>\n<p>scripting:<br \/>\n  # This is the character that denotes a comment line in the batch file.<br \/>\n  # Any line starting with this character will be ignored during execution.<br \/>\n  # Default is &#8220;#&#8221;.<br \/>\n  comment-char: &#8220;#&#8221;<br \/>\n  # Decorator Character<br \/>\n  # This character is used to identify special decorators in the batch file.<br \/>\n  # For example, &#8220;!sleep 5&#8221; uses &#8220;!&#8221; as the decorator character.<br \/>\n  # Default is &#8220;!&#8221;.<br \/>\n  decorator-char: &#8220;!&#8221;<br \/>\n  timing:<br \/>\n    # Ticking modes:<br \/>\n    # WORLD &#8211; Uses the world&#8217;s ticks (synchronous, affected by TPS)<br \/>\n    # INTERNAL &#8211; Uses an internal timer to schedule sleep tasks (Not yet implemented)<br \/>\n    # CLOCK &#8211; Uses the server&#8217;s clock to schedule sleep tasks (Not yet implemented)<br \/>\n    ticking-mode: WORLD<\/p>\n<p>&#8220;`<\/p>\n<\/details>\n","protected":false},"excerpt":{"rendered":"<p>A simple scripting plugin that does what it is supposed to do.<\/p>\n","protected":false},"featured_media":26290,"template":"","meta":{"_minecraft_slug":"batchcommands","_minecraft_project_id":"J3a84vy4","_minecraft_author":"Earth1283","_minecraft_license":"MIT","_minecraft_downloads":84,"_minecraft_follows":0,"_minecraft_client_side":"unsupported","_minecraft_server_side":"required","_minecraft_storage_type":"zip","_minecraft_archive_name":"batchcommands.zip","_minecraft_size_bytes":32623,"_minecraft_version_count":2,"_minecraft_updated_at":"2026-05-15T20:07:51.383200Z","_minecraft_date_created":"2025-08-25T07:29:18.998583Z","_minecraft_date_modified":"2025-08-26T14:39:38.205807Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/batchcommands","_minecraft_icon_attachment_id":26290,"_minecraft_imported_at":"2026-06-01T09:47:03+00:00","_minecraft_import_hash":"7e8bd9f8a1b9841bf3442eee906772e5","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[124,89,122,126,127,128,129,123,92],"mod_loader":[130,132,133,134],"minecraft_version":[54,55,56,57,58,59,36,60,93,94,101,102,62,37,40,41,73,74,38,78,79,80,81,82],"class_list":["post-26289","mod","type-mod","status-publish","has-post-thumbnail","hentry","mod_category-bukkit","mod_category-game-mechanics","mod_category-magic","mod_category-management","mod_category-paper","mod_category-purpur","mod_category-spigot","mod_category-technology","mod_category-utility","mod_loader-bukkit","mod_loader-paper","mod_loader-purpur","mod_loader-spigot","minecraft_version-1-19","minecraft_version-1-19-1","minecraft_version-1-19-2","minecraft_version-1-19-3","minecraft_version-1-19-4","minecraft_version-1-20","minecraft_version-1-20-1","minecraft_version-1-20-2","minecraft_version-1-20-3","minecraft_version-1-20-4","minecraft_version-1-20-5","minecraft_version-1-20-6","minecraft_version-1-21","minecraft_version-1-21-1","minecraft_version-1-21-10","minecraft_version-1-21-11","minecraft_version-1-21-2","minecraft_version-1-21-3","minecraft_version-1-21-4","minecraft_version-1-21-5","minecraft_version-1-21-6","minecraft_version-1-21-7","minecraft_version-1-21-8","minecraft_version-1-21-9"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>BatchCommands - Minecraft<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"BatchCommands - Minecraft\" \/>\n<meta property=\"og:description\" content=\"A simple scripting plugin that does what it is supposed to do.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/\" \/>\n<meta property=\"og:site_name\" content=\"Minecraft\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/batchcommands\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/batchcommands\\\/\",\"name\":\"BatchCommands - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/batchcommands\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/batchcommands\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/batchcommands-icon-6c2f7e2e050f121280563faadc219a16e0ffa8aa.jpeg\",\"datePublished\":\"2026-06-01T09:47:02+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/batchcommands\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/batchcommands\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/batchcommands\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/batchcommands-icon-6c2f7e2e050f121280563faadc219a16e0ffa8aa.jpeg\",\"contentUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/batchcommands-icon-6c2f7e2e050f121280563faadc219a16e0ffa8aa.jpeg\",\"width\":92,\"height\":92},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/batchcommands\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mods\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"BatchCommands\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\",\"name\":\"Minecraft\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"BatchCommands - Minecraft","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/","og_locale":"en_US","og_type":"article","og_title":"BatchCommands - Minecraft","og_description":"A simple scripting plugin that does what it is supposed to do.","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/","og_site_name":"Minecraft","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/","name":"BatchCommands - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/#primaryimage"},"image":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/#primaryimage"},"thumbnailUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/batchcommands-icon-6c2f7e2e050f121280563faadc219a16e0ffa8aa.jpeg","datePublished":"2026-06-01T09:47:02+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/#primaryimage","url":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/batchcommands-icon-6c2f7e2e050f121280563faadc219a16e0ffa8aa.jpeg","contentUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/batchcommands-icon-6c2f7e2e050f121280563faadc219a16e0ffa8aa.jpeg","width":92,"height":92},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/batchcommands\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vpesports.com\/minecraft\/"},{"@type":"ListItem","position":2,"name":"Mods","item":"https:\/\/vpesports.com\/minecraft\/mods\/"},{"@type":"ListItem","position":3,"name":"BatchCommands"}]},{"@type":"WebSite","@id":"https:\/\/vpesports.com\/minecraft\/#website","url":"https:\/\/vpesports.com\/minecraft\/","name":"Minecraft","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vpesports.com\/minecraft\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod\/26289","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod"}],"about":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/types\/mod"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media\/26290"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=26289"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=26289"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=26289"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=26289"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}