Any idea when you'll have this working with Unity 2018?

When importing:

Assets/Plugins/PhotonLoadbalancingApi/LoadBalancingPeer.cs(498,63): error CS0104: `Hashtable' is an ambiguous reference between `System.Collections.Hashtable' and `ExitGames.Client.Photon.Hashtable'

Assets/Plugins/PhotonLoadbalancingApi/Player.cs(131,16): error CS0104: `Hashtable' is an ambiguous reference between `System.Collections.Hashtable' and `ExitGames.Client.Photon.Hashtable'

Assets/Plugins/PhotonLoadbalancingApi/Room.cs(303,49): error CS0104: `Hashtable' is an ambiguous reference between `System.Collections.Hashtable' and `ExitGames.Client.Photon.Hashtable'

Etc, etc, etc...

Comments

  • There should be some compile conditions that define "UNITY" in general.
    It looks like your version of Unity isn't covered by this.

    It looks somewhat like this:
    
    #if UNITY_4_7 || UNITY_5 || UNITY_5_0 || UNITY_5_1 || UNITY_5_2 || UNITY_5_3 || UNITY_5_3_OR_NEWER
    #define UNITY
    #endif
    
    Later on, there is code to define which Hashtable class we want to use in our LoadBalancing API:
    using SupportClass = ExitGames.Client.Photon.SupportClass;
    We will have a look.
  • I just checked in 2018-1-b10 and it works without those issues.
    Not sure what messed up your project.
  • SN_007
    SN_007
    edited May 2018
    Hello, dear Tobias!

    I am sorry, but I faced with the same problem too. This problem occurs even on absolutely empty project under Unity 2018. Please, look to my some notes:

    1) When I create absolutely new project under Unity 2018, problem not occurs if I install only Photon Unity Networking.

    2) But when I create absolutely new project under Unity 2018 and install Photon Voice, this problem occurs.

    3) After it I create absolutely new project in Unity 2017.4 and install Photon Voice - no problems.

    Therefore, as I think, these problems are somehow connected with the new version of Unity 2018.

    Please, maybe You can try to repeat my problems (maybe on another PC etc), and help me to correct it?

    Best regards,
    Sergey Netyagin.

    P.S.
    My current version of Unity is 2018.1.0f2.
  • SN_007
    SN_007
    edited May 2018
    As it seems to me, I know the cause of the such problem.
    In current usual scripts we can found the strings like:

    #if UNITY_4_0 || UNITY_4_0_1 || UNITY_4_1 || UNITY_4_2 || UNITY_4_3 || UNITY_4_5 || UNITY_4_6 || UNITY_4_7 || UNITY_5 || UNITY_5_0 || UNITY_2017

    But such string not assume that Photon knows about Unity 2018.
    Therefore it calls the problems.

    If You can add to the such strings some predicates like UNITY_2018 or UNITY_5_3_OR_NEWER, it should help as I hope.

    Best gegards,
    Sergey Netyagin
  • JohnTube
    JohnTube ✭✭✭✭✭
    Hi @gevarre,

    Thank you for choosing Photon!

    Hi @SN_007,

    Thank you for your suggestion as well!

    Sorry for the inconvenience.
    It seems there was an issue with the version 1.14.
    It did not update properly on the asset store for some reason.
    We will update asap.
  • Thank You, colleagues!
  • JohnTube
    JohnTube ✭✭✭✭✭
    version 1.14.1 uploaded.
    should be live in few hours after review.
    I made sure to upload a version using 2018.1.0!
  • Thanks :)
  • JohnTube
    JohnTube ✭✭✭✭✭
    1.14.1 is live now.
    anytime @gevarre
    so did you try 1.14.1 yet?
    what about you @SN_007?
  • SN_007
    SN_007
    edited May 2018
    Sorry, dear colleagues, but the same :(

    https://drive.google.com/open?id=1aBh3b2MIGtKjq7xNL1EVWxqOc0A8vEYt
    https://drive.google.com/open?id=1_3ed-6sgDVCqWBCZQDwG00lNnnpVaDCZ

    How You see, the string in not enough for Unity 2018:

    #if UNITY_4_7 || UNITY_5 || UNITY_5_0 || UNITY_5_1 || UNITY_2017
    #define UNITY
    #endif

    Maybe, dear colleagues, can I remove the following

    using Hashtable = ExitGames.Client.Photon.Hashtable;

    ...and use System.Collections.Hashtable instead of the above class as temporary decision?

    Best regards :(
  • SN_007
    SN_007
    edited May 2018
    I won against the above problem, writing UNITY_5_3_OR_NEWER instead of UNITY_2017 in all scripts.

    Sorry, colleagues. But maybe it can help You to improve asset for good installation from Asset Store?

    Thank You for Your excellent tool!

    Wait for new changes and good news :)
  • JohnTube
    JohnTube ✭✭✭✭✭
    edited May 2018
    I don't know why this keeps happening.

    I think there is an issue with Unity Editor not properly updating packages in the local cache.
    If we release an update and you do not see "Update" button but "Import" instead then there must be an issue somewhere.
    So in order to force the update, we need to delete the cached ".unitypackage" and then "Download" a fresh copy.
    For Windows, the path to the cached ".unitypackage" is:
    C:\Users\<user>\AppData\Roaming\Unity\Asset Store-5.x\Exit Games\ScriptingAudio\Photon Voice.unitypackage
    • Clean up Photon Voice files from your project(s)
    • Close all unity instances
    • Remove that file
    • Download Photon Voice
  • Thanks, I will try!