dtlAnimations
dtlAnimations
The world starts breathing
This plugin allows to create schematic based animations with low impact on the server performance
You just need to create some frames,
setup a simple animation script and the world gets a bit more dynamic,
Be aware this plugin has it's limitations
Dev builds
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
How it works
This plugin uses the vanilla server packets to send fake information about changes done the to world. So it does not affect the server.
Animations are stored in the animations.yml file, on server start all schematics are converted into Minecraft Packets, and send to clients that is in range of an animation.
If no players are in range of a animation, the connection is not affected in any way by this animation.
Limitations
So no one will ask if something is possible or not. Here are some limitations for this plugin.
- Because how this plugin works, there are some limitations on animations sizes and animation numbers. You can suffer connection problems if you send too many or really big animations to many players at once. So be aware of the sizes of your animation.
- You need to be aware what animations your creating, if you would create an animation that allows walking on it but on the server side there is nothing just air, server will see this as a fly hack
- when using this plugin along with denizens be aware when creating "player animations", because these animations will see only one player ;)
- Plugin updates are coming with a 1-3 days delay, each plugin version is only usable for the specified bukkit version.
For what things it's used in the best way
Mainly this project was created to create animations for things like Windmill's, Chimney smoke, and other simple things that allows to make the world more dynamic, with such things the server suffers like nothing up to 20 players (didn't tested it on larger servers yet, so any information would be helpful)
Any ideas are welcome :)
Animation script
A animation set in the aniamtions.yml should look like this
animation: name: Animation name schedule: 40 # default frame timer (20 = 1 second) distance: 60 #distance (radius) how far players should get packets location: x: -2.0 y: 95.0 z: -99.0 world: world frames: 1: # the schematic file in the frames folder (without the .schematic) file: frame1 # a frame specific schedule time schedule: 20 #(20 = 1 second) 2: file: frame2 3: file: frame3 4: file: frame4
Commands
With v1.3 soon for download you can use the following commands
Frame Commands:
- /frame list - Shows a list of all frames in the animation
- /frame show <name> - pastes the schematic to the server so you can feel and touch the frame.
- /frame edit <name> - pastes the schematic to the server, and sets the frame into "settings step" so you can change it's schedule time
- /frame save <name> - saves the current frame, the selection to a schematic file in the frames folder, and loads it to the animation.
- /frame saveat <index> <name> - saves the current frame on the specific index, selection to a schematic file in the frames folder, and loads it to the animation.
- /frame replace <name> - replaces the current frame with the existing frame, selection to a schematic file in the frames folder, and loads it to the animation.
- /frame schedule <time> - sets a specific schedule time to the current frame (usable after /frame save)
- /frame next - allows to add a new frame to the animation
- /frame cancel - cancels the creation of a new frame
Animation Commands:
- /anim create <name> - creates a new session to create an animation with name: <name>
- /anim load <name> - creates a new session with an existing animation: <name>
- /anim schedule <time> - sets the general animation schedule time
- /anim distance <dist> - sets the distance when animation packets should be send to players
- /anim finish - ends the session and saves the animation to the file
- /anim cancel - cancels the animation session (WARNING! if you replaced any frame during this session or changed the schematic it will persist)
- /anim start <name> - starts an animation if it's not running already
- /anim stop <name> - stops the selected animation if it's running
Contact
You can reach me on my IRC channel on "irc.esper.net", Link here. You are always welcome :)
It's sound like a great plugin, but could you please show us one picture? Because I really don't what can it be. And i'm a chinese ,if there have any mistakes, please some advice. thanks a lot
Update... no working with 1.7.9 -1.7.10 1.8....
@xion87
Thanks for this i got the problem :) It happens when some sees an animation and changes the world, so it tries to measure the distance between world1 and world2 which is impossible :P
Fix incoming :)
@dandielo
minebox is the name of the world
@xion87
You got a plugin named MineBox? or sth?
got this error when there are no player near the animations: 01:42:04 CONSOLE: [SEVERE] Could not pass event PlayerMoveEvent to dtlAnimations v1.3.0 01:42:04 CONSOLE: java.lang.IllegalArgumentException: Cannot measure distance between minebox and world 01:42:04 CONSOLE: [SEVERE] Could not pass event PlayerMoveEvent to dtlAnimations v1.3.0 01:42:04 CONSOLE: java.lang.IllegalArgumentException: Cannot measure distance between minebox and world 01:42:04 CONSOLE: [SEVERE] Could not pass event PlayerMoveEvent to dtlAnimations v1.3.0 01:42:04 CONSOLE: java.lang.IllegalArgumentException: Cannot measure distance between minebox and world 01:42:04 CONSOLE: [SEVERE] Could not pass event PlayerMoveEvent to dtlAnimations v1.3.0 01:42:04 CONSOLE: java.lang.IllegalArgumentException: Cannot measure distance between minebox and world 01:42:04 CONSOLE: [SEVERE] Could not pass event PlayerMoveEvent to dtlAnimations v1.3.0 01:42:04 CONSOLE: java.lang.IllegalArgumentException: Cannot measure distance between minebox and world 01:42:04 CONSOLE: [SEVERE] Could not pass event PlayerMoveEvent to dtlAnimations v1.3.0 01:42:04 CONSOLE: java.lang.IllegalArgumentException: Cannot measure distance between minebox and world 01:42:04 CONSOLE: [SEVERE] Could not pass event PlayerMoveEvent to dtlAnimations v1.3.0 01:42:04 CONSOLE: java.lang.IllegalArgumentException: Cannot measure distance between minebox and world 01:42:04 CONSOLE: [SEVERE] Could not pass event PlayerMoveEvent to dtlAnimations v1.3.0 01:42:04 CONSOLE: java.lang.IllegalArgumentException: Cannot measure distance between minebox and world 01:42:04 CONSOLE: [SEVERE] Could not pass event PlayerMoveEvent to dtlAnimations v1.3.0 01:42:04 CONSOLE: java.lang.IllegalArgumentException: Cannot measure distance between minebox and world 01:42:04 CONSOLE: [SEVERE] Could not pass event PlayerMoveEvent to dtlAnimations v1.3.0 01:42:04 CONSOLE: java.lang.IllegalArgumentException: Cannot measure distance between minebox and world
@dandielo
Ok guys, I need to know If you like this plugin, did you got any nice things working with it, have you got any issues etc. etc. share your experience with it :)
@dandielo
Video will take some time to create, but an update with a bit more commands will be uploaded soon
@dandielo
I will make a video next week, as because I'm also creating a small server where I will use it :P Right now i need get back to learning :)
@pepperfreez
Will do after I'm back from studies, if I will have time for it.
please put up a video i try to start it but it wont start
@dandielo
going to add the following commands in a few days. or after 10'th of August, depends on the time I got now.
I hope you'll like it :)
I will soon upload a fix for data-values bug, this was causing to wrongly load for ex. stairs.
After that is done I will make a vid with this plug :)
@Kitamiun
I will try to do one :)
Can You Post A tutorial pls? Im Doing it for my server but idk how it works
@Mre30
Tell me when it was successful :D or when it failed :D
oh god lol... I ll test this on mine (100+ players) Chimney smoke sounds really really cool!
@robotnikthingy
And first commands are added in the last build on Jenkins :) Have fun :)
@dandielo
I'm almost done with the animation commands :D only problem lays in the animation placement after its created xd
@robotnikthingy
Right now working on them :) I hope to get this done in 5-6 days (got also normal work to do :P)