Quantum Console doesn’t show in Windows build on specific computer

Issue #204 open
Simon Kendrew created an issue

I’ve been experiencing an issue recently where the QC console will not show in a Windows Build on a specific laptop computer (although it has worked previously). The QC console will show on my other desktop computer, and the console also shows OK on both of the computers inside the Unity Editor. I’ve tried using ‘Show Console’, ‘Toggle Console’ and also ‘Activate on Startup’ - they all work in the Unity Editor, but not in a Windows build on my laptop, yet they work OK in a Windows Build on my desktop computer.

I am using Unity version 2022.3.10f1, URP, Quantum Console 2.6.6

I have seen some other similar issues on both Discord and the BitBucket issue tracker and I have tried any advice given there, but without success. Is anyone else having this issue, or is it perhaps a known issue that is currently being investigated?

I have also tried completely removing the QC package and reinstalling it, making a clean build and making a development build, without any success.

My primary use for Quantum Console is in a build on my laptop, using it to change game settings while people playtest my game. Without it working on this laptop, I am really stuck.

Comments (7)

  1. Yusuf Ismail repo owner

    Hi @Simon Kendrew , thanks for reporting this - sounds really frustrating!

    Two things I can think of

    1. Have you updated your version of Unity between it working and not working on the laptop?
    2. Would you be able to get me player logs when running it on the laptop?

    I’m wondering if this is a duplicate of https://bitbucket.org/QFSW/quantum-console/issues/201/trying-to-add-close-unityengineuiimage-for - which as far as I could tell seemed like a UI bug in a later version of Unity. I raised it with Unity but haven’t gotten back any response yet

  2. Simon Kendrew reporter

    Hi Yusuf,

    1. I have updated my Unity version, I generally update to the most recent LTS version. You may remember I emailed you back in Feb this year to first report the issue (using Unity 2021.3.17f1). I thought I had managed to resolve this issue by upgrading to Unity 2021.3.18f1 and doing a clean build, however I have noticed the issue recently over the past few months. It is only now that I am contacting you again, as I have tried to investigate the issue further myself, but without success.
    2. I have a copy of the player log from my laptop, where would you like me to send it?

    Kind regards,

    Simon

  3. Simon Kendrew reporter

    Hi Yusuf,

    Can you confirm if you received my email on Friday 13th October with the requested log file, as I’ve not had a response from you yet?

    Simon

  4. Yusuf Ismail repo owner

    Hey @Simon Kendrew ! Apologies for the delay

    I’ve taken a look at your player log and its full of the following errors

    ReflectionTypeLoadException: Exception of type 'System.Reflection.ReflectionTypeLoadException' was thrown.
    Type DG.Tweening.Plugins.SpiralPlugin has invalid vtable method slot 4 with method none
      at (wrapper managed-to-native) System.Reflection.Assembly.GetTypes(System.Reflection.Assembly,bool)
      at System.Reflection.Assembly.GetTypes () [0x00000] in <834b2ded5dad441e8c7a4287897d63c7>:0 
      at QFSW.QC.InjectionLoader`1+<>c[T].<GetInjectableTypes>b__1_0 (System.Reflection.Assembly assembly) [0x00000] in <a88fd56270944a289c8d4344008c5be8>:0 
      at System.Linq.Enumerable+SelectManySingleSelectorIterator`2[TSource,TResult].MoveNext () [0x00051] in <a790f10e63dd4341b206460141e07e75>:0 
      at System.Linq.Enumerable+WhereEnumerableIterator`1[TSource].ToArray () [0x00033] in <a790f10e63dd4341b206460141e07e75>:0 
      at System.Linq.Enumerable.ToArray[TSource] (System.Collections.Generic.IEnumerable`1[T] source) [0x0001f] in <a790f10e63dd4341b206460141e07e75>:0 
      at QFSW.QC.InjectionLoader`1[T].GetInjectableTypes (System.Boolean forceReload) [0x000ab] in <a88fd56270944a289c8d4344008c5be8>:0 
      at QFSW.QC.InjectionLoader`1[T].GetInjectedInstances (System.Boolean forceReload) [0x00000] in <a88fd56270944a289c8d4344008c5be8>:0 
      at QFSW.QC.QuantumSuggestor..ctor () [0x00006] in <a88fd56270944a289c8d4344008c5be8>:0 
      at QFSW.QC.SuggestionStack..ctor () [0x00000] in <a88fd56270944a289c8d4344008c5be8>:0 
      at QFSW.QC.QuantumConsole.CreateSuggestionStack () [0x00000] in <a88fd56270944a289c8d4344008c5be8>:0 
      at QFSW.QC.QuantumConsole.InitializeSuggestionStack () [0x00008] in <a88fd56270944a289c8d4344008c5be8>:0 
      at QFSW.QC.QuantumConsole.Initialize () [0x00021] in <a88fd56270944a289c8d4344008c5be8>:0 
      at QFSW.QC.QuantumConsole.Activate (System.Boolean shouldFocus) [0x00000] in <a88fd56270944a289c8d4344008c5be8>:0 
      at QFSW.QC.QuantumConsole.Activate () [0x00000] in <a88fd56270944a289c8d4344008c5be8>:0 
      at QFSW.QC.QuantumConsole.Update () [0x0002f] in <a88fd56270944a289c8d4344008c5be8>:0 
    

    It seems like one of your plugins (DG.Tweening.Plugins.SpiralPlugin) has invalid reflection data, potentially from obfuscation. The injection loader which is responsible for finding loading all your parsers, serializers etc. is then failing when trying to scan that assembly for types. If you DM an invoice number I can send over a patch that makes the injection loader ignore these errors and we can see how that works? Should get it working again I hope

  5. Yusuf Ismail repo owner

    The reason this doesn’t occur in the editor is there we use Unity’s type cache to speed things up instead of manually searching

  6. Log in to comment