### Basic Example Craft Template Source: https://github.com/apdevteam/movecraft/wiki/Example-Craft-File A fundamental .craft file configuration defining essential properties like name, size limits, movement capabilities, speed, and sinking behavior. This serves as a starting point for custom craft types. ```yaml # This is the name of the craft type. # To pilot this craft type, A sign needs to be put on the craft with this exact name. name: example # The Maximum size in blocks this craft type can be. maxSize: 1000000 # The minimum size in blocks this craft type can be. minSize: 1 # true for planes, false for boats. blockedByWater: false # if you can use cruise command or cruise signs canCruise: true # prevent piloting craft above that y level maxHeightLimit: 200 # false for something liek an elevator or space rocket? allowHorizontalMovement: true # false for something that should never leave the y level it was made on. allowVerticalMovement: true # speed in blocks per second, to move when using pilot stick speed: 1.0 # how much of the needed fly blocks can be missing to sink automatically # A value >0 is needed for the moveblock related checks sinkPercent: 99.0 # how much of the original blocks need to be missing to sink automatically overallSinkPercent: 60.0 # prevent piloting craft below that y level minHeightLimit: 10 # how fast the craft uses its fuel type (like coal) fuelBurnRate: 0.01 # if set to false, will rotate around helm sign, otherwise true takes the ships center. rotateAtMidpoint: true # similar to the other cruise skip blocks, but for use when cruising vertically? vertCruiseSkipBlocks: 1 # how many blocks per second the cruise speed of the vessel is cruiseSpeed: 12 # decides how many blocks of travel can be skipped, try using 1/3 the cruisespeed. cruiseSkipBlocks: 4 # be a boat, not an airplane, if no water, no move requireWaterContact: false # ticks between each sink move sinkRateTicks: 60 # prevent piloting craft above that y level above the ground? maxHeightAboveGround: 100 # range before "contact" message is given to other craft pilots detectionMultiplier: 10.0 # range before "contact" message is given to other craft pilots when underwater underwaterDetectionMultiplier: 1.0 # when fully under water, should vessel speed be half halfSpeedUnderwater: true # vessel is started its automatically cruising, not ideal for piloted cruiseOnPilot: false # must be part another craft in order to create this craft. mustBeSubcraft: false # prevent using remote rotate sign. blockRemoteRotate: true # good for planes, will continue flying while sinking. keepMovingOnSink: true # should the entire craft blow up in one explosion focusedExplosion: false # number of blocks to skip per gravity drop move gravityDropDistance: 0 # to get all entities to move with, set only players to false, and move entities to true onlyMovePlayers: false # to get no entities to move with, set both onlymoveplayers and move entities to false. moveEntities: true # can hover a certain distance above terrain, will follow contours of ground canHover: false # can hover a certain distance above water and ground? canHoverOverWater: false # Over powered, sign "Teleport:" second line example "100,87,300" teleport sign enabled. canTeleport: false # How high up is hovering, keep value low due to lag? hoverLimit: 0 # if set craft will fall until it reaches hover limit useGravity: false ``` -------------------------------- ### Example siege.yml Configuration Source: https://github.com/apdevteam/movecraft/wiki/Example-Siege-Config This snippet shows a complete example of a siege.yml file. It defines regions, winning conditions, costs, income, and scheduling for siege events. Ensure World Guard regions are correctly named and Movecraft vehicle names match those in your server. ```yaml # The base-block. There is only one 'sieges:' block in this config. sieges: # The name of the regions configuration. # Mainly meant for the user of the config to help identify which region-config # they are working with. (Has no real impact on the gameplay.) '': # The actual World Guard Region name/ID, that people fight in. SiegeRegion: '' # The actual world Guard Region name/ID, which is gained from the siege. RegionToControl: '' # The PILOTED crafts in the region required to win. # Unpiloted vehicles do not count towards a victory/region control. CraftsToWin: # This is the same as what you would put on a vehicle-control sign. - '' - '' # The price to begin fighting over territory. CostToSiege: # This means, that per region captured, the 'CostToSiege' value is doubled for this particular region, per region owned/controlled DoubleCostPerOwnedSiegeRegion: # This is earned Per-Day (IRL) DailyIncome: # The days on which the siege can be started, as numbers (1 is Sunday) DaysOfTheWeek: - 1 - 2 - 3 # These times are in seconds # 0 seconds = 0 hour(s); # 3600 seconds = 1 hour(s); # The delay for people to get ready, repair stuff, # and/or just get to the contested region/territory before it starts. (In seconds) DelayBeforeStart: 1200 # How long a siege can occur before ending. (In seconds) SiegeDuration: 2400 # This is the lower range. Best left at 0. (In seconds) ScheduleStart: 0 # This is the Upper range, best to configure this value to be the sum of 'DelayBeforeStart:' and 'SiegeDuration:' values. (In seconds) ScheduleEnd: 3600 ``` -------------------------------- ### Craft File Structure Example Source: https://github.com/apdevteam/movecraft/wiki/Creating-an-aircraft Illustrates the basic structure of a sign block in Minecraft, showing four lines for text. ```plaintext ---------------- | LINE 1 | | LINE 2 | | LINE 3 | | LINE 4 | ---------------- ``` -------------------------------- ### Helm Control Sign Example Source: https://github.com/apdevteam/movecraft/wiki/Creating-an-aircraft Example of a Helm sign, used for rotating the craft. ```plaintext ------------------- | [Helm] | | | | | | | ------------------- ``` -------------------------------- ### Airskiff Craft File Example Source: https://github.com/apdevteam/movecraft/wiki/Creating-an-aircraft Example of a craft file configuration for an Airskiff, specifying requirements like lift (wool), engines (redstone blocks), size, and fuel. ```yaml plugins/Movecraft/types/Airskiff.craft ``` -------------------------------- ### CRAFT-Type Sign Example Source: https://github.com/apdevteam/movecraft/wiki/Creating-an-aircraft Example of a CRAFT-Type sign. The first line must be the craft's name, with optional details below. ```plaintext --------------------- | Airskiff | | | | [Your craft name] | | [Your name] | --------------------- ``` -------------------------------- ### Release Sign Example Source: https://github.com/apdevteam/movecraft/wiki/Creating-an-aircraft Example of a Release sign used to detach from a piloted craft. ```plaintext ------------------- | Release | | | | | | | ------------------- ``` -------------------------------- ### Gradle Build Configuration for Movecraft Source: https://github.com/apdevteam/movecraft/wiki/Documentation Add these lines to your build.gradle.kts to include the Movecraft plugin and repository. This setup allows for automatic authentication to GitHub Packages. ```kotlin plugins { [...] id("io.github.apdevteam.github-packages") version "1.2.2" // This plugin will allow us to authenticate to GitHub Packages automatically. } repositories { [...] maven { githubPackage("apdevteam/movecraft")(this) } // This line will use the above plugin to automatically authenticate and add our GitHub Packages Repository. } dependencies { [...] compileOnly("net.countercraft:movecraft:+") // Automatically depend on the latest Movecraft } ``` -------------------------------- ### Ascend Control Sign Example Source: https://github.com/apdevteam/movecraft/wiki/Creating-an-aircraft Example of an Ascend sign, used to control the craft's vertical movement upwards. ```plaintext ------------------- | Ascend: OFF | | | | | | | ------------------- ``` -------------------------------- ### Maven POM Configuration for Movecraft Source: https://github.com/apdevteam/movecraft/wiki/Documentation Configure your pom.xml to include the Movecraft dependency and repository. This requires authentication setup for GitHub Packages. ```xml net.countercraft movecraft LATEST provided github GitHub APDevTeam/Movecraft Apache Maven Packages https://maven.pkg.github.com/APDevTeam/Movecraft true true ``` -------------------------------- ### Descend Control Sign Example Source: https://github.com/apdevteam/movecraft/wiki/Creating-an-aircraft Example of a Descend sign, used to control the craft's vertical movement downwards. ```plaintext ------------------- | Descend: OFF | | | | | | | ------------------- ``` -------------------------------- ### Require Specific Blocks for Engines Source: https://github.com/apdevteam/movecraft/wiki/Fuel-Types Implement craft engines by specifying required blocks and their quantities in the `moveblocks:` section. This example requires exactly 1 redstone block. ```yaml moveblocks: redstone_block: # redstone represents engines - N1 - 100.0 ``` -------------------------------- ### Require Percentage of Blocks for Engines Source: https://github.com/apdevteam/movecraft/wiki/Fuel-Types Configure engines to require a certain percentage of a specific block type. This example requires 5% of the craft to be redstone blocks. ```yaml moveblocks: redstone_block: # redstone represents engines - 5.0 - 100.0 ``` -------------------------------- ### Build Movecraft Plugin Source: https://github.com/apdevteam/movecraft/blob/main/README.md Execute this command in the project's root directory to build the Movecraft plugin with all dependencies included. The compiled JAR will be located in the `Movecraft/build/libs` directory. ```bash ./gradlew clean shadowJar --parallel ``` -------------------------------- ### Movecraft Configuration Settings Source: https://github.com/apdevteam/movecraft/wiki/Example-Config Configure server-wide settings for Movecraft, including language, piloting tool, and sinking check frequency. Defaults are provided if these are not set. ```yaml # Not Required, defaults as English. # This controls what language the engine will use for notifications. # Current supported languages are en, cz, and nl. Locale: en # Not Required, and defaults to 280 (stick). # This specifies what tool you use to pilot crafts. # For example, if you put "PilotTool: 288" in your config.yml, then instead of using a stick to move crafts, you could use a feather. PilotTool: 280 # Not Required, and defaults to 100. # This specifies how frequently the engine checks to see if a ship has been damaged enough to start sinking. # It is also in Minecraft ticks, or 20 per second. # For example, if you put "SinkCheckTicks: 200" in your config.yml, then it will only check to see if a ship should be sinking every 10 seconds instead of 5. SinkCheckTicks: 100 ``` -------------------------------- ### Movecraft Permissions Source: https://github.com/apdevteam/movecraft/wiki/Example-Craft-File Defines the permission nodes required for players to pilot, move, and rotate a specific craft type. Ensure these match the craft name defined in the .craft file. ```yaml movecraft..pilot movecraft..move movecraft..rotate ``` -------------------------------- ### Specify Craft Type for Piloting Source: https://github.com/apdevteam/movecraft/wiki/Control-Signs Use this sign to pilot a craft by right-clicking with an empty hand. The first line must match the craft type name from the .craft file. ```minecraft commands ``` -------------------------------- ### Define Custom Fuel Types Source: https://github.com/apdevteam/movecraft/wiki/Fuel-Types Configure specific fuel items and their burn rates by adding the `fuelTypes:` section to your craft file. This allows for custom fuel management beyond the defaults. ```yaml fuelTypes: coal_block: 80.0 coal: 8.0 charcoal: 8.0 stick: 0.5 ``` -------------------------------- ### Activate Forward Cruise Movement Source: https://github.com/apdevteam/movecraft/wiki/Control-Signs Moves the craft forward by the `cruiseSkipBlocks` increment. Must be placed on a wall; the craft moves in the direction of that wall. Recommended for forward-only movement to prevent unintended jumps. ```minecraft commands Cruise: OFF ``` -------------------------------- ### Teleport Sign Configuration Source: https://github.com/apdevteam/movecraft/wiki/World-Switching Use this format on a sign to teleport a craft to a specific location in a designated world. Requires `canSwitchWorld` and `canTeleport` flags to be true. ```minecraft Teleport: 10,100,10 world_the_end ``` -------------------------------- ### Activate Helm for Turning Source: https://github.com/apdevteam/movecraft/wiki/Control-Signs Turns the craft left or right based on left or right-clicking. Rotation point depends on the `rotateAtMidpoint` configuration. ```minecraft commands [Helm] ``` -------------------------------- ### Passthrough Blocks Source: https://github.com/apdevteam/movecraft/wiki/Example-Craft-File Lists blocks that a craft can move through without being destroyed. ```yaml passthroughBlocks: - kelp_plant - seagrass - kelp - tall_seagrass - bubble_column ``` -------------------------------- ### Identify Flying Craft Type Source: https://github.com/apdevteam/movecraft/wiki/Creating-an-aircraft Check the 'canFly: true' tag in craft files to determine if a craft type supports flight. ```yaml canFly: true ``` -------------------------------- ### Specify Teleport Destination Source: https://github.com/apdevteam/movecraft/wiki/Control-Signs Teleports the craft to specified X, Y, Z coordinates in a given world. Requires `canTeleport` to be true. World switching requires `canSwitchWorld` to be true. ```minecraft commands Teleport: ,, [world] ``` -------------------------------- ### Ground Vehicle Configuration Flags Source: https://github.com/apdevteam/movecraft/wiki/Creating-a-ground-vehicle These flags are mandatory for a working ground vehicle. Ensure 'useGravity' is true and specify blocks the vehicle should avoid or can pass through. ```yaml useGravity: true forbiddenHoverOverBlocks: - WATER - LAVA passthroughBlocks: - LONG_GRASS - DOUBLE_PLANT - RED_ROSE - YELLOW_FLOWER ``` -------------------------------- ### Craft Fuel Types Source: https://github.com/apdevteam/movecraft/wiki/Example-Craft-File Lists the types of fuel blocks that a craft will consume if found within a container block, along with their consumption rate. ```yaml fuelTypes: - COAL_BLOCK: 2.0 ``` -------------------------------- ### Release a Piloted Craft Source: https://github.com/apdevteam/movecraft/wiki/Control-Signs Right-click this sign to release the currently piloted craft. Warning: This does not check for merging blocks, potentially causing unintended block mergers. ```minecraft commands Release ``` -------------------------------- ### Activate Vertical Ascend Movement Source: https://github.com/apdevteam/movecraft/wiki/Control-Signs Moves the craft vertically upwards by `cruiseSkipBlocks` or `vertCruiseSkipBlocks` if specified in the .craft file. ```minecraft commands Ascend: OFF ``` -------------------------------- ### Craft Flying Block Restrictions Source: https://github.com/apdevteam/movecraft/wiki/Example-Craft-File Defines the allowed percentages of specific block types on a craft. Wool has a maximum limit, while planks and slabs have a range. Obsidian is mentioned as a block with a maximum percentage allowance. ```yaml flyblocks: "#wool": - 50.0 - 100.0 ["#planks", "#wooden_slabs"]: - 25.0 - 100.0 ``` -------------------------------- ### Activate Anti-Air Director Source: https://github.com/apdevteam/movecraft/wiki/Control-Signs Allows control of a ship's fireguns by redirecting firecharges. Requires a pilot tool and `allowAADirectorSign` to be true. Right-click to assign as AA Director. ```minecraft commands AA Director ``` -------------------------------- ### Harvester Blade and Harvestable Blocks Source: https://github.com/apdevteam/movecraft/wiki/Example-Craft-File Specifies blocks that act as harvester blades and the types of blocks they will 'mine up' upon collision. ```yaml harvesterBladeBlocks: - iron_block harvestBlocks: - "#flowers" ``` -------------------------------- ### Specify Relative Movement Coordinates Source: https://github.com/apdevteam/movecraft/wiki/Control-Signs Moves the craft relative to its current position based on X, Y, Z coordinates. Movement direction is interpreted from the sign's orientation. Requires `canStaticMove` to be true and is typically limited by `maxStaticMove`. ```minecraft commands Rmove: ,, ``` -------------------------------- ### Activate Vertical Descend Movement Source: https://github.com/apdevteam/movecraft/wiki/Control-Signs Moves the craft vertically downwards by `cruiseSkipBlocks` or `vertCruiseSkipBlocks` if specified in the .craft file. ```minecraft commands Descend: OFF ``` -------------------------------- ### Activate Cannon Director Source: https://github.com/apdevteam/movecraft/wiki/Control-Signs Allows control of a ship's TNT Cannons by redirecting TNT. Requires a pilot tool and `allowCannonDirectorSign` to be true. Right-click to assign as Cannon Director. ```minecraft commands Cannon Director ``` -------------------------------- ### Forbidden Hover-Over Blocks Source: https://github.com/apdevteam/movecraft/wiki/Example-Craft-File Defines blocks that a craft is not allowed to hover over. ```yaml forbiddenHoverOverBlocks: - magma ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.