do i need steam to make multiplayer game ?

1- do i need steam to make a multiplayer game ?

No, you only need Steam or any other online service to at least list servers but they provide more services then just this. Internet is internet and it works the same for any application, UE4 don’t need any service to connect to game server, only thing needed is somebody to run a server and IP on which server is running for others to connect, but without online service (Which in UE4 is called OnlineSubsystem) your user is force to type IPs direcly, same as in Minecraft.

It really nothing changed since UE1 or Quake era… because internet didn’t change much on low level, user (or else you prevent that by giving them client only build) are free to run server of your game. All existing services what they really do is just give users IPs to connect somewhere to play, but way of how they connected and how game is replicated (ofcorse each enigne or game may replicate things diffrently) didn’t really change since Quake era. Only thing that changes is possibility (not need) of using more advance game online social services like Steam, which allows to even more complex set up like, automatic system to run server on user device and people connecting to it, and user don’t even feel they connect to game server as that became seemless. Even thru now days people are addicted to services like Steam, example of Minecraft shows that there still space for user-managed server distribution and Minecraft didn’t even have server listing.

Also worth noting is that one of the biggest server list service (games called this kind of service “master server” )that games like Quake 3 or UT99 uses called GameSpy got closed long time ago, so all those game are now on manual IP or got some alternative master servers

Here docs on how to start up your game server, any user can do that if you include server code in your game:

There is also possibility to make your own service, alteast simple server list which can be run even with HTTP server which can be powered even with simple website hosting service, but this ofcorse require coding on both HTTP server and UE4 which probably will require C++ work, or else you do something with plugins like VaRest.

Also note that on LAN there is server discovery (which UE4 also have) powered by multi-cast IP, so there is absoluthly no need of any service at all for LAN play.