# Abstract method mismatch in PlatformPs5 and XboxOne

**URL:** <https://qa.fmod.com/t/abstract-method-mismatch-in-platformps5-and-xboxone/20124>\
**Category:** Unity\
**Tags:** xboxone, unity\
**Created:** [April 17, 2023, 10:18am UTC](https://qa.fmod.com/t/abstract-method-mismatch-in-platformps5-and-xboxone/20124 "2023-04-17T10:18:11Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Wysepka](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/wysepka/32/4883_2.png) [@Wysepka](https://qa.fmod.com/u/Wysepka)\
**Post date:** [April 17, 2023, 10:18am UTC](https://qa.fmod.com/t/abstract-method-mismatch-in-platformps5-and-xboxone/20124/1 "2023-04-17T10:18:12Z")

</div>

Hi guys,  
There is a mismatch for PlatformXboxOne and PlatformPs5 in abstract method overriden from Platform class

```auto
protected abstract IEnumerable<string> GetRelativeBinaryPaths(BuildTarget buildTarget, bool allVariants, string suffix);

```

both Ps5 and XboxOne implements this method with different overload,

```auto
protected override IEnumerable<string> GetRelativeBinaryPaths (BuildTarget buildTarget, string suffix)

```

missing bool parameter.  
Im using 2.01.11 version and GameCore addon/plugin and Unity 2021.3.5f1

EDIT:  
Also when implemented bool parameter there is error that RuntimeUtils.SetThreadAffiniti does not exist despite being called in PlatformXboxOne  
PS2: Also this is not intended behaviour when building for game core xbox series xbox one platform is selected in fmod ¯\_(ツ)\_/¯

EDIT2:  
Deleted xboxone and ps5 platform from fmod platforms and now unity shouts at me that

```auto
Error building Player: BuildFailedException: No FMOD platform found for build target GameCoreScarlett.

```

though i have imported gamecore package

---

<div class="post-metadata">

**Author:** ![Leah\_FMOD](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/leah_fmod/32/3685_2.png) [@Leah\_FMOD](https://qa.fmod.com/u/Leah_FMOD)\
**Post date:** [April 18, 2023, 4:46am UTC](https://qa.fmod.com/t/abstract-method-mismatch-in-platformps5-and-xboxone/20124/2 "2023-04-18T04:46:12Z")

</div>

Hi,

What GDK/SDK version of the 2.01.11 Game Core and 2.01.11 PS5 package are you using?

---

<div class="post-metadata">

**Author:** ![Wysepka](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/wysepka/32/4883_2.png) [@Wysepka](https://qa.fmod.com/u/Wysepka)\
**Post date:** [April 18, 2023, 8:28am UTC](https://qa.fmod.com/t/abstract-method-mismatch-in-platformps5-and-xboxone/20124/3 "2023-04-18T08:28:37Z")

</div>

Hi Leah,

Im using fmodstudio20111gamecore\_gdk220604 package.

Unity on startup is telling me that:

```auto
NullReferenceException: Object reference not set to an instance of an object
FMODUnity.Settings.<SortPlatformChildren>b__94_0 (System.String a, System.String b) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:813)
System.Collections.Generic.ArraySortHelper`1[T].InsertionSort (T[] keys, System.Int32 lo, System.Int32 hi, System.Comparison`1[T] comparer) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
System.Collections.Generic.ArraySortHelper`1[T].IntroSort (T[] keys, System.Int32 lo, System.Int32 hi, System.Int32 depthLimit, System.Comparison`1[T] comparer) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
System.Collections.Generic.ArraySortHelper`1[T].IntrospectiveSort (T[] keys, System.Int32 left, System.Int32 length, System.Comparison`1[T] comparer) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
System.Collections.Generic.ArraySortHelper`1[T].Sort (T[] keys, System.Int32 index, System.Int32 length, System.Comparison`1[T] comparer) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
Rethrow as InvalidOperationException: Failed to compare two elements in the array.
System.Collections.Generic.ArraySortHelper`1[T].Sort (T[] keys, System.Int32 index, System.Int32 length, System.Comparison`1[T] comparer) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
System.Collections.Generic.List`1[T].Sort (System.Comparison`1[T] comparison) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
FMODUnity.Settings.SortPlatformChildren (FMODUnity.Platform platform) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:809)
FMODUnity.Settings.SetPlatformParent (FMODUnity.Platform platform, FMODUnity.Platform newParent) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:786)
FMODUnity.Settings.LinkPlatformToParent (FMODUnity.Platform platform) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:716)
FMODUnity.Settings.LinkPlatform (FMODUnity.Platform platform) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:401)
FMODUnity.Settings.ForEachPlatform (System.Action`1[T] action) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:339)
FMODUnity.Settings.OnEnable () (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:918)
UnityEngine.Resources:Load(String)
FMODUnity.Settings:get_Instance() (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:77)
FMODUnity.BankRefresher:UpdateFileWatcherPath() (at Assets/Plugins/FMOD/src/Editor/BankRefresher.cs:53)
FMODUnity.BankRefresher:Update() (at Assets/Plugins/FMOD/src/Editor/BankRefresher.cs:45)
UnityEditor.EditorApplication:Internal_CallUpdateFunctions()

```

Something missing with platforms.

---

<div class="post-metadata">

**Author:** ![Wysepka](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/wysepka/32/4883_2.png) [@Wysepka](https://qa.fmod.com/u/Wysepka)\
**Post date:** [April 18, 2023, 8:30am UTC](https://qa.fmod.com/t/abstract-method-mismatch-in-platformps5-and-xboxone/20124/4 "2023-04-18T08:30:55Z")

</div>

Hi Leah,

Im using package: fmodstudio20111gamecore\_gdk220604

Also at startup unity is telling me that:

````auto
NullReferenceException: Object reference not set to an instance of an object
FMODUnity.Settings.<SortPlatformChildren>b__94_0 (System.String a, System.String b) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:813)
System.Collections.Generic.ArraySortHelper`1[T].InsertionSort (T[] keys, System.Int32 lo, System.Int32 hi, System.Comparison`1[T] comparer) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
System.Collections.Generic.ArraySortHelper`1[T].IntroSort (T[] keys, System.Int32 lo, System.Int32 hi, System.Int32 depthLimit, System.Comparison`1[T] comparer) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
System.Collections.Generic.ArraySortHelper`1[T].IntrospectiveSort (T[] keys, System.Int32 left, System.Int32 length, System.Comparison`1[T] comparer) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
System.Collections.Generic.ArraySortHelper`1[T].Sort (T[] keys, System.Int32 index, System.Int32 length, System.Comparison`1[T] comparer) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
Rethrow as InvalidOperationException: Failed to compare two elements in the array.
System.Collections.Generic.ArraySortHelper`1[T].Sort (T[] keys, System.Int32 index, System.Int32 length, System.Comparison`1[T] comparer) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
System.Collections.Generic.List`1[T].Sort (System.Comparison`1[T] comparison) (at <e40e5a8f982c4b618a930d29f9bd091c>:0)
FMODUnity.Settings.SortPlatformChildren (FMODUnity.Platform platform) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:809)
FMODUnity.Settings.SetPlatformParent (FMODUnity.Platform platform, FMODUnity.Platform newParent) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:786)
FMODUnity.Settings.LinkPlatformToParent (FMODUnity.Platform platform) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:716)
FMODUnity.Settings.LinkPlatform (FMODUnity.Platform platform) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:401)
FMODUnity.Settings.ForEachPlatform (System.Action`1[T] action) (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:339)
FMODUnity.Settings.OnEnable () (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:918)
UnityEngine.Resources:Load(String)
FMODUnity.Settings:get_Instance() (at Assets/Plugins/FMOD/src/Runtime/Settings.cs:77)
FMODUnity.BankRefresher:UpdateFileWatcherPath() (at Assets/Plugins/FMOD/src/Editor/BankRefresher.cs:53)
FMODUnity.BankRefresher:Update() (at Assets/Plugins/FMOD/src/Editor/BankRefresher.cs:45)
UnityEditor.EditorApplication:Internal_CallUpdateFunctions()```

Also, tried to redproduce this error on empty project and everything goes fine, so if you have any hints why this error appears, help would be appreciated
````

---

<div class="post-metadata">

**Author:** ![Wysepka](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/wysepka/32/4883_2.png) [@Wysepka](https://qa.fmod.com/u/Wysepka)\
**Post date:** [April 18, 2023, 8:46am UTC](https://qa.fmod.com/t/abstract-method-mismatch-in-platformps5-and-xboxone/20124/5 "2023-04-18T08:46:46Z")

</div>

Well, now i can’t event build for Window.

---

<div class="post-metadata">

**Author:** ![Leah\_FMOD](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/leah_fmod/32/3685_2.png) [@Leah\_FMOD](https://qa.fmod.com/u/Leah_FMOD)\
**Post date:** [April 19, 2023, 5:05am UTC](https://qa.fmod.com/t/abstract-method-mismatch-in-platformps5-and-xboxone/20124/6 "2023-04-19T05:05:35Z")

</div>

You seem to have deleted your previous message, but the `NullReferenceException: Object reference not set to an instance of an object` on platform deletion is a known bug that was fixed in 2.01.20. If updating your minor version isn’t feasible, the relevant change in 2.01.20 is in `./Assets/Plugins/FMOD/src/Runtime/Settings.cs`, and can be found here: [Update for 2.01.20 · fmod/fmod-for-unity@39685a7 · GitHub](https://github.com/fmod/fmod-for-unity/commit/39685a704757e02eef7446019341aa9834fabf5b?diff=unified#diff-730ba95db99fb3bc118131158021c6318db9a9903b59baa933152826f6b7d2c2)

As for the mismatching override, it’s likely that there’s a mismatch in your FMOD for Unity and platform package versions - try reimporting the correct versions of the offending packages and seeing if that resolves the issue.

---

<div class="post-metadata">

**Author:** ![Wysepka](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/wysepka/32/4883_2.png) [@Wysepka](https://qa.fmod.com/u/Wysepka)\
**Post date:** [May 18, 2023, 9:57pm UTC](https://qa.fmod.com/t/abstract-method-mismatch-in-platformps5-and-xboxone/20124/7 "2023-05-18T21:57:07Z")

</div>

So for anyone searching for a solution.  
Changed unity to the neaarly newest version, then installed proper package for FMOD and other neccessary packages for Unity to be integrated with any platform, deleted old files from Unity project for platforms, changed Visual Studio from 22 to 19 installed few Windows SDKs, MSVC 19 build tools and now it magically works.

_Sory if not in order but i searched for this solution nearly 2 weeks and trying above steps with different order works_
