Published: November 1st 2024, 1:00:13 pm
Hey Y'all! Alice here again for her monthly dev log!
with the spooky season behind us we and our bellies full of candy. I hope.... I do not celebrate Halloween. Also I am writing this a month in advance. Anyways. It is time for another devlog! This time we shall discuss something that took up most of my early months programming this game. Our very own custom cutscene system! now you may be wondering "Alice. Why the hell would you make a custom cutscene system when Unity has an in-built one?" Well because f*ck you random reader that is why!... Also neither of us realized there was a custom cutscene system to use for several months and it would not work in any case seeing as we have a lot of custom components to make 2d sprites appear 3d in game. Along with that we are using a mouth system that will be the subject of a future devlog. Anyways. Back on topic! this cutscene system is something I am truly proud of. As I have actually used what i have learned in university to make sure this baby runs smooth as butter. It is made out of a few key components that all condense into a easy to use (If a bit tedious) system for unlimited custom cutscenes! Each and every cutscene is made out of an array of cutscene components. All properly indexed. Which allows us to skip ahead to the future which will be explained in the upcoming devlog. This system is made of 5 parts.
The speaker
Animations
Movements
Camera
Options/cutscene advancement
We shall be speaking about the first 3 components in this devlog. The ones all built upon the same CutsceneBase. Which consists of three components: A name so we can easilly read the array entries in the editor, A original actor who will be performing the parts and a reflection of this actor. Without further ado. Let us start with the speaker.
Speaker
The speaker is the character (of which there are more than just the two revealed) speaking at any given moment. This speaker also has their text appear on screen with a custom speech bubble! (fancy) [insert speech bubble appearing] And this speaker will immediately start speaking in the actual game as well! for further explanation will happen in a future devlog. When the speaker is done speaking. There will be a small delay before moving onto the next part of the cutscene.
Animations
Animations speak for themselves. Using this system we can trigger any type of animation in the whole game. Be that our own custom-written functions for the characters or calling their animator components. We can even select which type of trigger we wish to change and with individual name selections. We can also override custom mouths onto the characters as they speak. Making for a more immersive experience as you play the game. We can play multiple animations simultaneously simply by adding more of them in a single cutscene part. 3 MovementsMovements work in a really simple manner. We only move in straight lines. This is a downside of a custom system. We have to write everything ourselves. Meaning, seemingly simple things like moving in curves is damn difficult. Speaking from experience. For movements, we can select from one of three options. A direction we wish the actor to move towards, A single spot in 3d space we wish the actor to move to or a combination of both. Where the direction gets added to the 3d space. This combination of options gives us great control in positioning the player precisely where we want them. With the added speed functionality, we can even make it appear as if the character is running! Perhaps going at the speed of light. Or slower than the slowest of slow slugs. Does not matter. We can do it all!
And with that. I am getting to my character limit. This means that, unfortunately, this devlog is over. If you wanna contact me. You can do so in the discord with @kinggo14 to ask me any questions you want! I hope to see you there! Yours in spookiness. Alice!