• Godot Help
  • Confused between beginner and novice level?

Hello, I am new to Godot. Basically I picked up Godot because its easier to use and lightweight. And so far, from the first glance I really liked Godot (especially its interface) as a beginner friendly engine. But now that I got familiar with it, I am stuck to a difficult phase between beginner and intermediate stage where I cannot progress.

Basically, the thing is that, even though I am fairly new to Godot but I am not a complete beginner to gamedev. I've had experience with Bethesda's Creation Kit to (try) create mods for Skyrim. Therefore, I am quite familiar with things like 3D meshes, texturing, scripting objects, dialogues, quest making, landscaping, optimization, room portals etc. etc. But the thing is that all these things were already premade (Skyrim as a base game), so it was easier for to pick things up and then progress from there. But in Godot, everything starts from scratch, therefore I am not being able to progress.

I have seen few tutorials for the beginners (i,e BornCG videos), and picked those things up quite easily. Most of the videos I have seen are quite simple to follow but difficult to go on from there. So, I am not sure how do I progress from there. Are there any novice level tutorials for Godot (4.0) or demo project resources from where I can go further? Also worth mentioning that I am a new computer science/engineering student, therefore am familiar with novice level programming (C++). Currently my aim is to develop a 3D choice based (moderate) RPG narrative game. Pretty much the simple version of Disco Elysium or Kentucky Route Zero typed of games. Not aiming for too high currently.

I had couple of questions I hope that someone could answer it for me,

  • Exactly how much programming do I need to know? I mean, I can understand the logic and syntax of coding. But do I need to make all codes by myself from scratch (i.e. player movement, inventory system, stats increase/decrease, event changings, camera), or those who make (indie) video games, develop their games based on existing scripts and then improvise them? If the latter, then where can I find those existing scripts for examples?
  • When working with different nodes for different events, then can I create as much as scenes I need to work with them? Or is there any limit to it?
  • How do landscaping architecture and interiors work in Godot? For instance, in Creation Kit the exterior world and interior rooms were separated from each other. The interiors used to exist in a different worldspace. Is there any use of worldspace in Godot, or do the interiors need to be made along with the exterior (main landscape) in Godot? Or do I make different scenes for interior rooms and exterior world?

So, I am really confused, would anybody please give me some advice?

    Odd_Machine Yeah, you could load seperate scenes for outdoor/indoor. You could also put the interior room out of view in the same scene and teleport the player there when it's appropriate. You'd probably save some loading time doing that

    If it helps, game development is one of those weird fields that ask you to mix your creative skills WITH your intellectual skills. It's a weird wobbly bridge between two sections of your brain that don't often work together everyday. It's a lot like learning a musical instrument. Kind of.

    Odd_Machine As for scenes, yes, scenes are one of the central concepts in Godot's architecture. You should in fact use them as much as possible for everything, from individual bullets to whole areas. Every entity should ideally be represented by a scene.

    I forgot to answer the other two questions.

    • It's best to always write scripts from scratch when you're starting out. You get overwhelmed very, very quickly with "wait, what does that do?" otherwise. The amount of programming experience can vary wildly depending on what you're doing. Player stats alone is probably pretty simple. Custom UI behaviour and things like that can be 1,000+ lines of gdscript, or maybe 10.

    • The only limit to the amount of scenes as far as I know is storage space and possibly RAM. Someone smarter than me should say something if I'm wrong.

    • I have never made a thing that needed more than like 5 environments. So I'm just guessing.
      If it's 2D or low-poly, I'd just toss the interiors in the same scene as the exterior world. If you want real intricate 3D worlds, you should probably load in scenes as the player needs them, and unload them when they're not needed. That way its not chunking the GPU, and there isn't a 15 minute loading time to start the game. But that's stretching way beyond what I've done.

    Odd_Machine So, I am really confused, would anybody please give me some advice?

    For any questions, it's best to start with the official documentation. Especially since Godot has a great one. It has the answers to these questions.

    All above being said, have in mind that Godot is not some type of "construction kit" engine. It's more general purpose than that. For a serious project you'll still need to take aboard a fair amount of general coding skills and knowledge; like solid grasp of object oriented programming and common data structures and algorithms.