I’d like to introduce to you the plugin I just made, Cutscene Creator version 1.0. Cutscene Creator comes with a tool to create and configure cutscenes for your creations in Roblox and a script to play them.
https://gyazo.com/a5ae4b786100f192e8322ceac2cc0b59
She ain’t too pretty, but she gets the job done. You can get the plugin here. Cutscene Creator - Roblox
To use it, once you install the plugin, click the “Setup Cutscene Creator” button.
This will put a folder of events inside Replicated storage as well as a script in PlayerScripts
From there, click “Create New Cutscene”.
That will create a cutscene folder parented to the CutScenes script.
Name that folder to what you want your cutscene to be named.
Then to set the camera location points, click the “Add Camera Point” button.
This adds a point inside your cutscene.
You can configure each point with the Values inside the new point folder. They are as follows.
Time: The time from 0 - 1 to move the camera. This isn’t a time in seconds, but rather a percentage of time for each RenderStep. So lower FPS will take longer and vice-versa for a higher FPS. If you give this value a 1, then the camera will jump to that location immediately.
Pause: The length in time in seconds to wait at this camera location.
Pos: Camera position (you shouldn’t have to change this)
Look - Camera look vector (you shouldn’t have to change this)
Continue in like manner to add the rest of the points for your cutscene.
Then to run your cutscene in your game, call either the PlayCutscene RemoteEvent from the server or the PlayCutsceneLocal BindableEvent from the client and pass the name of the cutscene you want to play. Here is a server script that plays the cutscene when the player joins.
local playCutsceneEvent = game.ReplicatedStorage.CutscenesEvents.PlayCutscene
local function playIntroToJoinedPlayer(player)
player.CharacterAdded:Wait()
wait(4)
playCutsceneEvent:FireClient(player, "Intro")
end
game.Players.PlayerAdded:Connect(playIntroToJoinedPlayer)
Please do let me know of any feedback you’ve got or suggestions for improvements or bugs that you find. It wasn’t a particularly enjoyable experience creating this plugin, considering the tooling in Roblox Studio , but if this is useful to the community, I’ll probably work on improvements to it.
I’d like to also know of any games you use this tool in!
Happy developing.