Animate pixel arts or whole scenes(also animate Gifs)

Version: v2.1.3

gif not found :C
gif by AnAwesomeGuy

remember that free plugins wont buy me food :3
Donation via PayPal

Ever wanted to animate one of your pixel arts? Or perhaps you would like to make a building change in a more elaborate way? Even wanted to make 3d movies come to life on your server? These dreams can now come true with this plugin!

Cinema is a block moving plugin which makes scenes come to life in a full moving picture!

How Does it work?

Simple~ Have you ever drawn a scene on a piece of paper, then on the next sheet the next scene and so on~ by the end of it you flip through your book and you see a moving picture.

The same rules apply here! You select your "Stage", and then you begin to implement your first scene known as a frame. Each save is a frame of your cinema and in the end the cinema will go through the frames in a loop or one time (You Choose!).

Main tutorials/videos from the creator

nice demovideo from metroid4

some other videos

Step one!
Selecting your stage,
By using /cpos1 and /cpos2 you can select your stage much like using world edit to select your cuboid space. (Alternatively you can select the field with an x y z coordinate /cpos1 [x] [y] [z] [[world name if console]] )
Once your field is created you can move to step 2!

Step Two!
Creating your first frame,
You need to make your beginning piece of pixel art, or 3d scene
Once built you use the command /csave <File name>
(/csavedelta can be used to reduce the file size and serverload when playing the files, but editing these files can give unwanted results)

Step Three!
Making more Frames,
You can repeat step two until your animation is complete!!

Step Four!
Playing your cinema,
This command is rather long but each field is necessary~
/cplay <playername> <filename> <frame duration> <play count>
The playername IS NOT YOUR NAME!! It is the name the plugin needs to identify the player for various commands. You can use any text as a player name but again, it is not your name!
Frame Duration is in milliseconds, 1000 milliseconds = 1 second
(this is the time that the plugin waits until it shows the next frame)
Play count is the amount of times the animation will play, using 0 will make the animation loop endlessly
Here is an example of what your command should look like
/cplay Theater1 test1 400 1
This means the cinema will have the name Theater1; use the file test1; play only once; and use a 400 millisecond frame duration.

Commands in this plugin:
  • /cpos1 [x] [y] [z] [[worldname if console]] : set the first corner of your cuboid, which should be saved. if you play a saved file, this will be the pos1 you used by saving. so save your pixelart where you want. and then set pos1 to the destination and play your animation. if no parameters were given, the position of the players feet is used(the block you are standing in) as player you can also specify the x, y and z. if you want to use this command from the console. you also have to specify the worldname
  • /cpos2 [x] [y] [z] [[worldname if console]] : sets the second corner of your cuboid. is just used for saving. parameters are the same as in /cpos1
  • /csavedelta <filename> [frameindex] : saves the frame selected by pos1 and pos2 to the specified file. you can optionally specify the index in the file the frame should be saved to. e.g. /csave test 1 would save the frame as second frame in the animation. 0 would be first frame. if index is out of file the frame will be saved last. delta means, that only the differences to the previous frame will be saved, which means less serverload for bigger animations, and also smaller file size.
  • /csave <filename> [frameindex] : saves whole frames instead of just the differences.
  • /cplay <ID> <filename> <framedurationInMillis> <playcount>: plays the given file under the given ID (needed to stop this player with cstop)(ID does not refer to your own player name, but to the name you give the playing animation. it also can be 213232123 or whatever. its just for identification purposes later) playcount is the amount of times the file will be played. it then calls stop by itself. playCount = 0 means it plays endlessy the frameduration is the amount of time it takes until the next frame is drawn in your world.
  • /cstop <ID> : stops the player with the given ID. this refers to the ID used in /cplay
  • /cinemainfo : shows you the current pos1 and pos2. Also shows current version and give you a note if there is a new version available
  • /canimations : shows all currently playing cinemaplayers
  • /cinemaremove <filename> : removes the file with the given name. this cant be undone
  • /ceditopen <filename> : opens a cinema animation for editing
  • /ceditremove <index> : removes the frame at position <index>. the first frame has index 0
  • /ceditsave : saves the changes made to the animation
  • /ceditclose : closes the editor and file. all unsaved progress will be lost
  • /ceditinfo : shows you the current loaded file in the editor
  • /ceditshow <index> : draws the given frame at pos1.
  • /cinemagif <input file name(with extension)> <output animation name> <alignment> : converts the given image (preferably a GIF animated file) into a cinema animation. for alignment see /cinemagifalignment. input file has to be in plugins/cinema/files/
  • /cinemagifalignment : Shows you the 5 available alignments (use the numbers or the text shown here as arguments in /cinemagif
  • /creverse <ID> : reverses a given players playdirection. you can reverse a playing animation

this list is not complete. use the /help command on your server to see all commands

Permissions: there is only one permission node: Cinema.basic

  • Saves/deletes and plays animated Pixel arts/ 3d Scenes
  • notifies you if a new version is available (use /cinemainfo)
  • restores playing Cinemas after shutdown of server
  • converts GIF-files to cinema-animations
Download here Source Code available here

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of jessefjxm jessefjxm Mar 31, 2015 at 11:18 UTC - 0 likes

    It would be much better if there's a way for cinema working with Plotme ;) Preventing animations destroying others' plots.


  • Avatar of CaptainLink_ CaptainLink_ Mar 15, 2015 at 05:14 UTC - 0 likes

    Spectacular plugin! Don't let it die.

  • Avatar of chunkimunki1 chunkimunki1 Feb 05, 2015 at 06:50 UTC - 0 likes

    @fredlllll: Go

    Indeed I can but then that's twice the work trying to make something usable in an adventure map. Just greedy I think in wanting something simple and quick ie 'RESET' command. Any thoughts on 'PLAYER <ID> IN USE' messages when re activating animation?

  • Avatar of fredlllll fredlllll Feb 04, 2015 at 22:11 UTC - 0 likes

    @chunkimunki1: Go

    cant you just record the reverse of the animation and play this? this creverse thing isnt exactly a good idea. the animations werent made to be played backwards.

  • Avatar of chunkimunki1 chunkimunki1 Feb 04, 2015 at 21:21 UTC - 0 likes

    OK ya got me. Didn't think the bug fix would be so swift but by jove you've done it!! I can now create animations where ever I want. Ta . Still a couple of things left until perfection reached. Using the creverse <ID> command will only work completely for me if the animation is 2 or 3 frames in, left any later into the sequence and it only winds back a couple of frames leaving blocks missing- still would wish for a 'reset animation' command ie to frame 0. Also after 1 play of the animation subsequent plays brings up the 'Player <ID> in use' warning but it still runs fine.

  • Avatar of fredlllll fredlllll Feb 04, 2015 at 19:14 UTC - 0 likes

    @chunkimunki1: Go

    ah yes this is a bug. it used the x and y coordinates for the frametime and playcount. i fixed it in 2.1.3

    well im sad to hear that u are giving up :C

  • Avatar of chunkimunki1 chunkimunki1 Feb 04, 2015 at 18:56 UTC - 0 likes

    Its close but no cigar! Thanks for the tip but although I can generate the animation now at specific co-ordinates in the world, the frameduration and playcount do not function. Whatever variation of numbers I input the animation plays the same everytime - at high speed for approx. 10 times?? Thats it I'm afraid- I'm waving the white flag- thanks for your responses, best of luck with the future development.

  • Avatar of fredlllll fredlllll Feb 03, 2015 at 22:05 UTC - 0 likes

    @chunkimunki1: Go

    well there is the command /cplayworld <ID> <filename> <x> <y> <z> <world> [framedurationInMillis=250] [playcount=0] which can also take the coordinates and world as origin. maybe that helps? i know that is not listed on this page, but it should show up in the /help command for my plugin

    you can always donate via the donate button on the top right of this page :D

    Last edited Feb 03, 2015 by fredlllll
  • Avatar of chunkimunki1 chunkimunki1 Feb 03, 2015 at 18:44 UTC - 0 likes

    Just had a quick thought! Could I/We in any way Donate/pay/bribe you into making this or a parallel plugin to be used as described below? IE fixed/saved world positions+reset command all for map making projects? Its only a request from a Dad trying to make an awesome Adventure map for my kids and your skill with this project had me excited with all the equally awesome potential it held! Truly I feel like Mr Spielburg trying to get the soddin' shark to work for an amazing effect!! Anyhoo thanks for your efforts to date- if only I were clever enough to achieve the same results using command blocks/script/variable triggers or indeed create it off the back of your fab endeavors- sadly I am not! Much kudos CM1

  • Avatar of chunkimunki1 chunkimunki1 Feb 03, 2015 at 06:43 UTC - 0 likes

    I think the penny has dropped. Your direction for the plugin is to be able to create and play animations basically in front of yourself, anywhere in a world, for purely artistic pleasure whereas I want to be able to fix an animation to a specific place in the world so as to be activated by the players in an adventure map. Cut scenes if you will. Not setting co-ordinates relative to the world but to the player negates the use of this plugin as a creative tool for map making. Colour me gutted!!


Date created
Apr 13, 2012
Last update
Feb 04, 2015
Development stage
  • enUS
Public Domain
Curse link
Recent files