Community Q&A

Welcome to Audiokinetic’s community-driven Q&A forum. This is the place where Wwise and Strata users help each other out. For direct help from our team, please use the Support Tickets page. To report a bug, use the Bug Report option in the Audiokinetic Launcher. (Note that Bug Reports submitted to the Q&A forum will be rejected. Using our dedicated Bug Report system ensures your report is seen by the right people and has the best chance of being fixed.)

To get the best answers quickly, follow these tips when posting a question:

  • Be Specific: What are you trying to achieve, or what specific issue are you running into?
  • Include Key Details: Include details like your Wwise and game engine versions, operating system, etc.
  • Explain What You've Tried: Let others know what troubleshooting steps you've already taken.
  • Focus on the Facts: Describe the technical facts of your issue. Focusing on the problem helps others find a solution quickly.

0 votes

Hi there,

I'm working on a tool that automatically creates events on import. I'm stuck on what to do when there is a name conflict. Desired behaviour is that if the event already exists, add another action to that event. I thought that the "merge" setting for onNameConflict in the call below would cater for that, but I have found that it creates a new event with an incremented name instead (what I thought would be the behaviour for the "rename" setting).
 

{
    "parent": "\\Events\\Default Work Unit",
    "type": "Folder",
    "name": "WAAPI",
    "onNameConflict": "merge",
    "children": [
        {
            "type": "Event",
            "name": "Play_SFX",
            "children": [
                {
                    "name": "",
                    "type": "Action",
                    "@ActionType": 1,
                    "@Target": "\\Actor-Mixer Hierarchy\\Default Work Unit\\SFX"
                }
            ]
        }
    ]
}

I have tried giving the Action a name in the child object, thinking that maybe that would help Wwise work out the merge, but that didn't work either.

Is there a way to add another Action to an existing event with this call, or would it require me to do another @object.get, copy all actions and settings across, add the new action and replace the old object with the new?

Thanks 

Jake 

in General Discussion by Jake B. (190 points)

1 Answer

0 votes
 
Best answer
Managed to solve this - it was user error!
Merge is the correct option for onNameConflict, and the action does require a name so that Wwise can add a new action of the same type to an existing event, rather than overwrite it.
My blunder was having a space where there shouldn't have been one, and Wwise was creating a new event with a slightly different name - whoops.
by Jake B. (190 points)
selected by Bernard R. (Audiokinetic)
I'm trying to use this call from unity. It works the first time but the connection silently breaks immediately after and I can't invoke any other calls or refresh the wwise picker.

Sometimes I get this error, some times I don't

TimeoutException: Timeout when receiving message.
Wamp.Receive (System.Int32 timeout) (at Assets/Wwise/API/Runtime/Handwritten/WAAPI/Wamp.cs:334)

{
  "parent": "\\Events\\Default Work Unit",
  "type": "Folder",
  "name": "E04S06",
  "onNameConflict": "merge",
  "children": [
    {
      "type": "Event",
      "name": "E04S06_ENTROO_SERGEANT_002000",
      "children": [
        {
          "name": "newActionName",
          "type": "Action",
          "@ActionType": 1,
          "@Target": "\\Actor-Mixer Hierarchy\\VO Work Unit\\VO Sounds\\E04S06_ENTROO_SERGEANT_0020"
        }
      ]
    }
  ]
}

           AkWaapiUtilities.WaapiClient.Call(
                ak.wwise.core.@object.create,
                jsonQuery, null);
...