Holy shi* the frames on this recording. Anyway, here is my dialogue box! it reads a JSON file with all the lines a dialogue has and plays them with a silly sound that I might change... It has support for some cool stuff although it's not implemented yet since I'm really lazy and suck at writing.
Don't mind the other things in the background... However, if you can't control your curiosity, listen closely. I heard there is a hidden archive on a particular discord server full of other development snippets, including snippets that haven't been posted here!? If anyone asks you didn't hear it from me (plz join, k thx bye)
So this is a bug I've had for awhile, and thanks to level switching, I know it's sorta localized to scenes. But it has nothing to do with scene contents. I ended up porting the game without figuring out why it happened, I'm trying really hard to keep my code clean to avoid replicating it again lol.
A dump of some things. I briefly mentioned how I had rewrote the game in Godot 4. During the transition I decided to give up on pure 2D and just make a 3D game that looks 2D... so in my own words, pearlessential is now a Psuedo2D game. Here are some captures from early in the transition.
I had to model this... with a blender! ridiculous.
So I finally got to making a small video for pearlessential. Like the game, it was overscoped and I spent a bit too much time producing it, but I'm happy with how it turned out.
It also let me polish up my video producing skills which is nice.
OptOut encounters. I need to add more sound effects, an alarm sound for when one of these pops would be fitting.
This is a tutorial for Godot 3 I used to make part of my dialogue manager. It gives me animal crossing like SFX and the ability to have short pauses.
This is another tutorial for Godot 3 that comprises the other bit of my system. I cobbled together a few more features using my poor understanding of the documentation. I believe the author of this video has a more advanced JSON dialogue setup that might fit what you're looking for.
My system boils down to a state machine where each line in a dialogue is a unique state. The JSON file signifies all the states in a scene and alongside what should be said I can define other things I want to happen when a line is played, The most I've done with this is change an emote image or display additional text but I plan to base my cutscenes around it too. But instead of changing an image I might call for the camera to move, the game to fade to black, or for an NPC or Some other game object to play an animation. It's a bit messy right now but I've come to realize a lot of game programming is just a state machine in different contexts.
I wouldn't be scared of making a brute-force attempt either. Iterating is part of the creative process and even if it ends in failure you'll learn something new even if that's how not to do something.
Anyone know any good tutorials on creating dialogue/cutscene systems for RPGs? Preferably Godot but if there’s other ones with easily applicable universal principles that would work too. This is something that I feel like has lots of different approaches and I wouldn’t want to just brute force a really cluttered system for it.
Physics objects are really fun to play with! Another reason you should just make a 3D game with an isometric perspective instead of a pure 2D one. Not to say you couldn't do this in pure 2D...
Anyway, I guess this means I need to come up with a reason you'd find a ton of crates lying around. Maybe a warehouse level... and a quest to find a needle in a crate stack...?
⚠️TRADE OFFER ⚠️ i receive: a wishlist -> https://store.steampowered.com/app/3163190 you receive: an email on release!
So following party members are a bit tricker in 3D. The main issue I need to solve is how they handle being obstructed by something they can scale. I sorta want to put jumping into their state machine but I'm lazy so for now they teleport. I had a slight issue where when they teleported somewhere they could crush the player controller into the ground... it might still be an issue I need to test it more haha.
If you were curious about how their path-finding works it's something like this:
A. Determine the vector between the current position and the player position ignoring the y-axis. B. Add vector to velocity to move in the player's direction. C. If one of 6 ray casts reports collision and velocity is close to zero pick another direction to walk in for a while before resuming from step A.
I could use the built-in navigation stuff Godot has but it needs to be baked and I sorta want to avoid that with how much I like to tweak the environment sometimes. Idk it works well enough for now but there is totally room for improvement haha.
Sasha's Travels⚙️
A blog for a game about a rather peculiar exam. Made in Godot Engine!
200 posts