Data models - using data to create extensible, maintainable games in Godot

preview_player
Показать описание
Hello Godotneers! Every game revolves around data. Your game may have items, unit types, crafting recipes, dialogue, quests and a lot more. Handling all this with nodes can become quite difficult over time. In this video we are exploring how you can use data models to represent these game elements. We'll look at a simple implementation of making an item database and improve this by using Godot's resources to represent our game data. Then we'll integrate this data in our game to create a pickup, an inventory dialog and even a small crafting system. We'll also do quite a bit of UI work in the process, so there is a little bit of everything in here. Finally we're going to look into loading our resources dynamically (e.g. all items from a folder) and we're checking out an add-on that allows us to edit our item database like a spreadsheet. It's going to be fun ride, so jump in and happy Godotneering!

== Table of Contents ==
00:00 Introduction
01:18 A database of items
14:09 Using resources for game data
20:16 Building an inventory dialog
40:41 Creatin a crafting system
1:12:57 Loading resources dynamically
1:22:15 Maintaining a resource database
1:27:08 Conclusion

== Useful links ==
Рекомендации по теме
Комментарии
Автор

Honestly, it is so refreshing seeing somebody come at teaching game programming using good good software engineering practices rather than some quick script. As someone who does software engineering as a living, you've really helped me bridge the gap between my software engineering knowledge and Godot.

omgtsGriff
Автор

As a backend developer used to Static typing and using lots of well defined design patterns, I can really appreciate that your approach feels a lot more like proper software engineering principles rather than just walking though how to write a snippet of code to do a task without any background on the choice. I love this approach. I would really love it if you did a video that covers properly how and why to use certain OOP design patterns in godot.

gezbob
Автор

I’ve been in software development for almost 15 years, and I just want to say you have an incredible knack for teaching technology. People seriously underestimate the value in seeing the shortcomings of beginner/easier approaches to solving problems. You beautifully illustrate the process of growing and improving the implementation of an idea from “just getting something working” to a well-reasoned and robust implementation. I sincerely wish there were more long-form tutorials that followed this format.

I always look forward to your videos and hope there are many more to come!

char
Автор

I just want to add more to the table saying that as a Godot newcomer and having a 14+ years of web development background, working daily in an environment that demands clean code, smart and scalable software engineering solutions, this is the first Godot tutorial in manyyyy that truly teached me something instead of just throwing snippets on my face. This improved my programming skills in Godot by a lot. Thanks.

anarqz
Автор

"Container layouting" is the most Germanglish phrase I've heard in a while.

valcaron
Автор

You are a fantastic teacher. Informative, concise and presented in a very approachable step-by-step fashion that also shows incremental solutions to each problem. Brilliant 🎉

botteu
Автор

As a senior software engineer with a lot of Python/Ruby experience and almost no gamedev experience, this video was fantastic! This video might be the first time I 'got' Godot resources and why they're useful.

mmettler
Автор

This is hands down one of, if not the best, easy to follow, very informative and fun to watch tutorial i watched in Godot. Thank you for sharing your time and knowledge.

Notreal
Автор

Beautiful, a must watch video for all Godot developers. Especially your plugin for dynamic loading is brilliant and exactly what I needed for my project.

vladislavkorecky
Автор

Quality over quantity. I really love ur content!

Jarilio
Автор

I love how everytime I see one of your videos I think "THIS IS WRONG, YOU CAN DO THIS IN A BETTER WAY" and then you show the better way LMAO, really helpful!

NoSoyMako
Автор

In my first attempt at learning Godot I ran into the issue of the exported executable not finding my dynamically generated and loaded resources. I spent hours searching the internet and trying ugly hacks that simply did not work. I ended up rage-quitting Godot for several months while I worked on other projects. I wish I had found this video and used your Resource Groups plug-in the first time around.

And not just this video - I'm on attempt #2 to learn Godot, and I found and watched several of your other tutorials. I had followed another YouTuber's tutorial on FSMs and implemented them by hand in GDScript. I watched your video on using the Finite State Charts plug-in and now I'm going back and ripping out all of my old FSM nodes to replace them. It's a similar story with my UI after watching your UI video.

I want to echo the comments that people leave here: these are the best Godot tutorials on YouTube by far. I wish I had watched them first after getting the hang of the basic Godot interface. Thanks for putting these videos together! I'm sure it's an enormous amount of work.

youtubeaccount
Автор

Very nicely paced tutorial. I love it when tutors show a simple way (or different) to do things, then explain why that is not very good and then show a proper, more maintainable way to do it.

Also, the on screen animations are very informative alongside the verbal explanation.

NickoTyn
Автор

You are by far the best godot tutorial channel on youtube. The way you present your topics is very easy to understand.

thesolitaryowl
Автор

This is so densely packed with useful stuff. I'm definitely on the edge between novice and intermediate with Godot, so some of this is a little hard to grasp, but you make everything so simple to look at and understand! I've been going back and changing my project's code to be less brittle using a number of small things that you do in this video. I can't wait to figure out exactly how to use the classes and custom resources and data structure elements you go through. I feel like I'll probably have to re-watch this several times as I go to pick it all up. Thanks for the excellent resource!

taylorfisdboss
Автор

We love a creator who pronounces the engine’s name correctly

taylorfisdboss
Автор

As a C# senior software developer, I can confirm its a very very high quality programming skills used to develop a simple inventory and crafting management system! Bravo! You have increased value of Godot in my eyes tenfold! Thank you and keep up the quality work!

arifmay
Автор

I love the visual indicators you place over the code, like when you print from on_item_picked_up. As a novice programmer, it helps to reinforce what part of the function's code corresponds to the object's properties. I wish more tutorials did stuff like this! I also like that you have an indicator in the bottom-right showing which scripts are onscreen. Great stuff!

Zarf
Автор

This channel is the real deal. Good software engineering practices applied throughout, and the explanations are perfectly paced.

PreRenderedRealities
Автор

My favourite Godot/Programming channel. Thank you! Can’t wait for the next one.

tower
welcome to shbcf.ru