Building the Feature I've Always Wanted in my Dream RPG!

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hey everyone thanks for joining me for another devlog for dauphin my 2d rpg about a marine biologist trying to save the ocean and its inhabitants it is monday morning just after 7 a.m started things off right with a sunrise workout around 5 45 showered brewed some coffee and now i'm at my desk ready to get started on a new feature for dauphin that i'm really excited about if you've been following along with this devlog series you'll know that i most recently finished up a prototype of the player's research log part of the field notes ui that allows the player to track how many of each species they've saved from corruption and track progress towards rewards associated with certain milestones since that last video i've done just a bit of bug fixing and also added some nice to haves like masking the images of organisms you've not yet discovered and improving the overall behavior of the filter you may also remember this image that i shared in the days following that video this artwork which is still very rough around the edges is meant to represent the concept of the new functionality that i'm starting on today which is diving before today we've only seen the player running around above sea level exploring islands and caves all along it's been my plan for the player to also be able to explore the depths of the ocean and interact with all the organisms it's home to in fact my friend on who the game is based is a marine biologist who spends many of his days in the field diving to collect specimens so it's just a great fit for the game and something i'm so excited to build looking at my trello board here you can see what i have in mind so far and please keep in mind that this will be a feature that evolves with your feedback and as i make progress and play test as i go right away i know i need to both recreate my underwater concept scene within the engine and provide a way for the player to transition to it once the player is underwater they need to transition to a swimming state and i'll need to start building the systems to track the player's depth and oxygen retention my general idea here is for diving to be a skill that the player can level up so they will ideally start out just with snorkeling gear and maybe free diving in the shallows and as they gain more experience have the opportunity to unlock diving gear to take them deeper into the ocean and keep them under water longer so that's the idea and before i get too excited i really just need to build the foundation of this system to get the player below the surface i have about an hour left before work let's get started [Music] [Music] all right y'all back with a quick update here at 5 p.m on monday good news is i made it through the workday in one piece and the bad news is i didn't actually make a ton of progress this morning on the grand kickoff of the diving feature as you can see we are here in the godot engine and i've actually started making some progress laying out the underwater scene my initial plan was to kind of create a static implementation here so that i could plop the player down and start messing with their animations and movement and that was going well as you can see here but as i've started laying out these game objects i've realized that it's going to be really important to architect this scene with procedural generation in mind meaning that when a player disembarks at any particular dive spot i can programmatically decide how wide i want the dive site to be or more importantly how deep i want it to be what this ultimately means is that i'm going to have a lot less stuff in this scene over here in the hierarchy to begin with and a whole lot more stuff here in the script which is currently empty so i think i'm probably going to end up scrapping most of what i did this morning and start trying to design a procedural way to build out this underwater scene [Music] hey everyone it's wednesday morning now just after seven and i'm about to sit down and kick off another development session for the underwater scene but before i do i wanted to give you a brief overview of how i'm proposing to architect that scene for procedural generation if we take a look at my underwater concept art here in a sprite you'll notice in the bottom left that i'm using quite a few layers and these layers are what allow me to impart a sense of depth into this image and when i say depth i don't mean kind of this vertical depth here but rather the depth from the camera's perspective so the difference between things in the foreground like these two pieces of sea grass and these kind of terrain structures here far in the background now so far in dolphins development we've only seen an overhead perspective allowing for the use of y sort nodes in the engine to manage placing objects in front of other objects that's going to change in this underwater scene instead of having an overhead camera we're going to have more of a side on perspective to allow for the introduction of a gameplay mechanic around this vertical depth here and as a result i'm no longer going to be able to rely on y sort notes to place objects in front of one another instead i'm going to have to have kind of a layered system as you see here and manually manage the z indices of all the objects i want to place in the world so what does all this look like in the engine well it doesn't look like much yet because i've not made quite as much progress as i would have liked to but you can see over here in the hierarchy on the left that we have a parent underwater object for this scene and then a collection of node 2ds as children and each of these node 2ds represents one of these layers so we've got a terrain and water layer in the far background near background and foreground and then the ocean floor surface and the focus layer which is where we're going to be putting the player and the flora and fauna that the player can interact with from a procedural generation standpoint the concept is actually pretty straightforward we have our parent underwater procedural class here that has a reference to all of those layers as its children when we choose to build this procedural scene we can just loop through those layers and tell the layers to build themselves it's important that each of these layers knows how to build itself because each of the layers will contain fundamentally different game objects as you can see here the foreground layers contain some sand and some flora and fauna and the background layers typically have more terrain focused objects at least in this concept art these layers will know how to build themselves using an instance of dive spot data which is meant to represent all the information associated with a dive spot at which the player can initiate a dive so right now i have things like the biome which could influence the color of the water of course the flora and fauna and maybe even the terrain the depth which is the vertical depth of the dive site and the radius which is how far left or right from the camera's perspective the player will be able to explore this will definitely expand in the future and ultimately contain information about maybe cave entrances that you can explore and certainly information about the animals you'll be able to encounter at the dive site so that's the plan i've done far more talking than working this morning so i'm gonna go heads down now on this procedural generation code and hopefully come back with something exciting to show you [Music] hey everyone back on saturday morning here with a quick update after a few particularly productive coding sessions over the past few days and although it's not really much to look at yet i'm pleased to say that i've made some very good progress on the procedural layout of my underwater scene so here we are standing on the beach and as you can see there's a brand new item for us to interact with sitting here in the sand and what this is meant to represent is a dive flag the flag that the player would leave above them in the water for safety reasons as they dive underneath to explore and this is just kind of a placeholder piece of artwork and item but for right now using this dive flag is what's going to temporarily transport us into this underwater scene so with this item equipped here in my item bar i can click and sure enough we are transported to a brand new scene that is really just a giant blue rectangle but you'll note in this particular case the rectangle is quite deep and not very long from side to side and this is where my procedural generation stuff comes into play down in the left corner of the engine here in the file system you can see that right next to my definition of the dive spot data resource i actually have an instance of this resource that i've called test dive spot and up here in the inspector you can see some of the fields that we looked at previously that define what a dive spot is so for right now i have the biome set as temperate because that's all that i've implemented just for that background blue color for the depth we just saw the medium depth so i'll go ahead and change that to shallow and the radius was small meaning the space was not very wide so i'll go ahead and increase that to large from here i can rerun the game we'll pick up our dive flag and click to be transported to the scene and you'll notice that now this scene is very shallow so up here would be ultimately the waves breaking overhead where you'd surface and down here just below the player would be the sandy bottom which of course i'll build out in the future and you'll also notice that this generated scene is much wider than it was before meaning that the player has a lot more room for lateral exploration in these types of dive spots so obviously this doesn't look like much yet but at this point i have successfully established a pattern for building out the layers that will ultimately comprise this underwater scene based on information here in the dive spot data so i've done that for one of these layers i've got about six more so in the meantime i'm going to do just a couple more layers that help provide the basic appearance of the underwater scene like the surface and maybe the ocean floor at that point i'm going to move on to programming the player's controller and the new diving state [Music] all right we're going on 5 p.m this saturday evening today has definitely been a grind but i'm happy to report that i've made some very cool progress on the dive system definitely met the goal i set out for myself today and have something pretty cool to show you to wrap up this week's devlog so here we are back on the beach with the dive flag in hand and when we click to transition to the underwater scene and start moving you'll notice that i've started working on a swimming animation just kind of kicking his legs behind him and of course we'll have fins to accompany this in the future so that it looks a little bit more realistic when he's swimming underwater you can see of course i have quite a bit of work to do here we can swim up and left to right and i need to work on kind of stopping those animations and having some underwater idling but this is the very beginning of underwater movement in this scene on top of just the animation you can also see that i worked on the ocean floor layer here so we're now able to draw this repeating kind of sandy ocean bottom for temperate zones here in the procedural ocean i know everything we worked on in this week's devlog still looks really bad but if you can look past that what's important is that we made an underwater scene that could be procedurally generated we have a way to transition to that scene and we have a dive state that the player can enter when he's in the water these things all still need a ton of work but in their current state it provides the foundation for what i hope to be a really cool new gameplay mechanic for dauphin i hope you all enjoyed starting out this brand new feature with me this week and as always i want to give a huge shout out to my gourami supporters on patreon cody odin finic foo games mega ombre vlad sunny james kennedy jess sargo deluse and dinozoid and of course all the other folks who support my work on dauphin and this channel through patreon keep your eyes peeled for of course more devlogs but also a setup video soon for my brand new planted aquarium on my desk that i teased in this video until then stay safe and see you soon
Info
Channel: DevDuck
Views: 45,853
Rating: 4.9671926 out of 5
Keywords: indie game devlog, indie game dev, godot game dev, godot devlog, dauphin devlog, dauphin, devduck, 2d rpg devlog, godot 2d rpg, godot rpg, gamedev, game development
Id: shiwiKd-R3g
Channel Id: undefined
Length: 11min 39sec (699 seconds)
Published: Sun Sep 26 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.