This is only tangentially related to networking and multiplayer, but I will answer the entire question.
Start from the end:
- what do you need to know to successfully develop a game?
Generally, if you want to build a game yourself, you need to know how to create the art of the game (draw pictures / textures, create animations, create character and equipment models, create environments and levels, etc.) Additionally, you need to know how to add interactivity to the game -- scripting and/or programming the game engine to make it do what you want. Third, you'll want to know how to design and test a game that's actually interesting. Finally, you will need to know how to package and validate the game into an experience that users will be able to download and play -- anything from "how to build an installer" to "how to market the game so users will find it."
Generally, a "battle royale," if not built on top of an existing shooter game, will require a team greater than one person, because there's simply too much work to be done for a single person to be able to do it all. So you'll also need to know how to coordinate a team to pull in the same direction, how to build that team with the right contributors, and how to keep them happy while building the game. Generally, paychecks and dollars are involved here.
- what engine do you need to use for a game like this?
There are a number of different engines that "could work" here, and if you have a team of developers already who know some particular engine well, you should go with the engine that the team knows. This removes a vast amount of uncertainty. However, if you get to pick from scratch, perhaps by training yourself, then there really are only two engines I would recommend: Unreal Engine, or Roblox.
If you want to build a game that you sell on app stores, where you can customize everything, build your own player models, and "look like a AAA game," then you need Unreal Engine. While other engines (unity, godot, etc) can be used, with additional code and features, to build a battle royale game, the Unreal Engine comes with almost everything you need for the multiplayer gaming and networking built in already. You can build a multiplayer shooter game using their blueprint scripting environment, without having to dive in and worry about your own custom network replication, for example. In other words: You're getting the benefit of Unreal Engine being the thing that runs Fortnite, and it's free to download and develop with! (In the end, you pay 5% of your income as royalties, but that's a very, very, cheap price, compared to what you get!)
If you want to try out new ideas in gameplay, and want there to already be tons of props and characters that people already know how to work, you can build your game on Roblox. It won't ever look like Modern Warfare, but that's not the point -- you can get a working, fun, game, with an audience of millions of people, in one-tenth or less of the time it takes to build the same game on top of a "custom" engine.
- What languages should you know?
If you're building on Unreal Engine, you need to know C++, and their Blueprint scripting system. (There are good tutorials for Blueprint.) You also need to learn all the features of the Unreal Engine such that you can configure and use them from within your game.
If you're building on Roblox, you need to learn the scripting language Lua. Roblox games are programmed entirely in Lua, and built in the Roblox game studio editor.
Now, all of this being said, there's a new post like this every week: Someone who wants to "learn how to make games" and wants to build "a big game." That's a bit like someone walking into the Home Depot, and asking what kind of hammer they need to use to build a skyscraper. A game like Fortnite is built on top of twenty-plus years of experience and technology, by a team of hundreds of people. One person cannot possibly build something that rich on their own. This is why I highly recommend starting on Roblox. You will quickly get to the fun bits of playing around with different gameplay elements, without having to worry about character animation or deployment / installer bits -- that's all taken care of for you, and all the players will already be used to the way the world looks and works, so the blocky avatars aren't a problem within the Roblox games store.