Download

Help Networking a Trigger and Particle Visibility

Hello all. I have been making sure my game works over the network, and watched the Blueprint networking tutorials and stuff a few times. I’m not having trouble with most things, but last night I found that the setup I have for an “oil slick” that can be lit on fire doesn’t work on remote clients (namely, the particle effect visibility doesn’t get turned on).

Edit: Removed non-working RepNotify thing that was wrong anyway.

See reply for updated blueprint.

I feel like this should work on the remote client - but the fire particle visibility never gets enabled.

If I set it up wrong so that the authority switch calls it from the remote too, it works. For now I’m going to do that, because technically the game is co-op and thus the client knowing things doesn’t matter as much, but I’d like to figure out why the blueprint in this post (not the ones in the original) isn’t working.

Edit: Even simpler example without the tag check that still doesn’t work.
d0067553c056ddb13bd2cc486ce7da8bc0218898.png

Edit: I’ve also tried changing it to use the trigger overlap event so that it’s almost exactly the same cast as in the Blueprint Networking Tutorial Part 3, still no dice. It seems like the remote never even gets called, even with the custom event set to Multicast (even w/ Reliable). I’m not sure why it’s not working, given that it’s practically the same exact case as in the tutorial.

Even weirder - if I do it without the tag check at all, walking over it with the player works on the remote client (and listen server) if and only if I let it run on both (i.e., no auth check). Throwing an actor into the trigger volume works to unhide the fire particle, but only on the server (when allowing both client/server to run it).

Really really not sure what’s going on in this case.

Edit again: I changed the setup so the particle effect is not auto-activated and made it use Set Active, but still no dice getting the thing to fire on the client side, even with a Multicast function.

Could this be related to running in a single process with 2 clients?

Bump. Any ideas?

I’ll do a quick test and show you my blue prints, give me a few minutes and I’ll post back with the results. ;p
Edit; Just to confirm you are indeed using a Blueprint version of the model correct and not the plain old model itself?

So this is what I did, seeing as you tried to make a overlap which if anything with the tag “Fire” contained entered the overlap area of the spillage area it’d be lit on fire. I imported a quick model of a fireplace and made a blueprint version of this and added a particle system to it so the can automatically handle the math of spawning the particles. It’s been disabled by default and using an almost identical version of your BP and this is how it’s setup;
Object is marked as “Replicates” and the custom even as you see is a Multicast.
3eaa65cbe90393464ff7e9136d6fce3872cecf78.png

Seems to be fine when anyone comes into contact with it. Add me on skype if you still haven’t figured out the issue and I can help you on there faster ;p

Thank you! Much appreciated.

BTW just for reference, I was testing this via the single process/2 clients method in the editor, so the listen server was in the editor viewport and a separate window was the remote client. If your BP doesn’t fix it immediately for me I’m going to try testing it completely external to the editor and see what happens there.

@S0T0, did you end up seeing the same sort of weird behavior on remote clients? Or get a chance to test it out? Just curious :slight_smile: Thanks.

Hello!

So I just tried this out (on 4.2, didn’t update my home PC to the new 4.3 hotness yet :D) and was able to get it working. Here’s what my setup looks like:

For the first picture, I could have used “Switch Has Authority” as well, I just used the one that returns a bool to make it more compact. Also I used the component overlap event instead of the actor one, just because I had that handy in another example already. You could do either one.

Something that could be causing you issues is if you forgot to check the “Replicates” variable on the actor itself to true. If it’s not true, you won’t get network updates on the client from it. Let me know how it works out and if you have any questions or problems!

Thanks Billy, I somehow did not check Replicate on the BP. D’oh. I could have sworn I checked that out to see if it was the problem. Derp!

Thanks again!

Edit: Confirmed working. Derp again on my part.