【AdvancedCamera】- The smoothest cinematic plugin that you can't even imagine ! icon

【AdvancedCamera】- The smoothest cinematic plugin that you can't even imagine ! -----

Advanced smooth cinematic transition in different ways



***This plugin is in maintenance-only mode, only new Minecraft version update support and bug fix will be provided. Consider before purchase.***
[​IMG]



[​IMG]
Have you ever imagined... A cinematic plugin, but MUCH smoother?
Let me grandly introduce to you, AdvancedCamera, the smoothest cinematic plugin that you can't even imagine!



[​IMG]
- EXTREMELY smooth camera movement (only when camera type is Spectate)
- Freeze player COMPLETELY when playing cinematics, invisible hotbar (only when camera type is Spectate)
- Option to make the player look at a point or a fixed angle
- Toggleable camera type between original Teleport or the new Spectate
- Commands to freeze/unfreeze player even if you are not playing a cinematic
- Delay can be added before the camera actually moves
- Play cinematic instantly by entering some information via command, no configuration is needed
- Store player's flight state, potion effects, gamemode, last location, and inventory, revert after cinematic ends
- Support 1.13 all the way up to 1.20.1



[​IMG]

Demonstration of "Front" in default config


Demonstration of "Tutorial" in default config



[​IMG]
/avc freeze <0-3>: Freeze the player in specified gamemode." + " **USE WITH CAUTION WHEN CAMERA IS PLAYING**
/avc unfreeze <0: Survival, 1: Creative, 2: Adventure, 3: Spectator>: Unfreeze the player and return to specified gamemode." + " **USE WITH CAUTION WHEN CAMERA IS PLAYING**
/avc start <x> <y> <z> <x1> <y1> <z1> <tick> <TELEPORT/SPECTATE>: Start playing with designated value." + " "x, y, z" is the ending point, "x1, y1, z1" is the point to look, "tick" is the time taken to travel and "TELEPORT/SPECTATE" is the type of the camera.
/avc play
<Path>: Play specified camera path.

/avc queue: Show the current queued camera.
/avc createpath <Name>: Create a new camera path.
/avc removepath
<Name>: Remove a specified camera path.
/avc addcamera
<Name> <Time to travel> <Initial delay> <Starting point> <Ending point> <Look point / Yaw,Pitch> <TELEPORT/SPECTATE>: Add a camera to specified path.
/avc removecamera
<Line>: Remove a specified path from camera, the line id is the order of path in "/avc list", starting from 0.
/avc addpoint <Name>: Add a point with specified name. The location of the point is where the player is at.
/avc removepoint
<Name>: Remove a point with specified name.
/avc addregion <Region> <Camera>: Add region so that the specified camera will play when enter.
/avc removeregion <Region>: Remove a region.

/avc check: Get the formatted string of the item on hand.
/avc list: List all paths and points loaded.
/avc migrate: Migrate the old configuration into new format.
/avc reload: Reload the configuration.
/avc help: Show the help page.



[​IMG]
[Green: Default to everyone] [Red: Default to admin]
AdvancedCamera.Admin: Give access to AdvancedCamera commands


AdvancedCamera.Commands.Freeze: Give access to /avc Freeze
AdvancedCamera.Commands.Unfreeze: Give access to /avc Unfreeze
AdvancedCamera.Commands.Start: Give access to /avc Start
AdvancedCamera.Commands.Play: Give access to /avc Play
AdvancedCamera.Commands.Queue: Give access to /avc Queue
AdvancedCamera.Commands.CreatePath: Give access to /avc CreatePath
AdvancedCamera.Commands.RemovePath: Give access to /avc RemovePath
AdvancedCamera.Commands.AddCamera: Give access to /avc AddCamera
AdvancedCamera.Commands.RemoveCamera: Give access to /avc RemoveCamera

AdvancedCamera.Commands.AddPoint: Give access to /avc AddPoint
AdvancedCamera.Commands.RemovePoint: Give access to /avc RemovePoint
AdvancedCamera.Commands.AddRegion: Give access to /avc AddRegion
AdvancedCamera.Commands.RemoveRegion: Give access to /avc RemoveRegion

