You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Spawning the default ALS Character in to a large multiplayer level with actors that have replication ranges for performance can cause the character to fall through objects that exist on the server because they haven't loaded in to the client yet.
Is there anything you'd suggest changing here to stop this from happening?
Example - log out on top of a large player built base. Log back in and your character falls through the ceiling and lands inside the base before the base finishes loading, even though the base is always there for the server.
The text was updated successfully, but these errors were encountered:
This doesn't sound like an als bug your loading system just has a race condition
The server isn't loading anything, though. The objects already exist on the server side (dedicated server running for any amount of time). Map is large enough to not load in objects not near 0,0,0 during join. Character spawns anywhere outside of the initial load radius, client side begins loading objects at spawn location, but they already exist on the server. The client 'falls' because the client doesn't have the objects yet, but they exist on the server.
The client falling is accepted by the server as correct, and allows the client's falling through server side objects to be accepted.
Can test with two clients on a server - one at the area already and seeing the objects, and the other late joining. Client already at location will see the new client fall / clip through the existing objects until they load on the client's machine.
I'm assuming this means the client location is respected over what the server thinks should happen, correct? Is that the wanted setup on your end? If so, understandable, but it isn't a 'race condition' in regards to falling because the objects aren't loaded. There's no way to know if all replicated objects in an area are loaded without a constant check back and forth to the server before spawning in a character.
The server knowns there's an object there, knows there is collision, but the client is still able to fall through a solid object if it hasn't replicated to the client yet.
In single player, for sure this could be solved by waiting until everything is loaded. Multiplayer changes that a bit because there's nothing built out that I'm aware of to see if "everything is now replicated to the client" outside of just waiting an arbitrary amount of time.
I haven't seen this issue on larger scale Unreal games like Ark. You can load in to a large multiplayer world on top of a player built base, and your character 'stands' on an invisible ceiling until it loads in, rather than falling through server objects. Likely just a different method of authority compared to what ALS Refactored is doing?
Spawning the default ALS Character in to a large multiplayer level with actors that have replication ranges for performance can cause the character to fall through objects that exist on the server because they haven't loaded in to the client yet.
Is there anything you'd suggest changing here to stop this from happening?
Example - log out on top of a large player built base. Log back in and your character falls through the ceiling and lands inside the base before the base finishes loading, even though the base is always there for the server.
The text was updated successfully, but these errors were encountered: