RepNotify not called - Seamless Travel to map with streaming levels

Problem

Build Type: Binary

BuildVersion: 4.13.2 and 4.14.1

Detailed description of issue: Server and clients are on some kind of lobby map. Seamless travel is enabled in the game mode. Server travel is called and server and clients travel to a new map. The new map contains a streaming level with “always loaded”. Any actor that is part of the streaming level does not call any RepNotify functions on clients.

#How to reproduce
##Setup
First of, link to sample project: [GoogleDrive-Link][1]

I have a very simple test actor that has a trigger. If a player enters the trigger zone he sets a flag to delete itself and does so in the corresponding RepNotify function:

118549-servercode.png

The lobby the player starts in executes the server travel and seamless travel is enabled in the game mode:

118561-lobbymap.png

Lastly the test level itself is empty, and the actual level is streamed with “always loaded”:

118562-levelsetup.png

##Test procedure

  1. Package the project
  2. Create server shortcut with arguments: “Lobby?listen -log”
  3. Create client shortcut with arguments: “127.0.0.1 -log”
  4. Start Server
  5. Start Client
  6. Press “Enter” on server to start server travel
  7. Use either server or client character and move into trigger zone of test actor
  8. Actor not deleted on Client!! <— RepNotify not called
  9. Open another client to join the game in progress
  10. Test actor is deleted on new client! <— RepNotify was called!
  11. Get in range of another test actor
  12. Old client still sees actor new client does not <— RepNotify only called on new client

-

This is my first bug report, so sorry if anything is missing and thanks for looking into the issue!

Best wishes,

MeleeCampz

Hey MeleeCampz,

After further investigation, I don’t believe this to be a bug. Take a look at the setup I used below and replace what you have in your lobby level with that. Ensure the ServerTravel event is set to run on the server and is reliable. When I used that setup, both the client and server traveled to the StreamingMap, and when I walked into one of the trigger objects, it was destroyed on both the client and server.

Let me know if that helps or if you have further questions regarding this issue.

Hey Sean, thanks for your answer!

I forgot to add the “has authority” check, but this is more or less cosmetic,as server travel does nothing if executed on the client. Did you make sure the trigger objects were part of a level that was streamed and set to always load" and not the root level itself as well as seamless travel enabled. Those two conditions are crucial for reproduction.

I tested this on different machines as well as different test projects and can reproduce the explained behavior 100% of the time. I also added the code you posted, but as expected it did not change the result.

Thanks for the info. I’ve gotten the issue reproduced and have entered a bug which you can track using the link below:

Have a great day