if a Module is required in play solo, server scripts requiring it will be returned the same instance of the module as client scripts. This does not sufficiently emulate how a real game works, and needs to be resolved (on top of having IsClient and IsServer work “properly” for PlaySolo)
Play Solo has lots of issues very similar to that. Best to just be aware of them and use the test server.
Modules don’t require once per client/server instance, they require once per instance. Play solo runs a single instance, even though it acts as both the client and the server.
This is just a limitation of the concept of Play Solo. If you’re going to run two instances, you’re already doing a server and client. It would be nice if there was a way to do it where they ran without explicit windows; has this been requested yet?
Studio windows represent the state of an instance. If both instances ran in the same window then you’d have to have some kind of toggle to switch all your displays between the two. I don’t know how much I’d actually use this, but I always use two monitors.
Yeah, of course, but the server doesn’t necessarily need to be represented on-screen. Maybe it does, though. It would be of limited debugging utility if you couldn’t see the hierarchy and output of each.
I know, but shouldn’t play solo simulate the concept of a real game, why not have a module requirable twice in play solo, even if it’s only one environment instance? It would make play solo act a lot more like a real server. I just don’t like the idea of only being able to test my module in a real server
Scripts in play solo have no concept of client/server. LocalScripts can create things under FE and Scripts can read them, everything runs with the same _G environment, Scripts can change values like LocalTransparencyModifier that don’t normally replicate, LocalScripts can listen for OnServerEvent and vice versa.
These are all limitations of having a single instance. In order to make module scripts work under play solo we’d have to cache the module based on the script’s ClassName, which is super weird when all these other features are not split based on the script’s classname.
At this point it’s way too late to make this change without breaking a ton of games in play solo, but that’s one reason why it won’t work.
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.