Well, there's really no "best" engine, since this is subjective to what you're looking for and whatnot.
For FPS games, generally one of the best options to go is indeed Unreal Engine overall (any version), since it's been tailored from the beginning mostly for FPS games, or similar.
But the same could be said about any FPS-oriented engine.
However, you also have engines like Unity, which is far more generic (for all sorts of games, without any specialization), so all the FPS mechanisms and such you would either need to do from scratch or use someone else's template (I am sure there are more than some in the Unity store at least), however it's also more accessible and has a better and more comprehensive programming model and architecture than Unreal Engine 4 for example, hence being used by most Indie developers nowadays.
So, it's all a matter of you tinkering a bit with each engine you may find interesting, and which one offers best what you're looking for and go with it.
That isn't to say that later on after you made your decision that you won't regret it or at least prefer another engine later on, but it's not abnormal for a game to be remade in a different engine later on, if you have the energy, time (and money?) to do so, but generally the transition is not as hard as making a new game entirely, so don't try to focus much on whether your decision was right or not, even because you won't know until you reach a certain point of development anyway.