Hello, as the title says, I am very new to Godot. I just finished following the 2D Game Tutorial, and I have a question on this part: https://github.com/godotengine/godot-demo-projects/blob/bf4d1038d623c355f3b49e613a2c9b686eebb312/2d/dodge_the_creeps/main.gd#L44

Basically, I had the idea to play around and try to give the mob a curved path, so I tried mob. in Godot’s script editor looking for the completion engine to find me things similar to .linear_velocity only to find nothing, and also that linear_velocity didn’t even show up as an autocomplete suggestion. No errors or warnings, and the code runs fine.

Question 1: Why does linear_velocity not get suggested? How can I change that, so I can have the editor help me learn the language and APIs?


Question 2: Unrelated to the above. I like Vim motions. Any suggestions on either:

  • Installing a Godot plugin to get Vim bindings?
  • Setting up Godot to use Neovim as my external editor?
  • Just using Neovim externally to edit my GD scripts?

Just looking for thoughts on what people use and like.

  • un_ax@lemmy.sdf.org
    link
    fedilink
    arrow-up
    19
    ·
    edit-2
    15 天前

    Question 1: The editor gives hints when it knows the type. You can use static typing. For the demo, you’d want something like var mob: Node2d = mob_scene.instantiate(). or RigidBody2D? Depending on what it actually is.

    I’m not sure if there is a vim binding plugin. Editing in an external editor without integration works fine, you just have to confirm to reload when you focus godot.

    For neovim integration you’d have to use the external editor feature. You just set up a command to run with the proper args when you choose to edit a file. In practice you set up neovim to listen over a pipe, and godot sends the command to open a file and go to a line. It’s not trivial to set up but it’s possible.

    This tutorial seems good: https://simondalvai.org/blog/godot-neovim/

    For beginner godot tutorials, I recommend Brackeys: https://www.youtube.com/playlist?list=PLPV2KyIb3jR7ecat0FBEMv2EZgsDg6Wcv

      • TechieDamien@lemmy.ml
        link
        fedilink
        arrow-up
        8
        ·
        14 天前

        I’m the same vein, it is highly recommended to type literally everything: variables, arguments, return types, etc. This not only makes the autocomplete better, but also helps the editor identify bugs before you even run your game!