S
S
Sergey Grigorov2018-07-07 03:55:57
C++ / C#
Sergey Grigorov, 2018-07-07 03:55:57

How to organize the loading of resources over the network?

Hello.
There are several questions that torment me and keep me awake at four o'clock in the morning. :)
There is a certain Unity3D game for Windows.
So far - Single RPG, now rewriting in MMORPG.
There are several questions.
1. I use the following approach:
The connection to the socket server is constantly open on the client, when the position changes (for example, movement), the new location of the player is sent to the server, and the server already sends the updated coordinates to those players that are in the visibility zone. Is it ok to use this approach?
2. I plan to do "additional loading" of levels (locations) from the network. Those. a new location has been released or an update to an existing one - the player can immediately download the updated location (scene). How can this be implemented?
3. I have a pseudo-seamless world - i.e. each location is quite large, but different locations are presented as different scenes.
When changing a location, I plan to request data from the server about it - mobs and NPCs in the visibility zone, the possessions of the players in the visibility zone, the players themselves in the visibility zone (the spawn point is known in advance). This is all when loading a location (scene). Is it possible to place objects obtained in this way on the stage after it has been loaded, and hide the loading window only after that?

Answer the question

In order to leave comments, you need to log in

1 answer(s)
S
Stalker_RED, 2018-07-07
@Serjio-Grig

the new location of the player is sent to the server, and the server already sends the updated coordinates to those players
If you yourself have played online games, especially on pirates, then you may have come across such a phenomenon as "cheaters".
Be prepared for the fact that some student will send to the server not the coordinates that your client generated, but any that he wants. And get a cheat with a teleport, for example. It's the same with shooting and visibility checking (wallhack), with speed parameters (speedhack) and in general with all the data that affects the gameplay. They all need to be checked on the server, otherwise you will get crowds of cheaters. It is easy to find blanks of "universal cheats" on the net, both for units and for other popular engines.
2. The easiest is a launcher that checks for updates before starting the game.
A little more complicated - before the game, download only the most important changes, and download the rest right during the game. You can read the relevant dev blogs from blizzard or ccp (wow and eve-online have implemented this).

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question