Can't find event by path when it's created during live update

We implemented integration of FMOD Studio with our custom engine and encountered problem with event lookup by path if that event was created during live update session.

Steps to reproduce:

  1. Start the game
  2. Start FMOD Studio and connect to the game using live update
  3. Create new event, assign it to Master bank, add audio track
  4. Copy created event path and try to play it from game using that path

Result:
Event is not played and API returns ERROR 74: The requested event, parameter, bus or vca could not be found.

If instead of the event’s path we copy it’s GUID and try play it from the game the same way it will be played and everything works as expected. Unfortunately, our workflow expects all events to be configured using events’ paths and not being able to use paths during live update sessions makes life a lot harder for our designers.

I want to confirm that behaviour described above is expected or if there is issue in implementation of our integration.

We are using FMOD Studio 2.0.12.

UPD. When events loaded normally, via banks loading, event lookup by path works properly and no issues are encountered.

Hi, I haven’t tried re-building during the game before, this workflow sounds really interesting. Since getting by GUID is working is it possible the strings bank isn’t also being updated?

To make it clear, steps described in original post are the only actions that are performed. We don’t rebuild banks/do not reload banks in game to make this new event playable by GUID. So yes, strings bank is not being updated, and all other banks also stay untouched.

Page Editing During Live Update states

Any and every change you make to your project during a live update session is immediately propagated to your game, and there are no restrictions on the kind of changes you can make.

Which implies that path-to-guid mapping is also auto synced during live update, but it might be just a poor wording and this is not how things actually work.

Sorry, I understand now. Yes, it looks like both paths and GUIDs should be live updated for new created events during the session.

If you create a new event during a live update session, you will need to add appropriate triggers for that event to your game if you want your game to play it. Similarly, if you change an event’s path to something other than what your game currently uses to identify it, or replace an event that your game identifies by GUID, that event will not play until you update your game code to use the new path or GUID.

I’m curious, what happens if you log the event paths of the Master bank?

Live Update does not currently send strings bank updates, hence why you can only find the event by GUID. The usual engine integration workflow involves syncing banks at design time in the editor when placing events, then using Live Update at runtime to tweak and alter how they sound. This is how our Unity / UE4 integrations work.

I’ve recorded your request into our tracker for later investigation however this is not something on our sort term roadmap.

EDIT: I’ve made a note to clarify this point in our documentation.

2 Likes

Thanks for clarifying this, we will try to work around this issue by manually reloading banks.