Make sure to check out the awesome indie games being created with this addon! Grimhaven by Fridge Games: www.youtube.com/@fridge.interactive / x.com/fridge_game Rift of Nostaria: www.youtube.com/@RiftOfNostaria-AFantasyL-nj6lg / x.com/RiftOfNostaria Also check out the full tutorial if you want to use it yourself: th-cam.com/video/v58l05FsdPs/w-d-xo.html
You deserve more views man... goes to show that views != quality and talent. Without your videos, my multiplayer game wouldn't have this wonderful weapon system and movement code
The main difference is that dungeon kits are no longer a thing, but many improvements were made other than that. Instead of dungeon kits now, you just define individual room scenes, and add them to the DungeonGenerator3D's room_scenes property. Also, you no longer need AABBs you just set the room's size_in_voxels property for that. I added a ton of debug info so hopefully the new version is a lot easier to use.
@@MajikayoGames Oh I see so I already had this version this is the same one that you showed on your last tutorial video right? I'm guessing I still need to update for a few fixes that happened over the last two weeks? I'll make sure to send you footage when I get a playable version of my game!
@@onokoreal awesome would love to see it! yep i did a few bug fixes and minor improvements in the last couple weeks, it should be stable by now. anything else ill be adding, will probably just be bug fixes if anyone finds any glitches.
@@MajikayoGames Awesome thanks. Quick question if you don't mind I just updated my whole addon folder and everything seem to work the same so it went well. But I wanted to try some of your new prefabs to see how they work, notably the mansion. Didn't want to reuse your "debug" spawn tool again since I have my own setup for things so I setup a Dungen3D node with the mansion rooms, then added the HouseExterior prefab around and also added MansionEntranceRoom and aligned it in the editor (did manually what the script does when you choose mansion with your debug tool basically) Despite that I'm getting an issue where HouseExterior stays invisible and never make the "cut" needed for the entrace to be collision free. TLDR I setup a DungeonGenerator3D with HouseExterior scene from the mansion prefab along with the mansionrooms but the housexterior script doesn't seem to load properly outside of being loaded from the debug tool. I'll let you know if I figure out why haven't dabbled too much with your tool lately. thanks.
@@onokoreal ah yeah you might have to adapt the HouseExterior to your own scenes. that one has some setup being done from the demo scene generation script. it's just meant as an example to show what is possible, you can refer to the scripts in the DemoScene and the HouseExterior and create some similar. Also you can check the wiki for more info on how to use the addon: github.com/majikayogames/SimpleDungeons/wiki
Would you be interested in lock and key generation? By defining rooms as having a key and then having farther rooms with locks you can use the room/node order to make sure each key is available before you encounter the lock. The lock could be an enemy you have to defeat to progress or a puzzle or just a locked door. I think that would be the thing that would take this add on to the next step. I'd be interested in contributing to help accomplish that goal since I'd need it for my game's dungeon generation.
Currently planning some other projects so I won't have time to implement this, but you may find the source code overview portion of the tutorial I did helpful. All the code is CC0 so you are welcome to modify and do with it as you please.
Dude, you're a genius! Definetely will try to use your work in the future. The only issue is that now I need to come up with a solution of how to use your generator with Qodot, if it's even possible😅
Have you heard of Dungeon Architect for Unreal / Unity? I have been dreaming about something similar for Godot for a while now. Like another commenter said lock and key generation would be amazing! Thanks for making this I really think we will see some great games using it soon.
Dungeon Architect was one of the inspirations for my comment. If we even got a fraction of that functionality, I think it'd go a long way for making procedural generation easier in Godot.
Amazing job and progress on this implementation!! Im not sure if this was mentioned on the video or I missed it but can you provide weights to the generation algorithm in order to favour specific room spawn combinations?? and if not how hard would it be to add such functionality to the generation process???
I haven't tried it, but AFAIK there are a couple ways to connect navigation meshes, from looking i think using edge_connection_margin looks easiest, i would think you make sure that is greater than the gap between any dungeon room doors: docs.godotengine.org/en/stable/tutorials/navigation/navigation_connecting_navmesh.html
Fantastic!! I was making my own but this seems so sophisticated I can already use the rooms I made too 👍👌 I’ll mention you in credits for sure haha 🤣 I have one question tho… how can I generate a navigation mesh after generating the dungeon? I just have a one floor dungeon so just parent all rooms to a nav mesh node and bake after generation?
glad you enjoyed :) i haven't tried nav mesh generation yet. but yeah i assume you could just bake it after if you needed to. or, i think you might be able to pre bake it for each individual room and then the navigation server joins overlapping points. i haven't looked too much into it though.
@@MajikayoGames oh great yah I thought maybe it would work baking it in pieces, it works for occlusion culling at least! I wonder what you got cooking now ahah this is such an awesome unknown godot add-on! 👍👍🙏
I'm looking to have one size room that's open no walls with stuff in them, put together to make one big endless room but two floors. If I could use you add on that would be great but what should I be looking for to learn how to do this.
@MajikayoGames I wonder how difficult it will be for the voxel landscape to adapt around the dungeon. Like, what is currently diggable dirt and minable stone, needs to be procedurally replaced with these dungeons. I'm guessing I will need to give the rooms a collision box that I can use to cull the voxel landscape that collides with the dungeon walls, Similar to getting water out of a boat.
I like the pre-placed room idea, Would it be a possibility to have several pre-placed rooms that the dungeon could randomly generate to create connections between? So say I have another pre-placed room every 2 or so levels It will connect them.
not sure i fully understand, but it sounds like that would work. you could even pre place rooms in code, then call .generate after. that's what i did in the mansion example. there's also the custom get random rooms function which could work for this.
Make sure to check out the awesome indie games being created with this addon!
Grimhaven by Fridge Games: www.youtube.com/@fridge.interactive / x.com/fridge_game
Rift of Nostaria: www.youtube.com/@RiftOfNostaria-AFantasyL-nj6lg / x.com/RiftOfNostaria
Also check out the full tutorial if you want to use it yourself: th-cam.com/video/v58l05FsdPs/w-d-xo.html
Honored to have our game GRIMHAVEN featured! Your plugin is an absolute must-have for anyone in the market for procedural gen -- highly recommend!
awesome!! thanks so much
You deserve more views man... goes to show that views != quality and talent.
Without your videos, my multiplayer game wouldn't have this wonderful weapon system and movement code
Once again, great job on the addon!
The gift that keeps on giving! Great work. Anything I should be aware of when updating from older version?
The main difference is that dungeon kits are no longer a thing, but many improvements were made other than that. Instead of dungeon kits now, you just define individual room scenes, and add them to the DungeonGenerator3D's room_scenes property. Also, you no longer need AABBs you just set the room's size_in_voxels property for that. I added a ton of debug info so hopefully the new version is a lot easier to use.
@@MajikayoGames Oh I see so I already had this version this is the same one that you showed on your last tutorial video right?
I'm guessing I still need to update for a few fixes that happened over the last two weeks?
I'll make sure to send you footage when I get a playable version of my game!
@@onokoreal awesome would love to see it! yep i did a few bug fixes and minor improvements in the last couple weeks, it should be stable by now. anything else ill be adding, will probably just be bug fixes if anyone finds any glitches.
@@MajikayoGames Awesome thanks.
Quick question if you don't mind I just updated my whole addon folder and everything seem to work the same so it went well.
But I wanted to try some of your new prefabs to see how they work, notably the mansion. Didn't want to reuse your "debug" spawn tool again since I have my own setup for things so I setup a Dungen3D node with the mansion rooms, then added the HouseExterior prefab around and also added MansionEntranceRoom and aligned it in the editor (did manually what the script does when you choose mansion with your debug tool basically)
Despite that I'm getting an issue where HouseExterior stays invisible and never make the "cut" needed for the entrace to be collision free.
TLDR
I setup a DungeonGenerator3D with HouseExterior scene from the mansion prefab along with the mansionrooms but the housexterior script doesn't seem to load properly outside of being loaded from the debug tool.
I'll let you know if I figure out why haven't dabbled too much with your tool lately. thanks.
@@onokoreal ah yeah you might have to adapt the HouseExterior to your own scenes. that one has some setup being done from the demo scene generation script. it's just meant as an example to show what is possible, you can refer to the scripts in the DemoScene and the HouseExterior and create some similar. Also you can check the wiki for more info on how to use the addon: github.com/majikayogames/SimpleDungeons/wiki
Would you be interested in lock and key generation? By defining rooms as having a key and then having farther rooms with locks you can use the room/node order to make sure each key is available before you encounter the lock. The lock could be an enemy you have to defeat to progress or a puzzle or just a locked door.
I think that would be the thing that would take this add on to the next step. I'd be interested in contributing to help accomplish that goal since I'd need it for my game's dungeon generation.
Currently planning some other projects so I won't have time to implement this, but you may find the source code overview portion of the tutorial I did helpful. All the code is CC0 so you are welcome to modify and do with it as you please.
@@MajikayoGames Alright I'll see if I can implement it and if I get something working I'll open a pull request with the changes from my fork.
This is a tremendous addon! You're awesome for making this!
Dude, you're a genius! Definetely will try to use your work in the future.
The only issue is that now I need to come up with a solution of how to use your generator with Qodot, if it's even possible😅
This is awesome, thank you so much!
Man, this is extremely helpful for my game (and my sanity), now I don't have to code it from scratch XD
TY!!!!
Awesome addon and good video. Maybe a bit more prep in terms of script will help in future videos. Keep up the great work!
Thank you for the feedback appreciate your thoughts :) will keep it in mind for the next ones im planning
Have you heard of Dungeon Architect for Unreal / Unity? I have been dreaming about something similar for Godot for a while now. Like another commenter said lock and key generation would be amazing! Thanks for making this I really think we will see some great games using it soon.
i have seen dungeon architect, it did look pretty cool. would be neat to build this out some more, if i have time :)
Dungeon Architect was one of the inspirations for my comment. If we even got a fraction of that functionality, I think it'd go a long way for making procedural generation easier in Godot.
The fact that this only has like 250 likes actually criminal... amazing work... I will be attempting to use this... hi5 sir
cara muito bom o seu trabalho, obrigado por compartilhar. desejo tudo de melhor pra vc.
Amazing job and progress on this implementation!! Im not sure if this was mentioned on the video or I missed it but can you provide weights to the generation algorithm in order to favour specific room spawn combinations?? and if not how hard would it be to add such functionality to the generation process???
How would you connect navmeshes from different rooms?
I haven't tried it, but AFAIK there are a couple ways to connect navigation meshes, from looking i think using edge_connection_margin looks easiest, i would think you make sure that is greater than the gap between any dungeon room doors:
docs.godotengine.org/en/stable/tutorials/navigation/navigation_connecting_navmesh.html
Fantastic!! I was making my own but this seems so sophisticated I can already use the rooms I made too 👍👌 I’ll mention you in credits for sure haha 🤣
I have one question tho… how can I generate a navigation mesh after generating the dungeon? I just have a one floor dungeon so just parent all rooms to a nav mesh node and bake after generation?
glad you enjoyed :) i haven't tried nav mesh generation yet. but yeah i assume you could just bake it after if you needed to. or, i think you might be able to pre bake it for each individual room and then the navigation server joins overlapping points. i haven't looked too much into it though.
@@MajikayoGames oh great yah I thought maybe it would work baking it in pieces, it works for occlusion culling at least! I wonder what you got cooking now ahah this is such an awesome unknown godot add-on! 👍👍🙏
Hey I am new to godot. Can you please tell how to export generated result? So I can you in my project. Thanks 😊. Great video.
Now add cyclic dungeon design😊
I'm looking to have one size room that's open no walls with stuff in them, put together to make one big endless room but two floors. If I could use you add on that would be great but what should I be looking for to learn how to do this.
👏👏👏👏 😎
How would you integrate this into a smooth voxel world?
you can connect it to anything you'd like by creating a pre-placed room on the edge to act as a door to the outside
@MajikayoGames I wonder how difficult it will be for the voxel landscape to adapt around the dungeon. Like, what is currently diggable dirt and minable stone, needs to be procedurally replaced with these dungeons. I'm guessing I will need to give the rooms a collision box that I can use to cull the voxel landscape that collides with the dungeon walls, Similar to getting water out of a boat.
I like the pre-placed room idea, Would it be a possibility to have several pre-placed rooms that the dungeon could randomly generate to create connections between? So say I have another pre-placed room every 2 or so levels It will connect them.
not sure i fully understand, but it sounds like that would work. you could even pre place rooms in code, then call .generate after. that's what i did in the mansion example. there's also the custom get random rooms function which could work for this.
how can I use my character and my rooms in this project?
and can i use this project for my game?
Bro can u pls give tutorial on arcade bike and car physics with code 😢 in Godot pls im a beginner and struggling.
🙏🙏plz make soulslike melee combat system...