Hello all,

I hope my question is not too stupid. :-) I have the following concern: I would like to create - in general terms - a maze in which computer-generated enemies follow a random path and can also come towards me. (I assume I need 3D for this.) After some reading, I have determined that Godot might be the wisest choice for this.

Now I have no experience at all in developing games and designing graphics, so I need a hint in the right direction: What is the easiest way to create a three-dimensional model of an opponent and insert it on a map in Godot so that it automatically follows a certain path? I assume I need Blender or similar software for that?

  • Feyter@programming.devM
    link
    fedilink
    arrow-up
    5
    ·
    11 months ago

    What you want to do is actually quite advanced topic. Godot is coming with some build in functionality that you can use Look for navigation mesh

    But if you never used a game engine I recommend you start with baby steps and lern how Godot works basically. Try to create a scene, create an object, add a script and try to move it from code… All this stuff.

    I would recommend to at least completely the getting started section of the Godot docs this should give a very good overview.

    • rhabarba@feddit.deOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      11 months ago

      What you want to do is actually quite advanced topic.

      Ew! I thought that would be a rather easy start. :-(

      • Feyter@programming.devM
        link
        fedilink
        arrow-up
        4
        ·
        11 months ago

        Depends on what you call easy 😄

        It’s just my point of view that there is no such thing as “easy” if you do it for the first time. It’s always easy if you know now everything works. Don’t want you discouraged you.

        I think a project like this where you have a goal in mind and try to find out how to achieve it is much better to learn than following strictly a tutorial and just replicating it step by step.

      • MJBrune@beehaw.org
        link
        fedilink
        English
        arrow-up
        3
        ·
        11 months ago

        If you don’t mind a ton of bloat. Use unreal where you can get started much quicker and see results with an hour. With Godot you’ll take a day just to get a basic movement system and interaction system.

        • Feyter@programming.devM
          link
          fedilink
          arrow-up
          3
          ·
          11 months ago

          What? Creating a nav mesh and copy pasting a script for the agents to move it will also just take a few minutes… It’s just that if you want to know what you are doing this will take you longer.

          • MJBrune@beehaw.org
            link
            fedilink
            arrow-up
            1
            ·
            11 months ago

            Copying and pasting a script for agents would not really take you a few minutes though, would it? Because you have to actually find that script and really, you should write it or understand how you are enabling it. With unreal you’ll do this in the first hour. It’s like a few blueprint nodes and you’ll get it to happen. With Godot, which I love very much, it’s a good portion to set up nav mesh + agent nodes + the script. This assumes you know what you are looking for and what you are doing. In Unreal these things are literally built for you with examples or even just engine code. Out of the gate, you just create a new character, on begin play you tell it to move to and give it the result from “get random reachable point in radius” Which Godot doesn’t even have a way to get a random location within a radius in the engine. Much less a reachable one.

            Godot is great but it lacks a lot of quick tools and is less newcomer friendly than Unreal in my opinion. If you tried this in Godot you’d hit a lot of snags. One of the major ones I can think of is that the navigation server isn’t ready for queries on _ready(). So if you even tried to get a random point and project it to the navmesh you’d get back 0,0,0 using the same methods as above, which in godot also requires more setup like having to setup a navmesh. In Unreal the navmesh is setup and ready from the moment you hit create a new project.

            • Feyter@programming.devM
              link
              fedilink
              arrow-up
              1
              ·
              11 months ago

              So the point goes to unreal because it comes with a build in library of working copy/past examples?

              But still if you want to know what you’re doing (which would be required to be able to fine-tune, extent and debug) you need to invest more time so IDK if OP would get much benefits of using Unreal.

              A game like this can be done in every engine with similar effort I would say as long as you know what you’re doing.

          • MJBrune@beehaw.org
            link
            fedilink
            arrow-up
            2
            ·
            11 months ago

            It’s not buried, Unreal blueprints are extremely searchable. It’s less about learning programming and more about learning logic. Programming is like “what perfect syntax will get the result I want.” blueprints and logic flow is “this does this and so I get this.” Far more visualized and helpful to people who don’t know how to program.

            Several times I’ve seen designers come on to a project only knowing what they want to have happen, pick up blueprints, and get the logic to do those things. That’s learning. Is it programming? probably not in the sense it’s not dealing with perfecting syntax but it’s learning programming to make the computer do the logic you want it to do. The end result is that people want to make games, is it learning programming to learn how to make games? Probably not. It’s learning how to make art in general. IMHO, it’s far better than programming.