How to remove specific HISM if colliding?

So there are a few things to consider when you are handling HISM Components. First off, if this is a multiplayer game know that HISM data does not replicate, the component does but the actual instance data does not replicate. You need to build a system for replicating an array of data you need to clients. Literally for multiplayer games I destroy the HISM data completely on clients and rebuild it from a secondary replicated array of data (just be careful about minding array replication size limits). Further more you need to make sure that the system handles late joins and does not just rely upon Network Multicasting (this is a mistake I see constantly on the market place). Generally I override the HISM component itself in C++, create some custom Add/Remove functions, and use a RepNotify on my custom data array to clear then rebuild the HISM data on clients when the array updates. You can improve performance by using the Fast Array Replication System that Way Too few developers know about.

with that out of the way it is really a matter of make sure you have “UseDynamicInstanceBuffer” and “KeepInstanceBufferCPUAccess” set to true. Now you should be able to add and remove instances dynamically.

1 Like