Destructable mesh does not replicate

Hi!
Having the following issues with Destructable Component:

  • Doesn’t replicate when fracturing ( ie only runs on server )
  • Can’t disable collision on chunks after fracturing
  • Can’t simulate on local machine or connection ( client )

Anyone smarter than me who knows how I can bypass these obstacles?

Hi Omberone,

I’ve not been able to reproduce this on my end. I’ve made a simple Destructible from a sphere brush > Set the number of clients to 2. I have my destructible above the ground and I’m seeing the fracture happen on the server and on the client with no issue.

Can you provide more information about your setup and how you’re not getting the replication?

Thank you!

Thank you for answering.
I have a projectile which hits the destructable mesh and damages it using ApplyRadialDamage. On the server this breaks the Destructable, but it does not break on the client. Perhaps I need to replicate the function? And if so; will the chunks differ on each client?

That may be the case. I did not test this with a projectile. I simply tested a destruction mesh with an impact. From my understanding the mesh may destroy differently on each machine depending on the capability of the machine. I’ll look into this soon with the projectile and see what results I get.

Thank you!

Much appreciated! Thank you for taking your time.

I am having the same issue with point damage replication. The clients can destroy the mesh and the server sees the destruction but it does not correctly replicate to the clients.

Others have been able to do some replication with Destruction. It’s not the easier thing to do at the moment, from my experience which is little with replication. (UE4 Destruction - Destructible Replication #3 - YouTube)

To claim it’s a “bug” is a little misleading when it’s more that it’s not an intuitive feature or needs to be polished. Developers are aware and it will be worked on in a future release.

Yeah there’s no built in serverside authority replication of the damage taken on a destructible component. This should at least be an option. This is a bug.

Are there any news about this? Working with destructibles in its current state is really troublesome.

Hi! I found simple way to do it.
Just:

  • Create new actor
  • Set Your destructible as component.
  • Set actor to replicate.
  • Set damage event of actor, so it will damage this component.in multicast.

I made a youtube video on this:

If there was an option not to make the destruction random then it could at least be simulated. Or if the server did the calculation then told the client what the stats on the mesh are. I wonder if that youtuber did something like this.

It is also misleading not to mention destructibles are currently a client-side only thing.

I also think that the behaviour is very misleading at the moment. If you set the destructible to “replicating” it won’t even try to replicate the destruction, which basically means the actor is not replicated. If you do not have a bullet or something, you won’t even be able to find out the “hurt origin” if you react to the damage event. You can replicate an own event and pass all the necessary data, but this seems more like a workaround. I’d consider this to be a bug.

I believe DENT will resolve this issue it allows for networked destructible objects, DENT - Networked Destruction - APEX in Blueprints - UE Marketplace

i managed to replicate the damage by making an actor that contained the destructible in it (replicated checked of course), then cast to the destructible component and applied radial damage

tho this method seems to be buggy and often doesn’t replicated entirely correctly