AdvancedCamera.Commands.Check: Give access to /avc Check
AdvancedCamera.Commands.List: Give access to /avc List
AdvancedCamera.Commands.Migrate: Give access to /avc Migrate
AdvancedCamera.Commands.Reload: Give access to /avc Reload
AdvancedCamera.Commands.Help: Give access to /avc Help



[​IMG]
Code (YAML):
AdvancedCamera :
  # Camera's path, you may declare as much as you want, but remember the point entered is declared in the Points section
  # Player's flight state, Invisibility & Slow effect, gamemode, last location, inventory will be saved,
  # and wil be changed by the plugin to avoid unwanted effects. The inventory will also be cleared.
  # Player's flight state, Invisibility & Slow effect, gamemode, inventory will be reverted after all camera in the
  # queue has ended, player quits or plugin reloads (server restarts, not force-stopping)
  #
  # Bed enter, block break, interact, move, pickup item, take lectern book, toggle flight, toggle sneak will be cancelled
  # until all camera in the queue has ended
  Paths
:
    # Camera path's name
    Tutorial0
:
      Actions
:
        # If you want the player look at a point, use this format (numbers in ticks)
        #
        # time: Time taken for the player to travel between Starting Point and Ending Point
        # init: How long will the camera wait until it starts after freezing and teleporting to Starting Point
        # start: The point declared under "Points" section, where the camera will start
        # end: The point declared under "Points" section, where the camera will end
        # look: The point declared under "Points" section, where the player will look at
        # type:
        #   Spectate: Player will be completely frozen, hotbar will be invisible, however it looks choppy when moving in low speed,
        #             but looks very smooth in high speed. The actual player will stay where he is at, only the camera moves
        #   Teleport: Player's client will shake if they move, hotbar will be visible, however it looks smooth when moving in low speed,
        #             but looks choppy in high speed due to only 1 teleport can be made in 1 tick. The actual player will follow the path to move
        - Camera {time=100;init=40;start=PointA;end=PointB;look=LookA;type=Teleport }
        # If you want to modify player's inventory
        #
        # action: What action will do
        #   clear: Clear player's inventory
        #   add: Add a specified item to a specified slot
        #   remove: Remove the item from specified slot
        # slot: Slot of the item to add/remove
        #   helmet chestplate leggings boots mainhand offhand 0-n
        # item: Item to add to specified slot
        #   type "/avc check" to retrieve the formatted item string, then paste it accordingly
        - Inventory {action=add;slot=0;item=' { "v":2865, "type": "REDSTONE_BLOCK" }' }
        # - Inventory{action=clear}
        # - Inventory{action=remove;slot=0}
        - Effect {action=apply;type=Invisibility;duration=32767;amplifier=0;ambient=false;particles=false;icon=false }
        # - Effect{action=clear;type=Invisibility}
        - Title {action=send;title= "Title";subtitle= "SubTitle";fadein=20;stay=20;fadeout=20 }
        # - Title{action=reset}
        - Camera {time=200;init=40;start=PointB;end=PointC;look=LookA;type=Spectate }
        - Camera {time=100;init=40;start=PointC;end=PointD;look=LookA;type=Teleport }
    Tutorial
:
      Actions
:
       - Effect {action=apply;type=Invisibility }
        - Effect {action=apply;type=Slow }
        - Camera {time=100;init=40;start=PointA;end=PointB;look=LookA;type=Teleport }
        - Effect {action=clear;type=Slow }
        # - Camera{time=200;init=80;start=PointB;end=PointC;look=LookA;type=Spectate}
        # - Effect{action=apply;type=Slow}
        # - Camera{time=100;init=120;start=PointC;end=PointD;look=LookA;type=Teleport}
        # - Effect{action=clear;type=Slow}
    Front
:
      Actions
:
        # If you want the player look with a specific angle, use this format (numbers in ticks)
        #
        # Yaw, Pitch: Yaw and pitch locked for the player, **DO NOT ADD SPACES BEFORE OR AFTER COMMA(,)
        - Camera {time=100;init=40;start=PointA;end=PointB;yaw=0;pitch=0;type=Teleport }
        # - Camera{time=200;init=80;start=PointB;end=PointC;yaw=0;pitch=45;type=Spectate}
        # - Camera{time=100;init=120;start=PointC;end=PointD;yaw=90;pitch=45;type=Teleport}
  # Camera's point, this may be the point that player travels between, or looks at
  Points
