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.
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()
. orRigidBody2D
? 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
Thank you so much! This is enormously helpful.
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!