Hi all, I'm extremely new to Unity and code in general, and I have this issue that's preventing me from opening my file. What I understand is that it's an issue stemming from how Cinemachine and Adventure Creator are interacting under the hood, and I know there's something that isn't communicating correctly between two parts of the code, but I simply don't know enough about coding in general to be able to fix it myself. Could somebody help explain what I need to change and why (in as lay-person words as possible)? Greatly appreciate any and all help!
The error says:
Assets\AdventureCreator\Downloads\Cinemachine integration\Scripts\CinemachineMixerController.cs(32,36): error CS0123: No overload for 'OnFinishLoading' matches delegate 'EventManager.Delegate_Generic'
(I have a chunk of code I can show, but I'm new to the forums here and not sure if I'm allowed. Let me know if it's helpful and I'll add it below)
It looks like you're new here. If you want to get involved, click one of these buttons!
Comments
Welcome to the community, @cfos27.
It may be due to using outdated versions of either AC or the Cinemachine integration package.
Which version of AC are you using? If you're using the latest (currently v1.78.4), try re-downloading the integration package. It was updated recently with changes necessary to work with the latest AC release.
Thanks for your quick answer @ChrisIceBox . I'm using the most recent version of AC, but I haven't tried re-downloading the integration package yet. How can I do that if my file won't let me open it though? It prompts entering Safe Mode (which I can ignore), but when I ignore and try to re-download the integration package the Scripts check-boxes in the download are greyed out as options, which includes the CinemachineMixerController.cs that I think is causing the issue.
I also can't see the AC tab in my toolbar up top anymore (which I understand can happen when you exit safe mode with compiler errors), so should I be fixing this issue with updating the packages in a new project and transferring my scene over? Is that a safer workflow or is it generally better/pretty safe to make your package fixes/updates within your current project? I'm using Unity version 2022.3.3f1, if it matters.
If you open Unity with compilation errors, any non-Unity toolbar links (including AC) will be hidden from the top toolbar until the errors are resolved.
You'd need to first remove the existing Cinemachine integration by deleting the /Assets/AdventureCreator/Downloads/Cinemachine integration folder.
The safest way to work is to use version control, such as Github Desktop, as you can roll back to earlier versions of the project with a couple of clicks. You should be fine to remove/replace the Cinemachine integration package, however.
That's incredibly helpful thank you! I did what you said and deleted the existing Cinemachine integration and was able to open the file just fine. But when I re-download the integration package I get the same error again (CS0123), even with the newest version of that integration package freshly downloaded off the site, and the newest version of AC.
I also tried deleting all the Cinemachine cams from the scene, including the Cinemachine brain, and starting over with all cams, to see if that would help fix anything but no dice.
But now that I can actually use my file again, I think I'm just going to go ahead and avoid Cinemachine cams while I'm using AC for this first test project until I get a better handle on Unity/AC overall. Took on too much at once! Thanks for your help with this, you'll probably see a lot from me asking similarly dumb questions down the line.
It's not dumb at all - as the integration should work without such hassle. If you'd like to revisit this, share a screenshot of how the CinemachineMixerController script appears - particularly around line 32.