:
    PointA
:
      world
: world
      x
: 105.0
      y
: 18.0
      z
: 208.0
      yaw
: -37.0
      pitch
: 22.0
    PointB
:
      world
: world
      x
: 132.0
      y
: 17.0
      z
: 223.0
      yaw
: 98.0
      pitch
: 33.0
    PointC
:
      world
: world
      x
: 118.0
      y
: 21.0
      z
: 234.0
      yaw
: -180.0
      pitch
: 45.0
    PointD
:
      world
: world
      x
: 103.0
      y
: 8.0
      z
: 222.0
      yaw
: -80.0
      pitch
: -6.0
    LookA
:
      world
: world
      x
: 118.5
      y
: 9
      z
: 221.5
      yaw
: 0.0
      pitch
: 0.0
  # When player enter specified region created by WorldGuard, specified camera path will play
  # Requires WorldGuard and WorldGuardEvents to be installed
  Regions
:
    # Cooldown of the camera played by the region enter event
    Cooldown
: 60
    # Region name
    spawn
:
      # Camera path to play
      Path
: Tutorial
    test
:
      Path
: Front

[​IMG]
- ProtocolLib
- WorldGuard (Optional)
- WorldGuardEvents (Optional, but essential if you have WorldGuard installed)



[​IMG]
- Download the plugin from the "Download Now" button above
- Download all the dependencies stated above
- Place the plugin and the dependencies in "YourServerFolder/plugins"
- Restart the server
- Modify the configuration if needed



[​IMG]
Camera type "Spectate" looks very choppy when moving at a slow speed!
Due to how Minecraft handles yaw and pitch in spectator mode, the camera can only be moved when the difference between last yaw/pitch ≥ 1.4. There is nothing I can do. Alternatively, you can use the camera type "Teleport" if it fits your situation.

Camera type "Teleport" looks very choppy when moving at high speed!
The unit of Minecraft runs is tick, which is 1/20 second, the player cannot be teleported faster than 20 times per second. For faster camera movement, please use "Spectate".

Player's camera flickers when changing from camera type "Teleport" to "Spectate" or vice versa!
The plugin applies Slowness effect to the player in order to keep the FOV looks similar between "Teleport" and "Spectate". However, when the potion effect applies to/remove from the player, the player's screen will flicker. There is nothing I can do.

Player stops moving for a short while during a long path with camera type "Spectate"!
The actual player stands where he is at when the camera type is "Spectate", only the camera moves, Minecraft does not allow the camera to move too far away from the player, so teleportation is needed at a certain distance. That teleportation makes the player stop moving for a short while.


[​IMG]
Can't answer your question? PM me or leave a comment in the Discussion Section. I will answer you as soon as possible.

Q. I found bugs / console errors.
A. Try to download the plugin again before asking for help. I will help as much as I can if you provide enough information such as error logs, how to reproduce the error. Please PM me or leave a comment in the Discussion Section. Otherwise, I will ignore you.

Q. Nothing was received after typing the command.
A. Please make sure that you follow the format before executing the command. You might get nothing if you enter the wrong arguments. Also, please make sure that the plugin is loaded and doesn't conflict with other plugins. You may ask for help but I can't promise I can fix the error if the error is not produced by my plugin.

Q. Does this plugin support xxx Platform / xxx Server / xxx Minecraft version?
A. I am sorry that I can't test my plugin on all platforms, servers, Minecraft versions. I don't have time and resources. If you are having problems with the specified Platform / Server / Minecraft version, please PM me or leave a comment in the Discussion Section. I will try my best to fix it.


[​IMG]
You are not permitted to redistribute any part of the resource in any form.
You are not permitted to redistribute the resource as your own work.
You are not permitted to modify the code of the resource.
You are not recommended to give reviews about the difficulties you are facing like bugs, errors, configuration problems.
You will not be alerted if the "Terms of Use" was modified.

You are recommended to give suggestions of the resource or technical support to improve the quality of the resource.


This resource collects anonymous server statistics through bStats. If you would like to disable it, you can change the settings in plugins/bStats/config.yml.
[​IMG]
Resource Information
Author:
----------
Total Downloads: 42
First Release: Sep 22, 2021
Last Update: Jul 1, 2023
Category: ---------------
All-Time Rating:
3 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings