miwarnec / DOTSNET

Public DOTSNET issue tracker
20 stars 0 forks source link

Offline mode #23

Open LuisEGomezV opened 4 years ago

LuisEGomezV commented 4 years ago

Current state

Problems

Requirement

We need a way to just "shut down" DOTSNET.

This sounds like a super hard task, but actually is not. If we had a way to select which systems should run on an offline session, the problem will be practically solved already.

The Bootsrap class exposes both worlds, so maybe some users have made custom code relying on the access to this worlds. But this should not be a problem. In an offline mode, we could assingn both worlds as the same "Offline" world, so no major changes in users code neither.

IMPORTANT NOTE

It is possible that some users that require or will be benefited by this feature, are designing their projects in a way that is taking them away from being able to use this functionality. This is due to the current lack of such functionality. So the more time passes, the more difficult it could become to adapt to it. So it is important that this is included early in the development of this product.

shinyclef commented 4 years ago

I will add my use case for consideration.

I'm trying to understand the right way to have the client make use of the generation already done by the server. I may need to create my own solution, but just in case, thought I'd add the use case.


Edit: I think it's quite possible for me to take the couple of systems that do this heavy work and have them copy stuff directly from server world if they detect that it's there.

LuisEGomezV commented 3 years ago

@vis2k Please say something

miwarnec commented 3 years ago

hey guys, sorry for late reply. DOTSNET only operates in ServerWorld and ClientWorld, which it assumes to be networked.

Can you elaborate on the use case in actual game please? I don't fully understand it yet. For example, if you buy a UI asset can't you put it into the default world and let it operate there without DOTSNET?

LuisEGomezV commented 3 years ago

The thing about 3rd party assets is another issue that I don't think anybody has encountered yet, but eventually will happen.

The issue here is that while most of the time the games will run as a multiplayer session, sometimes we need to run it in an offline mode. As I mentioned in the problems list there's a lot of waste of resources, and on mobiles maybe that will be an issue. There's no reason duplicate cpu work and memory usage. Of course with a well designed project there won't be exactly double work, but it's still a waste of resources.

Also for debugging/developing/testing purposes, an offline mode is very useful.