Placeholder-Software / Dissonance

Unity Voice Chat Asset
71 stars 5 forks source link

Mirror 1.5 and Ignorance 1.2.0 #144

Closed darrencperry closed 5 years ago

darrencperry commented 5 years ago

Context

Get Dissonance 6.3.1 working with latest versions of Mirror (asset store) and Ignorance (github release)

Actual Behaviour

These errors are thrown

Assets\Dissonance\Integrations\MirrorIgnorance\MirrorIgnoranceClient.cs(54,17): error CS0019: Operator '==' cannot be applied to operands of type 'NetworkMessage' and '<null>'

Assets\Dissonance\Integrations\MirrorIgnorance\MirrorIgnoranceCommsNetwork.cs(146,17): error CS0019: Operator '==' cannot be applied to operands of type 'NetworkMessage' and '<null>'

Workaround

Comment out if (netmsg == null) in both scripts

Steps to Reproduce

  1. Import Mirror 1.5, Ignorance 1.2.0, Dissonance 6.3.1 and the Mirror Ignorance Integration

Your Environment

martindevans commented 5 years ago

I just updated to the very latest version of Mirror from the asset store and it looks like NetworkMessage has been changed from a class to a struct, hence this error. Removing those checks is the right workaround - they were only there as a sanity check anyway so they should never have returned true.

Edit: I have some other changes to make now that Ignorance 1.2 is released, I'll make those and release it along with this fix soon.

martindevans commented 5 years ago

I've removed those checks and pushed up a new version to the release notes for 6.3.1.

I also have some other changes that are being tested at the moment (reducing allocations per-packet by working around some of the allocations Mirror makes) which are not included in that package - if you're interested in helping test that shoot me an email (martin@placeholder-software.co.uk).