Okay, so the demo of my game is almost finished. Still, I have few problems bugging me.So I’ll list them here and explain them. Any help would be appreciated but, I’d also appreciate if you could admit that you don’t know of any solutions to my problem as well.
Problem 1: Player controller keeps jumping up slops when suddenly stopping.
I don’t know what causes this one at all. The problem would still persist, even when there is no jump button in the game anymore. When moving up slopes, the FPS controller would sometimes jump in the air if the player where to the suddenly stop between the top of the slope and a flat surface. Sometimes the FPS controller would end up jumping up the slope when the player didn’t stop but, it’s always between the end of the slopes highest point and the proceeding flat surface.
For more context, my levels are made out of the 3d gird maps and I’ve added collision shapes to the pieces. When it comes to the stairs, I’ve added a slope-like collision shape to it; this makes it easy for the FPS controller to move up/down the stairs. The problem I’m referencing to, mostly happens when going up the stairs.
Is there anyway to solve this problem or is there something just wrong with the Godot 3D physics?
Problem 2: Enemy pathfinding, is confused due to my games having multiple floors.
Ideally, the enemies chasing down the player would use pathfinding to find the best path to the player; this isn’t always the case. The player and the enemy could both be outside but, if the enemy is far away from the player enough, the enemy might end up going inside a building.
Take into consideration that the buildings are designed in such a way, that entering/exiting them requires climbing up a few step of stairs. This means that the floor in the building is always going to be slightly higher than the floor upside.
Sometimes it does make sense for the enemy to go inside a building, to find the player outside. If the building is between the player and the enemy and there is no other way around it, then it makes sense that the player would have to take a path through the building to get to the player. Outside of that scenario, there is no need for the enemy to go inside the buildings instead. Are there anyway to solve this problem? Do I need to use multiple navigation meshes? I really hope I don’t have to but, do I?
Edit: Okay, so I've solved the first problem on my own by changing the collision shape for the player.