Cannons
What can it do?
Cannons is a highly configurable plugin which allows you to fire block build cannons. It is possible to aim and load different amounts of gunpowder to hit targets at different ranges. The power of redstone makes it possible to set the gun to auto load and activate the rapid fire mode. Choose your projectile from a broad spectrum of cannonballs and smash the enemy.
With Cannons 2.0 you are also able to design your own cannons using .schematic files and give each cannon their own settings, as well as different types of projectiles.

Features
- Build a cannon out blocks
- Design your own cannon and save it as .schematic
- Design and fire different projectiles to smash your enemy
- Use redstone to fire guns from distance
- Rapid fire with auto-load possible
- Destroyed blocks can be restored with CreeperHeal (if 'custom' option is true)
- Cannons will stay load and aligned due to the database
- Movement plugins (e.g. Movecraft) are supported if a cannon has a sign to store a tag
- API for ships plugins (e.g. iSails) to use cannons on ships without signs.
Videos
by ServerMiner
by wickedbrother
Out-dated showcase 1
Out-dated showcase 2
Recommended plugins
- ObsidianDestroyer
- WorldGuard (flag protection: '/region flag NAME other-explosion deny')
- CreeperHeal (set 'custom explosion' for your world to repair cannon damage)
Installation
- Install WorldEdit first (don't forget this)
- Copy the cannons.jar into your Bukkit's "plugins" directory, then run the server.
Dependencies
This plugin requires:
Metrics
This plugin utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:
- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- The plugin's version
- The server's version
- The OS version/name and architecture
- The core count for the CPU
- The number of players online
- The Metrics version If you wish to disable this feature (/me cries), you can do so by opt-ing out, which you can do in the config file under /plugins/PluginMetrics/
Information for Cannons 2.x
Tutorial:
Additional information:
Cannon Designs
- Share your designs with other people: Cannon Designs
Known Bugs
- The cannon ball (snowball) becomes invisible after 60 blocks but hits the target.
- Voxelsniper will delete Buttons/Torches when you load the gun (be careful when you click the barrel)
Need Help?
Credits
- Raser4000
- DreTax
- JlJlJl
- and many more

-
View User Profile
-
Send Message
Posted May 28, 2013@DerPavlov
Are there any kind of spout features?
-
View User Profile
-
Send Message
Posted May 28, 2013@CommodoreAlpha For cannons 2.0 everything has changed. You have now different config files for projectiles and cannons.
@Greenturds I have never implement an event system, so give me some time. But it will be the next thing on my list.
-
View User Profile
-
Send Message
Posted May 27, 2013How's the API coming for factions plus?
-
View User Profile
-
Send Message
Posted May 27, 2013Does the new version mean we have to regenerate our configuration files?
-
View User Profile
-
Send Message
Posted May 25, 2013@Ajaxan I am glad you like it. :)
@Meteora56 You have to make a custom schematic file. Best you load my schematic with worldedit and modify the barrel. Then save it again under a different name. You can use also the iron cannon I have made.
http://dev.bukkit.org/server-mods/cannons/pages/installation-and-configuration/cannons-2-0-and-up/creating/
https://dl.dropboxusercontent.com/u/16404245/Cannons/iron.schematic
-
View User Profile
-
Send Message
Posted May 24, 2013How to replace the design of the 3 block wool to 4 iron block?
-
View User Profile
-
Send Message
Posted May 24, 2013@DerPavlov
Thank you! Love your plugin! Most of my players wouldn't know what to do without it!
-
View User Profile
-
Send Message
Posted May 24, 2013@Ajaxan ObsidianDestroyer has updated its file structure, therefore older cannons version will not work with the newest obsidian destroyer. I will release a working version today or tomorrow.
-
View User Profile
-
Send Message
Posted May 23, 2013when I use the most recent version of Obsidian Destroyer with this plugin I got this error. 2013-05-24 01:37:35 [SEVERE] Error occurred while enabling Cannons v1.9.4 (Is it up to date?) java.lang.NoClassDefFoundError: com/pandemoneus/obsidianDestroyer/ObsidianDestroyer at at.pavlov.Cannons.Cannons.getObsidianDestroyer(Cannons.java:274) at at.pavlov.Cannons.Cannons.onEnable(Cannons.java:90) at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:457) at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381) at org.bukkit.craftbukkit.v1_5_R3.CraftServer.loadPlugin(CraftServer.java:282) at org.bukkit.craftbukkit.v1_5_R3.CraftServer.enablePlugins(CraftServer.java:264) at net.minecraft.server.v1_5_R3.MinecraftServer.j(MinecraftServer.java:304) at net.minecraft.server.v1_5_R3.MinecraftServer.e(MinecraftServer.java:283) at net.minecraft.server.v1_5_R3.MinecraftServer.a(MinecraftServer.java:243) at net.minecraft.server.v1_5_R3.DedicatedServer.init(DedicatedServer.java:151) at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:382) at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573) Caused by: java.lang.ClassNotFoundException: com.pandemoneus.obsidianDestroyer.ObsidianDestroyer at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:80) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53) at java.lang.ClassLoader.loadClass(ClassLoader.java:423) at java.lang.ClassLoader.loadClass(ClassLoader.java:356) ... 13 more
-
View User Profile
-
Send Message
Posted May 23, 2013@DerPavlov
Nothing is customized. I used the config that is created with the plugin.
-
View User Profile
-
Send Message
Posted May 23, 2013@Greenturds All explosions created with the bukkit interface have entity==null. Thats the only way to detect these kind of explosions.
@Crysillion Your modified TNT file
@telliist There will be a new version of cannons this weekend, but you can also test the latest alpha version.
-
View User Profile
-
Send Message
Posted May 23, 2013@DerPavlov
Hello DerPavlov :) I always use this fantastic plugin for wars between factions in my server, but now with the latest version of cruftbukkit (1.5.2 R0.2) don't work! I tried custome languages but give me a lots of errors... It's because is out to date? Need a new versions?
Thanks in advance :D
-
View User Profile
-
Send Message
Posted May 21, 2013@DerPavlov
Which file? The CustomLanguages? The one you gave me, or the one that comes by default?
-
View User Profile
-
Send Message
Posted May 19, 2013@DerPavlov
Could you post some code that would cancel your explosion event so I can put it into the factions source for myself?
-
View User Profile
-
Send Message
Posted May 19, 2013@hisoka2501 You need worldedit to run the new cannons version. It is necessary to rotate cannons and import .schematics
@Crysillion Upload the file to pastebin and I will have a look.
@Greenturds I can't implement this. Bukkit does only support entity free explosions. So every explosion of cannons will have entity null. So no way for me to fake explosions. Therefore factions has to support it if the entity is null. This was a little bit problematic in the past. Maybe it is already supported in factions or at least it should not be that much work.
-
View User Profile
-
Send Message
Posted May 19, 2013I would like a feature implemented with factions that would allow cannons to only break blocks in faction territory when members are online.
Factions already does a check for this, I figure it would be a simple fix for you to implement.
I really want to use this plugin in faction raids, but I can't risk people being griefed while they're offline.
-
View User Profile
-
Send Message
Posted May 18, 2013@DerPavlov
Hello, friend. Thanks for the attempt, but there is no change.
Note that loading cobblestone as a projectile works 100% fine. It's the TNT that isn't working, strangely enough. I deleted the config and .db files with the new CustomLanguages file, just in case. Still no go.
-
View User Profile
-
Send Message
Posted May 16, 2013hi, this plugin is amazing but i've got the folow error:
2013-05-16 17:02:29 [INFO] [Cannons] Enabling Cannons v2.0.0 A2 2013-05-16 17:02:29 [INFO] [Cannons] Load projectile configs 2013-05-16 17:02:29 [INFO] [Cannons] No projectiles loaded - loading default projectiles 2013-05-16 17:02:29 [INFO] [Cannons] loading cannon designs 2013-05-16 17:02:29 [INFO] [Cannons] No cannon designs loaded - loading default designs 2013-05-16 17:02:29 [SEVERE] Error occurred while enabling Cannons v2.0.0 A2 (Is it up to date?) java.lang.NoSuchMethodError: com.sk89q.worldedit.blocks.BaseBlock.getId()I at at.pavlov.Cannons.config.DesignStorage.loadDesignSchematic(DesignStorage.java:287) at at.pavlov.Cannons.config.DesignStorage.loadCannonDesigns(DesignStorage.java:71) at at.pavlov.Cannons.config.Config.loadConfig(Config.java:71) at at.pavlov.Cannons.Cannons.onEnable(Cannons.java:125) at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:457) at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381) at org.bukkit.craftbukkit.v1_5_R3.CraftServer.loadPlugin(CraftServer.java:282) at org.bukkit.craftbukkit.v1_5_R3.CraftServer.enablePlugins(CraftServer.java:264) at net.minecraft.server.v1_5_R3.MinecraftServer.j(MinecraftServer.java:304) at net.minecraft.server.v1_5_R3.MinecraftServer.e(MinecraftServer.java:283) at net.minecraft.server.v1_5_R3.MinecraftServer.a(MinecraftServer.java:243) at net.minecraft.server.v1_5_R3.DedicatedServer.init(DedicatedServer.java:151) at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:382) at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573) 2013-05-16 17:02:29 [INFO] [ChestShop] Enabling ChestShop v3.1 2013-05-16 17:02:29 [SEVERE] Error occurred while enabling ChestShop v3.1 (Is it up to date?) java.lang.NoClassDefFoundError: org/bukkit/util/config/Configuration at com.Acrobot.ChestShop.Config.ConfigObject.<init>(ConfigObject.java:16) at com.Acrobot.ChestShop.ChestShop.onEnable(ChestShop.java:49) at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:457) at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381) at org.bukkit.craftbukkit.v1_5_R3.CraftServer.loadPlugin(CraftServer.java:282) at org.bukkit.craftbukkit.v1_5_R3.CraftServer.enablePlugins(CraftServer.java:264) at net.minecraft.server.v1_5_R3.MinecraftServer.j(MinecraftServer.java:304) at net.minecraft.server.v1_5_R3.MinecraftServer.e(MinecraftServer.java:283) at net.minecraft.server.v1_5_R3.MinecraftServer.a(MinecraftServer.java:243) at net.minecraft.server.v1_5_R3.DedicatedServer.init(DedicatedServer.java:151) at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:382) at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573) Caused by: java.lang.ClassNotFoundException: org.bukkit.util.config.Configuration at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:70) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) ... 13 more i use the folowing version of craftbukkit:
2013-05-16 17:02:27 [INFO] This server is running CraftBukkit version git-Bukkit-1.5.2-R0.1-1-g53734d2-b2775jnks (MC: 1.5.2) (Implementing API version 1.5.2-R0.2-SNAPSHOT)
-
View User Profile
-
Send Message
Posted May 15, 2013Seems to be a problem of cannons. I believe it is the encoding which is going crazy. So please try this language file.
https://dl.dropboxusercontent.com/u/16404245/CustomLanguage%20UTF8%20Bom.yml
-
View User Profile
-
Send Message
Posted May 14, 2013There is a pretty big error when using CreeperHeal and Cannons both together. That said, I'm not sure which plugin is causing the error, but the error can be found here: http://pastebin.com/YRJqTpQ6
I will go ahead and post the error on both pages (CreeperHeal and Cannons). I have tried updating both plugins to the latest version at the time of this posting, using CB 1.5.2. Thank you!
It should be noted that I can create cannons and load them up with Gunpowder/Sulfur, however I cannot actually put many of the projectile blocks inside. For instance, if I try to load the cannon with TNT, it will simply place my TNT right next to or ontop of the cannon where I clicked - completely disregarding it being loaded. Yet, blocks like Gravel WILL load. Non-block items such as Diamond seem to still work fine.
I have also tried deleting the folders for both respective plugins and letting them regenerate with completely vanilla settings at next server boot and nothing changed. I strongly believe that this error is not on my end.