uLink 1.6 beta47 and uLobby 1.3 beta 9 released
  • Vote Up3Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    Hey everyone
    We are pleased to announce that uLink and uLobby have new betas which are compatible and support IL2CPP as well.
    http://download.muchdifferent.com/versionfinder/list_all_versions.php?product=ulink
    http://download.muchdifferent.com/versionfinder/list_all_versions.php?product=ulobby

    You can now send RPCs between uLink and uLobby and compile for IOS again.

    We've also fixed a lot of issues.

    A release notes will come hopefully soon as well.
  • 62 Comments sorted by
  • Please webgl support soon! Now that you can not use Chrome with the unity3d web player puts a huge damper on using ulink.
  • http://blogs.unity3d.com/2015/10/08/unity-web-player-roadmap/ <- well the Unity3d web player is dead... This means with out webGL support uLink can no longer be used in web player games... I would think this would put a huge crimp in uLink sales and become a top issue to be fixed, but I could be wrong. I know, I know what has been said here about webGL. But you can not blame me for trying to bump the issue esp since this was just posted by unity. I rely love using uLink but unless things change this would mean that our project and others would be forced to be an install program only and we would have to scrap facebook, webplayer and other portals. (Begs) Please fix... I do not want to learn uNet....
    Thanked by 1hiMate
  • Vote Up2Vote Down JogJog
    Member
    165 Points
    Giving a source for a paid users would a MIRACLE for our project. Its like we are delaying our Steam release more and more just because we got spikes from uLink we can't debug or fix properly because of obfuscation.
  • @Ashkan:
    I've upgraded to 1.6.48 but I'm getting exceptions when reading a BitStream from another BitStream.

    Here is a simple, reproducible example:

    Server (writing the BitStream):
    // Create the inner bitstream and write some data in it
    var innerBitstream = new uLink.BitStream(false);
    innerBitstream.WriteString("Andreas Grech");

    // Create the outer bitstream and write the inner bitstream in it
    var outerBitstream = new uLink.BitStream(false);
    outerBitstream.WriteBitStream(innerBitstream);

    // Send the outerBitstream with an RPC
    networkView.RPC("DreasRPC", player, outerBitstream);


    Client (reading the BitStream):
    [RPC]
    void DreasRPC(uLink.BitStream outerBitstream)
    {
    // Read the inner BitStream from the outer BitStream
    var innerBitStream = outerBitstream.ReadBitStream();

    // Read the data from the inner BitStream
    var innerBSData1 = innerBitStream.ReadString(); // The Exceptions are thrown here
    }


    These two exceptions are thrown from the client while trying to read the innerBitStream:

    Exception 1:
    Failed to invoke Method ClientGameManager:DreasRPC with 1 parameters: 42, 4, 134, 14, 0, 8, 68, 114, 101, 97, 115, 82, 80, 67, 89, 87, 20, 79, 117, 116, 32, 66, 105, 116, 83, 116, 114, 101, 97, 109, 32, 115, 116, 114, 105, 110, 103, 13, 65, 110, 100, 114, 101, 97, 115, 32, 71, 114, 101, 99, 104, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

    Exception 2:
    System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Exception: Trying to read past the buffer size - likely caused by mismatching Write/Reads, different size or order.


    This used to work fine in uLink 1.5.8.

    [Update]
    I've reached out to MuchDifferent and they've informed me that they identified and fixed the bug in 1.6.0-beta50 Birgit.

    I will be trying out the fix soon.

    I can confirm that the issue is fixed in 1.6.0-beta50.
  • Vote Up1Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    @Silentneedle well no because the TCP thing is uLink only not uLobby yet (as far as I know)

    @hiMan sorry for that.

    The thing is that we no longer can maintain the products as before but soon we'll release an open source version to all of our customers in a manner similar to unreal so you are not free to do everything with it, can not get the code to none owners or can not create network libraries using it and sell them in a competing manner with uLink but you can add features and fixes and help each other and us

    An announcement will come online soon
    Thanked by 2dreasgrech hiMate
  • Vote Up1Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    @Reslo we are in the process of working things out, if u are in a hurry for some reason contact sales@muchdifferent.com , they might find a way to solve things for you, if you are really in a need for a show stopper bug or something like that.
    Thanked by 1Reslo
  • Vote Up1Vote Down NitionNition
    Member
    375 Points
    Thanks Ashkan. :)

    Edit: In case you're checking here but not the other threads, these guys are saying Unity 5.4 + uLink is broken: http://forum.muchdifferent.com/unitypark/index.php?p=/discussion/3028/problem-building-standalone-in-unity-5-4-beta
    Thanked by 1hiMate
  • Vote Up1Vote Down mk26mk26
    Member
    50 Points
    If uLink is working fine for all platforms, then why my code is not working for iOS, while the same code is working fine for Mac and Windows client. Our server is on Amazon with headless Linux builds.
    See my issue on http://forum.muchdifferent.com/unitypark/index.php?p=/discussion/comment/5434

    Any suggestion on it will be appreciated
  • Nice, great to see you guys putting out some releases. You guys have been unnervingly quiet.
  • Vote Up0Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    Sorry for that man! You'll have more news and updates in the coming weeks for uLink 1.6 and fellows.
    We have had some problems and lack of human resources. We are aware of the issues and are trying to do our best.

    We know that we've had promises which we did not met and ... and we are terribly sorry for that however it is NOT enough at all and we are really trying to do our best in the path of fixing them and this release is a cause of new decisions and ways of working.
  • Looking forward to the release/change notes to see what exactly we need to change coming from 1.5.8.
  • Sounds interesting, but how about WebGL support?
  • Vote Up0Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    @dreasgrech The things that you need to change are not much, there are some time functions which are improved which generate warnings and maybe a few others which I don't remember.

    @hiMate Well IL2CPP was a big part of that, also we have TCP support so just need to implement WebSockets on top of that (since WebSocket uses TCP as underlying protocol) but no ETA on that unfortunately. Other than the features added we are focused on bug fixes atm. 1.6 has its share of new features like time and serialization optimizations and improvements, socket abstraction layer and steam and TCP support.
    Thanked by 1dreasgrech
  • Amazing.. Tanks (^.~)
  • @Ashkan when I last spoke to Aidin he said WebGL was already supported through your new TCP layer?
  • Vote Up0Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    Well TCP will be the basis to implement Web Sockets on top of not the thing itself. You misunderstood him probably.
  • Awesome, thanks for the heads up.

    So with the tcp support it shouldn't be a problem to run uLobby behind a loadbalancer, right? That would be great.
  • @Ashkan, thanks for communicating with us at least!) Well, sadly, it's september ALREADY and Chrome disabled NPAPI as promised. Next comes Opera, which is already showing "soon to be disabled" badge.

    I still don't understand, how come that wasn't a priority to make to a deadline? Not to be mean or anything, but the love that sparkled between us, MD, is dying :DD
  • @Ashkan Does that mean muchdifferent drops the development or support of the uLink suite, or is the open source step just to compensate the missing manpower?

    No matter, open source is the right step I think, if muchdifferent is still working on it I wouldn't replace it with any other networking middleware.

    Maybe you guys could share some insight in the upcoming announcement about how things are going at the company, I'm sure that would lead to more trust, as we are currently have no idea about the future of muchdifferent as a company. It's just a thing one of our investors is worried about, so I personally would be very grateful about that.
    Thanked by 1hiMate
  • Vote Up0Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    @silentneedle I'm a board member of MD and have all of the information that you want but Christian will do a write up on this soon and will be fully honest with you guys regarding how much MD will continue development. What I can say is that we lack resources a lot at the moment.
    We've been fighting with it for more than a year and different people really tried to do different things to solve it but it wasn't an easy path at all.

    We did not wanted to be this untrustworthy at all. We are a none profit company and have high ambissions as persons. We are not a faceless coropate entity and we used to be much better at this communication thing. I can say I am very sorry for the current situation and how we acted however it doesn't solve any problems which it made.

    Will make sure you get transparent view of the company.
  • With all things aside, is there any way we could get a simple yes ulink will have webgl in a few weeks, maybe soon but please do not hold your breath we do not want you to pass out before it gets here and/or we tried did not work and hoping one of you know how to fix it. I love ulink and recommend it to someone just about every other day. It is head and shoulders above ANY other unity3d networking tool I have played with. But it is getting hard to explain to people how good it is if I have to keep telling them not to use chrome, opera it may work with Firefox, or IE as long as you pat your head and the day of the month is a prime number. With some kind of time frame we could sit at our desk and gently sob wising we had it now, rather being alone in the dark, scared that day will never come and we will have no choice to eat our words about the greatness of ulink and start trying to find a inferior networking tool to limp by with.
  • Vote Up0Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    @foribiteu Thanks for your kind words man! Unfortunately as far as I know the answer is no, Aidin is working full time on uLink but focus is on fixing all bugs in existing platforms and adding a few features which a big customer at final stage of their project requested. We are close to WebGL support but I don't know if at the end of this full time maintenance period if we will have WebGL or not. It depends on how fast bugs get fixed.

    @silentneedle Will do for sure.
    Thanked by 1silentneedle
  • @Ashkan thanks for honest update. I respect that. So for now I will keep the wolfs at the door and plow full steam ahead, holding out that maybe ulink will see WebGL. (Starts sharping sticks to keep the angry mobs back when he informs them of the news tonight.)
  • Vote Up0Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    @foribiteu this is my duty to be honest man!
    After open sourcing even if we can not manage to do it , it should not be too hard to add if some community members get together, web socket is not that hard as a protocol and there are implementations to look at.
    Thanked by 1silentneedle
  • @Ashkan are you going to open source all the suite (including PikkoServer) or uLink only?
  • Vote Up0Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    we are going to open source everything which is in hand of customers at least, uLobby, uZone, uLink and uGameDB (this later one has a part which might not be open sourcable due to licensing issues but we are looking into it)

    About Pikko Server, uServer, Load tester and everything else which has not been publicly released, we did not decide yet and they might not be released as open source.
    Thanked by 1lzaiats
  • Vote Up0Vote Down hiMatehiMate
    Member
    205 Points
    @ashkan oooh! Go uServer, go! And Pikko would also be a superb descision! I would definitely forgive anything to MD after that :DD
  • Vote Up0Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    @hiMate It's not my decision to make :) I've wrote much of the uServer code so definitely I would love to do something good with it, whatever that is but these are not small decisions made easily.
  • Vote Up0Vote Down hiMatehiMate
    Member
    205 Points
    @foribiteu @Ashkan
    Well, now unity will stop supporting Web Player platform in march 2016 with u5.4. Ashkan, it's about time to give us some dates when you guys plan to release native WebGL support. I remeber talking to Christian about WebGL support in the beginning of summer. He said it won't be that hard for MD to make it, but I'll have to pay for that as additional services. If the price is not THAT much, probably we could crowdfund it. Or you might want to release those sources, so we could hire someone to implement it.
    Thanks.
  • @hiMate - Long before march 2016 the web player will be dead... Yes that is the date when unity will toss it to the trash. The web browsers are all ready killing it long before unity3d does. Unity just made it official that they are tossing it. I have a feeling that by the time that date rolls around there will not be any web players that would even run it if you wanted to. It also means with out webGL there will be no web option with uLink.
  • Unity 5.1.3 works with ulink?
  • uLink will work with Unity 5.1.3 just not with webGL. Personally I think it is the best product on the market today for networking with Unity.

    Also I found out that Planetside 2 (I think it is called) beat uLink for the most people in a FPS at one time uLink was 999 people and Planetside 2 was something like 1,158 or something. I may be a little off with the numbers. The only reason I am bringing this up is because I want to see uLink take back the title!!! We need webGL!!! LOL Who knows if I get our project more down the road, I may be able to help ulink do it. :)

    Waves @hiMate.
  • RPC is not working with 5.2.1, just the state synch, any idea how to solve this? I tried to install the latest 1.6 ulink beta but it does not work anyway
  • @newmagicstudio Why are rpc's not working with 5.2.1? What error is shown?
  • NullReferenceException: Object reference not set to an instance of an object
  • Just had 6 people that could not get test out our game do to having to use the Unity3d web player and not webGL... is any one else starting to get complaints from there users?
  • @newmagicstudio Just read your other thread about your problems since 5.0.4, I'm using ulink with unity 5.1.2 and rpc's are working fine. The problem must be somewhere in your code.
  • @Ashkan any news on the open source process for us? ;)
  • any news at all?
  • Really looking forward to WebGL support!
  • Starts handing out the pitch forks --E --E --E
    and the torches --~ --~ --~

    OK boys let find the developer that was to code out the Webgl...
  • Hi, we upgraded to beta 57 because we've been having crashes on iOS, however, after upgrading, we're getting this error;

    MissingMethodException: The best match for method uLink_OnConnectedToServer has some invalid parameter.
    System.MonoType.InvokeMember (System.String name, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object target, System.Object[] args, System.Reflection.ParameterModifier[] modifiers, System.Globalization.CultureInfo culture, System.String[] namedParameters) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System/MonoType.cs:520)
    UnityEngine.SetupCoroutine.InvokeMember (System.Object behaviour, System.String name, System.Object variable)
    UnityEngine.GameObject:SendMessage(String, Object, SendMessageOptions)
    #=qabAJRfJPEAH20oqrSYhahQDKIELooQj5lD1kYzR07zg=:#=qo8egbK7FPm7weVJVlx$02w==(String, Object)
    #=q46hbrTjrHTvKaumviusP4$yXrf8tk9qsF5e6n33qS9E=:#=qdoFHt8JJWVmunkfyuWfTyQ==(String, Object)
    #=qU2pwcoXgFw7yYKjfkOidLKiX6S1BZP1UjDgugOlL5Hg=:#=qByGkxAWt1uhdsW6HhiPBofkZWhU2fT_1uYPXQ373XxA=()
    #=qU2pwcoXgFw7yYKjfkOidLKiX6S1BZP1UjDgugOlL5Hg=:#=qWcN46os3j6tUkHnn2BhinUzE$dvU$HjNxPTmnXXvhMg=(NetworkPlayer, BitStream, #=qclhG4TPhryqqemFcmC4nkgdAu2SnUfrRpAJzi56wm7M=)
    #=qclhG4TPhryqqemFcmC4nkgdAu2SnUfrRpAJzi56wm7M=:#=qlH4jWljz_LlQCV58oymJnfLnZwQjqQFHwVOkYXhdGMc=(#=qB$UI5Oz570w90$UF0zYJYMeQjYORNl9bJS2oORWuuJA=)
    #=qbUCNLfONgaM$vgOXV3SGBm8BtbUjaUJHBPqAZY98VhY=:#=qdJqDIyYrBXYVyqptjJ$hlA==(#=qclhG4TPhryqqemFcmC4nkgdAu2SnUfrRpAJzi56wm7M=)
    #=qU2pwcoXgFw7yYKjfkOidLKiX6S1BZP1UjDgugOlL5Hg=:#=qQFaUGriT5h7a6u5U$WFSCqir$JF5jO35U00SfYyQGho=(#=qbZkEA0SlmL$K5IbT9P_iiMlCyKFVcB2xHVku9oiFzTQ=, #=qEG9caly$KvHiRobE1QllKKFuWk1EbDjB6APHqxnhYbI=, Double)
    #=qU2pwcoXgFw7yYKjfkOidLKiX6S1BZP1UjDgugOlL5Hg=:#=qUCogiLisrfECBPVSudQoZvodWwpHM1KQOS87eOdhZZ0=()
    #=qU2pwcoXgFw7yYKjfkOidLKiX6S1BZP1UjDgugOlL5Hg=:#=qPzKADNy2UGoLWHQdu66AyQ==(Double)
    #=qbUCNLfONgaM$vgOXV3SGBm8BtbUjaUJHBPqAZY98VhY=:#=qPQ0Q9MekmM$ytl1vviU$MQ==()
    #=qabAJRfJPEAH20oqrSYhahQDKIELooQj5lD1kYzR07zg=:#=qfsibTPhAXX5abuIlw9gxJg==()
    uLink.InternalHelper:LateUpdate()


    Is there a new method signature? What is it? Are there any uLink or uLobby callbacks that have been changed?
  • Here's what the current method is;

    void uLink_OnConnectedToServer(IPEndPoint server)
    {
    Debug.Log("Connected to server : " + server);
    if (ConnectedToServer != null) ConnectedToServer(server);
    }

  • The NetworkViewID constructor still takes an int instead of a ulong.
    uLink.NetworkViewID(int)

    So right now I have to cast to an int. I imagine this would cause problems if the id is larger then an int.

    Specifically we do this to use NetworkView.Find:

    ulong playerId = 1;
    NetworkView theView = NetworkView.Find(new NetworkViewId((int) playerId));
  • @spacerhino
    the signature changed to NetworkEndPoint instead of IPEndPoint
  • Can we have an update regarding the open source plans and the current situation at much different?
  • I am very anxious too about these open source news ;)
  • Vote Up0Vote Down AshkanAshkan
    MuchDifferent Developer
    1445 Points
    The public open source will be at least 6 months from now due to customer boligations and signed contracts we have but a shared source for all of our licensed customers should come sooner, I can tell a more exact date in 2-3 weeks.

    Sorry for the silence guys, I know sorry is not enough.
    Thanked by 2hiMate silentneedle

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Tagged