Player Movement
Scorched Tide was my first time in Godot, so I had to learn a lot of things from scratch. I used a RigidBody3D node combined with a capsule collider to add force to the player to get them to move. I created variables to fine tune the movement if needed.
Enemy AI
The enemies constantly track and advance toward the player, stopping when they get close to attack at a fixed rate. To handle navigation across uneven terrain, I used Godot's NavigationMesh system. Each enemy uses a NavigationAgent3D node to calculate the path to the player. I made large rocks, interactive tools, and the main ship as NavigationObstacle3D objects to refine the pathfinding.
Tool Mechanics
Players defend themselves using a blaster and automated turrets. Since both systems share the same projectile logic, I use a class solely to instantiate the bullets while putting the control logic into manual and automatic tracking classes. The turret uses an Area3D node with collision layers to scan for enemies. If an enemy enters the radius and the turret has fuel it rotates to shoot the enemy.