Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

If you're interested, last piece of advice from me... you could try looking into collision masks and collision layers. I think this tutorial is pretty good, along with this part of the physics introduction page from the Godot docs. What I usually do is have a player layer, an enemy layer and a world layer (stuff like walls, etc.), and set the collision layer of the player to the player layer (and set each enemy's collision layer to the enemy layer, and set the tilemap's collision layer to the world layer) so that each of them are "labelled" correctly. Then, I can set the player's collision mask to the world layer only so that it only collides with the walls and not the enemies, and also set each enemy's collision mask to only the world layer (however in your game enemies don't collide with walls so you could just make the enemies' collision mask no layers at all so they don't collide with anything). All of this literally fixes nothing, but here's the really fun part: I'm guessing you have an Area2D as a child of each enemy that kills whatever it touches, no? If it's the case, you can set that Area's collision mask to the player layer only so now it will only detect the player.

Maybe you already knew all of this, I have no idea lol

anyway good luck

Damn, man! Thank you so much! I was trying to implement navigation avoidance, but the safe velocity got so slow, that I thought best to remove it. I only have an inkling of what you are recommending, and I didn't consider it before in my previous practice projects. Thanks once again! 

Honestly I hate Godot's NavigationAgent system and never got it to work properly :(