Reminiscent64
banner
reminiscent64.bsky.social
Reminiscent64
@reminiscent64.bsky.social
Taking what I've learned from the games I've grown up with and making the video games that I want to play! 😎

Currently working on the Dark Fantasy kinetic novel A King's Genocide!
I’m working on my game A King’s Genocide.

It will never in a million years have A.I., and if anyone ever finds that it does, absolutely tar and feather me.
October 24, 2025 at 4:37 PM
From there, I had a blinking animation occurring at random and mouth movement on speaking lines!
October 16, 2025 at 9:20 PM
For code, all we need for the mouth animation is a function to set the Talking state machine variable to True or False as needed.

From there, I just hooked the function up to the Speaking events Naninovel has.

OnStartedSpeaking sets Talking to True.
OnFinishedSpeaking sets Talking to False.
October 16, 2025 at 9:20 PM
The animations for the Silent and Talking states are about as simple as it was for the eyes.

Maybe even simpler since the Talking state ends on the silent mouth sprite. As a result, the Silent state actually has no associated animation.
October 16, 2025 at 9:20 PM
The mouth had a bit more coding involved, but its state machine essentially looks the same.

For the transition from Silent to Talking, we set a condition for the Talking state machine variable to be True.

From Talking to Silent, we set a condition for the Talking state variable to be False.
October 16, 2025 at 9:20 PM
After that, I put a script at the top of my prefab of Aracelia with a custom Behavior class to manipulate the state machine and its variables as needed.

For the eyes, every call of the update function, we generate a random value and set it to the BlinkValue state machine variable.
October 16, 2025 at 9:20 PM
For the transition from Looking to Blinking, I set a condition where the transition happens if my BlinkValue state machine variable is greater than 50.

For the transition from Blinking to Looking, I set a condition where the transition happens if my BlinkValue state variable is less than 50.
October 16, 2025 at 9:20 PM
The eye animation was actually the easiest to set up.

You create a default Looking state that always sets Aracelia's eyes to open. From there, create a Blinking state that plays the blinking animation.

Then you create a transition to and from the Blinking and Looking states.
October 16, 2025 at 9:20 PM