VaporTrails
VaporTrails
Today is a day for Vapor Trails!
- Youtube Video (points if you know which one)
About
This plugin creates effects whenever a player moves. Honestly, this was just meant to be a fun break from my other projects. The idea came about during testing: "Wouldn't it be awesome if this smoke effect happened whenever you walked?" And thus, the idea of VaporTrails was born.
Features
- Nifty trail effects
- Create block trails
- Vault support
- WorldGuard support
- Creative mode auto-effect
Thanks to @UltiByte for the video.
Commands & Permissions
Configuration
Description of the config.yml options:
checkWorldGuardRegions: For effects that may modify blocks, this checks if the player has build rights for a region, and thus if their effect is played while in the region. (Default: false)
version: For internal use only. Do not change.
effect:
- useListener: Whether to play effects by interval threads or on the player move event. (Default: false)
- interval: The time in server ticks between playing the effect. Only used by threads, and thus useListener needs to be set to false.
gamemode:
- effect: Define the effect given to a player when they change to creative game mode.
- use: Whether or not to give an effect when they change game mode
Note, for game mode, they player still needs the appropriate effect permission node.
Notes
Most of the effects are rather small, and this is because making even rather small radius effects can be semi-laggy. For instance, a 3x3 smoke trail on player move, while impressive, is rather laggy. So, for performance issues and to keep the player movement fluid, some effects have a small effect size, for example: smoke, ender signal, and tnt.
Todo
- Blacklist blocks from the config
- Adjustable effect size
- Blocks disappear
Trello Dev board
Visit the Trello board to see the current todo list for all projects.
You can comment and vote on any of the topics there.
All changes on the Trello board are in real-time.
If you've found this plugin useful, please consider donating.
This plugin is causing bad crashes for me. Here is the error:
2012-06-07 04:25:31 [SEVERE] Could not pass event PlayerMoveEvent to VaporTrails org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:304) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:459) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:209) at net.minecraft.server.Packet10Flying.handle(SourceFile:126) at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:567) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:459) at net.minecraft.server.ThreadServerApplication.run(SourceFile:492) Caused by: java.lang.IllegalArgumentException: Cannot measure distance between market and world at org.bukkit.Location.distanceSquared(Location.java:381) at org.bukkit.craftbukkit.CraftWorld.playEffect(CraftWorld.java:774) at org.bukkit.craftbukkit.CraftWorld.playEffect(CraftWorld.java:747) at com.mitsugaru.VaporTrails.VTPlayerListener.effectPlayer(VTPlayerListener.java:154) at com.mitsugaru.VaporTrails.VTPlayerListener.onPlayerMove(VTPlayerListener.java:35) at sun.reflect.GeneratedMethodAccessor46.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ... 11 more
Which results in an out of memory crash.
@Mitsugaru
Thanks! Oh and BTW I love this plugin!!! :D
@harryjamesuk
Haha, yeah TNT trail is dangerous. I can't recommend using it unless the player has fly or something XD
In any case, I'll put it in when I can then, as a config option or something.
In future, make the effects stop when you die because I just got stuck in a death loop with TNT on survival and blew up my spawn point...
@shankomaster
@Garretty12
I will try and look into it.
Could you possibly add the effect that trails the Eye of Ender?
I liked the heart idea! Also another idea would be the bubbles from when you are in water
@cadika_orade
No problem. Just want it to work as you requested.
If you come up with any suggestions or problems, let me know.
And thanks for your support. :D
This is my new favorite plugin.
Thanks for adding Creative mode for me. Sorry I didn't have any time to update until today.
EDIT: Nevermind
The other effects seem to be working fine for me now, must of been a client issue.
@Garretty12
Heart? I didn't get around to adding that one in just yet... o.O
As for the others, I'll have a look at it when I can.
Smoke, Ender, Heart, and Shine trails don't work for me, everything else works fine.
Using the latest version.
Um... I dont remember lol. All the effects worked. I know that fire and explosion definately hurt :P Snow and shine didnt.
@apoisonedgift
What...? o.O That's really odd...
Do all the effects cause that? Or is it specific to certain ones?
lol wtf... that version works... but the trail effects hurt the user lol... not cool :P
@apoisonedgift
Try this version here: https://github.com/Mitsugaru/VaporTrails/downloads
Config should now save properly. Also, it should now check if WorldGuard is available or not. The default was to attempt to use WorldGuard regardless... Sorry about that.
I dunno what I'm doing wrong... but most of the effects dont work.
Thunder, Shine, Ender and Smoke work. The rest generate this error:
2012-03-31 03:32:45 [SEVERE] Could not pass event PlayerMoveEvent to VaporTrails org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:303) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:459) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:209) at net.minecraft.server.Packet10Flying.handle(SourceFile:126) at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:554) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:452) at net.minecraft.server.ThreadServerApplication.run(SourceFile:490) Caused by: java.lang.NoClassDefFoundError: com/sk89q/worldguard/bukkit/WorldGuardPlugin at com.mitsugaru.VaporTrails.VTPlayerListener.effectChoice(VTPlayerListener.java:104) at com.mitsugaru.VaporTrails.VTPlayerListener.onPlayerMove(VTPlayerListener.java:66) at sun.reflect.GeneratedMethodAccessor14.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:301) ... 10 more
Also... I dont get any config file generated?
@Zombiemold
Yeah, I saw it too, but the implementation was a bit of a hack. What they did was they spawned an ocelot to make the effect and then despawned it. Which would work for periodic intervals but not for a constant stream of usage like what I do here since I just do player movement.
It'd be nice if it was one of the preset effects that devs could use....
@Mitsugaru
Thank you for this amazing plugin.
I have used it for special donators to show off, and it has been great! Thank you so much.
Any chance you can add a "Heart" effect? Saw a plugin on BukkitDev that did it, and I thought it would be better if you were to do it :)
@shankomaster
Thanks for the feedback and support. I'll submit that version to BukkitDev.